Release Notes
Below are release notes for major versions 25.11.x of the Travelport JSON Air APIs, covering releases on model 11 in 2025. Incremental minor version updates (25.11.x.y) are listed only when they include customer-facing changes.
See Archived Release Notes for previous releases numbered 24.11.x and earlier. Version numbering uses the following format:
{year of release}.{model and thus major version of release}.{minor version of release}
In individual online help topics, support for new functionality is noted only for current and previous year releases (i.e., starting with 25. or 24.). Functionality deployed in previous releases (23.) is no longer specifically called out in topics.
- Developer Advisories for Upcoming Features
- Developer Toolkit Releases
- Air Offer (Search and AirPrice)
- Seats and Ancillaries
- AirReservation and AirTicketing
- GDS Exchange APIs
; add SSR by IATA code <ROLLED BACK FROM 6/12 DEPLOYMENT
In the existing SpecialServiceList request payload, Introduces the ability to add remarks by SSR code. Supported for any remark or service request that has an industry SSR code and does not require payment. Previously, the JSON APIs required these SSRs to be added by the name of the service, such as Wheelchair. Uses the existing SpecialServiceList endpoint and updates the existing SpecialServiceList payload as follows:
-
New object SSRCode
-
New value of SpecialService for SpecialServiceID @type
-
Changes TravelerIdentifier/id from required to optional
All previously implemented requests for adding SSRs continue to be supported. Requires model upgrade to ODM version 11.20. GDS only; not supported for NDC.
Developer Advisories for Upcoming Features
Travelport has released developer advisories (DAs) for the following upcoming features. DAs are issued for changes that may significantly change code and/or functionality in the JSON APIs. You must sign into My Travelport to see the full DA. Contact your Travelport representative if you have questions about how an upcoming release may affect you. After a feature has been deployed, it moves into the release notes on this page and is no longer listed in this section.
Restful API Microservices – Unpriced Segments (DA 1062)
Expected deployment date: 5 Sep 2025
The Reservation Retrieve response will return several new objects to support returning unpriced segments for any booking that includes unpriced content. Unpriced segments can only be added to a booking through a terminal program; you cannot add them with the JSON APIs. Because an unpriced segment has no price, it will not be returned as an offer in the Offer object, and it will not have Price details. Instead it will be returned in the new UnpricedSegments object.
GDS and LCC segments will be supported to be added as unpriced. In addition, the Arrival Unknown (ARNK) segment currently returned in Offer will be returned as an unpriced segment. GDS only; unpriced NDC segments cannot be added to a GDS booking, and unpriced GDS segments cannot be added to NDC content.
This work will be released in phases and eventually support the following:
-
Cancel unpriced segments
-
Price multiple or all air segments per passenger
-
Cancel multiple segments or a specific existing price (equivalent of a filed fare in the host system)
-
Add a specific or multiple air segments
-
Process an exchange for an itinerary with multiple tickets and multiple passengers
The following objects will returned in the Reservation Retrieve when a booking has unpriced segment/s:
-
Reservation returns UnpricedSegments with details of the unpriced segment.
-
TravelerProduct returns UnpricedFlightSegmentRefs to list unpriced segment/s for that traveler.
-
Receipt/Confirmation returns UnpricedSegmentsStatus with the status of the air segment.
-
ReservationDisplaySequence returns UnpricedSegmentDisplaySequence to indicate the sequence of the unpriced segment.
If there are no unpriced segments and no ARNK, there is no change to the Reservation Retrieve response.
Update to model v11.22 required for this feature.
The following example Reservation Retrieve response includes one priced offer and one unpriced segment.

{
"ReservationResponse": {
"@type": "ReservationResponse",
"Reservation": {
"@type": "Reservation",
"Identifier": {
"authority": "Travelport",
"value": "acf49665-28c6-4e93-965f-8479a05782b1"
},
"Offer": [
{
"@type": "Offer",
"id": "offer_1",
"Identifier": {
"authority": "Travelport",
"value": "16e236bc-b209-4dd9-af16-4e70f91d2a34"
},
"ContentSource": "GDS",
"Product": [
{
"@type": "ProductAir",
"id": "product_1",
"Identifier": {
"authority": "Travelport",
"value": "c600a801-1cec-416d-bf62-b69e7b573c01"
},
"FlightSegment": [
{
"@type": "FlightSegment",
"id": "FlightSegment_01",
"sequence": 1,
"Flight": {
"@type": "Flight",
"duration": "PT3H55M",
"carrier": "SQ",
"number": "874",
"equipment": "359",
"id": "Flight_01",
"Identifier": {
"authority": "Travelport",
"value": "b1f5d977-215c-4795-9593-b48e59f09654"
},
"Departure": {
"@type": "Departure",
"location": "SIN",
"date": "2025-05-09",
"time": "07:25:00"
},
"Arrival": {
"@type": "Arrival",
"location": "HKG",
"date": "2025-05-09",
"time": "11:20:00"
}
}
}
],
"PassengerFlight": [
{
"@type": "PassengerFlight",
"passengerQuantity": 1,
"passengerTypeCode": "ADT",
"FlightProduct": [
{
"@type": "FlightProduct",
"segmentSequence": [
1
],
"classOfService": "Y",
"cabin": "Economy",
"fareBasisCode": "Y11SGOPO",
"fareType": "AirlinePrivateFare",
"Brand": {
"@type": "Brand",
"name": "ECONOMY FLEXI",
"tier": 4,
"id": "1721314"
}
}
]
}
]
}
],
"Price": {
"@type": "PriceDetail",
"id": "PriceDetail_1",
"CurrencyCode": {
"value": "USD"
},
"Base": 663,
"TotalTaxes": 68.4,
"TotalFees": 0,
"TotalPrice": 731.4,
"PriceBreakdown": [
{
"@type": "PriceBreakdownAir",
"quantity": 1,
"requestedPassengerType": "ADT",
"Amount": {
"@type": "Amount",
"CurrencyCode": {
"decimalPlace": 2,
"value": "SGD"
},
"Base": 892
},
"TravelerRefs": [
"travelerRefId_1"
],
"NetBaseAmount": {
"currencyCode": "SGD",
"decimalPlace": 2,
"value": 892
}
},
{
"@type": "PriceBreakdownAir",
"quantity": 1,
"requestedPassengerType": "ADT",
"Amount": {
"@type": "Amount",
"currencySource": "Charged",
"approximateInd": true,
"CurrencyCode": {
"decimalPlace": 2,
"value": "USD"
},
"Base": 663,
"Taxes": {
"@type": "TaxesDetail",
"TotalTaxes": 68.4,
"Tax": [
{
"currencyCode": "USD",
"taxCode": "L7",
"value": 8
},
{
"currencyCode": "USD",
"taxCode": "OP",
"value": 5.9
},
{
"currencyCode": "USD",
"taxCode": "SG",
"value": 34.5
},
{
"currencyCode": "USD",
"taxCode": "YR",
"value": 20
}
]
},
"Total": 731.4
},
"Commission": {
"@type": "CommissionAmount",
"Amount": {
"code": "USD",
"minorUnit": 4,
"value": 0
}
},
"FiledAmount": {
"currencyCode": "SGD",
"decimalPlace": 2,
"value": 892
},
"TravelerRefs": [
"travelerRefId_1"
],
"FareCalculation": "SIN SQ HKG 666.60Y11SGOPO NUC666.60END ROE1.338125"
}
]
},
"TermsAndConditionsFull": [
{...},
{...}
]
}
],
"Traveler": [
{
"@type": "Traveler",
"passengerTypeCode": "ADT",
"id": "travelerRefId_1",
"Identifier": {
"authority": "Travelport",
"value": "4dfb7cd9-3651-4641-adc0-ccf2f3b358bb"
},
"PersonName": {
"@type": "PersonName",
"Given": "JIM",
"Surname": "BOWIE"
},
"Telephone": [
{
"@type": "TelephoneDetail",
"phoneNumber": "999999",
"id": "telephone_1",
"cityCode": "ATL",
"role": "Office"
}
]
}
],
"TravelerProduct": [
{
"@type": "TravelerProduct",
"id": "travelerProduct_1",
"TravelerRef": "travelerRefId_1",
"UnpricedFlightSegmentRefs": [
"unPricedFlightSegment_1"
]
}
],
"Payment": [
{
"@type": "Payment",
"id": "payment_1",
"PaymentRef": "payment_1",
"Identifier": {
"authority": "Travelport",
"value": "eeb96c78-c234-430f-99df-fa2a90bb7b49"
},
"Amount": {
"minorUnit": 2,
"value": 731.4
},
"FormOfPaymentIdentifier": {
"FormOfPaymentRef": "formOfPayment_1"
}
}
],
"Receipt": [
{
"@type": "ReceiptConfirmation",
"Identifier": {
"authority": "Travelport",
"value": "5b193a75-b62c-440d-85d6-e66c819520f6"
},
"Confirmation": {
"@type": "ConfirmationHold",
"Locator": {
"source": "1G",
"creationDate": "2025-04-15",
"value": "BXF90D"
},
"OfferStatus": {
"@type": "OfferStatusAir",
"StatusAir": [
{
"flightRefs": [
"Flight_01"
],
"code": "HK",
"value": "Confirmed"
}
]
},
"UnpricedSegmentsStatus": [
{
"@type": "UnpricedSegmentsStatus",
"StatusAir": [
{
"flightRefs": [
"Flight_02"
],
"code": "HK",
"value": "Confirmed"
}
]
}
]
}
},
{
"@type": "ReceiptConfirmation",
"Identifier": {
"authority": "Travelport",
"value": "a69986cc-0ca2-41c3-a126-7f4346163686"
},
"Confirmation": {
"@type": "ConfirmationHold",
"Locator": {
"source": "1A",
"value": "62OB43"
}
}
},
{
"@type": "ReceiptPayment",
"dateTime": "2025-04-15T19:42:00Z",
"id": "receipt_1",
"ReceiptRef": "receipt_1",
"Identifier": {
"authority": "Travelport",
"value": "9ee32f47-d590-4e9f-bf67-6969b022b33e"
},
"OfferRef": [
"offer_1"
],
"Document": [
{
"@type": "DocumentTicket",
"Number": "6189905257307",
"TravelerIdentifierRef": {
"passengerTypeCode": "ADT",
"id": "travelerRefId_1",
"value": "27a7756a-b347-405f-aee0-65fe2fcad082"
},
"Amount": {
"@type": "Amount",
"CurrencyCode": {
"decimalPlace": 2,
"value": "USD"
},
"Base": 663,
"Taxes": {
"@type": "TaxesDetail",
"TotalTaxes": 68.4,
"Tax": [
{
"taxCode": "L7",
"value": 8
},
{
"taxCode": "OP",
"value": 5.9
},
{
"taxCode": "SG",
"value": 34.5
},
{
"taxCode": "YR",
"value": 20
}
]
},
"Total": 731.4
},
"IssuingPCC": "XB7",
"FiledAmount": {
"currencyCode": "SGD",
"decimalPlace": 2,
"value": 892
}
}
],
"PaymentIdentifier": {
"id": "payment_1",
"PaymentRef": "payment_1",
"Identifier": {
"authority": "Travelport",
"value": "eeb96c78-c234-430f-99df-fa2a90bb7b49"
}
}
}
],
"UnpricedSegments": {
"@type": "UnpricedSegments",
"UnpricedFlightSegment": [
{
"@type": "UnpricedFlightSegment",
"id": "unPricedFlightSegment_1",
"sequence": 2,
"passengerQuantity": 1,
"cabin": "Economy",
"classOfService": "Y",
"Flight": {
"@type": "Flight",
"duration": "PT2H20M",
"carrier": "CX",
"number": "901",
"equipment": "773",
"id": "Flight_02",
"Identifier": {
"authority": "Travelport",
"value": "603363e7-c502-4c0a-9d95-1a295834ac67"
},
"Departure": {
"@type": "Departure",
"location": "HKG",
"date": "2025-05-22",
"time": "09:00:00"
},
"Arrival": {
"@type": "Arrival",
"location": "MNL",
"date": "2025-05-22",
"time": "11:20:00"
}
}
}
]
},
"ReservationDisplaySequence": {
"@type": "ReservationDisplaySequence",
"DisplaySequence": [
{
"@type": "DisplaySequence",
"displaySequence": 1,
"OfferRef": "offer_1",
"ProductRef": "product_1",
"Sequence": 1
}
],
"UnpricedSegmentDisplaySequence": [
{
"@type": "UnpricedSegmentDisplaySequence",
"displaySequence": 2,
"UnpricedFlightSegmentRef": "unPricedFlightSegment_1"
}
]
}
}
}
}
JSON API Price Removal of Quantity Field when Baggage Allowance is Kilograms for GDS Content (DA 1064)
Expected deployment date: 21 Jul 2025
The AirPrice full and reference payload responses will no longer return quantity (BaggageAllowance/BaggageItem/quantity ) when the baggage allowance is returned in kilograms.

"BaggageItem": [
{
"@type": "BaggageItem",
"quantity": 2,
"Measurement": [
{
"measurementType": "Weight",
"unit": "Kilograms",
"value": 30
}
],
"Text": "CHGS MAY APPLY IF BAGS EXCEED TTL WT ALLOWANCE"
}
],

"BaggageItem": [
{
"@type": "BaggageItem",
"Measurement": [
{
"measurementType": "Weight",
"unit": "Kilograms",
"value": 30
}…
],
"Text": "CHGS MAY APPLY IF BAGS EXCEED TTL WT ALLOWANCE"
}
],
Support Special Service Requests based on IATA code (DA 1053)
Release date TBD. Released with AirReservation 25.11.61 on 12 June and temporarily rolled back. See DA 1053 for feature details.
Developer Toolkits
GDS Developer Toolkits 25.11.1 | 12 Jun 2025
Versions 25.11.1 of the GDS full and reference payload developer toolkits are available on Developer Toolkits & Downloads.
Air Offer (Search and AirPrice)
Air Offer 25.11.54: Internal | 5 Jun 2025
Internal updates only.
Air Offer 25.11.53: Baggage allowance indicators | 7 May 2025
In all search and price responses, adds baggage indicators to TermsAndConditions/BaggageAllowance/BaggageItem. These indicators make it easier to determine if baggage is included in the price and whether it is determined by piece or by weight. They also normalize baggage allowance details between GDS and NDC. Each instance of BaggageItem returns the following as applicable for the baggage allowance in that set of terms and conditions:
-
includedInOfferPrice: String. Possible values:
-
Yes: Baggage is included in the price.
-
No: Baggage is not included in the price; available for an additional charge.
-
Unknown: Unknown if baggage is included in the price.
-
-
soldByPieceInd: Boolean. Returned only if true. Indicates baggage allowance is by piece, such as one, two, or three pieces.
-
soldByWeightInd: Boolean. Returned only if true. Indicates the baggage is allowed by weight, either kilograms or pounds, such as 50 pounds or 35 kilograms.
Update to model v11.22 required for this feature.

In this example, the first checked bag allowance (baggageType=FirstCheckedBag) is determined by piece (soldByPieceInd=true) instead of weight, and is included in the price (includedInOfferPrice=Yes) subject to the maximum weight and size stated in the Text object.
"BaggageAllowance": [
{
"@type": "BaggageAllowanceDetail",
"url": "http://VIEWTRIP.TRAVELPORT.COM/BAGGAGEPOLICY/AA",
"passengerTypeCodes": [
"ADT"
],
"baggageType": "FirstCheckedBag",
"validatingAirlineCode": "AA",
"ProductRef": [
"p0",
"p1",
"p2"
],
"BaggageItem": [
{
"@type": "BaggageItem",
"quantity": 1,
"includedInOfferPrice": "Yes",
"soldByPieceInd": true,
"BaggageFee": {
"code": "HKD",
"approximateInd": true,
"value": 0
},
"Text": "UPTO70LB/32KG AND UPTO62LI/158LCM"
}
],
"SegmentSequenceList": [
1,
2
],
"Text": [
"2P"
]
},
Air Offer 25.11.52.1: ContentSource to indicate GDS/NDC content | 9 Apr 2025
Adds support for returning the new ContentSource object in Offer for all search and price responses to indicate whether the offer/s are from GDS or NDC. Returned in Search, Next Leg Search, Flight Specific Search reference and full payload responses in ProductBrandOffering/ContentSource, and AirPrice reference and full payload responses in OfferID//ContentSource.
Adds support for requesting upsells for NDC content by sending MaxNumberOfUpsellsToReturn in the AirPrice full payload request. NDC only; not supported for GDS.
Air Offer 25.11.52: Internal | 2 Apr 2025
Internal updates only.
Air Offer 25.11.51.3: Multi-city offers with stopovers & removal of Price object | 31 March 2025
For GDS only, in all search responses, adds support for returning multi-city offers with stopovers when available. This enables the return of lower fares and additional itinerary options. Such multi-city offers are identified by CombinabilityCode values using the new format jc, as in jc1, jc2, and so on. As part of this change, instead of returning price details in both Price and BestCombinablePrice, ProductBrandOffering returns pricing only in BestCombinablePrice, and no longer returns the Price object. This applies to all GDS content in all Search, Next Leg Search, and Flight Specific Search responses. Multi-city offers are not returned for split ticketing, although the code update does apply. Multi-city offers with stopovers are not returned for NDC, and there are no code changes for NDC offers at this time. You can opt-out of this change by contacting your Travelport representative; if so, multi-city offers with stopovers will not be returned for any content for your PCC, and all offers will continue to return both Price and BestCombinablePrice.
Search (now Air Offer)
Search 24.11.51.2: Remove quantity for baggage in kilograms | 19 Mar 2025
Updates all search responses to no longer return BaggageItem/quantity for baggage allowances in kilograms (BaggageItem/Measurement/unit is returned with the value Kilograms).
Search 25.11.50: Internal | 4 Feb 2025
Internal updates only.
Search 25.11.49: Override validating carrier | 8 Jan 2025
Adds the optional pricing modifier FareSelection/validatingCarrier to send a carrier code to override the default plating carrier. Supported in all search APIs and for split ticketing. GDS only; not supported for NDC.
AirPrice (now Air Offer)
Price 25.11.45: Intermediate stop details | 12 Feb 2024
Updates the AirPrice response to return full details of any intermediate stop in the ReferenceListFlight/Flight/IntermediateStop object. Previously, AirPrice returned only the airport code of the intermediate stop.
Price 25.11.44: Terminal and equipment; age-applicable pricing for NDC | 16 Jan 2024
In the AirPrice reference and full payload responses, adds support for returning the terminal object in both Departure and Arrival when available. When terminal is returned, the @type value for Departure changes from Departure to DepartureDetail, and for Arrival changes from Arrival to ArrivalDetail.
Adds support for returning FlightSegment/equipment In the AirPrice full payload response; previously returned only in the reference payload response.
For the AirPrice reference payload, improves the logic handling for NDC pricing to account for age as well as PTC when age was sent in the preceding Search request, so that any age-specific pricing is applied. No code changes. Applicable only to NDC carrier AF.
AirPrice 25.11.43: Internal | 13 Jan 2025
Internal updates only.
Seats and Ancillaries
Ancillaries 25.11.42: Internal | 5 Jun 2025
Internal updates only.
Ancillaries 25.11.41: Error handling | 29 May 2025
Improves error handling and messaging in the Ancillary Book and Seat Book APIs.
Ancillaries 25.11.40: Internal | 15 May 2025
Internal updates only.
Ancillaries 25.11.39: Baggage allowance indicators | 15 May 2025
In the Ancillary Shop response, to normalize baggage data for GDS carriers with data returned in Travelport SOAP/XML API, adds the following new objects; GDS only, not returned for NDC:
-
TermsAndConditions:
-
fulfillmentType
-
associatedItem
-
Refundability
-
validatingAirline
-
-
PriceBreakdown/inclusiveOfTaxInd
-
PriceBreakdown/Commission/application (possible values Non-paying and Commissionable)
-
PriceBreakdown/Description:
-
issuanceReasonCode
-
value
-
In the Ancillary Shop response, adds baggage indicators to note if baggage is included in the price and whether it is determined by piece or by weight. These also normalize baggage allowance details between GDS and NDC. Each instance of CatalogOffering/ProductOptions/Product/Ancillary returns one of the following as applicable for that offer:
-
soldByPieceInd: Boolean. Returned only if true. Indicates baggage allowance is by piece, such as one, two, or three pieces.
-
soldByWeightInd: Boolean. Returned only if true. Indicates the baggage is allowed by weight, either kilograms or pounds, such as 50 pounds or 35 kilograms.
Update to model v11.22 required for this feature.
Ancillaries 25.11.38: Seat Map after Search for NDC | 1 May 2025
Adds support for NDC for requesting seat maps after the Search request, previously supported only for GDS.
Ancillaries 25.11.37: Internal | 24 Apr 2025
Internal updates only.
Ancillaries 24.11.36: Cancel multiple bags, Standalone Seat Map for multiple cabin classes | 13 Feb 2024
Adds support for canceling multiple bags in a single post-commit workbench session. Previously, the workbench had to be committed and another workbench initiated before another ancillary cancel request for baggage could be sent. Canceling seats continues to require a separate workbench for each seat cancel request.
In the Standalone Seat Map request, adds support for requesting multiple cabins with the new SpecificFlightCriteria\additionalCabins object.
Ancillaries 25.11.35: Standalone Seat Map by cabin | 16 Jan 2024
In the Standalone Seat Map request, adds support for sending the optional object cabin to request seat availability by cabin class. GDS only; Standalone Seat Map not supported for NDC.
AirReservation and AirTicketing
AirReservation 25.11.63: Cancel workbench items | 26 Jun 2025
In the Cancel Workbench Items API released in 25.11.61, adds support for the following capabilities for GDS in a post-commit workbench; in other words, from an existing reservation:
-
cancel a single, multiple, or all offers, including air, hotel, and car offers
-
cancel a product within an air offer
-
cancel a segment within an air product
-
cancel multiple segments across air offers
Also in the Cancel Workbench Items API, adds support in the initial booking workbench to cancel the entire reservation or all offers on the reservation for GDS (already deployed for NDC).
AirReservation 25.11.62: Cancel workbench items | 12 Jun 2025
In the Cancel Workbench Items API released in 25.11.61, adds support for the following capabilities for GDS in a post-commit workbench; in other words, from an existing reservation:
-
Cancel entire booking
-
Cancel all offers on the booking, including air, car and hotel offers; retains all other information in the booking including passenger details
Also in the Cancel Workbench Items API, adds support in the initial booking workbench to cancel a specific offer in the workbench; NDC only; not supported for GDS at this time.
AirReservation 25.11.61: Cancel workbench items | 29 May 2025
Supports a new request, Cancel Workbench Items, to remove all offers from an initial booking workbench. The workbench and any traveler details persist, and another offer can be added. Previously, the entire workbench had to be discarded if the offer was no longer wanted. NDC only; not supported for GDS in this release.
AirReservation 25.11.60: ContentSource to indicate GDS/NDC content | 15 May 2025
In the Workbench Retrieve, Workbench Commit, and Reservation Retrieve responses, adds the ContentSource object to each offer to indicate whether that offer is from GDS or NDC.
AirReservation 25.11.59: Baggage allowance indicators | 15 May 2025
In the reservation retrieve and ticket retrieve responses, adds baggage indicators. The Reservation Retrieve returns these in TermsAndConditions/BaggageAllowance/BaggageItem. Ticket Retrieve returns them in . These indicators make it easier to determine if baggage is included in the price and whether it is determined by piece or by weight. They also normalize baggage allowance details between GDS and NDC. Each instance of BaggageItem returns the following as applicable for the baggage allowance in that set of terms and conditions:
-
includedInOfferPrice: String. Possible values:
-
Yes: Baggage is included in the price.
-
No: Baggage is not included in the price; available for an additional charge.
-
Unknown: Unknown if baggage is included in the price.
-
-
soldByPieceInd: Boolean. Returned only if true. Indicates baggage allowance is by piece, such as one, two, or three pieces.
-
soldByWeightInd: Boolean. Returned only if true. Indicates the baggage is allowed by weight, either kilograms or pounds, such as 50 pounds or 35 kilograms.
Update to model v11.22 required for this feature.
AirReservation 25.11.58.2: Travel agency details, IATA Easy Pay | 18 Apr 2025
Adds support for the following:
-
Sending email and telephone in the Travel Agency Details API, which supports adding travel agency details in a single payload.
-
The Travel Agency Email API, which adds, updates, or deletes a travel agency email.
-
The Travel Agency Telephone API, which adds, updates, or deletes a travel agency email.
Adds support in Add Form of Payment to use IATA Easy Pay as the form of payment for any air transaction, including ticketing, exchanges, and ancillaries.
AirReservation 25.11.58: Book passive segments | 24 Apr 2025
Adds support for adding an air segment booked outside the Travelport GDS, called a passive segment, to the itinerary. This allows the booking to include complete travel details and support issuing a ticket for that segment. Supported in the Add Offer full payload request by sending the following two new objects added to ProductCriteriaAir:
-
SpecificFlightCriteria/passiveSegmentStatus
-
SupplierLocator
Supported only on ODM version 11.22 and higher. Supported only for AK and BK segment statuses; a known Issue is causing YK segments to fail at commit. GDS only; not supported for NDC.
AirReservation 25.11.57: JQ carrier update | 3 Apr 2025
Jetstar Group Airlines (JQ, 3K, GK) is no longer a ticketless carrier and is now a BSP participant. JQ does not have its own plate and tickets are issued on either Qantas or Hahn Air. All JQ tickets must be plated on either:
-
Qantas: Ticket supported on point of sale locations Australia, New Zealand, and South Korea.
-
Hahn Air: Ticket supported in over 200 point of sale locations except Australia, New Zealand and South Korea.
AirReservation 25.11.56: Updated handling of simultaneous changes error | 13 Mar 2024
Enhances the response returned at workbench commit when near-simultaneous changes occur to a booking, such as if both the airline and a travel agent make updates at nearly the same time. Previously, the response error message indicated only that the session had failed with the error "SIMULTANEOUS CHANGES TO BOOKING FILE - IGNORE TRANSACTION." With this update, the workbench commit returns a warning that simultaneous changes have occurred and the session should be re-initiated. The response also returns all booking details that could be confirmed as well as a record locator so the booking can be retrieved and any missing information re-entered.
AirReservation 25.11.54 & 55: Internal updates | 20 & 27 Feb 2025
Internal updates only.
AirReservation 24.11.53: Book split ticket offers, retrieve group booking | 13 Feb 2024
Adds support to the Reservation Retrieve API to retrieve a group booking, which are bookings with 10 or more passengers. The new object Reservation\Group is returned for group bookings. Creating group bookings is not supported in the JSON APIs and must be created with a separate program.
AirReservation 24.11.53: Book split ticket offers, retrieve group booking | 13 Feb 2024
Adds support to the Reservation Retrieve API to retrieve a group booking, which are bookings with 10 or more passengers. The new object Reservation\Group is returned for group bookings.
Adds support for booking a split ticketing offer. This update allows the Add Offer reference payload and workbench commit to book a split ticketing offer, which are two separate one-way outbound and inbound offers identified in the Search response with the CombinabilityCode value j0. You must be provisioned for split ticketing to receive split ticket offers in Search results.
AirReservation 25.11.51: Check FOP, update and delete FOP requests | 16 Jan 2024
Adds a new payload to the Add Form of Payment request to support the Check form of payment. GDS only, not supported for NDC.
Adds the Delete Form of Payment and Update Form of Payment requests to support deleting and updating a form of payment. Supported in the initial booking workflow for both GDS and NDC, where these requests delete or update an FOP added in the same booking workbench. For an existing reservation, both requests are supported only for GDS.
Updates the Add Traveler request with a new wrapper object that supports adding multiple travelers to a booking with a single request. Previously, each traveler was required to be added in a separate request. The previous payload is still supported.
Exchange APIs
The Exchange APIs support only GDS, not NDC content. See the Exchange, Refund, and Void Guide for NDC options.
Refund capabilities for GDS are under development.
Exchange Air Offer (was Eligibility and Exchange Search)
Exchange Air Offer 25.11.35, 36, 37: Internal | 29 May, 5 Jun, 26 Jun 2025
Internal updates only.
Exchange Air Offer 25.11.34: Return and report ignored residual value | 15 May 2025
In the Exchange Search response, adds the object SupplierRetainedPrice when an offer includes a system-ignored residual value amount. SupplierRetainedPrice returns the carrier-forfeited residual value, including forfeited base fare and tax details, using a structure similar to the Price object.
Exchange Air Offer 25.11.33: Internal | 1 May 2025
Internal updates only.
Exchange Air Offer 25.11.32: Return additional brand details | 20 Mar 2025
In the Exchange Search response, adds support for returning BrandAttribute and AdditionalBrandAttribute in ReferenceListBrand when these additional brand details are available for an offer.
Exchange Air Order (was Exchange Ticketing)
Exchange Air Order 25.11.38: Additional exchange support options | 26 Jun 2025
Adds support for exchanging multiple air offers for single or multiple passengers. You must be specifically provisioned for multi-offer exchanges.
Adds the following new error message when the workbench session has expired: RESERVATION WORKBENCH SESSION MUST BE ACTIVE. REINITIATE SESSION AND START AGAIN
Adds the following new error message when an invalid search offer id is sent: OFFER ID AND PRODUCT ID DOES NOT EXIST
Exchange Air Order 25.11.37: Internal | 12 Jun 2025
Internal updates only.
Exchange Air Order 25.11.36: Check as FOP | 5 Jun 2025
Adds support for using a check as form of payment for GDS exchanges. Use the FormOfPaymentCheck payload in the Form of Payment API Reference.
Exchange Air Order 25.11.35: Residual value terminal record, error handling | 29 May 2025
Adds support for returning a reservation response and an error message any time the exchange updates the reservation but failed at either ticket, EMD, or MCO issuance for any passenger. In other words, if an exchange only partially updates a reservation, the commit response returns the details of the exchanged booking along with an error message for the failed update.

The following excerpt shows the Result object when the form of payment modifiers were not applied.
"Result": {
"@type": "Result",
"Error": [
{
"@type": "ErrorDetail",
"category": "UNKNOWN",
"StatusCode": 200,
"Message": "IGNORE RETRIEVE AND RE-ADD FOP MODIFIERS",
"SourceID": "1G",
"SourceCode": "2999"
}
]
}
When a residual value is forfeited because of a Category 31 filing by the airline, an entry about the forfeit is made in the historical notepad record. No change to the JSON response payload. The historical notepad is accessible only via a terminal program with the *HNP entry, and available only to specifically provisioned customers. Contact your Travelport representative for any questions about your access.
Exchange Air Order 25.11.34: Residual value terminal indicator, error handling | 15 May 2025
When the Exchange Search response returns a system-ignored residual amount in the object SupplierRetainedPrice (deployed in Air Offer 25.11.34), the terminal record includes an EP$ modifier that indicates the system-ignored residual amount as follows. No change to the JSON response payload; this entry is availalbe only via a terminal program.
T P1/S1/CDL/ET/FEX0067232556649/EP$61.39
In the Modify Offer response, returns the following new error message when the request attempts to cancel a married segment:
SEGMENT CANCELLATION HAS FAILED
Exchange Air Order 25.11.33: Internal | 1 May 2025
Internal updates only.
Exchange Air Order 25.11.32: Store ReceivedFrom at workbench commit | 3 Apr 2025
Adds support for the optional ReceivedFrom payload at workbench commit to store a received from name. After sending, receivedFrom details are viewable only in a terminal program, not in the JSON Reservation Retrieve.
Exchange Ticketing 25.11.27-31: Internal | 13 Jan - 13 Mar 2025
Internal updates only.