Flight search and booking, end to end
Search live fares across sources, revalidate the price, book, and issue tickets. One set of REST endpoints, prices in USD.
{
"AdultCount": 1,
"TravelPreference": { "CabinType": 3 },
"OriginDestinationInformations": [
{ "OriginLocationCode": "TBS",
"DestinationLocationCode": "DXB",
"DepartureDateTime": "2026-11-14T00:00:00" }
]
}Airline content is fragmented and every source speaks its own dialect. This flight booking API unifies search, fare rules, baggage, booking, ticketing, and refunds behind one consistent JSON contract.
Behind the endpoints sits a normalized fare engine that talks to global distribution systems and low-cost carriers through one JSON contract. You get consistent itineraries, fare rules, baggage, and seat data whether the content comes from a GDS or a direct airline link, so your flight booking app or OTA integrates once and scales everywhere.
What you get
Search the cheapest itinerary per flight group, or stream results over server-sent events for a fast first paint.
Revalidate a fare right before booking, so the price you charge is the price you get.
Own the full lifecycle: hold a seat, issue the ticket, then track, cancel, or refund.
Stream itineraries over server-sent events for a fast first paint on slow routes.
Full post-ticketing: retrieve documents, void inside the window, cancel, and refund.
How the flow works
Search
Post routes and dates, get priced itineraries back, or stream them over server-sent events.
Revalidate
Re-price the chosen itinerary right before booking so the fare you charge is the fare you get.
Book
Create the booking, hold the seats, and receive a booking reference.
Issue
Issue the ticket against your balance, then track, void, cancel, or refund.
Key endpoints
/Air/AirLowFareSearchSearch the cheapest itinerary per flight group./Air/AirLowFareSearchStreamStream itineraries over server-sent events./Air/AirRevalidateRe-price and validate an itinerary before booking./Air/AirBookCreate the booking and hold seats./Air/AirTicketIssue the ticket for a booking./Air/AirBookingDetailsRetrieve a booking, its status, and documents.Request and response
{
"AdultCount": 1,
"TravelPreference": { "CabinType": 3 },
"OriginDestinationInformations": [
{ "OriginLocationCode": "TBS",
"DestinationLocationCode": "DXB",
"DepartureDateTime": "2026-11-14T00:00:00" }
]
}{
"itineraries": [
{
"fareCode": "TBSDXB-Y-412",
"total": { "amount": 412.00, "currency": "USD" },
"seatsRemaining": 5,
"segments": [
{ "from": "TBS", "to": "DXB",
"depart": "2026-11-14T09:40",
"carrier": "EK", "flight": "2201" }
]
}
]
}What the response includes
fareCode- Opaque identifier you pass to revalidate and book.
total- Final price with currency, already normalized to USD.
seatsRemaining- Bookable seats left at this fare.
segments- Each flight leg with carrier, flight number, times, and airports.
baggage- Included allowance and paid options per segment.
Airlines
Frequently asked questions
What does flight search return?
Priced itineraries, each with a fare code, the flight segments, the total in USD, and the seats remaining.
Can I stream results?
Yes. The incremental search endpoint pushes itineraries over server-sent events as they arrive.
How do I test safely?
Point your client at the sandbox. Search is real; the ticket-issuing call is simulated against a separate wallet.
Do you support one-way, return, and multi-city?
Yes. Send one or more origin-destination pairs in the same search body; one-way, return, and multi-city all use the same shape.
How are refunds handled?
Void inside the carrier's void window, or file a refund after ticketing. The API returns the refundable amount and the resulting status.
Build your travel product on one API.
Free to integrate. 1% per issued ticket, capped at $10. Live coverage across flights, hotels, and activities.

