Skip to main content

NDC IT SeatAvailability

Air
Seats
REST API
Airline Carrier
Try Now

What is it?

The SeatAvailability API allows you to browse seat options for your itinerary. It gives you the ability to view the seat map for a selected flight, prices and seat products included, and make a choice based on the provided information.

The snippet below presents an example of a seat map product:

<cns:ServiceDefinitionList>
    <cns:ServiceDefinition>
        <cns:BookingInstructions>
            <cns:SpecialService>
                <cns:SpecialServiceCode>RQST</cns:SpecialServiceCode>
            </cns:SpecialService>
        </cns:BookingInstructions>
        <cns:Desc>
            <cns:DescText>"If you are looking for ample leg space to stretch, these are the seats for you. Emergency Seats are located in the row number 11 of the plane."</cns:DescText>
        </cns:Desc>
        <cns:Name>Emergency Exit Seat</cns:Name>
        <cns:OwnerCode>XX</cns:OwnerCode>
        <cns:RFIC>A</cns:RFIC>
        <cns:ServiceCode>EES</cns:ServiceCode>
        <cns:ServiceDefinitionID>SEATAVAILABILITY-SEAT-PRICE-0</cns:ServiceDefinitionID>
    </cns:ServiceDefinition>
</cns:ServiceDefinitionList>

A seat offer item comprises the following data:

  • seat product ID
  • segment or flight ID
  • passenger ID
  • seat product price
  • refund or reissue details
    <cns:OfferItem>
        <cns:CancelRestrictions>
            <cns:Refund>
                <cns:FixedAmount CurCode="USD">16.00</cns:FixedAmount>
                <cns:LevelTypeCode>Full</cns:LevelTypeCode>
            </cns:Refund>
        </cns:CancelRestrictions>
        <cns:Eligibility>
            <cns:OfferFlightAssociations>
                <cns:PaxSegmentReferences>
                    <cns:PaxSegmentRefID>SEGMENT_1_1691421434681</cns:PaxSegmentRefID>
                </cns:PaxSegmentReferences>
            </cns:OfferFlightAssociations>
            <cns:PaxRefID>PAX1</cns:PaxRefID>
        </cns:Eligibility>
        <cns:OfferItemID>dg0079ccc4dckpszfll10qzp40-0</cns:OfferItemID>
        <cns:PaymentTimeLimit>
            <cns:PaymentTimeLimitDuration>
                <cns:PaymentTimeLimitDuration>PT20M</cns:PaymentTimeLimitDuration>
            </cns:PaymentTimeLimitDuration>
        </cns:PaymentTimeLimit>
        <cns:Service>
            <cns:ServiceDefinitionRefID>SEATAVAILABILITY-SEAT-PRICE-0</cns:ServiceDefinitionRefID>
            <cns:ServiceID>0</cns:ServiceID>
        </cns:Service>
        <cns:UnitPrice>
            <cns:TotalAmount CurCode="USD">16.00</cns:TotalAmount>
        </cns:UnitPrice>
    </cns:OfferItem>

Why use it?

  • Retrieves the seat map for a desired flight, showing bookable offer items with their prices and product details.

  • Returns the information required to create a graphical seat map view that reflects available, booked, and blocked seats.

  • Shows the seat products that are granted as brand entitlements.

How it works

To book seat products, the SeatAvailability API completes the following steps:

  1. Retrieves order details to obtain information about a booked flight.

  2. Retrieves the flight seat map with available seats and their prices.

  3. Provides a complete set of information about seat products and their commercial attributes.

  4. Provides information about booked or blocked seats to offer full visibility.

  5. Creates bookable offer items for any available seat products.

How to use

The SeatAvailability API can be used only in a post-booking scenario.

A post-booking SeatAvailability call is based on an order that has already been created, meaning that you can book your flight first and proceed to purchase extras afterwards. The code snippet below demonstrates a sample request, with the mandatory DistributionChain, OrderID, and OwnerCode.

<IATA_SeatAvailabilityRQ>
    <DistributionChain>
        <DistributionChainLink>
            <Ordinal>1</Ordinal>
            <OrgRole>Seller</OrgRole>
            <ParticipatingOrg>
                <OrgID>XX</OrgID>
            </ParticipatingOrg>
        </DistributionChainLink>
        <DistributionChainLink>
            <Ordinal>2</Ordinal>
            <OrgRole>Carrier</OrgRole>
            <ParticipatingOrg>
                <OrgID>S2</OrgID>
            </ParticipatingOrg>
        </DistributionChainLink>
    </DistributionChain>
    <POS>
        <AgentDutyText>STANDARD</AgentDutyText>
        <City>
            <IATA_LocationCode>ORD</IATA_LocationCode>
        </City>
        <Country>
            <CountryCode>CA</CountryCode>
        </Country>
    </POS>
    <Request>
        <SeatAvailCoreRequest>
            <OrderRequest>
                <Order>
                    <OrderID>S2XXXGJ6JUT3L</OrderID>
                    <OwnerCode>X0</OwnerCode>
                </Order>
            </OrderRequest>
        </SeatAvailCoreRequest>
    </Request>
</IATA_SeatAvailabilityRQ>

For more information, please refer to the SeatAvailability User Guide available under the Help tab.