OrderDetail
- Purpose: Used to obtain detailed information of a specified order, including all order statuses
- Request:
POST - Encryption:
No - FareMarket address:
/supplier/v1/api/order_detail
Request
| Parameter Name |
Type |
Required |
Description |
| apiKey |
string |
✅ |
Each supplier has its own unique apiKey, which is used to indicate the supplier’s identity. AeroHub provides it to the supplier before interface testing. |
| requestId |
string |
✅ |
Request ID, which is unique for each call in the ticket issuance process and has a length of 32 digits. |
| purchaseOrderNo |
string |
✅ |
The order number of AeroHub corresponds to the OrderNo when requesting the Order interface. |
Sample Request
{
"apiKey": "PcrNq8964iFUkE0CyVV4bhgXXX",
"requestId": "3fd720b5bf544161bd14c535c9",
"purchaseOrderNo": "F1745527321051406356"
}
Response
| Parameter Name |
Type |
Required |
Description |
| code |
int |
✅ |
For the status code of AeroHub, refer to Market Errors in the general instructions. |
| msg |
string |
✅ |
For AeroHub error instructions, refer to Market Errors in General Instructions. |
| data |
object |
⬜ |
Order details |
Data Element
| Parameter Name |
Type |
Required |
Description |
| purchaseOrderNo |
string |
✅ |
The order number of AeroHub corresponds to the OrderNo when requesting the Order interface. |
| supplierOrderNo |
string |
✅ |
The order number of the supplier’s own system corresponds to the OrderNo returned by the Order interface. |
| pnrCode |
string |
✅ |
The PNR code of the ticket issued, this code can be used for booking management on the airline’s official website |
| tripType |
int |
✅ |
Trip type: 1 one-way, 2 round-trip |
| parentCarrier |
string |
✅ |
The outbound airline code uses the IATA two-character code as the standard and corresponds to the first two digits in flightNumber. |
| packageInfo |
object/Package Element |
✅ |
Package information |
| paymentCode |
string |
✅ |
Payment method, currently there is only one AG method, that is, supplier balance payment |
| lastUpdateTime |
string |
✅ |
The time when the order was last updated in the AeroHub system, in ISO 8601 format |
| createTime |
string |
✅ |
The time when the order was created in the AeroHub system, in ISO 8601 format |
| contact |
object/Contact Element |
✅ |
The contact information of the order is consistent with that returned by the supplier of the Order interface. |
| flightSegments |
array/FlightSegments Element |
✅ |
Order itinerary information |
| issuePolicyType |
string |
⬜ |
Product type. If not filled in, it represents standard products (refunds and changes are subject to the airline). Currently, AeroHub only has standard products. R1 represents standard products - refunds and changes are subject to the airline. R2 represents customized products. S1 represents the prohibition of splitting PNR tickets. S2 represents the permission to split PNR tickets based on round-trip itineraries. T1 represents the service tag. Element requires that tickets be issued within a time period. T2 means that tickets are issued within 24 hours. T3 means that tickets are issued within 72 hours or within 48 hours of flight departure (whichever comes first). Each request must have a unique value for each category and be returned, and it must be separated by ‘,’ in the order of R, S, and T strictly. For example, R1, S2, and T1 represent products that are allowed to return to standard refunds and changes, split orders are allowed to be issued, and the ticketing time meets the site requirements. |
| isResidentDiscountEligible |
bool |
⬜ |
true means the order uses the islander discount price, the default is false |
| serviceTag |
object |
✅ |
The service requirement label specified this time includes the ticket issuance speed, whether the order can be split and the ticket is issued, whether it is allowed to change the ticket number and whether the platform email is used for the ticket issuance. |
| ssr |
array/ssr Element |
⬜️ |
Auxiliary information of the order |
| seats |
array/seats Element |
⬜️ |
Order seat selection |
| siteChannel |
int |
⬜ |
Site source, each site has different service requirements. Such as 1: represents site1 |
| ticketCurrencyPolicy |
string |
⬜ |
The currency requirement when issuing tickets on the official website. When it is empty, it means there is no limit. When the return value is ORIGIN, it means that the currency of the actual issuing place is required to pay and issue the ticket on the official website. |
object/Package Element
| Parameter Name |
Type |
Required |
Description |
| packageType |
string |
⬜ |
Package type, when empty, the default is AeroHubBundle, AirlineBundle is the airline package, AeroHubBundle is the agent combination package |
|
|
|
|
| packageName |
string |
⬜ |
Package name, when it is returned as AHBasic, it means the lowest price in AeroHubBundle; when packageType is AirlineBundle, it needs to be consistent with the airline package name; when packageType is AeroHubBundle, the corresponding package name needs to be returned according to the custom package specification. For details, see:‘BundleNameRules ’ |
object/Contact Element
| Parameter Name |
Type |
Required |
Description |
| fullName |
string |
✅ |
Contact name, separated by / between last name and first name, LastName/FirstName MiddleName |
| address |
string |
✅ |
Contact address |
| postCode |
string |
⬜️ |
post code |
| email |
string |
✅ |
Contact email |
| mobile |
string |
✅ |
Contact phone number |
| cityName |
string |
⬜️ |
Contact city, full English name of the city |
| countryCode |
string |
⬜️ |
Contact country, two-digit country code |
array/FlightSegments Element
| Parameter Name |
Type |
Required |
Description |
| depAirport |
string |
✅ |
Departure airport code, using IATA three-letter code as the standard |
| arrAirport |
string |
✅ |
Arrival airport code, using IATA three-letter code as the standard |
| depTime |
string |
✅ |
Departure date and departure time (local time) in ISO 8601 format |
| arrTime |
string |
✅ |
Arrival date and arrival time (local time) in ISO 8601 format |
| ageType |
int |
✅ |
Passenger type, 0 adult, 1 child, 2 infant |
| passengerNo |
int |
✅ |
The passenger’s serial number, starting from 0, is consistent with the passengerNo in the Order request. |
| passengerName |
string |
✅ |
Passenger name, separated by / between last name and first name, LastName/FirstName MiddleName |
| nationality |
string |
✅ |
Passenger nationality, using ISO 3166 two-character code as the standard |
| birthday |
string |
✅ |
Date of birth, format: YYYYMMDD |
| withPassengerNo |
int |
⬜️ |
This item will be returned when the passenger type is an infant, indicating the passengerNo of the accompanying adult passenger. |
| gender |
string |
✅ |
Passenger gender, M male, F female |
| cardType |
int |
✅ |
Document type: 0 NULL, 1 Unknown, 2 Passport, 3 Hong Kong and Macao Pass, 4 Taiwan Pass, 5 Taiwan Compatriot Permit (Taiwan and Mainland Travel Permit), 6 Home Return Permit (Hong Kong and Macao Mainland Travel Permit), 7 International Seaman’s Certificate, 8 ID Card, 9 NIE Spanish Certificate Number for Foreigners, 10 DNI Spanish Islander Certificate Number |
| cardNo |
string |
✅ |
ID number, maximum 15 characters |
| cardExpired |
string |
✅ |
Certificate validity period, format: YYYYMMDD |
| localityCodeOfResidency |
string |
⬜️ |
Island divisions such as: “Castell -Es-“ |
| seatGrade |
string |
✅ |
Class, F first class, C business class, S super economy class, Y economy class |
| seatClass |
string |
✅ |
cabin |
| flightNumber |
string |
✅ |
Flight number, such as: CA123 |
| segmentNo |
int |
✅ |
Flight sequence, 1 outbound trip, 2 return trip |
| sequence |
int |
✅ |
The sequence of flight segments starts from 1. Note: If it is a round trip, both the outbound and return journeys start from 1. |
| currency |
string |
✅ |
The quotation currency is generally consistent with the settlement currency agreed by the supplier. |
| ticketPrice |
float |
✅ |
Face price, excluding tax |
| taxAmount |
float |
✅ |
taxes |
| totalCost |
float |
✅ |
Total ticket price, face value + tax |
Object/ServiceTag Element
| Parameter Name |
Type |
Required |
Description |
| ticketSpeed |
int |
✅ |
0:30 minutes; 1:1hour 2:12hour |
| issueSpeedRequirement |
int |
✅ |
Indicates the required ticket issuance time limit after this scheduled order is issued, measured in minutes. |
| nonSplitOrder |
int |
✅ |
0-no limit 1-splitting orders and issuing tickets is prohibited) |
| nonReplaceTicketNo |
int |
✅ |
0-no limit 1-no change of ticket number after ticket issuance) |
| issueMailbox |
int |
✅ |
0-Email address of the ticket issuer 1-Incoming from the platform Indicates whether to use the incoming email address to issue tickets with the airline |
| issuePhone |
int |
✅ |
0-No limit 1-Incoming from the platform Indicates whether to use the incoming mobile phone number to issue tickets with the airline |
array/ssr Element
| Parameter Name |
Type |
Required |
Description |
| passengerNo |
int |
✅ |
Passenger’s serial number, starting from 0, consistent with passengerNo in FlightSegments |
| passengerName |
string |
✅ |
Passenger name, separated by / between last name and first name, LastName/FirstName MiddleName |
| flightNumber |
string |
✅ |
Flight number, such as: CA123 |
| segmentNo |
int |
✅ |
Flight sequence, 1 outbound trip, 2 return trip |
| sequence |
int |
✅ |
The sequence of flight segments starts from 1. Note: If it is a round trip, both the outbound and return journeys start from 1. |
| depAirport |
string |
✅ |
Departure airport code, using IATA three-letter code as the standard |
| arrAirport |
string |
✅ |
Arrival airport code, using IATA three-letter code as the standard |
| departureTime |
string |
✅ |
Departure date and departure time (local time), format: YYYYMMDDHHMM, for example, 202303100300 means 3:00 on March 10, 2023 |
| code |
string |
✅ |
Auxiliary code should be consistent with the code returned by the Order interface |
| name |
string |
✅ |
Auxiliary camp name, consistent with what is returned by the Order interface |
| type |
string |
✅ |
Auxiliary type, 0 checked baggage, 1 boarding baggage, 2 check-in, 3 boarding baggage + priority boarding package, consistent with what is returned by the Order interface |
| count |
int |
✅ |
The number of auxiliary operations is consistent with what is returned by the Order interface. |
| weight |
int |
✅ |
The weight of the auxiliary camp is consistent with that returned by the SSR interface. |
| bookSalePrice |
float |
✅ |
The quotation (unit price) of the auxiliary operation at the time of booking shall be consistent with that returned by the Order interface, and shall be kept to 2 decimal places. |
| currency |
string |
✅ |
The auxiliary currency should be consistent with the ticket and consistent with the one returned by the Order interface. |
| baggageSources |
string |
⬜️ |
Empty: baggage quotation from the supplier; FMKT: baggage warehouse quotation data from FareMarket |
array/seats Element
| Parameter Name |
Type |
Required |
Description |
| passengerNo |
int |
✅ |
Passenger’s serial number, starting from 0, consistent with passengerNo in FlightSegments |
| passengerName |
string |
✅ |
Passenger name, separated by / between last name and first name, LastName/FirstName MiddleName |
| flightNumber |
string |
✅ |
Flight number, such as: CA123 |
| segmentNo |
int |
✅ |
Flight sequence, 1 outbound trip, 2 return trip |
| sequence |
int |
✅ |
The sequence of flight segments starts from 1. Note: If it is a round trip, both the outbound and return journeys start from 1. |
| depAirport |
string |
✅ |
Departure airport code, using IATA three-letter code as the standard |
| arrAirport |
string |
✅ |
Arrival airport code, using IATA three-letter code as the standard |
| departureTime |
int |
✅ |
Departure date and departure time (local time), format: YYYYMMDDHHMM, for example, 202303100300 means 3:00 on March 10, 2023 |
| amount |
float |
✅ |
The price of seat selection, the amount is 0, represents the free seat selection included in the package |
| currency |
string |
✅ |
Transaction currency |
| seatCode |
string |
✅ |
Seat position number |
Response Example
Success Response:
{
"code": 200,
"msg": "Successful",
"data": {
"purchaseOrderNo": "F1745527321051406356",
"supplierOrderNo": "240112032518897783",
"pnrCode": "EFN5M5",
"tripType": 2,
"parentCarrier": "LA",
"paymentCode": "AG",
"lastUpdateTime": "2023-01-12 03:25:19",
"createTime": "2023-01-12 03:25:19",
"serviceTag": {
"ticketSpeed": 1,
"issueSpeedRequirement": 60,
"nonSplitOrder": 0,
"nonReplaceTicketNo": 1,
"issueMailbox": 0,
"issuePhone": 0
},
"issuePolicyType": "R1,S1,T1",
"contact": {
"fullName": "ZHANG/SAN",
"address": "haugenlia 12447",
"postCode": "10001",
"email": "sansan@aerohub.uk",
"mobile": "13801112547"
},
"flightSegments": [
{
"depAirport": "LIM",
"arrAirport": "CUN",
"depTime": "2023-01-23T10:50:00",
"arrTime": "2023-01-23T16:20:00",
"ageType": 0,
"passengerNo": 0,
"passengerName": "ZHANG/SAN",
"nationality": "PE",
"birthday": "19650929",
"gender": "F",
"cardType": 2,
"cardNo": "2230512125",
"cardExpired": "20280327",
"seatGrade": "Y",
"seatClass": "K",
"flightNumber": "LA2454",
"segmentNo": 1,
"sequence": 1,
"currency": "USD",
"ticketPrice": 682.46,
"taxAmount": 259.85,
"totalCost": 942.31
},
{
"depAirport": "CUN",
"arrAirport": "LIM",
"depTime": "2023-01-29T00:25:00",
"arrTime": "2023-01-29T05:40:00",
"ageType": 0,
"passengerNo": 0,
"passengerName": "ZHANG/SAN",
"nationality": "PE",
"birthday": "19650929",
"gender": "F",
"cardType": 2,
"cardNo": "2230512125",
"cardExpired": "20280327",
"seatGrade": "Y",
"seatClass": "V",
"flightNumber": "LA2457",
"segmentNo": 2,
"sequence": 1,
"currency": "USD",
"ticketPrice": 0.0,
"taxAmount": 0.0,
"totalCost": 0.0
}
],
"ssr": [
{
"passengerNo": 0,
"passengerName": "ZHANG/SAN",
"flightNumber": "LA2454",
"segmentNo": 1,
"sequence": 1,
"depAirport": "LIM",
"arrAirport": "CUN",
"departureTime": "2023-01-23T10:50:00",
"code": "PA20",
"name": "PA20",
"type": 0,
"count": 1,
"weight": 20,
"bookSalePrice": 50.0,
"currency": "USD"
},
{
"passengerNo": 0,
"passengerName": "ZHANG/SAN",
"flightNumber": "LA2457",
"segmentNo": 2,
"sequence": 1,
"depAirport": "CUN",
"arrAirport": "LIM",
"departureTime": "2023-01-29T00:25:00",
"code": "PA20",
"name": "PA20",
"type": 0,
"count": 1,
"weight": 20,
"bookSalePrice": 50.0,
"currency": "USD"
}
],
"seats": [
{
"passengerNo": 0,
"passengerName": "ZHANG/SAN",
"flightNumber": "LA2454",
"segmentNo": 1,
"sequence": 1,
"depAirport": "LIM",
"arrAirport": "CUN",
"departureTime": "2023-01-23T10:50:00",
"amount": 19.32,
"currency": "USD",
"seatCode": "A1"
},
{
"passengerNo": 0,
"passengerName": "ZHANG/SI",
"flightNumber": "LA2457",
"segmentNo": 2,
"sequence": 1,
"depAirport": "CUN",
"arrAirport": "LIM",
"departureTime": "2023-01-29T00:25:00",
"amount": 19.32,
"currency": "USD",
"seatCode": "A2"
}
]
}
}
Error Response
{
"code": 1000,
"msg": "Invalid API Key"
}
Things to note
- When encountering the returned JSON data
code When not equal to 200 or the HTTP status code is non-200, the provider needs to retry the call to ensure successful processing of the request.
Author:AeroHub Create time:2023-07-10 16:14
Last editor:AeroHub Update time:2026-10-20 11:28