Cancel Workbench Items API Reference
POST |
book/reservationworkbench/{workbenchID}/reservations/cancelitems For {workbenchID} send the workbench identifier returned in ReservationResponse/Identifer/value in the workbench create response. Base path: Note the following base path does not include air and varies from other JSON APIs.
Pre-production https://api.pp.travelport.com/11/ Production https://api.travelport.com/11/ |
Related Content:Booking Guide, Booking Session Workflow
The Cancel Workbench Items API offers several payload optoins that support canceling the following.
In the initial booking workbench only:
-
Cancel entire reservation
-
Cancel a specific offer in the workbench (NDC only)
Cancel Workbench Items supports only GDS in the post-commit workbench (in other words, for a held booking, aka an existing reservation). To modify an NDC held booking, use the NDC Modify API instead of Cancel Workbench Items. Cancel Workbench Items supports the following options for a GDS held booking:
-
Cancel entire booking
-
Cancel all offers on the booking, including air, hotel, and car offers
-
Cancel one specific offer on the booking, including air, hotel, and car offers
-
Cancel multiple offers on the booking, including air, hotel, and car offers
-
Cancel one or multiple products
In the JSON APIs, a product is the term used in the model for one leg of the itinerary. It includes the flight or connecting flights between one origin and destination pair; e.g., LON > EWR. Product information also includes a service level of the cabin class and any applicable fare codes. within an air offer (hotel and car do not have products)
-
Cancel one or multiple segments
A flight or flights under one flight number. One flight equals one segment. A segment could have multiple flights if the flight number remains the same, which happens if a flight makes a stop without changing planes. within a product in an air offer (hotel and car do not have products or segments)
When only offers are canceled, any data in the workbench and/or in the booking persist, and another offer can be added with Add Offer. If the workbench is committed without adding another offer, a shell booking with only traveler data is created.

Request
Also see Authorization and Common Headers.
Query Parameters
None.
Request Body
The following payload provides options to cancel the entire reservation, all offers, or only selected offers, products, or segments.
See the introductory section above for which options are supported for NDC/GDS and in the initial and post-commit workbench. Note that this payload does not support any NDC post-commit options; instead, to modify an NDC held booking, create a post-commit workbench and use the NDC Cancel API.

Object |
Description |
Required/Optional |
---|---|---|
@type |
Identifier. Send with value CancelRequest |
Required |
cancelAllInd |
Indicator. Send with value true to cancel the entire booking and remove all data from workbench.
|
Required Optional. Send only to cancel entire initial workbench or held booking. Must be followed immediately by a Workbench Commit. |
cancelOffers |
Object to cancel offers. Send to cancel one, multiple, or all offers (all offers includes all air, hotel, and car offers but retain traveler data in the workbench. |
Optional. Send to cancel specific offers instead of entire booking (see cancelAllInd above) |
objectType |
String. Supported values:
|
Required if cancelOffers sent |
offerProductSelection
|
Send if sending objectType=CancelSelectedOffers to cancel one or more specified offers. Send one instance for each offer to cancel, or each offer with a product or segment to cancel. Key value pairs:
Includes offerID object. Includes productSegmentSequenceArray only if canceling only one or more products or segments in an air offer instead of the entire offer. (Hotel and car offers do not have products or segments.) |
Required if canceling specific offers |
offerID |
Send if canceling one or more specified offers, or products or segments within an air offer. Includes the following:
|
Required if canceling specific offers |
productSegmentSequenceArray |
Send if canceling one or more specified products or segments in an offer. Includes the following:
|
Required if canceling a product or segment within one or more air offers |
Response
All of the request payloads above return a transaction identifier in the same format in the response.

Object |
Description |
---|---|
ReservationResponse |
Top level object. |
Reservation |
Top level object. Includes Identifier. |
Identifier |
Standard Travelport system-generated transaction identifier. Key value pairs:
|
Example Request
See the Request Body section above for details on when the following payloads are supported.
The following payload cancels the entire booking.

{
"@type": "CancelRequest",
"cancelAllInd": true
}
The following payload cancels all offers (air, hotel, and car as applicable) on a GDS held booking. Supported only for GDS in the post-commit workbench.

{
"@type": "CancelRequest",
"cancelOffers": {
"objectType": "CancelAllOffers"
}
}
The following payload cancels a specific offer. This example sends sendPassiveNotificationInd because the offer includes a passive segment An air segment booked in a system outside the Travleport GDS. Adding a passive air segment to a booking maintains all travel details as part of the complete itinerary..

{
"@type": "CancelRequest",
"cancelOffers": {
"objectType": "CancelSelectedOffers",
"offerProductSelection": [
{
"sendPassiveNotificationInd": true,
"offerID": {
"offerRef": "o0",
"Identifier": {
"authority": ""
"value": "71752fa9-c36c-48a4-b0b0-e775781ff6db"
}
}
}
]
}
}
The following payload cancels multiple offers; the following example cancels two offers.

{
"@type": "CancelRequest",
"cancelOffers": {
"objectType": "CancelSelectedOffers",
"offerProductSelection": [
{
"sendPassiveNotificationInd": true,
"offerID": {
"Identifier": {
"authority": "Travelport",
"value": "30420d72-2d73-4506-bd93-e4f7da67d04d"
}
}
},
{
"sendPassiveNotificationInd": true,
"offerID": {
"Identifier": {
"authority": "Travelport",
"value": "8b72118d-0247-449b-89bd-6ab554f550df"
}
}
}
]
}
}
The following payload cancels a product within an offer.

{
"@type": "CancelRequest",
"cancelOffers": {
"objectType": "CancelSelectedOffers",
"offerProductSelection": [
{
"sendPassiveNotificationInd": true,
"offerID": {
"Identifier": {
"authority": "Travelport",
"value": "672ccee8-d754-48a6-a5be-830098eb6429"
}
},
"productSegmentSequenceArray": [
{
"productID": {
"Identifier": {
"authority": "Travelport",
"value": "7687b84c-aa13-4d8c-b7d0-622ea57a9573"
}
}
}
]
}
]
}
}
The following payload cancels a segment within a product.

{
"@type": "CancelRequest",
"cancelOffers": {
"objectType": "CancelSelectedOffers",
"offerProductSelection": [
{
"sendPassiveNotificationInd": true,
"offerID": {
"Identifier": {
"authority": "Travelport",
"value": "64efc64a-6871-479f-873f-2ccde84da74b"
}
},
"productSegmentSequenceArray": [
{
"productID": {
"Identifier": {
"authority": "Travelport",
"value": "4ac1483f-4d8b-405a-b90b-b1ea00f8f069"
}
},
"segmentSequenceArray": [
4,5
]
}
]
}
]
}
}
The following payload cancels multiple product and segment combinations.

{
"@type": "CancelRequest",
"cancelOffers": {
"objectType": "CancelSelectedOffers",
"offerProductSelection": [
{
"sendPassiveNotificationInd": true,
"offerID": {
"Identifier": {
"authority": "Travelport",
"value": "ada4e19a-b52a-43cd-b1ed-e9a1c5cee7d8"
}
}
},
{
"sendPassiveNotificationInd": true,
"offerID": {
"Identifier": {
"authority": "Travelport",
"value": "accc35ff-9dde-45cd-810e-afc2612f74c2"
}
},
"productSegmentSequenceArray": [
{
"productID": {
"Identifier": {
"authority": "Travelport",
"value": "ae4ee9ee-88de-4d05-a07a-360c2e8aaad6"
}
}
}
]
}
]
}
}
Example Response
All of the request payloads above return a transaction identifier in the response per the example below.

{
"ReservationResponse": {
"Reservation": {
"@type": "Reservation",
"Identifier": {
"value": "8521bef5-da95-496f-9b03-fc3b1fcac50b",
"authority": "Travelport"
}
}
}
}