Atlas API-Sabre
  1. Shopping and Ticketing
Atlas API-Sabre
  • Shopping and Ticketing
    • Search
      POST
    • Verify
      POST
    • Order
      POST
    • Order Commit
      POST
    • Payment
      POST
    • Retrieve Booking
      POST
    • Smart Search
      POST
    • Get Offer
      POST
    • Seat Availability
      POST
    • Get Luggage
      POST
  • Post Ticketing Service
    • Search Ancillary
      POST
    • Order Ancillary
      POST
  • Notifications and Webhook
    • Register Webhook
      POST
    • Incident List
      POST
  • Refund
    • Refund Quotation
      POST
    • Make a Refund
      POST
    • Query Refund Status
      POST
  • Other Functions
    • Regenerate Order
      POST
    • Stop Ticket Issuance
      POST
    • Order List
      POST
    • PNR Claim
      POST
    • Get Balance
      POST
    • City Pairs API
      POST
    • Email List
      POST
    • Extract PNR
      POST
    • getAtripToken
      POST
  1. Shopping and Ticketing

Verify

POST
/verify.do

Request

Header Params
Accept
string 
required
Example:
application/json
Content-Type
string 
required
Example:
application/json
Accept-Encoding
string 
required
Example:
gzip
x-atlas-client-id
string 
required
Example:
<YOUR_CLIENT_ID>
x-atlas-client-secret
string 
required
Example:
<YOUR_CLIENT_SECRET>
Body Params application/json
routingIdentifier
string 
required
TheroutingIdentifierfrom search response.
displayCurrency
string  | null 
optional
Currency for the display fares in response. If it is not sent in verify request, then the one in the search request will be used by default.
realTimeBaggage
boolean  | null 
optional
A flag indicating whether to query and return the baggage price from the airline during fare verification.
Default:
false
maxResponseTime
integer  | null 
optional
The interface timeout(in milliseconds), with a default of 5000ms.
Note:
Due to the influence of network transmission and computational performance, the client may still receive a normal result (instead of a timeout) when the response duration exceeds. This time is used to control the overall response duration of the interface within a certain range, and the error generally will not exceed several hundred milliseconds. If you have strict requirements for the timeout time, it is recommended that you set the timeout time of your HTTP tool library. If the HTTP tool library you use does not support this capability, you may need to use other tools to achieve it, and most programming languages provide relevant capabilities.
Default:
15000
paymentMethod
integer  | null 
optional
The payment method you prefer to use. If you specify a payment method (provided that the fare supports it), then you can only use that method for payment.
Note:
This parameter is specifically used in scenarios where Sabre only reads vendor fares. When a quote supports both VCC pass-through and MoR payment, the vendor fare will default to displaying the airline's price. If Sabre intends to use MoR, please specify this parameter to clarify the payment method, and we will display the MoR price in the vendor fare.
requestSource
optional
The tag to identify which channel does this traffic come from. For example: SkyScanner,Google,Oganic search,etc…
Any of
The tag to identify which channel does this traffic come from. For example: SkyScanner,Google,Oganic search,etc…
Example
{
    "routingIdentifier": "Q0pVX1NFTF8xXzIwMjUwNTE2X18xXzBfMHxsZmFsdTUyOTkyfDF8NjcuNDNfNjcuNDNfMTAuMTlfNS4wMF8xNTAuMDVfVVNEfENKVV9TRUxfMV8yMDI1MDUxNl9fMV8wXzBeQ0pVLVJTOTAyLS1HTVAtMjAyNTA1MTYwODAwLTIwMjUwNTE2MDkxNS1OT1JNQUwtMS1eNjcuNDNfNjcuNDNfMTAuMTlfNS4wMF8xNTAuMDVeQVJTX0FSU15eQVJTMUNKVVNFTDQwMDIwMjUwNTE2XktSV145MTQwOC45MF45MTQwOC45MF4xNDIzMi45OHwwfDIwMjUwNTEyMTUyMjE5fDB8MTc0NzAzNDUzOTE4NzVvUHl0fHx8fHw1LjAwfDJ8MHxFVVJ8bm9ybWFs.ARCGNw3zmGATmLi9Wdo3pi8HzKGMGqYjH71G1obB7/w=",
    "realTimeBaggage": false,
    "maxResponseTime": 15000,
    "paymentMethod": 5,
    "displayCurrency": "EUR",
    "requestSource": ""
}

Request samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://sandbox.atriptech.com/verify.do' \
--header 'Accept: application/json' \
--header 'Accept;' \
--header 'Accept-Encoding: gzip' \
--header 'Accept-Encoding;' \
--header 'x-atlas-client-id: <YOUR_CLIENT_ID>' \
--header 'x-atlas-client-id;' \
--header 'x-atlas-client-secret: <YOUR_CLIENT_SECRET>' \
--header 'x-atlas-client-secret;' \
--header 'Content-Type: application/json' \
--data-raw '{
    "routingIdentifier": "Q0pVX1NFTF8xXzIwMjUwNTE2X18xXzBfMHxsZmFsdTUyOTkyfDF8NjcuNDNfNjcuNDNfMTAuMTlfNS4wMF8xNTAuMDVfVVNEfENKVV9TRUxfMV8yMDI1MDUxNl9fMV8wXzBeQ0pVLVJTOTAyLS1HTVAtMjAyNTA1MTYwODAwLTIwMjUwNTE2MDkxNS1OT1JNQUwtMS1eNjcuNDNfNjcuNDNfMTAuMTlfNS4wMF8xNTAuMDVeQVJTX0FSU15eQVJTMUNKVVNFTDQwMDIwMjUwNTE2XktSV145MTQwOC45MF45MTQwOC45MF4xNDIzMi45OHwwfDIwMjUwNTEyMTUyMjE5fDB8MTc0NzAzNDUzOTE4NzVvUHl0fHx8fHw1LjAwfDJ8MHxFVVJ8bm9ybWFs.ARCGNw3zmGATmLi9Wdo3pi8HzKGMGqYjH71G1obB7/w=",
    "realTimeBaggage": false,
    "maxResponseTime": 15000,
    "paymentMethod": 5,
    "displayCurrency": "EUR",
    "requestSource": ""
}'

Responses

🟢200Success
application/json
Body
status
enum<integer> 
required
200: Illegal routing identifier. Description: The "routingIdentifier" in request contains invalid content. Please check the content of this field to ensure that the content returned by the search is passed back exactly as it is.
201: Invalid routing. Description: The airline has flights and quotations, but Atlas has closed sales for some reasons. The reasons can be 1) The sales were manually closed 2) The system has detected a risk of sold out 3) Prohibitions on nearby flights. Try booking after some time.
202: Routing identifier expired. Description: The routingIdentifier has a certain validity period. If the “routingIdentifier” is used after this time period, then this error is displayed. Conduct “Search” again and use the new “routingIdentifier”.
203: Airline closed. Description: The airline is no longer in business.
205: Timed out. Description:
207: Flight not available. Description: The required flight is no longer available at the airline's side, possibly due to the flight being sold out.
210: Fare family sold out. Description: The flight or the fare family is no longer available with the airline. Conduct the search again and rebook.
212: Illegal Request Parameter. Description: Some parameters do not meet the requirements. Please adjust them according to the error message.
213: Flight information changed. Description: Conduct the search again and rebook.
222: Fail to obtain baggage from airline. Description: Fail to obtain baggage from airline, pls retry the request.
299: Verify failed. Description: This is an error for which Atlas needs to take action. In some uncontrollable situations, such as network issues, upgrades, and restarts, 299 errors may occur. It is possible that the airline is not available or there are challenges at Atlas' end. Atlas needs to handle these errors internally.
Allowed values:
200201202203205207210212213222299
msg
optional
Any of
It serves as an additional description of the response result. Especially when the interface reports an error (status !=0), it is usually a human-readable error message. Note: Do not use this field in any programming scenarios. For example, do not judge whether the interface responds successfully based on this field. Instead, you should only determine it by checking whether the status is equal to0at any time.
sessionId
string 
required
The unique identifier for this verification. It is required when you call order function to make a reservation to identify which flight and fare the client is choosing.
maxSeats
integer 
required
Max seats allowed when booking. Please refer this element and prevent the end-users to choose more passengers than seat count.
routing
object (Routing) 
required
routingIdentifier
string 
required
This unique string identifier is used to verify requests for a particular route.
Note:
Has a certain validity period (generally not exceeding 6 hours).
supportCreditTransPayment
enum<string> 
deprecated
This tag is used to identify if the fare is support to be paid using the client's credit card(known as vcc passthrough). This field has been deprecated, please use supportPaymentMethods instead.
Allowed values:
01
Example:
1
supportPaymentMethods
array[integer]
required
Support payment methods for this fare. If payment is not supported in any way, this will be nullor[]. Each item in this array is one of the following:
1: deposit
3: vcc passthrough
4: BYOA(Bring Your Own Account)
5: MoR
Allowed values:
1345
currency
string 
required
The currency in which Atlas settles transactions with you.
adultPrice
number 
required
Adult fare per passenger.
adultTax
number 
required
Adult tax per passenger.
adultDetails
array[object (Price-Item) {4}]  | null 
optional
Details of the adult price composition.
childPrice
number 
required
Child fare per passenger.
childTax
number 
required
Child tax per passenger.
childDetails
array[object (Price-Item) {4}]  | null 
optional
Details of the child price composition.
infantPrice
number 
required
Infant fare per passenger.
infantTax
integer 
required
Infant tax per passenger.
infantDetails
array[object (Price-Item) {4}]  | null 
optional
Details of the child infant composition.
infantAllowed
boolean 
required
Since infantPrice and infantTax will never be null, when the fare does not support infants or is free for infants, both infantPrice and infantTax display 0. In this case, you need this field to distinguish which situation it is.
Scenario description:
true: infants is supported by this fare, infantPrice and infantTax will >= 0
false: infants is not supported by this fare, infantPrice and infantTaxwill be displayed as 0
childMandatorySeatingFee
number  | null 
optional
Only valid for FR integration.
FR Seat Selection Rules:
Children under 12 years old are provided with free seats.
Children must be seated in the same row as an adult.
Each adult may accompany up to 4 children.
For fare families that do not include seat selection fees (e.g., Basic or Family Plus), FR offers discounted seat selection fees for adults traveling with children. ThechildMandatorySeatingFeefield displays this discounted fee.
For fare families that already include seat selection fees, this field will be null.
Handling by Atlas for Fare Families Without Seat Selection Fees:
The number of children cannot exceed 4.
Customers cannot select seats manually.
Atlas will automatically assign seats randomly to one adult and all children according to FR's rules. The adult will be charged the childMandatorySeatingFee for their seat.
For Fare Families That Include Seat Selection Fees:
Seat selection is free.
Users may call the seat map API to select seats; otherwise, Atlas will automatically assign seats.
transactionFeePerPax
number 
deprecated
Technical service fee per passenger. This field has been deprecated and final total transaction fee will calculated based on transactionFee and transactionFeeMode.
transactionFee
number 
required
Technical service fee as per transactionFeeMode. The following lists the calculation methods for the final technical service fee in various situations.
transactionFeeMode=PER_SEGMENT:transactionFee * number of passengers * number of segments.
transactionFeeMode=PER_TICKET:transactionFee * number of passengers * number of orders on airline side.
transactionFeeMode=PER_PAX:transactionFee * number of passengers.
transactionFeeMode=PER_BOOKING:transactionFee.
transactionFeeMode
enum<string> 
required
Calculation method for technical service fee.
Allowed values:
PER_SEGMENTPER_TICKETPER_PAXPER_BOOKING
Example:
PER_PAX
fromSegments
array[object (Routing-Segment) {19}] 
required
For outbound segments.
retSegments
array[object (Routing-Segment) {19}]  | null 
optional
For inbound segments. For one-way, this field will be null or [].
rule
object 
required
ancillaryProductElements
array[object (AncillaryProduct) {14}]  | null 
optional
vendorFare
object 
required
To identify the vendor’s fare with vendor’s currency. It is only available whensupportPaymentMethodscontains3or4.
links
object (T-And-C-Link) 
required
The terms and conditions links of the airlines. Will only return in verify response.
separateBookings
boolean 
required
When the outbound and inbound of round trip need to be booked separately, it will be true.
refreshTime
string 
required
If the fare is from the cache of Atlas, this field is used to indicate the refresh time of the cache. The time is a certain moment in the past (UTC), and the format is:yyyy-MM-dd'T'HH:mm:ss'Z'.
expireTime
string 
required
If the current fare comes from the cache of Atlas, this field is used to indicate the estimated expiration time of the cache. This time is a certain moment in the future (UTC), and the format is:yyyy-MM-dd'T'HH:mm:ss'Z'.
Note:
This time is estimated, which means Atlas may refresh the cache before or after that time.
displayFare
object  | null 
optional
To identify the display fare with display currency. If the request parameterdisplayCurrencyfor the search or verify is not specified, then this node will benull.
ancillarySupported
array[string]
required
A list of ancillary service types that the fare allows for additional purchase. Possible value contains:
luggage
seat: You can carry out the subsequent seat selection process through our seat map interface.
cardChargeList
array[object (CardCharge) {4}]  | null 
optional
Payment handling fee for MoR/VCC
bookingRequirement
object (BookingRequirement) 
required
passenger
object 
required
Passenger information requirements
priceChange
object 
required
isPriceChange
boolean 
required
Indicate whether the price has changed (compared to the search result)
originalAdultPrice
number 
required
Original adult fare price returned in search response
originalAdultTax
number 
required
Original adult tax returned in search response
originalChildPrice
number 
required
Original child fare price returned in search response
originalChildTax
number 
required
Original child tax returned in search response
originalInfantPrice
number 
required
Original infant fare price returned in search response
originalInfantTax
integer 
required
Original infant tax returned in search response
newAdultPrice
number 
required
Current adult fare price returned in search response
newAdultTax
number 
required
Current adult tax returned in search response
newChildPrice
number 
required
Current child fare price returned in search response
newChildTax
number 
required
Current child tax returned in search response
newInfantPrice
number 
required
Current infant fare price returned in search response
newInfantTax
integer 
required
Current infant tax returned in search response
Example
{
   "sessionId": "bed53752-2c9a-4d76-9eb8-404c813b8324",
   "maxSeats": 5,
   "routing": null,
   "bookingRequirement": {
       "passenger": {
           "birthday": {
               "type": "string",
               "required": true,
               "description": null,
               "maxLength": null
           },
           "cardIssuePlace": {
               "type": "string",
               "required": false,
               "description": null,
               "maxLength": null
           },
           "cardNum": {
               "type": "string",
               "required": false,
               "description": null,
               "maxLength": null
           },
           "passengerType": {
               "type": "int",
               "required": true,
               "description": null,
               "maxLength": null
           },
           "gender": {
               "type": "string",
               "required": true,
               "description": null,
               "maxLength": null
           },
           "nationality": {
               "type": "string",
               "required": true,
               "description": null,
               "maxLength": null
           },
           "cardExpired": {
               "type": "string",
               "required": false,
               "description": null,
               "maxLength": null
           },
           "name": {
               "type": "string",
               "required": true,
               "description": null,
               "maxLength": null
           },
           "cardType": {
               "type": "string",
               "required": false,
               "description": null,
               "maxLength": null
           }
       }
   },
   "priceChange": {
       "isPriceChange": false,
       "originalAdultPrice": 58.87,
       "originalAdultTax": 8.56,
       "originalChildPrice": 58.87,
       "originalChildTax": 8.56,
       "originalInfantPrice": 10.19,
       "originalInfantTax": 0.00,
       "newAdultPrice": 58.87,
       "newAdultTax": 8.56,
       "newChildPrice": 58.87,
       "newChildTax": 8.56,
       "newInfantPrice": 10.19,
       "newInfantTax": 0.00
   },
   "status": 0,
   "msg": "success"
}
Modified at 2025-07-18 07:34:52
Previous
Search
Next
Order
Built with