Ancillary Cancel API Reference
POST |
book/airoffer/reservationworkbench/{workbenchID}/offers/canceloffer For {workbenchID} send the workbench identifier returned in ReservationResponse/Identifer/value in the workbench create response. Base path: Pre-production https://api.pp.travelport.com/11/air/ Production https://api.travelport.com/11/air/ |
Related Content:Seats Guide, Ancillary Guide
The Ancillary Cancel API supports canceling baggage and/or paid seats for both GDS Global Distribution System. A GDS aggregates and distributes air, hotel, and car rental content such as schedules, fares, and upsells. In the JSON APIs, GDS content is distributed from Travelport. and NDC
New Distribution Capability, an XML standard for exchanging data that supports airlines in distributing their content directly to online travel agencies. See the NDC Guide., and canceling non-baggage ancillaries for NDC. Canceling non-baggage ancillaries for GDS is not supported.
Ancillary Cancel must be sent in a workbench session: Create a workbench, send Ancillary Cancel, and commit the workbench. You can cancel Cancel a ticket outside the void period without rebooking on another itinerary. Depending on the airline ticket policy, canceling a ticket may result in a full, partial, or no refund. ancillaries booked in the same or a previous session.





Request
Also see Authorization and Common Headers.
Query Parameters
None.
Request Body

Object |
Description |
Required/Optional |
---|---|---|
OfferQueryCancelOffer |
Top level object. |
Required |
BuildFromOffer |
Top level object. |
Required |
OfferIdentifier |
Top level object to send seats offer![]() |
Required |
Identifier |
Identifier for the seats offer to cancel; this was returned in the response either when the seats offer was added to the workbench (for a new booking) or when the workbench was created (for an existing reservation). |
Required |
Response
GDS responses return the ReferenceList object with flight details while NDC responses do not return ReferenceList.
Object |
Description |
---|---|
OfferListResponse |
Top level object for response. Includes OfferID object. GDS responses also return the ReferenceList object. |
OfferID |
Top level object for seat offer details. Includes Identifier, Product, Price, and TermsAndConditionsFull. |
Identifier |
Identifier for seat offer. Key value pairs:
|
Product |
Top level object for product (product is the flight or connecting flights for one leg Key value pairs:
Includes Identifier and Ancillary objects. May return Quantity. |
Product/Identifier |
Identifier for the product. Key value pairs:
|
Quantity |
Returned when multiple travelers are on the itinerary; number of seats in this product. |
Ancillary |
Includes SeatAssignment. |
SeatAssignment |
Includes Seat object. |
Seat |
Row and seat number of assigned seat that was canceled. |
Price |
Top level object for price details; amounts are 0 for free seats. Includes CurrencyCode, Base, TotalTaxes, and TotalPrice objects. May include PriceBreakdown |
CurrencyCode |
The currency in which the price is returned. Currency is the default associated with your provisioned PCC Key value pairs:
|
Base |
Base price before taxes and fees. |
TotalPrice |
Total price for a paid seat; 0 for free seats. |
TermsAndConditionsFull |
Any terms and conditions applicable to the seat. Includes ApplicationLimit. |
ApplicationLimit |
Any restrictions on the number of this seat product that can be purchased. Key value pairs:
|
ReferenceList |
Top level object for flight details. Includes Flight object. Not returned for NDC seat cancel responses.
|
Flight |
One instance per flight. Key value pairs:
Includes Identifier, Departure, and Arrival objects. |
Flight/Identifier |
Internal identifier for the flight. Key value pairs:
|
Departure |
Departure details. Key value pairs are the location, date, time, and terminal of departure. |
Arrival |
Arrival details. Key value pairs are the location, date, time, and terminal of arrival. |
Example Request

The following example seat cancel request sends the offer identifier for the seats offer to cancel.
{
"OfferQueryCancelOffer": {
"BuildFromOffer": {
"@type": "BuildFromOfferAir",
"OfferIdentifier": {
"Identifier": {
"authority": "Travelport",
"value": "41af2ea3-de07-4931-98bd-400b983a0221"
}
}
}
}
}
Example Response
The seat cancel response for both NDC and GDS returns an identifier and details of the canceled seat offer per the examples below.
GDS responses return the ReferenceList object with flight details while NDC responses do not return ReferenceList.

{
"OfferListResponse": {
"@type": "OfferListResponse",
"transactionId": "32e4e607-bdd9-4b59-9c11-4562c71463fb",
"traceId": "947aa1fc-a50e-46f9-a53c-bf9af33988fd",
"OfferID": [
{
"@type": "Offer",
"id": "seatOffer_Flight_01_2",
"Identifier": {
"authority": "Travelport",
"value": "91e81a76-a5f5-4bc6-a6e5-59f03de70b60"
},
"Product": [
{
"@type": "ProductAncillary",
"id": "product_seat_Flight_01_2",
"Identifier": {
"authority": "Travelport",
"value": "ed32e859-8e1e-4595-a5ea-847a4bc72c17"
},
"Ancillary": {
"@type": "AncillaryAirSeat",
"FlightRef": [
"Flight_01"
],
"SeatAssignment": {
"@type": "SeatAssignment",
"Seat": "030E"
}
}
}
],
"Price": {
"@type": "PriceDetail",
"CurrencyCode": {
"value": "AUD"
},
"Base": 0,
"TotalPrice": 0
},
"TermsAndConditionsFull": [
{
"@type": "TermsAndConditionsFullAncillary",
"ApplicationLimit": {
"start": "1",
"end": "1",
"value": "PassengerSegment"
}
}
]
}
],
"ReferenceList": [
{
"@type": "ReferenceListFlight",
"Flight": [
{
"@type": "Flight",
"duration": "PT1H25M",
"carrier": "QF",
"number": "414",
"equipment": "332",
"id": "Flight_01",
"Identifier": {
"authority": "Travelport",
"value": "22d1bb70-b405-4853-82b9-f5dbb634a9ac"
},
"Departure": {
"@type": "Departure",
"location": "MEL",
"date": "2023-08-07",
"time": "07:30:00"
},
"Arrival": {
"@type": "Arrival",
"location": "SYD",
"date": "2023-08-07",
"time": "08:55:00"
}
}
]
}
]
}
}
The NDC seat cancel response below does not return the ReferenceList object.

{
"OfferListResponse": {
"OfferID": [
{
"@type": "Offer",
"id": "Offer_2",
"Identifier": {
"authority": "QF",
"value": "UUYwODFISkVBN1RBN3xXM0M4MEJCQTYtMUJFNC00NjM0LUI1RUItMS0z"
},
"Product": [
{
"@type": "ProductAncillary",
"id": "product_anc_1",
"productRef": "product_anc_1",
"Identifier": {
"authority": "Travelport",
"value": "dcc44d91-5fd6-403b-8665-e7c98cea4273"
},
"Quantity": 1,
"Ancillary": {
"@type": "AncillaryAirSeat",
"quantity": 1,
"FlightRef": [],
"SeatAssignment": {
"@type": "SeatAssignment",
"Seat": "9F"
}
}
}
],
"Price": {
"@type": "PriceDetail",
"CurrencyCode": {
"decimalPlace": 2,
"value": "AUD"
},
"Base": 9.09,
"TotalTaxes": 0.91,
"TotalPrice": 10,
"PriceBreakdown": [
{
"@type": "PriceBreakdownAncillaryAir",
"Amount": {
"@type": "Amount",
"Taxes": {
"@type": "TaxesDetail",
"Tax": [
{
"taxCode": "UO",
"value": 0.91
}
]
}
}
}
]
},
"TermsAndConditionsFull": [
{
"@type": "TermsAndConditionsFullSummary",
"id": "termsAndConditionsFull_1",
"Identifier": {
"authority": "Travelport",
"value": "71e0d5b1-d349-4898-a90b-642b27a45af3"
}
}
]
}
]
}
}