Air Booking with Seat Assignments

Universal API supports:

While Seat Maps can be generated independently of the booking, an air segment for at least one traveler must be booked before a seat assignment can be made. A seat request, specific or generic, is not required with a booking. If no seat is requested, the provider automatically assigns a seat with no regard for any traveler preferences.

Seats can be requested by individual passenger and by individual segment. See Seat Maps for more information on generating seat map data for available seat assignments.

The maximum time limit for seating varies by provider, supplier, and flight. See Exceptions for details.

Notes:

Schema

Located in Universal.xsd:

How To

  1. Include the minimum required information for creating an air booking.

  2. To request a generic seat, send AirCreateReservationReq/AutoSeatAssignment.

    • Specify your seat type using @SeatType. Allowed values are Any, Aisle, Bulkhead, Exit, Window.

    • If a Segment key is identified in @SegmentRef, the seat assignment request applies only to the specified segment. If no instance of SegmentRef has any value, then the seating request applies to all segments in the booking.

    • If a Booking Traveler key is identified in @BookingTravelerRef, the seat assignment request applies only to the specified traveler. If no instance of BookingTravelerRef has any defined value, then the seating request applies to primary traveler, and any additional travelers in the booking will be assigned adjacent seats.

    • @Group indicates that this seat request is for group seating for all passengers. If no SegmentRef is included, group seating will be requested for all segments.

    • More than one instance of AutoSeatAssignment can be applied for each air segment in a multi-segment booking.

    Note: Generic seat assignments cannot be used with ACH Low Cost Carriers. If AirCreateReservationReq is sent with AutoSeatAssignment element for an ACH provider, a warning is returned: Automatic seat assignment not allowed for carrier.

  3. To request a specific free, seat assignment, send AirCreateReservationReq/SpecificSeatAssignment.

    • Identify the individual seat using @SeatId. This value was returned in the SeatMap response data in SeatMapRsp/Row/FacilitySeatCode.

    • BookingTraveler @TravelerType must also be provided or the seat booking is ignored and a warning is returned.

    • If a Booking Traveler key is identified in the BookingTravelerRef attribute, the seat assignment request applies only to the specified traveler. If no BookingTravelerRef has any defined value, then the seating request applies to the primary traveler, and any additional travelers in the booking will be assigned adjacent seats.

    • The SegmentRef attribute is required to identify the segment to apply to this seat.

    • The RailCoachNumber is for rail-specific seat assignment requests. The seat number will be similar to RailCoachNumber = “C001” SeatID = “43”. The seat number is used for Rail Seat Maps with Eurostar (9F).

  4. In the Air Booking response, seat assignments are associated with an individual traveler in AirCreateReservationRsp/BaseCreateReservationRsp/BookingTraveler/SeatAssignment.

    • One or more instances of SeatAssignment may be returned for a traveler, based on the number of air segments in the booking.

    • The SegmentRef attribute of SeatAssignment indicates the associated air segment for this seat.  

    • The Seat attribute identifies the specific seat, such as '03K' or '22A'.

    • A Status for the seat assignment is also returned. Common status codes include:

      Status Code

      Description

      PN

      Seats have been requested from supplier ("pending").

      HK

      Seats have been confirmed.  

      NO

      Seat request has been denied by supplier.

      KK

      Seat will be assigned.

      UC

      Seat is not confirmed (but request has been made).

      NN

      Seat will be requested from supplier.

      Typically, the status will be NO, HK, or PN seats. If the seat is still NN, it means no seat could be assigned.

    • When a booking is made for a Change of Gauge (COG) flight where a single flight number is used for more than one segment and there are seat assignments:

      • Both seat assignments are shown.
      • Each AirSeatAssignment includes FlightDetailsRef, which clearly indicates seat assignment for multiple segments in case of a COG flight. For example:
      • <AirSeatAssignment Key="78355" Status="HK" Seat="018C" SegmentRef="1649157" FlightDetailsRef="526152"/>

        <AirSeatAssignment Key="78356" Status="HK" Seat="028B" SegmentRef="1649157" FlightDetailsRef="526153"/>

      • BookingTraveler/AirSeatAssignment @FlightDetailsRef is mapped.

      Note: Worldspan supports importing PNRs with a seat assignment for a COG flight.

Next Steps

If a booked seat assignment needs to be changed or canceled, it can be modified using the respective AirUpdate and AirDelete nodes of UniversalRecordModifyReq/UniversalModifyCmd.

Exceptions

Galileo

If the supplier has a direct link to Galileo, the maximum time limit for seating is 362 days before departure. If the supplier has a non-direct link to Galileo, the maximum time limit is 330 days before departure. However, the actual time limits vary by supplier.