Flight Bookings
Sell selected services on a ticketed booking
Overview
Sells the selection batchId on the ticketed reservation and settles its payment. Runs synchronously.
Outcomes
- 200 sold / partially_sold - the payment is captured (credit line billed) for what was sold; the unsold part is released. booking.pricing and booking.ticketedServices include the sale.
- 202 requested - the provider did not answer: the sale may have happened. The payment stays authorized until the reservation confirms or drops the services (webhook or a later GET /flights/bookings/{bookingId}). Do not select the services again.
- 409 44115 - a service is no longer offered at the price shown: nothing was sold, the payment was released. Select again.
- 502 54105 - the airline rejected the services: nothing was sold, the payment was released.
Retrying
The call is idempotent on batchId: a retry returns the first result (X-Idempotent-Replayed: true) and never sells or charges twice.
Partner events
flight.book.services_sold / flight.book.services_failed fire once per sale.
Access
Same as POST /flights/bookings/{bookingId}/services: account option, or system admin / operations on any account's booking.
post/flights/bookings/{bookingId}/services/confirm
Request
- Base URLhttps://api.liteapi.travel/v3.0
- URLhttps://api.liteapi.travel/v3.0/flights/bookings/{bookingId}/services/confirm
- AuthAPI key in header X-API-Key
Path parameters
bookingIdstring uuid required
Flight booking identifier
Request body
Response
Services sold (or the earlier result replayed)
Example response
{
"data": {
"booking": {
"customTags": {
"SOURCE": "EXAMPLE",
"TIER": "GOLD"
},
"status": "CONFIRMED",
"journey": {
"segments": [
{
"stops": [
{
"airportCode": "GIG",
"airportName": "Rio Galeão – Tom Jobim International Airport",
"arrivalTime": "2026-10-17T18:35:00",
"departureTime": "2026-10-17T19:25:00",
"duration": {
"iso8601": "PT50M",
"minutes": 50
}
}
]
}
],
"baggage": {
"included": [
{
"bagType": "cabin",
"description": "1 cabin bag up to 8 kg",
"passengerType": "ADT",
"pieces": 1,
"size": "55x40x20",
"unit": "kg",
"weightKg": 8
}
],
"paid": [
{
"bagType": "cabin",
"description": "1 cabin bag up to 8 kg",
"passengerType": "ADT",
"pieces": 1,
"size": "55x40x20",
"unit": "kg",
"weightKg": 8
}
]
},
"terms": {
"summary": [
{
"level": "warning",
"message": "Changes allowed with fee"
}
]
},
"cabinClass": "ECONOMY"
},
"ticketedServices": [
{
"services": [
{
"serviceId": "g6Rwc2lk2SQwMTlkMDY3NC1hMzQzLTc0OGEtYmYyYS1jMDk4ZmNjMTk2ZGGhcMtAfB6PXCj1w6Fjo1VTRA==",
"quantity": 1
}
],
"soldServices": [
{
"serviceId": "g6Rwc2lk2SQwMTlkMDY3NC1hMzQzLTc0OGEtYmYyYS1jMDk4ZmNjMTk2ZGGhcMtAfB6PXCj1w6Fjo1VTRA==",
"quantity": 1
}
]
}
]
},
"sale": {
"services": [
{
"serviceId": "g6Rwc2lk2SQwMTlkMDY3NC1hMzQzLTc0OGEtYmYyYS1jMDk4ZmNjMTk2ZGGhcMtAfB6PXCj1w6Fjo1VTRA==",
"quantity": 1
}
],
"soldServices": [
{
"serviceId": "g6Rwc2lk2SQwMTlkMDY3NC1hMzQzLTc0OGEtYmYyYS1jMDk4ZmNjMTk2ZGGhcMtAfB6PXCj1w6Fjo1VTRA==",
"quantity": 1
}
]
}
}
}Changes
No recorded changes to this operation across all 1 revision of this API.