SeatAvailability
Modified on: 2026-10-13 10:52
TABLE OF CONTENTS
interface retrieves available seating options, including their locations, features(window/exit..), and real-time pricing for a specific itinerary.
| Version | Date | Description of Edit |
|---|---|---|
| V1.0 | 2025/10/22 | Initial Commit |
| V1.1 | 2025/11.23 | Added bundleOfferId parameter to support bundle seat selection in request |
| V1.2 | 2026/07/02 | SeatAvailabilityRS: Added detailed price breakdown fields under seatPsgFares. |
| V2.0 | 2026/08/15 | SeatAvailabilityRQ:
|
| Request Details | ||
|---|---|---|
| Path | V1.0 | /api/flight/connectivity/search/seatAvailability (for freshbooking) /api/flight/connectivity/order/seatAvailability (for postbooking) |
| Path | V1.2 | /api/flight/connectivity/search/V1.2/seatAvailability (for freshbooking) /api/flight/connectivity/order/V1.2/seatAvailability (for postbooking) |
| Path | V2.0 | /api/flight/connectivity/search/V2.0/seatAvailability (for freshbooking) /api/flight/connectivity/order/V2.0/seatAvailability (for postbooking) |
Request Payload Example
{
"offer": {
"offerId": "bb2e32186bdb4048a9a8b02c9902fc29"
}
}Request Payload Structure
| Key | Parent | Type | Mandatory/Optional | Description |
|---|---|---|---|---|
| offer | root | Object | O | |
| offerId | offer | String | M | Use this parameter when adding services during the initial booking process. offerId should return from AirShopping endpoint. |
| bundleOffers | offer | Array | O | |
| bundleOfferId | bundleOffers | String | O | The bundleOfferId parameter is required when querying seat availability specifically for seats included in a bundle purchase. Include this field only when:
|
| order | root | Object | O | |
| supplierOrderId | order | String | M | Use this parameter when adding services after a ticket has been issued (post-booking). It references the existing, confirmed order |
| gdnOrderId | order | String | O | |
| reassignmentSeat | order | Object | O | [Since v2.0] Required ONLY when searching for a seat reassignment |
| targetSupplierBookingId | reassignmentSeat | String | M | [Since v2.0] The unique instance identifier of the specific booked ancillary service |
| targetgdnBookingId | reassignmentSeat | String | M | [Since v2.0] |
| reshopOffer | order | Object | O | [Since v2.0] This is used to shopping availability seat during flight time change process |
| reshopOfferId | reshopOffer | String | M | [Since v2.0] The unique identifier of the flight exchange offer, which is generated and returned by the preceding orderReshop API response. This field is strictly required only when retrieving seat maps during a post-booking flight exchange flow. The system uses this ID to locate the newly selected flights, dates, and cabin configurations to render the correct seat layout. Leave this field empty or null for standard new booking flows. |
| reshopTransInfo | reshopOffer | String | M | [Since v2.0] The unique identifier of the flight exchange offer, which is generated and returned by the preceding orderReshop API response. This field is strictly required only when retrieving seat maps during a post-booking flight exchange flow. The system uses this ID to locate the newly selected flights, dates, and cabin configurations to render the correct seat layout. Leave this field empty or null for standard new booking flows. |
| tripsInfo | root | Object | O | |
| tripKey | tripsInfo | String | M | |
| onwardTrip | tripsInfo | Object | M | |
| segmentInfos | onwardTrip | Array | M | segment information list |
| segmentSequence | segmentInfos | String | M | |
| flightDesignator | segmentInfos | Object | M | |
| marketingCarrier | flightDesignator | Object | M | |
| marketingCarrierCode | marketingCarrier | String | M | |
| marketingFlightNumber | marketingCarrier | String | M | |
| departureInfo | segmentInfos | Object | M | |
| departureDate | departureInfo | String | M | YYYY-MM-DD |
| departureTime | departureInfo | String | M | HH:MM |
| airportCode | departureInfo | String | M | |
| arrivalInfo | segmentInfos | Object | M | |
| arrivalDate | arrivalInfo | String | M | YYYY-MM-DD |
| arrivalTime | arrivalInfo | String | M | HH:MM |
| airportCode | arrivalInfo | String | M | |
| returnTrip | tripsInfo | Object | O | |
| promotionCriteria | root | Object | O | A Promotion and discount code criteria to be passed to the retailer airline that could influence returned offers |
| promotionCode | promotionCriteria | String | O | Promotion code ID or number. |
Response
Response Payload Example
{
"error": null,
"seatResult": {
"flightOfferRefId": "bb2e32186bdb4048a9a8b02c9902fc29",
"flightOrderRef": null,
"onwardTrip": {
"segmentSeatInfos": [
{
"segmentInfo": {
"segmentSequence": 1,
"duration": null,
"flightDesignator": {
"marketingCarrier": {
"marketingCarrierCode": "AK",
"marketingCarrierName": "AK",
"marketingFlightNumber": "62",
"equipmentType": null,
"carbonEmission": null
},
"operatingCarrier": null
},
"departureInfo": {
"airportCode": "CCU",
"airportName": "CCU",
"terminal": null,
"departureDate": "2025-11-04",
"departureTime": "01:05"
},
"arrivalInfo": {
"airportCode": "KUL",
"airportName": "KUL",
"terminal": null,
"arrivalDate": "2025-11-04",
"arrivalTime": "07:30"
},
"stopNumber": null,
"stops": null
},
"seats": [
{
"serviceOfferId": "5cc14388f9aceb8baf836b8b702cb6eb",
"designator": "25A",
"deck": "Main",
"rowNo": "25",
"colNo": "A",
"seatTypes": [
"WINDOW"
],
"seatPsgFares": [
{
"psgType": "ADT",
"unitPrice": {
"totalAmount": "0.000",
"currency": "USD",
"settlementPrices": null
},
"seatSettlePrice": null
},
{
"psgType": "CHD",
"unitPrice": {
"totalAmount": "0.000",
"currency": "USD",
"settlementPrices": null
},
"seatSettlePrice": null
}
],
"seatExtraInfo": null
}
]
}
]
}
}
}
| Key | Parent | Type | Mandatory/Optional | Description |
|---|---|---|---|---|
| seatResult | root | Object | O | |
| flightOfferRefId | seatResult | String | O | |
| flightOrderRef | seatResult | Object | O | |
| supplierOrderId | flightOrderRef | String | M | |
| gdnOrderId | flightOrderRef | String | O | |
| onwardTrip | seatResult | Object | M | |
| segmentSeatInfos | onwardTrip | Array | M | |
| segmentInfo | segmentSeatInfos | Object | M | |
| segmentSequence | segmentInfo | String | M | |
| flightDesignator | segmentInfo | Object | M | |
| marketingCarrier | flightDesignator | Object | M | |
| marketingCarrierCode | marketingCarrier | String | M | |
| marketingFlightNumber | marketingCarrier | String | M | |
| departureInfo | segmentInfo | Object | M | |
| departureDate | departureInfo | String | M | YYYY-MM-DD |
| departureTime | departureInfo | String | M | HH:MM |
| airportCode | departureInfo | String | M | |
| arrivalInfo | segmentInfo | Object | M | |
| arrivalDate | arrivalInfo | String | M | YYYY-MM-DD |
| arrivalTime | arrivalInfo | String | M | HH:MM |
| airportCode | arrivalInfo | String | M | |
| seats | segmentSeatInfos | Array | M | |
| serviceOfferId | seats | String | M | A unique identifier for this specific service offering. This ID must be provided in subsequent flow |
| designator | seats | String | M | Referred to as airline code |
| deck | seats | String | O | Indicates the level or deck of the aircraft where the seat is located.
|
| rowNo | seats | String | M | Specifies the row number of the seat |
| colNo | seats | String | M | Specifies the column position or seat letter within the row |
| seatTypes | seats | Array | O | The characteristics and features of the seat. This field uses standardized codes:
|
| seatEligibility | seats | Object | O | [Since v2.0] |
| occupied | seatEligibility | Boolean | O | [Since v2.0] Indicates if the seat is already taken by another passenger
|
| bookable | seatEligibility | Boolean | O | [Since v2.0] Indicates if the seat is selectable under the current purchase context (e.g., the specific Fare Bundle selected
|
| restrictedPaxTypes | seatEligibility | Array | O | [Since v2.0] A list of passenger types or conditions that are allowed from choosing this seat (e.g., due to exit-row safety policies).
|
| reassignmentSeat | seats | Object | O | [Since v2.0] will only return is node when it’s seat reassignment search |
| targetSupplierBookingId | reassignmentSeat | String | M | [Since v2.0] Conditional. The unique bookingId of the old booked ancillary that this new option is meant to replace/upgrade. Matches the targetBookingId sent in the request. |
| targetgdnBookingId | reassignmentSeat | String | M | [Since v2.0] Conditional. The unique bookingId of the old booked ancillary that this new option is meant to replace/upgrade. Matches the targetBookingId sent in the request. |
| seatPsgFares | seats | Array | O | |
| psgType | seatPsgFares | String | O | |
| unitPrice | seatPsgFares | Object | O | |
| totalAmount | unitPrice | String | O | |
| currency | unitPrice | String | O | |
| totalBaseAmount | unitPrice | String | M | |
| totalTaxFeeAmount | unitPrice | String | M | |
| totalServiceFeeAmount | unitPrice | String | M | |
| taxFeeDetails | unitPrice | Array | O | |
| code | taxFeeDetails | String | O | |
| amount | taxFeeDetails | String | O | |
| type | taxFeeDetails | String | O | |
| serviceFeeDetails | unitPrice | Array | O | |
| code | serviceFeeDetails | String | O | |
| amount | serviceFeeDetails | String | O | |
| type | serviceFeeDetails | String | O | |
| includedInTotal | serviceFeeDetails | String | O |
|
| currencyConversions | unitPrice | Array | O | |
| fromCurrency | currencyConversions | String | O | |
| toCurrency | currencyConversions | String | O | |
| rate | currencyConversions | String | O | |
| appliedTo | currencyConversions | String | O | |
| referenceCode | currencyConversions | String | O | |
| originalAmount | currencyConversions | String | O | |
| convertedAmount | currencyConversions | String | O | |
| settlementPrices | unitPrice | Array | O | [Since v2.0] For multi-currency, this node will return all eligible settlement currency quotations. |
| totalBaseAmount | settlementPrices | String | M | [Since v2.0] |
| totalTaxFeeAmount | settlementPrices | String | M | [Since v2.0] |
| taxFeeDetails | settlementPrices | Array | O | [Since v2.0] |
| code | taxFeeDetails | String | O | [Since v2.0] The tax name |
| taxCode | taxFeeDetails | String | O | [Since v2.0] The tax code |
| amount | taxFeeDetails | String | O | [Since v2.0] |
| type | taxFeeDetails | String | O | [Since v2.0] Enum values:
|
| totalServiceFeeAmount | settlementPrices | String | O | [Since v2.0] |
| serviceFeeDetails | settlementPrices | Array | O | [Since v2.0] |
| code | serviceFeeDetails | String | O | [Since v2.0] All service fees related to flight booking - including those charged by non-airline suppliers, DerbySoft. |
| amount | serviceFeeDetails | String | O | [Since v2.0] |
| type | serviceFeeDetails | String | O | [Since v2.0] Enum values:
|
| currency | settlementPrices | String | O | [Since v2.0] |
| source | settlementPrices | String | O | [Since v2.0] |
| exchangeRate | settlementPrices | String | O | [Since v2.0] |
| reassignmentPriceDetails | unitPrice | Object | O | [Since v2.0] |
| balanceDue | reassignmentPriceDetails | String | M | [Since v2.0] The actual net amount to be collected from the user out-of-pocket. Formula: DueAmount = TotalAmount - originalServiceCredit |
| originalServiceCredit | reassignmentPriceDetails | String | M | [Since v2.0] The financial credit value recovered and deducted from the old booked ancillary (e.g., the original value of the 30kg bag). |
| error | root | Object | O |
Did you find it helpful? Yes No
Send feedbackSorry we couldn't be helpful. Help us improve this article with your feedback.