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