π Quotes & Bookings
/quote
The FL3XX application allows users to create, read and update quote requests,
Every quote includes details such as:
- the aircraft's tail number,
- the number of seats,
- the model, and the type of aircraft
- departure and arrival airports, dates and times,
- the number of passengers,
- and any applicable warnings or restrictions.
In the FL3XX system you will hear used the tow word quotes and bookings
The key difference between a booking and a quote is the level of confirmation. A quote is a preliminary request for pricing and availability information, while a booking is a confirmed reservation. In other words, a quote is simply an estimate of the cost and availability of a product or service, while a booking signifies a commitment to purchase.
Both quotes and bookings are related to the sales module and can have multiple legs, with each leg representing a flight.
Quotes, or quote requests, are connected to the sales module, which deals with the customer, while flights are part of the internal dispatch module, which deals with the operations.
Create quote requests or confirmed quote
POST /api/external/quote & api/external/quote/book
When making a request, users can include the aircraft's tail number to receive a price calculated by the FL3XX application. Note: This price has not yet been approved by the operator's sales team.If the tail number is omitted from the request, the response will include the details of the request but the price will be set to 0.
It is important to save the externalReference provided in the response, as it will be needed later to retrieve or modify the quote.
Read quote or bookings
Read the list of bookings or a specific one
GET api/external/quote/bookings & api/external/quote/{reference}
Booking Status Legend
R β New Request
a β New Avinode Request
W β New Web Request
Q β Quote (= Request that has been answered)
A β Accepted Quote
O β Ownerβs Approval pending (if applicable)
S - Signed
B β Booking
F β Flights pending (everything else is done)
C β Canceled Quote/ Booking
D β Dropped (when the flights of an unanswered Request are in the past, the Request is Dropped automatically)
External Reference / Booking ID
Every booking in our system is assigned a unique reference number, which can be used to retrieve the booking information at a later stage.
This reference number is created automatically when a quote is generated through the FL3XX API, and is referred to as the "externalReference".
Alternatively, you can choose to provide your own unique externalReference in the payload when posting a booking.
If you are using the FL3XX webapp to make a booking, the system will use the "bookingid" as the internal reference for the booking.
Example of Booking Made via FL3XX API
{
"externalReference": "b4cfb7ad-8d94-4ae8-8926-b9931590ec36",
"aircraft": "MS1G45",
"aircraftObj": {
...
Example of Booking Made via FL3XX Web APP
{
"aircraft": "N-TAIL",
"aircraftObj": {
"tailNumber": "N-TAIL",
"numberOfSeats": 7,
"type": "C25A",
"model": "Citation CJ2",
"typeName": "Citation CJ2+",
"homebase": null,
"equipment": null,
"wingSpan": 0.0,
"maxFuel": 0.0,
"externalLength": 0.0,
"externalHeight": 0.0,
"cabinHeight": null,
"cabinLength": null,
"cabinWidth": null,
"category": "LIGHT_JET",
"keyAccountManager": null,
"flightNumberToken": null,
"subcharter": null,
"cargo": null,
"ambulance": null,
"id": 2065,
"aircraftName": "Citation CJ2+",
"aocNumber": "123",
"status": "ACTIVE",
"manufacturingDate": 2014,
"refurbishedInt": null,
"refurbished": null,
"cabinCrew": 0,
"bedsN": null,
"beltedToilet": null,
"ownersApprovalRequired": true
},
"legs": [
{
"id": "184089",
"departureAirport": "CYYC",
"arrivalAirport": "CYOW",
"arrivalDate": "2022-01-14T15:51",
"arrivalDateUTC": "2022-01-14T20:51",
"departureDate": "2022-01-14T09:00",
"departureDateUTC": "2022-01-14T16:00",
"pax": 2,
"departureAirportObj": {
"icao": "CYYC",
"iata": "YYC",
"name": "Calgary",
"faa": null,
"aid": "APT-4MPB-X5XC",
"id": 14342
},
"arrivalAirportObj": {
"icao": "CYOW",
"iata": "YOW",
"name": "Ottawa MacdonaldβCartier International Airport",
"faa": null,
"aid": "APT-6Q25-922T",
"id": 14209
},
"warnings": [
{
"type": "FUEL_STOP"
},
{
"type": "AIRPORT_OPENING_HOURS_RESTRICTED"
},
{
"type": "AIRPORT_OPENING_HOURS_RESTRICTED"
}
],
"flightTime": 275,
"blockTime": 291,
"flightInfo": {
"dossierNumber": null,
"referenceNumber": null,
"flightType": null,
"flightId": 27398
},
"crew": [],
"aircraft": "N-TAIL",
"distance": 1554.0945,
"postFlightClosed": false,
"status": "OK"
}
],
"customer": {
"internalId": 106022,
"firstName": "Albert",
"lastName": "Tester",
"logName": "d7520a4b-d855-45db-9746-382c218c77e5",
"salutation": "Mr",
"account": {
"name": "Stack.aero Travel",
"accountid": 23907,
"links": []
},
"gender": "MALE",
"status": "ACTIVE",
"links": []
},
"price": {
"charterCost": 0.00,
"gross": 20.00,
"net": 20.00,
"vat": 0.00,
"fet": 0.00,
"tax": 12.00,
"vatPerc": 0.00,
"currency": "USD",
"exchangeRate": 1
},
"accountPrice": {
"charterCost": 0.00,
"gross": 25.44,
"net": 25.44,
"vat": 0.00,
"fet": 0.00,
"tax": 15.26,
"vatPerc": 0.00,
"currency": "CAD",
"exchangeRate": 1.271805000000000000000000000000000000
},
"quoteNumber": "A-BE22-009492",
"status": "B",
"bookingIdentifier": "QUUGJ",
"bookingid": 71054,
"workflow": "CHARTER",
"workflowCustomName": "Charter",
"origin": "EMAIL",
"salesPerson": {
"internalId": 78562,
"firstName": "Simon",
"lastName": "McRiha",
"logName": "simon.test",
"acronym": "SMC",
"salutation": "Mr",
"gender": "MALE",
"birthDate": "1975-05-09",
"birthPlace": "Mosta",
"status": "ACTIVE",
"links": []
},
"createdDate": 1641558580967,
"postFlightClosed": false,
"links": []
}
Workflow types
- COMMERCIAL
- MAINTENANCE
- PRIVATE
- TRAINING
- OWNER
- INTERNAL
- RESERVED
- CHARTER
- SUBCHARTER
- SCHEDULED
- AMBULANCE
- CUSTOM1, CUSTOM2, CUSTOM3, CUSTOM4, CUSTOM5, CUSTOM6
- BROKER
Origin Types
- AVINODE, used for booking incoming from Avinode
- FAX & EMAIL, if booking comes from emails
- PHONE, booking from the Smartphone app
- WEB, Usually used for external API
- EXTERNAL_DISPATCH, IMPORT Imported of external applications
- DISPATCH From internal dispatch
Updated 2 months ago