Order | GetBookingDetail
Retrieves a booking details by the orderNumber generated from AeroHub.
Notice:
Product Scope :TechHub and FareMarket
POST
/flight/booking
Parameter
Field | Mandatory | Type | Scope | Description |
---|---|---|---|---|
action | required |
String | GetBookingDetail | |
key | required |
String | API security key applied from AeroHub | |
signature | required |
String | Refer to Guideline to generate. | |
timestamp | required |
Int | The ‘timestamp’ field should be a 10-digit Unix timestamp in seconds, used for encryption and data verification. | |
version | optional |
String | API version information, e.g. 3.2.0 | |
request | required |
Object | ||
orderNum | required |
String | AeroHub Order number generated by Commit. It serves as a unique identifier for bookings made through TechHub and FareMarket, whether for flight bookings or ancillary services. | |
sync | optional |
int | TechHub |
1, for TechHub booking, sytem will check and update information below from airline API; - depTime - arrTime - pnrStatus 0 or Null, system retrieve original booking information when booking created. |
Request_Example:
{ "action": "GetBookingDetail", "key": "n93mPT7WzN6cLKC2", "signature": "YhQ2EoBQOfOnf/EOnuuuK5i+K+ncydeQhjFpoXYiEMo=", "timestamp": 1685116516, "request": { "orderNum": "1686212784620044288", "sync": 1 } }
Response
Field | Type | Description |
---|---|---|
status | Int | 0 for success, others for failure, refer to status error appendix for details |
msg | String | Return message, maximum 64 char |
contentStatus | int | Return the original code from airlines or suppliers. |
contentMsg | String | Return the original message from airlines or suppliers, maximum 64 char |
sessionId | String | Session id : unique identifier.Used for add ssrs to an existing order. |
orderNum | String | Order number, maximun 100 char |
postAncillaryInfo | Object[] | After-sales ancillary details from AeroHub |
ancillaryNum | String | Order number containing after-sales ancillary information |
status | String | status |
amount | Float | amount |
originalAmount | Float | originalAmount |
currency | String | currency |
originalCurrency | String | originalCurrency |
itineraryUrl | String | Itinerary url. Itinerary file download url |
orderStatus | String | Booking status: TICKETED: ticketing success. refer orderStatus enum from Appendix |
failureReason | int | failureReason:Incorrect information,Withdraw before issuing,Duplicate booking,Other Rreasons,Fare change,Flight sold out,Ancillary not available,Airline error,Payment card error |
routeType | int | Data source type, 1,FareMarket 2,TechHub |
agencyAccountID | String | Agency accountID. For TechHub, agencyAccountID is the registered agent account at the Airline. For FareMarket, agencyAccountID is indicated to a supplier |
amount | Float | Total cost for payment |
currency | String | Currency information, 3-Letter Codes e.g. USD |
originalAmount | Float | Total cost for payment |
originalCurrency | String | Currency information, 3-Letter Codes e.g. USD |
segmentCount | Int | Segment count |
chargeFees | Object[] | Object for charge fee details from AeroHub |
chargeType | Int | charge Item |
chargeAmount | Float | amount |
currency | String | currency |
passengers | Object[] | Object for Passenger information |
passengerId | String | Passengerid, start from 0, no duplicate, e.g.: 0, 1, 2, 3, 4, 5. |
withPassengerId | String | CHD or Infant realted to the adult number. |
firstName | String | FirstName,in case of middle name, format is firstName middleName |
lastName | String | LastName |
birthday | String | Birthday, format: YYYYMMDD |
gender | String | Gender, M: male F: female |
ageType | Int | Passenger type: 0:adult 1:child 2:infant |
nationality | String | Nationality, 2_letter country code |
cardType | String | Credential Type, PP: Passport ID: Identity number UN: Other Credential Type |
cardNum | String | Credential Number, maximum 15 char, most case is passport number |
cardExpired | String | Credential expired date, format: YYYYMMDD |
cardIssuePlace | String | Credential issued country, country 2_letter code e.g. JP |
contact | Object | Object for contact information |
lastName | String | LastName |
firstName | String | FirstName,in case of middle name, format is firstName middleName |
mobile | String | Mobile information, format country number + mobile number e.g.: 81-123412341234 |
String | ||
address | String | Detail address |
postCode | String | Post code of address |
otherPhone | String | Other contact mobile number |
countryCode | String | National code |
city | String | City |
title | String | Contact person title |
companyName | String | Company name |
ssrs | Object[] | Object for ssr information |
orderNum | String | Order number, maximun 100 char |
passengerId | String | The passenger id associated with the ssr |
flightNumber | String | The flightNumber associated with the ssr |
depAirport | String | The depAirport associated with the ssr |
arrAirport | String | Arrival airport IATA 3-Letter Codes, The arrAirport associated with the ssr |
applyType | String | 0: ALL, 1: DURING_BOOKING, 2: POST_BOOKING |
type | Int | type, 0: Checkin Baggage; 1: Cabin Baggage; 2: Online Checkin; 3: Cabin Baggage + Priority Boarding Package; |
code | String | Unique identify code for SSR Code |
name | String | ssr display name |
amount | Float | SSR Price |
currency | String | Currency information, 3_letter code e.g. USD |
originalAmount | Float | SSR Price |
originalCurrency | String | Currency information, 3_letter code e.g. USD |
count | Int | SSR count |
unit | String | baggage unit, visible when type is 0 |
weight | Int | baggage weight, visible when type is 0 |
seats | Object[] | Object for ssr information |
orderNum | String | Order number, maximun 100 char |
passengerId | String | The passenger id associated with the ssr |
flightNumber | String | The flightNumber associated with the ssr |
depAirport | String | The depAirport associated with the ssr |
arrAirport | String | Arrival airport IATA 3-Letter Codes, The arrAirport associated with the ssr |
amount | Float | seat Price |
currency | String | Currency information, 3_letter code e.g. USD |
originalAmount | Float | seat Price |
originalCurrency | String | Currency information, 3_letter code e.g. USD |
designator | String | Seat identifier,e.g.: 1A |
routing | Object | Object for routing information |
currency | String | Currency information, 3-Letter Codes e.g. USD |
originalCurrency | String | Currency information, 3-Letter Codes e.g. USD |
fromSegments | Object[] | Object for departure route segments. |
carrier | String | Carrier IATA 2_letter code |
flightNumber | String | Flight number, e.g. CA123 if flight number begin with 0, must waived all the zeros, e.g. CZ006 should be used as CZ6 |
codeShare | Boolean | Whether it is a shared flight true : yes false: no |
operatingFlightNumber | String | Actual operating flight number |
operatingCarrier | String | Actual operating airline. |
depAirport | String | Departure airport IATA 3-Letter Codes |
depTerminal | String | Departure terminal |
arrAirport | String | Arrival airport IATA 3-Letter Codes |
arrTerminal | String | Arrival terminal |
depTime | String | Departure date and time, format: YYYYMMDDHHMM e.g. 201203100315 means 2012/03/10 03:15 |
arrTime | String | Arrival date and time, format: YYYYMMDDHHMM e.g. 201203101305 means 2012/03/10 13:05 |
aircraftCode | String | aircraftCode |
stopAirports | String | stop airport IATA 3-Letter Codes |
duration | Int | Flight duration from departure to arrival, unit in minutes. Available on TechHub only. |
fares | Object[] | Fare information |
productClass | String | product standardized code by AeroHub, Y(Economy Class), W(Premium Class), C(Business Class), F(First Class) |
cabinClass | String | RBD code generated from airline |
fareTypeCode | String | return fare type id defines by airline |
fareTypeDesc | String | return fare type name defines by airline. For reference only. |
paxFare | Object | fare for all passengers |
ADT | Object[] | fare for adults |
chargeType | String | Fare type, e.g. “FairPrice” “Tax” |
chargeDesc | String | Description of a charge |
chargeCode | String | chargeCode |
amount | Float | Fare amount |
currency | String | currency |
originalAmount | Float | Fare amount from airlines |
CHD | Object[] | fare for children |
chargeType | String | Fare type, e.g. “FairPrice” “Tax” |
chargeDesc | String | Description of a charge |
chargeCode | String | chargeCode |
amount | Float | Fare amount |
currency | String | currency |
originalAmount | Float | Fare amount from airlines |
INF | Object[] | fare for infant |
chargeType | String | Fare type, e.g. “FairPrice” “Tax” |
chargeDesc | String | Description of a charge |
chargeCode | String | chargeCode |
amount | Float | Fare amount |
currency | String | currency |
originalAmount | Float | Fare amount from airlines |
retSegments | Object[] | |
carrier | String | Carrier IATA 2_letter code |
flightNumber | String | Flight number, e.g. CA123 if flight number begin with 0, must waived all the zeros, e.g. CZ006 should be used as CZ6 |
codeShare | Boolean | Whether it is a shared flight true : yes false: no |
operatingFlightNumber | String | Actual operating flight number |
operatingCarrier | String | Actual operating airline. |
depAirport | String | Departure airport IATA 3-Letter Codes |
depTerminal | String | Departure terminal |
arrAirport | String | Arrival airport IATA 3-Letter Codes |
arrTerminal | String | Arrival terminal |
depTime | String | Departure date and time, format: YYYYMMDDHHMM e.g. 201203100315 means 2012/03/10 03:15 |
arrTime | String | Arrival date and time, format: YYYYMMDDHHMM e.g. 201203101305 means 2012/03/10 13:05 |
stopAirports | String | stop airport IATA 3-Letter Codes |
duration | Int | Flight duration from departure to arrival, unit in minutes. Available on TechHub only. |
fares | Object[] | Fare information |
productClass | String | product standardized code by AeroHub, Y(Economy Class), W(Premium Class), C(Business Class), F(First Class) |
cabinClass | String | RBD code generated from airline. |
fareTypeCode | String | return fare type id defines by airline |
fareTypeDesc | String | return fare type name defines by airline. For reference only. |
paxFare | Object | fare for all passengers |
ADT | Object[] | fare for adults |
chargeType | String | Fare type, e.g. “FairPrice” “Tax” |
chargeCode | String | chargeCode |
currency | String | currency |
originalCurrency | String | originalCurrency |
chargeDesc | String | Description of a charge |
amount | Float | Fare amount |
originalAmount | Float | Fare amount from airlines |
CHD | Object[] | fare for children |
chargeType | String | Fare type, e.g. “FairPrice” “Tax” |
chargeCode | String | chargeCode |
currency | String | currency |
originalCurrency | String | originalCurrency |
chargeDesc | String | Description of a charge |
amount | Float | Fare amount |
originalAmount | Float | Fare amount from airlines |
INF | Object[] | fare for infant |
chargeType | String | Fare type, e.g. “FairPrice” “Tax” |
chargeCode | String | chargeCode |
currency | String | currency |
originalCurrency | String | originalCurrency |
chargeDesc | String | Description of a charge |
amount | Float | Fare amount |
originalAmount | Float | Fare amount from airlines |
tickets | Object[] | Ticket number list, empty if the order is not in ‘TICKETED’ state. |
passengerId | String | Passenger Id |
flightNumber | String | Flight number |
productClass | String | product standardized code by AeroHub, Y(Economy Class), W(Premium Class), C(Business Class), F(First Class) |
cabinClass | String | RBD code generated from airline |
ticketNumber | String | Ticket Number from airline |
pnr | String | pnr from airline |
pnrStatus | String | pnr status from airline |
accountName | String | in case the airline requires the account credentails to manage the booking, the account ID is provided in this parameter |
accountPass | String | in case the airline requires the account credentails to manage the booking, the account password is provided in this parameter |
airlineOtherFees | Object[] | Details of the payment amount. |
type | int | Type of amount. 1: Airline discount amount. 2: Airline payment fee. |
orderNum | String | Order number, maximun 100 char. |
desc | String | Description of the payment. |
originalAmount | Float | Amount in the original currency. |
originalCurrency | String | The original currency code. |
amount | Float | Amount in the customer’s quoted currency. |
currency | String | The customer’s currency code. |
Success-Response1 -(The flight ticket and ancillary services were booked simultaneously):
{ "agencyAccountID": "AeroHub", "amount": 1153.62, "chargeFees": [ { "chargeAmount": 1.0, "chargeType": 1, "currency": "USD" } ], "contact": { "address": "Manhattan(New York county), New York, United States", "city": "NewYork", "companyName": "XXX", "countryCode": "US", "email": "LongMike@gmail.com", "firstName": "Long", "lastName": "Mike", "mobile": "1-8888888888", "otherPhone": "1-18888888888", "postCode": "10001", "title": "MR" }, "contentMsg": "success", "contentStatus": 0, "currency": "USD", "msg": "success", "orderNum": "1689900867685187584", "itineraryUrl ": "https://{url}/api/booking/itinerary?cipher=z%2BvMLOM%2BqPrFQfY1j6RWgKZnqZkcdaw5/O%2B2C8HI/d8=&iv=qKg13H706ylXTsHz", "orderStatus": "TICKETED", "originalAmount": 5286.0, "originalCurrency": "MYR", "passengers": [ { "ageType": 0, "birthday": "20000820", "cardExpired": "20231119", "cardIssuePlace": "US", "cardNum": "014580835", "cardType": "PP", "firstName": "MIW", "gender": "F", "lastName": "AFO", "nationality": "US", "passengerId": "0", "withPassengerId": "" }, { "ageType": 0, "birthday": "19500621", "cardExpired": "20231119", "cardIssuePlace": "US", "cardNum": "553487078", "cardType": "PP", "firstName": "GWX", "gender": "F", "lastName": "TYE", "nationality": "US", "passengerId": "1", "withPassengerId": "" } ], "routeType": 2, "routing": { "fromSegments": [ { "aircraftCode": "330", "arrAirport": "AKL", "arrTerminal": "", "arrTime": "202309111720", "carrier": "D7", "currency": "USD", "data": "", "depAirport": "KUL", "depTerminal": "1", "depTime": "202309102310", "duration": 850, "fares": { "availableCount": 20, "cabinClass": "E", "cabinName": "Economy", "fareBasisCode": "E01H00", "fareKey": "0~E~ ~AK~E01H00~AAX1~~1~1~NAKLKUL0010010~X", "fareSequence": 1, "fareTypeCode": "EP", "fareTypeDesc": "Low Fare", "paxFare": { "ADT": [ { "amount": 173.07, "chargeCode": "", "chargeDesc": "FarePrice", "chargeType": "FarePrice", "currency": "USD", "originalAmount": 793.0, "originalCurrency": "MYR" }, { "amount": 130.95, "chargeCode": "", "chargeDesc": "Tax", "chargeType": "Tax", "currency": "USD", "originalAmount": 600.0, "originalCurrency": "MYR" } ], "CHD": [], "INF": [] }, "productClass": "Y" }, "flightNumber": "D7288", "stopAirports": [ { "airport": "SYD", "duration": 685 } ] } ], "retSegments": [ { "aircraftCode": "330", "arrAirport": "KUL", "arrTerminal": "", "arrTime": "202309180335", "carrier": "D7", "currency": "USD", "data": "", "depAirport": "AKL", "depTerminal": "1", "depTime": "202309171845", "duration": 770, "fares": { "availableCount": 20, "cabinClass": "E", "cabinName": "Economy", "fareBasisCode": "E01H00", "fareKey": "0~E~ ~AK~E01H00~AAX1~~1~1~NAKLKUL0010010~X", "fareSequence": 1, "fareTypeCode": "EP", "fareTypeDesc": "Low Fare", "paxFare": { "ADT": [ { "amount": 173.07, "chargeCode": "", "chargeDesc": "FarePrice", "chargeType": "FarePrice", "currency": "USD", "originalAmount": 793.0, "originalCurrency": "MYR" }, { "amount": 99.74, "chargeCode": "", "chargeDesc": "Tax", "chargeType": "Tax", "currency": "USD", "originalAmount": 457.0, "originalCurrency": "MYR" } ], "CHD": [], "INF": [] }, "productClass": "Y" }, "flightNumber": "D7289", "stopAirports": [ { "airport": "SYD", "duration": 95 } ] } ] }, "seats": [], "segmentCount": 2, "sessionId": "b96deff1f5c4600ef902aff78c26d8e4", "ssrs": [], "status": 0, "tickets": [ { "cabinClass": "E", "flightNumber": "D7289", "passengerId": "0", "pnr": "QRRY7D", "pnrStatus": "TICKETED", "productClass": "Y", "ticketNumber": "QRRY7D", "accountName": "aero@hub.com", "accountPass": "aerohubtech" }, { "cabinClass": "E", "flightNumber": "D7289", "passengerId": "1", "pnr": "QRRY7D", "pnrStatus": "TICKETED", "productClass": "Y", "ticketNumber": "QRRY7D", "accountName": "aero@hub.com", "accountPass": "aerohubtech" } ] }
Success-Response2 - (Purchasing ancillary services separately.):
{ "amount": 197420, "originalAmount": 197420, "currency": "KRW", "originalCurrency": "KRW", "orderStatus": "TICKETED", "orderNum": "1772205342961303552", "postAncillaryInfo": [ { "ancillaryNum": "A12343242432456", "status": "TICKETED", "amount": 197420, "originalAmount": 197420, "currency": "KRW", "originalCurrency": "KRW" }, { "ancillaryNum": "A12343242424457", "status": "PENDING", "amount": 197420, "originalAmount": 197420, "currency": "KRW", "originalCurrency": "KRW" }, { "ancillaryNum": "A12343242424457", "status": "PENDING", "amount": 197420, "originalAmount": 197420, "currency": "KRW", "originalCurrency": "KRW" } ], "sessionId": "46e638f3796616698de23f435a7cda0c", "agencyAccountID": "LET_MM_P", "routeType": 2, "itineraryUrl": "https://api-service.aerohubtech.com/api/booking/itinerary?cipher=bResKIP3avMF372nTEASUrmWLrLijeErh%2BBnVyV8AxM=&iv=xdJ81VqG1i6e8lrx", "segmentCount": 1, "contact": { "mobile": "+8618888888888", "email": "longge@gmail.com", "address": "Manhattan(New York county), New York, United States", "firstName": "Tomer", "lastName": "Smith", "otherPhone": "", "postCode": "10001", "countryCode": "US", "city": "New York", "title": "Mr", "companyName": "" }, "chargeFees": [ { "chargeType": 1, "chargeAmount": 150, "currency": "JPY" }, { "chargeType": 2, "chargeAmount": 200, "currency": "JPY" } ], "passengers": [ { "passengerId": "0", "firstName": "foz", "lastName": "tdx", "ageType": 0, "birthday": "19860225", "gender": "M", "cardNum": "A849023247", "cardType": "PP", "cardIssuePlace": "CN", "cardExpired": "20240703", "nationality": "CN", "withPassengerId": "" } ], "ssrs": [ { "orderNum": "1772205342961303552", "flightNumber": "MM712", "depAirport": "ICN", "arrAirport": "KIX", "applyType": 1, "type": 0, "code": "BG20", "name": "20 KG", "count": 1, "passengerId": "0", "amount": 28600, "currency": "KRW", "unit": "KG", "weight": 20, "originalAmount": 28600, "originalCurrency": "KRW" }, { "orderNum": "A12343242432456", "flightNumber": "MM712", "depAirport": "ICN", "arrAirport": "KIX", "applyType": 2, "type": 0, "code": "BG20", "name": "20 KG", "count": 1, "passengerId": "0", "amount": 28600, "currency": "KRW", "unit": "KG", "weight": 20, "originalAmount": 28600, "originalCurrency": "KRW" }, { "orderNum": "A12343242424457", "flightNumber": "MM712", "depAirport": "ICN", "arrAirport": "KIX", "applyType": 2, "type": 0, "code": "BG20", "name": "20 KG", "count": 1, "passengerId": "0", "amount": 28600, "currency": "KRW", "unit": "KG", "weight": 20, "originalAmount": 28600, "originalCurrency": "KRW" } ], "seats": [ { "orderNum": "1772205342961303552", "flightNumber": "MM712", "designator": "6E", "passengerId": "0", "amount": 9500, "currency": "KRW", "originalCurrency": "KRW", "originalAmount": 9500, "depAirport": "ICN", "arrAirport": "KIX" }, { "orderNum": "1772205342961303552", "flightNumber": "MM712", "designator": "6E", "passengerId": "0", "amount": 9500, "currency": "KRW", "originalCurrency": "KRW", "originalAmount": 9500, "depAirport": "ICN", "arrAirport": "KIX" } ], "tickets": [ { "ticketNumber": "6972331134936", "pnr": "TJBSED", "pnrStatus": "BOOKED", "flightNumber": "MM712", "passengerId": "0", "accountName": "", "accountPass": "", "cabinClass": "V", "productClass": "Y" } ], "airlineOtherFees": [ { "type": 1, "orderNum": "1778307991888621568", "desc": "discount", "amount": 341.57, "originalAmount": 2.2, "currency": "JPY", "originalCurrency": "USD" }, { "type": 2, "orderNum": "1778307991888621568", "desc": "paymentFee", "amount": 20.0, "originalAmount": 20.0, "originalCurrency": "TWD", "currency": "TWD", } ], "routing": { "fromSegments": [ { "aircraftCode": "320", "arrAirport": "KIX", "arrTerminal": "", "arrTime": "202404230920", "carrier": "MM", "data": "eyJhaXJjcmFmdENvZGUiOiAiMzIwIiwgImxmX2lkIjogIjg5NjIxMyIsICJmYXJlX3NjaGVkdWx0X2lkIjogIjEwNjkxMSIsICJjYWJpbiI6ICJFQ09OT01ZIiwgImZjX2NvZGUiOiAiViIsICJmYl9jb2RlIjogIlZQUklNRSIsICJmYXJlX2lkIjogIjEifQ==", "depAirport": "ICN", "depTerminal": "1", "depTime": "202404230730", "duration": 110, "fares": { "paxFare": { "ADT": [ { "chargeCode": "", "chargeType": "FarePrice", "originalAmount": 113200, "originalCurrency": "KRW", "chargeDesc": "FarePrice", "currency": "KRW", "amount": 113200 }, { "chargeCode": "BP", "chargeType": "TAX", "originalAmount": 28000, "originalCurrency": "KRW", "chargeDesc": "INTERNATIONAL PASSENGER SERVICE CHARGE(ICN)", "currency": "KRW", "amount": 28000 }, { "chargeCode": "T5", "chargeType": "TAX", "originalAmount": 11320, "originalCurrency": "KRW", "chargeDesc": "KR VALUE ADDED TAX", "currency": "KRW", "amount": 11320 }, { "chargeCode": "", "chargeType": "CurrencyTax", "originalAmount": 6800, "originalCurrency": "KRW", "chargeDesc": "CurrencyTax", "currency": "KRW", "amount": 6800 } ], "CHD": [], "INF": [] }, "availableCount": 1, "fareKey": "896213-106911-ECONOMY-V-VPRIME-1", "fareBasisCode": "", "fareSequence": 0, "productClass": "Y", "cabinName": "ECONOMY", "cabinClass": "V", "fareTypeCode": "PRIME", "fareTypeDesc": "Prime Peach" }, "flightNumber": "MM712", "stopAirports": [], "currency": "KRW" } ], "retSegments": [] }, "status": 0, "msg": "success", "contentMsg": "success", "contentStatus": 0 }
Status Code
Name | Description |
---|---|
1000 | General system error |
1001 | Request parameters or part of parameters missing |
1002 | Invalid Action |
1003 | API request timeout, please request again |
1004 | Invalid request parameter |
1005 | Service system error |
1006 | System busy, please try again |
1101 | Authentication fail, wrong signature |
1102 | Account disabled, please contact with account administrator |
Error-Response
{ "status": 1000, "msg": "Letslfy flight internal error" }
Author:fulei Create time:2023-05-24 16:14
Last editor:AeroHub Update time:2025-04-22 14:25
Last editor:AeroHub Update time:2025-04-22 14:25