TABLE OF CONTENTS



interface retrieves available seating options, including their locations, features(window/exit..), and real-time pricing for a specific itinerary.

VersionDateDescription of Edit
V1.02025/10/22Initial Commit
V1.12025/11.23Added bundleOfferId parameter to support bundle seat selection in request
V1.22026/07/02SeatAvailabilityRS: Added detailed price breakdown fields under seatPsgFares.
V2.02026/08/15SeatAvailabilityRQ:
  • Supported post-booking seat reassignment and flight time change seat reselection.
SeatAvailabilityRS:
  • Added seat tax breakdown with tax code 
  • Enrich seatType enumerations (EXIT, EXTRA_LEG_ROOM, etc.). 
  • Delivered full cabin seat maps with occupancy status (occupied, bookable) 
  • Supported granular passenger safety restriction flags (restrictedPaxTypes for infants, pregnant passengers, mobility limitations, etc.).


Request Details
PathV1.0/api/flight/connectivity/search/seatAvailability (for freshbooking) /api/flight/connectivity/order/seatAvailability (for postbooking)
PathV1.2/api/flight/connectivity/search/V1.2/seatAvailability (for freshbooking) /api/flight/connectivity/order/V1.2/seatAvailability (for postbooking)
PathV2.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


KeyParentTypeMandatory/OptionalDescription
offerrootObjectO
offerIdofferStringMUse this parameter when adding services during the initial booking process. offerId should return from AirShopping endpoint.
bundleOffersofferArrayO
bundleOfferIdbundleOffersStringOThe bundleOfferId parameter is required when querying seat availability specifically for seats included in a bundle purchase. Include this field only when: 
  • The seat selection is part of a bundle identified in the bundleAvailability response 
  • The bundle service has "needSelection": true for seat services
orderrootObjectO
supplierOrderIdorderStringMUse this parameter when adding services after a ticket has been issued (post-booking). It references the existing, confirmed order
gdnOrderIdorderStringO
reassignmentSeatorderObjectO[Since v2.0] Required ONLY when searching for a seat reassignment
targetSupplierBookingIdreassignmentSeatStringM[Since v2.0] The unique instance identifier of the specific booked ancillary service
targetgdnBookingIdreassignmentSeatStringM[Since v2.0]
reshopOfferorderObjectO[Since v2.0] This is used to shopping availability seat during flight time change process
reshopOfferIdreshopOfferStringM[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.
reshopTransInforeshopOfferStringM[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.
tripsInforootObjectO
tripKeytripsInfoStringM
onwardTriptripsInfoObjectM
segmentInfosonwardTripArrayMsegment information list
segmentSequencesegmentInfosStringM
flightDesignatorsegmentInfosObjectM
marketingCarrierflightDesignatorObjectM
marketingCarrierCodemarketingCarrierStringM
marketingFlightNumbermarketingCarrierStringM
departureInfosegmentInfosObjectM
departureDatedepartureInfoStringMYYYY-MM-DD
departureTimedepartureInfoStringMHH:MM
airportCodedepartureInfoStringM
arrivalInfosegmentInfosObjectM
arrivalDatearrivalInfoStringMYYYY-MM-DD
arrivalTimearrivalInfoStringMHH:MM
airportCodearrivalInfoStringM
returnTriptripsInfoObjectO
promotionCriteriarootObjectOA Promotion and discount code criteria to be passed to the retailer airline that could influence returned offers
promotionCodepromotionCriteriaStringOPromotion 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
                       }
                   ]
               }
           ]
       }
   }
}


KeyParentTypeMandatory/OptionalDescription
seatResultrootObjectO
flightOfferRefIdseatResultStringO
flightOrderRefseatResultObjectO
supplierOrderIdflightOrderRefStringM
gdnOrderIdflightOrderRefStringO
onwardTripseatResultObjectM
segmentSeatInfosonwardTripArrayM
segmentInfosegmentSeatInfosObjectM
segmentSequencesegmentInfoStringM
flightDesignatorsegmentInfoObjectM
marketingCarrierflightDesignatorObjectM
marketingCarrierCodemarketingCarrierStringM
marketingFlightNumbermarketingCarrierStringM
departureInfosegmentInfoObjectM
departureDatedepartureInfoStringMYYYY-MM-DD
departureTimedepartureInfoStringMHH:MM
airportCodedepartureInfoStringM
arrivalInfosegmentInfoObjectM
arrivalDatearrivalInfoStringMYYYY-MM-DD
arrivalTimearrivalInfoStringMHH:MM
airportCodearrivalInfoStringM
seatssegmentSeatInfosArrayM
serviceOfferIdseatsStringMA unique identifier for this specific service offering. This ID must be provided in subsequent flow
designatorseatsStringMReferred to as airline code
deckseatsStringOIndicates the level or deck of the aircraft where the seat is located. 
  • Main: for the primary cabin deck 
  • Upper: for the upper deck
rowNoseatsStringMSpecifies the row number of the seat
colNoseatsStringMSpecifies the column position or seat letter within the row
seatTypesseatsArrayOThe characteristics and features of the seat. This field uses standardized codes: 
  • WINDOW
  • AISLE 
  • EXIT 
  • MIDDLE 
  • EXTRA_LEG_ROOM 
  • HANDICAP_ACCESSIBLE: wheelchair accessible seat 
  • BASSINET: [Since v2.0] 
  • BULKHEAD: [Since v2.0] 
  • LAVATORY: [Since v2.0] 
  • WING: Over Wing [Since v2.0] 
  • RECLINE: Seats withrestricted recline (e.g., the row immediately in front of an emergency exit, where the recline angle is locked for evacuation safety). [Since v2.0] 
  • QUIET: quiet zone seat [Since v2.0] 
  • NWINDOW: Physically located next to the fuselage sidewall, but due to aircraft structure, there is no window at that exact seat [Since v2.0] 
  • WIDTH: Width seat [Since v2.0] 
  • MOVIE: has movie screen [Since v2.0] 
  • ENGINE: Near Engine [Since v2.0]
seatEligibilityseatsObjectO[Since v2.0]
occupiedseatEligibilityBooleanO[Since v2.0] Indicates if the seat is already taken by another passenger
  • True: occupied 
  • False: available
bookableseatEligibilityBooleanO[Since v2.0] Indicates if the seat is selectable under the current purchase context (e.g., the specific Fare Bundle selected
  • True: selectable 
  • False: blocked for the current context
restrictedPaxTypesseatEligibilityArrayO[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).
  • UNDER_15_RESTRICTED: Restrict if the passenger's age is under 15 years old (< 15) on the date of departure. This is used for Emergency Exit Row Restrictions where passengers under 15 are prohibited from selecting emergency exit row seats due to safety requirements regarding evacuation assistance. 
  • UNDER_12_RESTRICTED: Restrict if the passenger's age is under 12 years old (< 12) on the date of departure. UNDER_10_RESTRICTED: Restrict if the passenger's age is under 10 years old (< 10) on the date of departure. 
  • INFANT_RESTRICTED: Restrict if the adult passenger is traveling with an infant (either lap-held or occupying an extra seat). This is used for Safety & Oxygen Mask Allocation where passengers with infants cannot be seated in emergency exit rows or rows with oxygen mask limitations. 
  • PREGNANT_RESTRICTED: Restrict if the passenger has a pregnancy status or related Special Service Request (SSR) flagged in the order. Under airline safety policies, pregnant passengers at any stage of pregnancy are strictly prohibited from occupying emergency exit row seats. 
  • MOBILITY_RESTRICTED: Restrict if the passenger is associated with Special Assistance SSRs (e.g., WCHR/Wheelchair, BLND/Blind, DEAF/Deaf) or has limbs in a plaster cast. Passengers with restricted mobility or physical impairments cannot assist in opening emergency doors during an evacuation and are barred from exit rows. 
  • EXTRA_SEAT_RESTRICTED: Block for standard solo passengers. Selectable only if mapped to an "EXTRA SEAT" virtual passenger in the booking. This is used for Oversized Baggage / Comfort Space where these seats are reserved exclusively for cabin baggage (such as musical instruments like CBBG) or extra space and must be paired with a primary passenger.
reassignmentSeatseatsObjectO[Since v2.0] will only return is node when it’s seat reassignment search
targetSupplierBookingIdreassignmentSeatStringM[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.
targetgdnBookingIdreassignmentSeatStringM[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.
seatPsgFaresseatsArrayO
psgTypeseatPsgFaresStringO
unitPriceseatPsgFaresObjectO
totalAmountunitPriceStringO
currencyunitPriceStringO
totalBaseAmountunitPriceStringM
totalTaxFeeAmountunitPriceStringM
totalServiceFeeAmountunitPriceStringM
taxFeeDetailsunitPriceArrayO
codetaxFeeDetailsStringO
amounttaxFeeDetailsStringO
typetaxFeeDetailsStringO
serviceFeeDetailsunitPriceArrayO
codeserviceFeeDetailsStringO
amountserviceFeeDetailsStringO
typeserviceFeeDetailsStringO
includedInTotalserviceFeeDetailsStringO
  • true - Already included intotalAmount; 
  • false - Not included in totalAmount.
currencyConversionsunitPriceArrayO
fromCurrencycurrencyConversionsStringO
toCurrencycurrencyConversionsStringO
ratecurrencyConversionsStringO
appliedTocurrencyConversionsStringO
referenceCodecurrencyConversionsStringO
originalAmountcurrencyConversionsStringO
convertedAmountcurrencyConversionsStringO
settlementPricesunitPriceArrayO[Since v2.0] For multi-currency, this node will return all eligible settlement currency quotations.
totalBaseAmountsettlementPricesStringM[Since v2.0]
totalTaxFeeAmountsettlementPricesStringM[Since v2.0]
taxFeeDetailssettlementPricesArrayO[Since v2.0]
codetaxFeeDetailsStringO[Since v2.0] The tax name
taxCodetaxFeeDetailsStringO[Since v2.0] The tax code
amounttaxFeeDetailsStringO[Since v2.0]
typetaxFeeDetailsStringO[Since v2.0] Enum values:
  • AirlineTax - Standard airline taxes 
  • VAT - Value added tax 
  • Other - Other tax types
totalServiceFeeAmountsettlementPricesStringO[Since v2.0]
serviceFeeDetailssettlementPricesArrayO[Since v2.0]
codeserviceFeeDetailsStringO[Since v2.0] All service fees related to flight booking - including those charged by non-airline suppliers, DerbySoft.
amountserviceFeeDetailsStringO[Since v2.0]
typeserviceFeeDetailsStringO[Since v2.0] Enum values:
  • Supplier - Supplier service fee 
  • DS - DerbySoft service fee
currencysettlementPricesStringO[Since v2.0]
sourcesettlementPricesStringO[Since v2.0]
exchangeRatesettlementPricesStringO[Since v2.0]
reassignmentPriceDetailsunitPriceObjectO[Since v2.0]
balanceDuereassignmentPriceDetailsStringM[Since v2.0] The actual net amount to be collected from the user out-of-pocket. Formula: DueAmount = TotalAmount - originalServiceCredit
originalServiceCreditreassignmentPriceDetailsStringM[Since v2.0] The financial credit value recovered and deducted from the old booked ancillary (e.g., the original value of the 30kg bag).
errorrootObjectO