Skip to content

New Workbench

Request

Use this request to initiate a workbench for a new reservation. This prerequisite step for booking creates the workbench session in which all booking details are added together to create a PNR at commit.

Security
bearerAuth
Headers
TraceIdstring, [ 10 .. 89 ] characters

Identifier used to correlate Air API invocations across a multi-call business flows.

Example:TraceID_123456789
XAUTH_TRAVELPORT_ACCESSGROUPstring, = 36 characters([a-zA-Z-0-9-_]*)

Identifies the Travelport access group with which the caller is associated

Example:19Y88702-C27A-4E5D-829A-89D7016688B1
travelportPlusSessionIdentifierstring, [ 0 .. 100 ] characters([a-zA-Z-0-9-_]*)

travelportPlusSessionIdentifier used to maintain an established agency session

Example:49f58f5f-c443-43b4-9f5d-be405fd00a01
TVP-PCC-Corestring^[a-zA-Z\d]{3,4}_\w{2}$

Allows user to pass PCC instead of Access Group ID

Example:DU7_1G
Bodyapplication/jsonrequired

Create Workbench request payload.

@typestringrequired

Discriminator classes ReservationID, Reservation, or ReservationDetail

Value:"Reservation"
Example:"Reservation"
Discriminator
idstring

Internal identifier for the response.

Example:"REF12873"
Identifierobject(Identifier)

A globally unique identifier key often used to reference a given option (such as Pricing, Booking, Rules, or additional workflows) or to retrieve information (such as Hotel pagination).

OfferArray of objects, <= 100 items(Offer)

Each instance returns details about one offer on the reservation. An offer could be flight/s on the itinerary, seats, or a paid ancillary.
Additional instances of Offer are returned by default if the booking includes hotel and/or car segments. The hotel and/or car segments must have been booked with the TripServices Stays APIs or TripServices Car APIs (full release pending), or a terminal program. See the Multi-Content Booking Guide (Air, Hotel, Car) for more information.
In the two-step commit, several objects in Offer vary from the standard response. For price or schedule changes, Offer is returned with @type OfferModify.
For NDC only, when an airline-initiated flight change has occurred, the Reservation Retrieve response returns the Offer object with @type OfferModify and scheduleChangeInd=true to indicate a change has occurred. See the NDC Flight Disruption Handing in the Air Booking Guide for details.

TravelerArray of objects, <= 300 items(Traveler)
TravelerProductArray of objects, <= 3000 items(TravelerProduct)

A list of travelers on a given reservation.

FormOfPaymentArray of objects, <= 100 items(FormOfPaymentID)

A list of key-value pairs that represent form(s) of payment.

PaymentArray of objects, <= 100 items(Payment)

Contains payment details related to a ticketed itinerary.

ReceiptArray of objects, <= 1000 items(Receipt)

Returns confirmation details, including the booking locator code.

ReservationCommentArray of objects, <= 1000 items(ReservationComment)

Any remarks added to the reservation.

PrimaryContactArray of objects, <= 10 items(PrimaryContact)

Any primary contact details for the reservation.

TravelAgencyobject(TravelAgency)
SpecialServiceArray of objects(SpecialService)
Preferenceobject(Preference)
OrganizationLoyaltyProgramArray of objects, <= 10 items(OrganizationLoyaltyProgram)
ReservationDisplaySequenceobject(ReservationDisplaySequence)

Returned to provide the chronological (by date) order of all offers on the booking.
If a booking includes car and/or hotel segments along with air segments, includes those offers. Returned for all reservations even if hotel/car content is not on the booking. See Multi-Content Booking Guide (Air, Hotel, Car) for more details.

AgencyServiceFeeArray of objects, <= 100 items(AgencyServiceFee)
autoDeleteDatestring, (date)

The auto delete date represents the date that the Reservation will be kept active. Also known as retention segment or retention date.

notificationDatestring, (date)

The notification date represents the date that the Reservation should be reviewed. Also known as ticket time limit date.

CustomAuxiliarySegmentArray of objects, <= 100 items(CustomAuxiliarySegmentID)

Returns any auxiliary segments on a booking. Auxiliary segments can include air taxi, cars, hotels, surface transportation, and tours. TUR (tour) or SUR (surface) segments are commonly used for rail content, but can be used for other ground transportation such as taxis, surface transportation and tours.
This content cannot be booked in the TripServices APIs but is returned in the reservation retrieve when booked through another Travelport platform or an external provider.

Groupobject(Group)
UnpricedSegmentsobject(UnpricedSegments)

Returned if a booking has unpriced segments (GDS only).
When unpriced segments are in the request, these objects also return unpriced segment information:

  • 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.
GroupNamestring, <= 64 charactersdeprecated

Group name will be passed in the new Group object

ShoppingCartobject(ShoppingCart)deprecated

This object is deprecated and no longer in use.

curl -i -X POST \
  https://developer.travelport.com/_mock/apis/flights/air/book/session/reservationworkbench \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'TVP-PCC-Core: DU7_1G' \
  -H 'TraceId: TraceID_123456789' \
  -H 'XAUTH_TRAVELPORT_ACCESSGROUP: 19Y88702-C27A-4E5D-829A-89D7016688B1' \
  -H 'travelportPlusSessionIdentifier: 49f58f5f-c443-43b4-9f5d-be405fd00a01' \
  -d '{
    "@type": "ReservationID"
  }'

Responses

OK - Successful Response - 200

Bodyapplication/json
ReservationResponseobject(ReservationResponse)

The response of a Create Reservation (Reference or Full Payload), Sync Reservation, Modify/Add Reservation, Create/Modify Passive Reservation, Retrieve Reservation, or Cancel Reservation endpoint.
The structure detailed here is the same for all of these API responses. For Post-Commit Workbench Create and Workbench Retrieve the response is structured the same, plus a workbench identifier.
The information returned in the Reservation Retrieve response varies depending on the information that has been added to the reservation at the time of retrieve, whether the reservation has been ticketed, and whether the reservation was created using the Travelport TripServices APIs or another program.

Please note the requests for Workbench Commit (Create Reservation), Post-Commit Workbench Create, and Workbench Retrieve do not support the query parameters available in Reservation Retrieve and do not return the following:

  • any document override, accounting, historical, and DOCI remarks
  • any custom rules
  • brand attributes
  • baggage dimension and fee details
  • fare rules
  • ATPCO RouteHappy flight amenities

For Two-step Commit: In the initial booking workflow, or when adding an offer to an existing reservation, or during an exchange, you can send enableTwoStepCommitInd=true to enable a two-step commit process that returns a warning if specific error scenarios occur. See Two-step Commit in the Guides for more information. If a Two-step Commit is triggered, the booking is not created and the first commit response returns objects that may not return in a typical commit response payload. The payload varies based on the warning that triggered the Two-step Commit, and may include additional objects if seats or other ancillaries were added to the workbench. Because the booking was not committed, Result/status is 'Not Processed'. A descriptive error or warning is returned in Result/Error/Message or Result/Warning/Message. The response to a second commit that creates a booking uses the same structure as a Reservation Retrieve response.

Response
{ "ReservationResponse": { "@type": "response", "transactionId": "49f58f5f-c443-43b4-9f5d-be405fd00a01", "traceId": "TraceID_123456", "correlationId": "49f58f5f-c443-43b4-9f5d-be405fd00a01", "reservationStatus": "Success", "Result": { "@type": "Result", "status": "Complete", "Error": [], "Warning": [] }, "Identifier": { "value": "A0656EFF-FAF4-456F-B061-0161008D7C4E", "authority": "TVPT" }, "NextSteps": { "baseURI": "www.travelport.com", "id": "5", "NextStep": [] }, "ReferenceList": [ {} ], "CurrencyRateConversion": [ {} ], "Pagination": { "@type": "Pagination", "page": 1, "pageSize": 20, "totalPages": 5, "totalItems": 100 } } }