Skip to main content

Order ancillaries

Seat availability and the ancillary service list for an existing booking:

  • POST /json/{version}/orders/{orderId}/seats — seat maps with per-seat pricing.
  • POST /json/{version}/orders/{orderId}/services — purchasable services with per-passenger pricing.

For the same lookups against a cached offer before booking, see offer ancillaries. Purchased items are added to the order with change order AcceptOffer instructions.

Read-only API keys can use these endpoints; full transaction permissions are not required.

Request

orderId in the path is the order ID or record locator (PNR). The body is optional — when omitted, availability covers the whole order:

FieldDescription
orderItemIdsOptional order items (from order retrieve order.items[].itemId) to scope the lookup.
passengersOptional passenger scope: paxId (from the retrieved order, required per entry) and type.
POST /json/v0/orders/ABC123/seats
Authorization: <bearer token from /auth/token>
Content-Type: application/json

{
"orderItemIds": [
"OOI-FL-eyJ2IjoxfQ"
],
"passengers": [
{
"paxId": "PX1",
"type": "ADT"
}
]
}

For the service list, replace /seats with /services — the body is identical.

Seats response

Same shape as offer ancillaries: data.legSeatMapsdecks[]compartments[]units[] with availability states and passengerPricing.

{
"data": {
"legSeatMaps": [
{
"departureStation": "SLC",
"arrivalStation": "CHS",
"equipmentType": "220",
"segmentRefId": "SEG1",
"decks": [
{
"number": 1,
"compartments": [
{
"designator": "Y",
"units": [
{
"designator": "10A",
"assignable": true,
"availability": "Open",
"group": "3",
"properties": [
"WINDOW"
],
"passengerPricing": [
{
"offerItemId": "OOI-FL-eyJ2IjoxfQ",
"paxRefId": "PX1",
"passengerType": "ADT",
"amount": 25,
"currency": "USD",
"taxAmount": 0
}
]
},
{
"designator": "10B",
"assignable": false,
"availability": "Reserved",
"group": "3",
"properties": [
"MIDDLE"
]
}
]
}
]
}
]
}
]
},
"error": null
}

Services response

{
"data": {
"services": [
{
"ssrCode": "BAG1",
"name": "First checked bag",
"type": "Baggage",
"feeCode": "BAG",
"segmentAvailability": [
{
"scope": "journey",
"journeyRefId": "JK1",
"passengerPricing": [
{
"offerItemId": "OOI-FL-eyJ2IjoxfQ",
"paxRefId": "PX1",
"passengerType": "ADT",
"amount": 35,
"currency": "USD",
"taxAmount": 0
}
]
}
]
}
]
},
"error": null
}

Order ancillaries errors

CodeHTTP statusCause
ERR-1002404Unsupported version segment in the path.
ERR-1004400Invalid field value: passenger ID contains the pipe delimiter.
ERR-1005422Request validation failed.
ERR-4000404Order not found.
ERR-8000401Missing or invalid API key or bearer token.
ERR-8001403API key not authorized for this request.
ERR-8002503Authentication store unavailable.
ERR-9003500Ancillary lookup failed upstream.