Verify
- Purpose: Used to verify whether the ticket price has changed and ensure the accuracy of the price during the booking process.
- Request:
POST - Encryption:
No
Request
| Parameter Name |
Type |
Required |
Description |
| requestId |
string |
✅ |
Request ID. Each interface in the booking process is unique. This field can be used to connect a complete booking process. The length is 32 bits. |
| tripType |
int |
✅ |
Trip type: 1 one-way, 2 round-trip |
| adultNumber |
int |
✅ |
Number of adult passengers |
| childNumber |
int |
⬜ |
Number of child passengers |
| infantNumber |
int |
⬜ |
Number of infant passengers |
| routing |
object/routing Element |
✅ |
Used to record trip information |
| isResidentDiscountEligible |
bool |
⬜ |
true means the order uses the islander discount price, the default is false |
| siteChannel |
int |
⬜ |
Site source, each site has different service requirements. Such as 1: represents site1 |
| customerPriceInfo |
string |
⬜ |
Price information obtained by the customer query interface, in json format, example: {“adt”: {“fare”: 23.45, “tax”: 5.86},”chd”: {“fare”: 23.45, “tax”: 5.86},”inf”: {“fare”: 23.45, “tax”: 5.86}} |
object/routing Element
| Parameter Name |
Type |
Required |
Description |
| data |
string |
✅ |
The original data returned by the search interface is used for internal business connection by suppliers. |
| fromSegments |
array/Segment Element |
✅ |
Outbound itinerary information |
| retSegments |
array/Segment Element |
⬜ |
Return trip information |
| packageInfo |
object/packageInfo Element |
⬜ |
For package information, refer to the packageInfo Element of the search interface |
| issuePolicyType |
string |
⬜ |
Not enabled yet. 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 - cancellations 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 according to the round-trip itinerary. 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. |
array/Segment Element
| Parameter Name |
Type |
Required |
Description |
| marketingCarrier |
string |
✅ |
Airline code, using IATA two-character code as the standard, corresponds to the first two digits in flightNumber |
| depAirport |
string |
✅ |
Departure airport code, using IATA three-letter code as the standard |
| depTime |
string |
✅ |
Departure date and departure time (local time), format: YYYYMMDDHHMM, for example, 202303100300 means 3:00 on March 10, 2023 |
| arrAirport |
string |
✅ |
Arrival airport code, using IATA three-letter code as the standard |
| arrTime |
string |
✅ |
Arrival date and arrival time (local time), format: YYYYMMDDHHMM, for example, 202303101305 means 13:05 on March 10, 2023 |
| 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 |
| codeShare |
bool |
✅ |
Whether this flight is a shared flight, true is a shared flight, false is not a shared flight, if true is returned, operatingCarrier and operatingFlightNo must be returned |
| aircraftCode |
string |
⬜️ |
Model, using IATA three-letter code as standard |
| segmentNo |
int |
⬜️ |
Flight sequence, 1 outbound trip, 2 return trip |
| operatingCarrier |
string |
⬜ |
The actual operating airline code uses the IATA two-character code as the standard, which corresponds to the first two digits in operatingFlightNo. |
| operatingFlightNo |
string |
⬜ |
Actual flight number |
| stopCities |
string |
⬜ |
Stop cities, use/separate multiple times, adopt ISO 3166 three-character code as the standard |
| stopAirports |
string |
⬜ |
Stopover airports, multiple/separate, adopt ISO 3166 three-character code as the standard |
Sample Request
{
"requestId": "74e155e75f9d4a33",
"tripType": 2,
"adultNumber": 1,
"childNumber": 0,
"infantNumber": 0,
"routing": {
"data": "DST_djlfOUNCMkNCSl9QVkdoU2l0ZV9fX18w",
"fromSegments": [
{
"marketingCarrier": "9C",
"depAirport": "PVG",
"depTime": "202302100915",
"arrAirport": "HKG",
"arrTime": "202302101220",
"seatGrade": "",
"seatClass": "V",
"flightNumber": "9C8921",
"codeShare": false,
"aircraftCode": "",
"segmentNo": 1,
"operatingCarrier": "",
"operatingFlightNo": "",
"stopCities": "",
"stopAirports": ""
}
],
"retSegments": [
{
"marketingCarrier": "9C",
"depAirport": "HKG",
"depTime": "202302151320",
"arrAirport": "PVG",
"arrTime": "202302151545",
"seatClass": "V",
"seatGrade": "",
"flightNumber": "9C8922",
"codeShare": false,
"aircraftCode": "",
"segmentNo": 2,
"operatingCarrier": "",
"operatingFlightNo": "",
"stopCities": "",
"stopAirports": ""
}
],
"packageInfo": null
},
"siteChannel": ""
}
Response
| Parameter Name |
Type |
Required |
Description |
| marketErrorCode |
int |
✅ |
Supplier system error code is used to assist AeroHub and suppliers in troubleshooting problems. Please return the true error truthfully. |
| marketErrorMsg |
string |
✅ |
Supplier system error description, please truthfully return the real error reason, the length is less than 300 characters |
| sessionId |
string |
✅ |
Session ID, the supplier’s unique ID for each interface connected in series during the reservation process, consisting of numbers or letters, with a maximum length of 40 characters |
| maxSeats |
int |
✅ |
The maximum number of seats that can be reserved is 9, which cannot be less than the number of people at the time of price verification request. |
| routing |
object/routing Element |
✅ |
Check price and return itinerary information |
object/Routing Element
| Parameter Name |
Type |
Required |
Description |
| data |
string |
✅ |
For the supplier’s own use, necessary information can be saved. When placing an order, the original data during Verify will be sent back to the supplier in the request message, with the length not exceeding 64 bits. |
| fromSegments |
array/Segment Element |
✅ |
Itinerary information for outbound journey, reference request |
| retSegments |
array/Segment Element |
⬜️ |
Return itinerary information, refer to the request |
| priceList |
array/priceList Element |
✅ |
For air ticket prices of different passenger types, please refer to the search interface |
| eligibility |
string |
⬜️ |
Passenger identity three-character code, NOR ordinary adults, LAB workers, SEA seafarers, SNR seniors, STU students, YOU young people |
| validatingCarrier |
string |
✅ |
The airline code that actually issued the ticket uses the IATA two-letter code as the standard |
| 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. Note: Each letter represents a category, where R1 is only allowed to be combined with T1, but can be combined with any S type; R2 can be combined with any T and S type. |
| fareBasis |
string |
⬜️ |
Corresponds to the fare level in GDS, one for each flight segment, separated by “;” when multiple |
| bookingOfficeNo |
string |
⬜️ |
Reservation office number, a field reserved by AeroHub. It can be left blank at this stage. |
| ticketingOfficeNo |
string |
⬜️ |
Office number for issuing tickets, a field reserved by AeroHub. It can be passed empty at this stage. |
| reservationType |
string |
⬜️ |
Policy source, a field reserved by AeroHub. It can be passed empty at this stage. |
| posCode |
string |
⬜️ |
The country code for issuing tickets adopts ISO 3166 two-character code as the standard. Multiple issuing places are separated by “|” |
| complexTerm |
int |
⬜️ |
A field reserved for special products. AeroHub currently has no special products. You can pass 0 in this field. |
| minAge |
int |
⬜️ |
The minimum age limit for passengers on this flight, 0 means no limit |
| maxAge |
int |
⬜️ |
The maximum age limit for passengers on this flight, 0 means no limit |
| planCategory |
int |
⬜️ |
AeroHub reserved fields |
| invoiceType |
string |
✅ |
The types of vouchers that suppliers can provide, T itinerary, F invoice, E electronic invoice |
| minPassengerCount |
int |
⬜️ |
The minimum number of people available for this flight, starting from 1 |
| maxPassengerCount |
int |
⬜️ |
The maximum number of people that can be sold on this flight |
| note |
string |
⬜️ |
Remarks, maximum 300 characters |
| airlineAncillaries |
object/airlineAncillaries Element |
⬜️ |
Baggage information, used to reflect whether baggage can be sold and whether there is free baggage, refer to the search interface |
| formatBaggageDetailList |
array/formatBaggageDetailList Element |
⬜️ |
For baggage information in the package, please refer to the search interface |
| refundInfoList |
array/refundInfoList Element |
⬜️ |
For refund rules, please refer to the search interface |
| changesInfoList |
array/changesInfoList Element |
⬜️ |
To change the rules, please refer to the search interface. |
| packageInfo |
object/packageInfo Element |
⬜️ |
For package information, refer to the search interface |
| currency |
string |
✅ |
The quotation currency is generally consistent with the settlement currency agreed by the supplier. |
| ticketTimeUnit |
int |
⬜️ |
The ticket issuance time, measured in minutes, is used to match AeroHub’s ticket issuance requirements for different products. The return value will be given priority for matching and price comparison. |
| combineIndexs |
array |
⬜️ |
Splicing quotation splicing point, a field reserved by AeroHub, currently not available, can be passed empty |
| endorsement |
int |
⬜️ |
Whether to support endorsement, 0 does not support, 1 supports |
Response Example
Success Response:
{
"marketErrorCode": 200,
"marketErrorMsg": "Successful",
"sessionId": "aNBOGd3p7Kf72ALZOQY",
"maxSeats": 9,
"routing": {
"data": "DST_djlfOUNCMkNCSl9QVkdfSEtHXzIwMj",
"fromSegments": [
{
"marketingCarrier": "9C",
"depAirport": "PVG",
"depTime": "202302100915",
"arrAirport": "HKG",
"arrTime": "202302101220",
"seatGrade": "",
"seatClass": "V",
"flightNumber": "9C8921",
"codeShare": false,
"aircraftCode": "",
"segmentNo": 1,
"operatingCarrier": "",
"operatingFlightNo": "",
"stopCities": "",
"stopAirports": ""
}
],
"retSegments": [
{
"marketingCarrier": "9C",
"depAirport": "HKG",
"depTime": "202302151320",
"arrAirport": "PVG",
"arrTime": "202302151545",
"seatClass": "V",
"seatGrade": "",
"flightNumber": "9C8922",
"codeShare": false,
"aircraftCode": "",
"segmentNo": 2,
"operatingCarrier": "",
"operatingFlightNo": "",
"stopCities": "",
"stopAirports": ""
}
],
"priceList": [
{
"passengerType": 0,
"publishPrice": 0,
"price": 608,
"taxFeeAmount": 369,
"taxFeeDisclosureList": []
},
{
"passengerType": 1,
"publishPrice": 0,
"price": 608,
"taxFeeAmount": 369,
"taxFeeDisclosureList": []
}
],
"eligibility": "NOR",
"validatingCarrier": "9C",
"issuePolicyType": "R1,S1,T1",
"fareBasis": "",
"bookingOfficeNo": "",
"ticketingOfficeNo": "",
"reservationType": "",
"posCode": "",
"complexTerm": 0,
"minAge": 0,
"maxAge": 0,
"planCategory": 0,
"invoiceType": "E",
"minPassengerCount": 1,
"maxPassengerCount": 9,
"note": "xxx",
"airlineAncillaries": {
"baggageService": true,
"unFreeBaggage": true
},
"formatBaggageDetailList": [],
"refundInfoList": [
{
"passengerType": 0,
"refundType": 0,
"refundStatus": "T",
"refundFee": 0,
"refNoshow": "T",
"refNoShowCondition": 0,
"refNoshowFee": 0,
"conditionList": []
},
{
"passengerType": 1,
"refundType": 0,
"refundStatus": "T",
"refundFee": 0,
"refNoshow": "T",
"refNoShowCondition": 0,
"refNoshowFee": 0,
"conditionList": []
}
],
"changesInfoList": [
{
"passengerType": 0,
"changesType": 0,
"changesStatus": "T",
"changesFee": 0,
"revNoshow": "T",
"revNoShowCondition": 0,
"revNoshowFee": 0,
"conditionList": ""
},
{
"passengerType": 1,
"changesType": 0,
"changesStatus": "T",
"changesFee": 0,
"revNoshow": "T",
"revNoShowCondition": 0,
"revNoshowFee": 0,
"conditionList": ""
}
],
"packageInfo": null,
"currency": "USD",
"ticketTimeUnit": 1000,
"combineIndexs": [],
"endorsement": 0
}
}
Error Response
{
"marketErrorCode": 5118,
"marketErrorMsg": "System error"
}
Author:AeroHub Create time:2023-07-10 16:10
Last editor:AeroHub Update time:2026-10-20 11:28