Skip to main content
This walks through one complete one-way booking against staging. You’ll need an API user and a funded staging wallet from your account manager.
1

Authenticate

Keep the accessToken. It’s valid for expiresIn seconds (normally 3600).
2

Search

Searches take 5 to 90 seconds. Note the requestId and pick an offer’s offerId from offers. Carrier and airport names for the codes in each offer are in dictionaries.
3

Check the offer

If priceHasChanges is true, show the new offer.price.total to the customer before going on.
4

Pick a fare family (optional)

Only when offer.hasFareBrands is true. Call fare-brands, choose a brand, then apply its key with change-options. Create the order with the offerId that change-options returns. See Fare families.
5

Create the order

Nothing is booked and no money moves here. The response is the order with status Submit and its price.total: confirm it with the customer, and keep the orderId. To hold the seats without paying yet, add "holdOnly": true when the offer’s supportsOnHold is true. See On-hold bookings.
Creating an order isn’t idempotent. Never retry it automatically.
6

Issue

This books the seats and charges your wallet, in one call that takes 10 to 60 seconds. If the wallet is short you get 402 before anything is booked. Check status: IssuedSucceeded means you have ticket numbers in tickets. On a 504, wait 10 to 30 seconds and call again with the same orderId; the wallet isn’t charged twice.

Next