# Add Offer Reference Payload

Use the Add Offer reference payload request to add an offer to the reservation workbench as part of the booking workflow. The reference payload request sends identifiers from the Search response instead of full itinerary details.
NDC supports only the reference payload. For GDS, you can send either a reference payload or a full payload.
To use the Add Offer reference payload request following a search request, your initial Search request must send 'offersPerPage' to invoke caching if that Search was journey-based (leg-based search results are always cached). If you add the offer after a price request, you can send the transaction identifier from the AirPrice response.
Add Multiple Offers (GDS only; not supported for NDC):   In either the initial booking workflow, or for an existing reservation, you can send one or more Add Offer requests to add multiple GDS air offers in a single booking. While there is no specific limit on the number of offers that can be combined, a reservation cannot have more than 16 flight segments.
Also supported in the Add Offer full payload request. Your PCC must be provisioned for multi-offers; contact your Travelport representative if necessary. See Multi-offer Bookings in the [Flights Booking Guide](https://developer.travelport.com/docs/flights/guides/booking-and-reservations/flights-booking-guide#multi-offer-bookings).
You can also use Add Offer to add a GDS air offer to an existing reservation that has hotel and/or car offers. See the [Multi-Content Booking Guide (Air, Car, Hotel)](https://developer.travelport.com/docs/flights/guides/booking-and-reservations/multi-content-booking-guide) for workflow details.
Add offer to expired booking:
- For GDS only: use this Add Offer reference payload request or the full payload request to add an offer to an existing reservation, such as when the previously added offer has expired and can no longer be booked.
- For NDC, use the NDC-specific [Standalone Reprice API](https://developer.travelport.com/apis/flights/ndc-modify-cancel-exchange/workbenchndcbuildfromcatalogofferings) instead to add an offer to an expired booking.)

Endpoint: POST /air/book/airoffer/reservationworkbench/{ReservationResource_Identifier}/offers/buildfromcatalogproductofferings
Version: 11.35.2
Security: bearerAuth

## Path parameters:

  - `ReservationResource_Identifier` (string, required)
    The Reservation Identifier

## Header parameters:

  - `TraceId` (string)
    Identifier used to correlate Air API invocations across a multi-call business flows.

  - `XAUTH_TRAVELPORT_ACCESSGROUP` (string)
    Identifies the Travelport access group with which the caller is associated

  - `travelportPlusSessionIdentifier` (string)
    travelportPlusSessionIdentifier used to maintain an established agency session

  - `TVP-PCC-Core` (string)
    Allows user to pass PCC instead of Access Group ID

## Request fields (application/json):

  - `@type` (string, required)
    Discriminator. No child classes
    Example: OfferQueryBuildFromCatalogProductOfferings

  - `PaymentCriteria` (object)
    Optional object to send the BIN/INN (IssuerIdentificationNumber) of the credit card to be used for payment; sending the BIN returns OB fees in the response  
Required when using Air Canada flight pass.

  - `PaymentCriteria.@type` (string, required)
    discriminator
    Example: PaymentCriteria

  - `PaymentCriteria.IssuerIdentificationNumber` (string)
    Required if PaymentCriteria sent; 6 to 16 characters inclusive are accepted.  
The BIN/IssuerIdentificationNumber (IIN) of the credit card to be used for payment and returning OB fees. OB fees are ticketing and form of payment (FOP) charges, including credit card fees. Returned in an instance of Price/PriceBreakdown/Fees/Fee with a feeCode of OB.  
For NDC carrier BA, you must send the complete 16-digit credit card number to return the surcharge amount.
    Example: 123456

  - `PaymentCriteria.PaymentCardCode` (string)
    A two character code for a credit card
    Example: VI

  - `PaymentCriteria.DocumentNumber` (array)

  - `PaymentCriteria.DocumentNumber.value` (string)
    Example: 1259900123456

  - `PaymentCriteria.DocumentNumber.documentIssuer` (string)
    Document issuer
    Example: BA

  - `PaymentCriteria.DocumentNumber.documentType` (string)
    Document type like EMD, MCO
    Enum: "EMD", "MCO", "Ticket", "TASF", "Invoice"

  - `PaymentCriteria.DocumentNumber.travelerIdentifierRef` (string)
    traveler identifier reference

  - `PaymentCriteria.DocumentNumber.name` (string)
    The name of the Traveler being referenced.

  - `PaymentCriteria.DocumentNumber.passengerTypeCode` (string)
    The passenger type code of the Traveler being referenced.
    Example: ADT

  - `PaymentCriteria.DocumentNumber.id` (string)
    A locally referenced ID

  - `PaymentCriteria.DocumentNumber.description` (string)
    Descriptive text used to identify the contents of a target object

  - `PaymentCriteria.DocumentNumber.uris` (array)
    The URI used to GET the target object in another domain.

  - `PaymentCriteria.FlightPass` (array)
    In Search API, for NDC flight pass bookings this is a required field and must reference the owner in PassengerCriteria. Only one permitted per Search request.
Required when using a flight pass to pay for an Air Canada NDC booking. Only one instance allowed. Refer to the [Air Canada Flight Pass](https://developer.travelport.com/docs/flights/ndc/ndc-guide-for-air-canada-flight-pass) section of the NDC Guide for more information

  - `PaymentCriteria.FlightPass.@type` (string, required)
    Discriminator. No child classes
    Example: FlightPass

  - `PaymentCriteria.FlightPass.accountNumber` (string, required)
    The flight pass account number.
    Example: 0140851633093

  - `PaymentCriteria.FlightPass.supplier` (string, required)
    The flight pass supplier code. AC is the only value accepted at this time.
    Example: AC

  - `PaymentCriteria.FlightPass.Description` (array)

  - `PaymentCriteria.FlightPass.TravelerIdentifierRef` (array)
    In Search, use the passengerCriteriaRef to reference the owner of the flightpass. This is a mandatory field for Search API.

  - `PaymentCriteria.FlightPass.TravelerIdentifierRef.value` (string)

  - `PaymentCriteria.FlightPass.TravelerIdentifierRef.id` (string)
    A locally referenced ID

  - `PaymentCriteria.FlightPass.TravelerIdentifierRef.description` (string)
    Descriptive text used to identify the contents of a target object

  - `PaymentCriteria.FlightPass.TravelerIdentifierRef.uris` (array)
    Uniform Resource Identifier

  - `PaymentCriteria.agencyAccountInd` (boolean)
    If true, payment will be made by agency account
    Example: true

  - `PaymentCriteria.bspInd` (boolean)
    If true, payment will be made by BSP
    Example: true

  - `PaymentCriteria.cashInd` (boolean)
    If true, payment will be made by cash
    Example: true

  - `PaymentCriteria.invoiceInd` (boolean)
    If true, payment will be made by invoice
    Example: true

  - `BuildFromCatalogProductOfferingsRequest` (object)
    Used to reference Air Search requests, such as for a Next Leg, reference-payload Price and Add Offer, or other reference-based calls. Defines the identifiers and selections needed to continue a workflow from a preceding Search response, including the cached search result id and the chosen offer and product to carry forward into the next request.

  - `BuildFromCatalogProductOfferingsRequest.@type` (string, required)
    Discriminator. Child classes BuildFromCatalogProductOfferingsRequestAir, BuildFromCatalogProductOfferingsRequestAirSearch, and BuildFromCatalogProductOfferingsRequestAirChange
    Example: BuildFromCatalogProductOfferingsRequestAir

  - `BuildFromCatalogProductOfferingsRequest.CatalogProductOfferingsIdentifier` (object, required)
    Used to identify a cached Air Search result for subsequent reference-payload requests. Defines the transaction identifier returned from Search that is sent in later steps (such as Next Leg Search and other workflows) to reference a prior search response.  
The Search response does not return the CatalogProductOfferings/Identifier object if caching is not invoked with offersPerPage in the Search request. A subsequent reference payload request to those search results cannot be sent without caching and the CatalogProductOfferings/Identifier value.

  - `BuildFromCatalogProductOfferingsRequest.CatalogProductOfferingsIdentifier.id` (string)
    Local identifier within a given message for this object.
    Example: cpo_1

  - `BuildFromCatalogProductOfferingsRequest.CatalogProductOfferingsIdentifier.Identifier` (object)
    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).

  - `BuildFromCatalogProductOfferingsRequest.CatalogProductOfferingsIdentifier.Identifier.value` (string)
    Unique offer identifier that can be sent in subsequent payload requests to reference this offer.
When used for reference flight calls, the CatalogProductOfferingsIdentifier will be the transaction identifier from the Search, Next Leg Search, or Flight Specific Search response in CatalogProductOfferings/Identifier/value.
If you choose to pull the CatalogProductOfferingsIdentifier from the Price response instead (OfferListResponse/Identifier/value), either full or reference payload, please note for subsequent Add Offer requests you must remove the _PC appended to the end of the value in the AirPrice response (e.g., change value: '93d2091d-3d04-48ab-8091-6ae1525f02ea_PC' to value: '93d2091d-3d04-48ab-8091-6ae1525f02ea').
When building an AirPrice or Add Offer reference payload request:
- Look for the CatalogProductOfferingIdentifier (ex: o1) in a Search response at CatalogProductOfferings/CatalogProductOffering/id or a Price response at OfferListResponse/OfferID/id.
- Look for the ProductIdentifier (ex: p0) in a Search response at CatalogProductOfferings/CatalogProductOffering/ProductBrandOptions/ProductBrandOffering/Product/productRef or from a Price response at OfferListResponse/OfferID/Product/id.

When returned from a Workbench, this value is the workbench identifier that must be sent in all subsequent requests for this workbench session.
When returned from Air Exchange Eligibility, value is the ticket number sent with the eligibility request.
When used specifically for form of payment, the value will begin with the characters 'FOP'. Similarly, the OfferIdentifier associated will begin with the character 'O'.
For Hotel Create Reservation (Reference Payload), send the value from the Availability response in CatalogOffering/id or the value from SearchComplete returned in propertyItems/lowestPublicAvailableRate/rateKey/value.
Results from Hotel Availability and Hotel SearchComplete are stored in the cache for 30 minutes. If the offers expire before booking, you must send a new request.
    Example: A0656EFF-FAF4-456F-B061-0161008D7C4E

  - `BuildFromCatalogProductOfferingsRequest.CatalogProductOfferingsIdentifier.Identifier.authority` (string)
    Name of the supplier system that created this identifier - the source of information.  
For AirPrice, please note that GDS offers return the value 'Travelport' in authority while NDC offers return the carrier code of the issuing NDC carrier.  
When returned from Air Exchange Eligibility, authority is always 'Travelport' as the transaction issuer.  
For Hotels, authority indicates which supplier returned the lowest available rate for that property: either 'TVPT' (Travelport) or 'BKNG' (booking.com). Booking.com access requires additional provisioning and a direct agreement with the supplier. Authority is not returned if the property is closed or returns an error.  
For Hotel Create Reservation (Full Payload) and Sync Reservation send the value from the Availability response in CatalogOffering/Identifier/authority for the instance you want to book.
    Example: TVPT

  - `BuildFromCatalogProductOfferingsRequest.CatalogProductOfferingSelection` (array, required)

  - `BuildFromCatalogProductOfferingsRequest.CatalogProductOfferingSelection.@type` (string)
    Discriminator. No child classes.
    Example: CatalogProductOfferingSelection

  - `BuildFromCatalogProductOfferingsRequest.CatalogProductOfferingSelection.CatalogProductOfferingIdentifier` (object, required)
    Top level object for offer identifier.

  - `BuildFromCatalogProductOfferingsRequest.CatalogProductOfferingSelection.CatalogProductOfferingIdentifier.id` (string)
    Local identifier within a given message for this object.
    Example: cpo_1

  - `BuildFromCatalogProductOfferingsRequest.CatalogProductOfferingSelection.CatalogProductOfferingIdentifier.CatalogProductOfferingRef` (string)
    Not used. Allows referencing another instance of this object in the same message.
    Example: cpo_1

  - `BuildFromCatalogProductOfferingsRequest.CatalogProductOfferingSelection.ProductIdentifier` (array, required)
    A list of values used to reference specific products.

  - `BuildFromCatalogProductOfferingsRequest.CatalogProductOfferingSelection.ProductIdentifier.id` (string)
    Local identifier within a given message for this object.
    Example: product_1

  - `BuildFromCatalogProductOfferingsRequest.CatalogProductOfferingSelection.ProductIdentifier.productRef` (string)
    Used to reference another instance of this object in the same payload.
    Example: product_1

  - `BuildFromCatalogProductOfferingsRequest.CatalogProductOfferingSelection.SegmentSequence` (array)
    Example: [1,2]

  - `BuildFromCatalogProductOfferingsRequest.UpsellOfferingIdentifier` (array)
    Will not implement.

  - `BuildFromCatalogProductOfferingsRequest.UpsellOfferingIdentifier.id` (string)
    Local identifier within a given message for this object.
    Example: UpsellOffering

  - `BuildFromCatalogProductOfferingsRequest.UpsellOfferingIdentifier.CatalogProductOfferingRef` (string)
    Used to reference another instance of this object in the same message

  - `MaxNumberOfUpsellsToReturn` (integer)
    NDC only; not supported for GDS.
Supports values from 0 to 99 inclusive. Send to request upsell offers along with pricing for the requested class of service or cabin, returned in ascending price order. An upsell is the next highest fare in a different brand or cabin than requested.
Upsells are returned as follows:
- If upsells not requested: Only the requested offer is returned.
- If one upsell requested: The lowest priced offer in the requested class of service or cabin plus one upsell offer are returned.
- If two or more upsells requested: The lowest priced offer in the requested class of service or cabin plus the requested number of upsell offers are returned.
    Example: 4

## Response 200 fields (application/json):

  - `OfferListResponse` (object)
    The response of an Offer list endpoint request, such as AirPrice and Add Offer calls.  
Defines one or more air offers returned including the offer identifiers and related response data needed for subsequent booking steps.

  - `OfferListResponse.@type` (string)
    Example: response

  - `OfferListResponse.transactionId` (string)
    A unique system-generated (128 bit GUID format) transaction/tracking id for a single request and response (i.e. for a single transaction) used for internal tracking and troubleshooting.  
Also known as E2ETrackingId.  
Not returned in all Hotel API responses.
    Example: 49f58f5f-c443-43b4-9f5d-be405fd00a01

  - `OfferListResponse.traceId` (string)
    Used in hospitality workflows to provide a unique transaction or tracking id for a single request and response.  
For Air Eligibility, returned if a custom trace ID was sent in the request header.  
For Hotel Rules, returned if a custom trace ID was sent in the request header.
    Example: TraceID_123456

  - `OfferListResponse.correlationId` (string)
    Identifier used to correlate hotel API invocations across a multi-call business flows.

  - `OfferListResponse.reservationStatus` (string)
    Status of reservation or offer completion.
    Enum: "Success", "Fail", "Partial", "Pending", "OnHold", "Retry", "Other"

  - `OfferListResponse.Result` (object)
    Returns the error and/or warning message information, if applicable.

  - `OfferListResponse.Result.@type` (string)
    Discriminator class Result only
    Example: Result

  - `OfferListResponse.Result.status` (string)
    The status of an error or warning
    Enum: "Not processed", "Incomplete", "Complete", "Unknown"

  - `OfferListResponse.Result.Error` (array)
    A list of error information returned at the provider level for a response.

  - `OfferListResponse.Result.Error.@type` (string, required)
    Discriminator classes Error or ErrorDetail
    Example: ErrorDetail

  - `OfferListResponse.Result.Error.StatusCode` (integer)
    Http standard response code
    Example: 200

  - `OfferListResponse.Result.Error.Message` (string)
    The Travelport standardized error or warning message
    Example: No flights found.

  - `OfferListResponse.Result.Error.NameValuePair` (array)

  - `OfferListResponse.Result.Error.NameValuePair.value` (string)
    Text directly related to name description, providing more detail. May have character restrictions based on remark type (e.g. Free Text limitations: 84 characters, alphanumeric and some special characters).
    Example: Sunday

  - `OfferListResponse.Result.Error.NameValuePair.id` (string)
    Optional internally referenced id
    Example: 6

  - `OfferListResponse.Result.Error.NameValuePair.name` (string, required)
    Key, categorizing the type of remark or error.
    Example: Day1

  - `OfferListResponse.Result.Warning` (array)
    A list of warning information returned at the provider level for a response.

  - `OfferListResponse.Result.Warning.@type` (string, required)
    Discriminator classes Warning or WarningDetail
    Example: WarningDetail

  - `OfferListResponse.Result.Warning.StatusCode` (integer)
    Http standard response code
    Example: 200

  - `OfferListResponse.Result.Warning.Message` (string)
    The Travelport standardized error or warning message
    Example: Customer Loyalty could not be applied.

  - `OfferListResponse.Result.Warning.NameValuePair` (array)

  - `OfferListResponse.Identifier` (object)
    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).

  - `OfferListResponse.Identifier.value` (string)
    Unique offer identifier that can be sent in subsequent payload requests to reference this offer.
When used for reference flight calls, the CatalogProductOfferingsIdentifier will be the transaction identifier from the Search, Next Leg Search, or Flight Specific Search response in CatalogProductOfferings/Identifier/value.
If you choose to pull the CatalogProductOfferingsIdentifier from the Price response instead (OfferListResponse/Identifier/value), either full or reference payload, please note for subsequent Add Offer requests you must remove the _PC appended to the end of the value in the AirPrice response (e.g., change value: '93d2091d-3d04-48ab-8091-6ae1525f02ea_PC' to value: '93d2091d-3d04-48ab-8091-6ae1525f02ea').
When building an AirPrice or Add Offer reference payload request:
- Look for the CatalogProductOfferingIdentifier (ex: o1) in a Search response at CatalogProductOfferings/CatalogProductOffering/id or a Price response at OfferListResponse/OfferID/id.
- Look for the ProductIdentifier (ex: p0) in a Search response at CatalogProductOfferings/CatalogProductOffering/ProductBrandOptions/ProductBrandOffering/Product/productRef or from a Price response at OfferListResponse/OfferID/Product/id.

When returned from a Workbench, this value is the workbench identifier that must be sent in all subsequent requests for this workbench session.
When returned from Air Exchange Eligibility, value is the ticket number sent with the eligibility request.
When used specifically for form of payment, the value will begin with the characters 'FOP'. Similarly, the OfferIdentifier associated will begin with the character 'O'.
For Hotel Create Reservation (Reference Payload), send the value from the Availability response in CatalogOffering/id or the value from SearchComplete returned in propertyItems/lowestPublicAvailableRate/rateKey/value.
Results from Hotel Availability and Hotel SearchComplete are stored in the cache for 30 minutes. If the offers expire before booking, you must send a new request.
    Example: A0656EFF-FAF4-456F-B061-0161008D7C4E

  - `OfferListResponse.Identifier.authority` (string)
    Name of the supplier system that created this identifier - the source of information.  
For AirPrice, please note that GDS offers return the value 'Travelport' in authority while NDC offers return the carrier code of the issuing NDC carrier.  
When returned from Air Exchange Eligibility, authority is always 'Travelport' as the transaction issuer.  
For Hotels, authority indicates which supplier returned the lowest available rate for that property: either 'TVPT' (Travelport) or 'BKNG' (booking.com). Booking.com access requires additional provisioning and a direct agreement with the supplier. Authority is not returned if the property is closed or returns an error.  
For Hotel Create Reservation (Full Payload) and Sync Reservation send the value from the Availability response in CatalogOffering/Identifier/authority for the instance you want to book.
    Example: TVPT

  - `OfferListResponse.NextSteps` (object)
    Container for the steps that describe actions that may be taken on the containing object.  
Not applicable for an Eligibility or Exchange response.

  - `OfferListResponse.NextSteps.baseURI` (string, required)
    The base portion of the URI in order to shorten the uris in the individual steps

  - `OfferListResponse.NextSteps.id` (string)
    Optional internally referenced id
    Example: 5

  - `OfferListResponse.NextSteps.NextStep` (array, required)

  - `OfferListResponse.NextSteps.NextStep.value` (string)
    Example: www.resourcelocation.com

  - `OfferListResponse.NextSteps.NextStep.id` (string)
    Identifier for the Next Step
    Example: 2

  - `OfferListResponse.NextSteps.NextStep.action` (string, required)
    The action this next step is intended to achieve
    Example: cancel

  - `OfferListResponse.NextSteps.NextStep.method` (string, required)
    Describes the set of potential methods that can be taken after an operation.
    Enum: "GET", "DELETE", "PUT", "POST"

  - `OfferListResponse.NextSteps.NextStep.description` (string)
    Additional clarification for the next step
    Example: remove offer from the order

  - `OfferListResponse.ReferenceList` (array)

  - `OfferListResponse.ReferenceList.@type` (string, required)
    Discriminator
- Air Search child classes are ReferenceListAmenity, ReferenceListBrand, ReferenceListFlight, ReferenceListProduct, ReferenceListTermsAndConditions, and ReferenceListUniversalProductAttribute.
- Air Price child classes are ReferenceListAmenity and ReferenceListBrand.
- FareRules child class is ReferenceListFlight.
- Search Ancillaries child class is ReferenceListFlight.
- Seat Map child class is ReferenceListSeatingChart.
- Hotel Availability child class is ReferenceListPropertyDates.
- Reservation and Reservation Workbench child classes are ReferenceListAmenity, ReferenceListBrand, and ReferenceListUniversalProductAttribute.
- Exchange Search child classes are ReferenceListBrand, ReferenceListFlight, and ReferenceListExchangedPrice.
- Reservation Receipt child classes are ReferenceListOffer and ReferenceListTraveler.
- Book_Traveler child class is ReferenceListTraveler.
    Example: ReferenceListFlight

  - `OfferListResponse.ReferenceList.id` (string)
    Uniquely identifies for the Reference List

  - `OfferListResponse.CurrencyRateConversion` (array)

  - `OfferListResponse.CurrencyRateConversion.@type` (string)

  - `OfferListResponse.CurrencyRateConversion.SourceCurrency` (object, required)
    Currency codes are the three-letter alphabetic codes that represent the various currencies used throughout the world.  
Unless changed in the request, the currency is the default associated with your provisioned PCC from Travelport.  
For Hotel: SourceCurrency is based on the location of the hotel and used for all rates in the response. TargetCurrency is the currency code sent in the request in requestedCurrency.

  - `OfferListResponse.CurrencyRateConversion.SourceCurrency.value` (string)
    An ISO 4217 currency code.
    Example: USD

  - `OfferListResponse.CurrencyRateConversion.SourceCurrency.codeAuthority` (string)
    Currency code authority
    Example: ISO 4217

  - `OfferListResponse.CurrencyRateConversion.SourceCurrency.decimalPlace` (integer)
    Number of decimal places for the currency.
    Example: 4

  - `OfferListResponse.CurrencyRateConversion.SourceCurrency.decimalAuthority` (string)
    Currency code decimal authority
    Example: ISO 4217

  - `OfferListResponse.CurrencyRateConversion.ConversionRate` (object, required)
    Conversion rate of SourceCurrency value to TargetCurrency value. This value can be used to calculate, independently of the API, conversion for the rates in the response. The response does not convert any amounts.

  - `OfferListResponse.CurrencyRateConversion.ConversionRate.value` (number)

  - `OfferListResponse.CurrencyRateConversion.ConversionRate.rateAuthority` (string)
    Contextual rate authority
    Example: ISO 4217

  - `OfferListResponse.CurrencyRateConversion.ConversionRate.rateAsOf` (string)
    Rate as of
    Example: 2026-08-07T12:12:00Z

  - `OfferListResponse.Pagination` (object)
    Pagination object used when result sets span across a number of pages.

  - `OfferListResponse.Pagination.@type` (string, required)
    Example: Pagination

  - `OfferListResponse.Pagination.page` (integer, required)
    The current page number of the full result set
    Example: 1

  - `OfferListResponse.Pagination.pageSize` (integer, required)
    The total number of items on this page
    Example: 20

  - `OfferListResponse.Pagination.totalPages` (integer, required)
    The total number of pages in this result set
    Example: 5

  - `OfferListResponse.Pagination.totalItems` (integer, required)
    The total number of pages in this result set
    Example: 100

## Response 400 fields (application/json):

  - `ErrorResponse` (object)
    Base common error response

  - `ErrorResponse.@type` (string)
    Example: response

  - `ErrorResponse.transactionId` (string)
    A unique system-generated (128 bit GUID format) transaction/tracking id for a single request and response (i.e. for a single transaction) used for internal tracking and troubleshooting.  
Also known as E2ETrackingId.  
Not returned in all Hotel API responses.
    Example: 49f58f5f-c443-43b4-9f5d-be405fd00a01

  - `ErrorResponse.traceId` (string)
    Used in hospitality workflows to provide a unique transaction or tracking id for a single request and response.  
For Air Eligibility, returned if a custom trace ID was sent in the request header.  
For Hotel Rules, returned if a custom trace ID was sent in the request header.
    Example: TraceID_123456

  - `ErrorResponse.correlationId` (string)
    Identifier used to correlate hotel API invocations across a multi-call business flows.

  - `ErrorResponse.reservationStatus` (string)
    Status of reservation or offer completion.
    Enum: "Success", "Fail", "Partial", "Pending", "OnHold", "Retry", "Other"

  - `ErrorResponse.Result` (object)
    Returns the error and/or warning message information, if applicable.

  - `ErrorResponse.Result.@type` (string)
    Discriminator class Result only
    Example: Result

  - `ErrorResponse.Result.status` (string)
    The status of an error or warning
    Enum: "Not processed", "Incomplete", "Complete", "Unknown"

  - `ErrorResponse.Result.Error` (array)
    A list of error information returned at the provider level for a response.

  - `ErrorResponse.Result.Error.@type` (string, required)
    Discriminator classes Error or ErrorDetail
    Example: ErrorDetail

  - `ErrorResponse.Result.Error.StatusCode` (integer)
    Http standard response code
    Example: 200

  - `ErrorResponse.Result.Error.Message` (string)
    The Travelport standardized error or warning message
    Example: No flights found.

  - `ErrorResponse.Result.Error.NameValuePair` (array)

  - `ErrorResponse.Result.Error.NameValuePair.value` (string)
    Text directly related to name description, providing more detail. May have character restrictions based on remark type (e.g. Free Text limitations: 84 characters, alphanumeric and some special characters).
    Example: Sunday

  - `ErrorResponse.Result.Error.NameValuePair.id` (string)
    Optional internally referenced id
    Example: 6

  - `ErrorResponse.Result.Error.NameValuePair.name` (string, required)
    Key, categorizing the type of remark or error.
    Example: Day1

  - `ErrorResponse.Result.Warning` (array)
    A list of warning information returned at the provider level for a response.

  - `ErrorResponse.Result.Warning.@type` (string, required)
    Discriminator classes Warning or WarningDetail
    Example: WarningDetail

  - `ErrorResponse.Result.Warning.StatusCode` (integer)
    Http standard response code
    Example: 200

  - `ErrorResponse.Result.Warning.Message` (string)
    The Travelport standardized error or warning message
    Example: Customer Loyalty could not be applied.

  - `ErrorResponse.Result.Warning.NameValuePair` (array)

  - `ErrorResponse.Identifier` (object)
    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).

  - `ErrorResponse.Identifier.value` (string)
    Unique offer identifier that can be sent in subsequent payload requests to reference this offer.
When used for reference flight calls, the CatalogProductOfferingsIdentifier will be the transaction identifier from the Search, Next Leg Search, or Flight Specific Search response in CatalogProductOfferings/Identifier/value.
If you choose to pull the CatalogProductOfferingsIdentifier from the Price response instead (OfferListResponse/Identifier/value), either full or reference payload, please note for subsequent Add Offer requests you must remove the _PC appended to the end of the value in the AirPrice response (e.g., change value: '93d2091d-3d04-48ab-8091-6ae1525f02ea_PC' to value: '93d2091d-3d04-48ab-8091-6ae1525f02ea').
When building an AirPrice or Add Offer reference payload request:
- Look for the CatalogProductOfferingIdentifier (ex: o1) in a Search response at CatalogProductOfferings/CatalogProductOffering/id or a Price response at OfferListResponse/OfferID/id.
- Look for the ProductIdentifier (ex: p0) in a Search response at CatalogProductOfferings/CatalogProductOffering/ProductBrandOptions/ProductBrandOffering/Product/productRef or from a Price response at OfferListResponse/OfferID/Product/id.

When returned from a Workbench, this value is the workbench identifier that must be sent in all subsequent requests for this workbench session.
When returned from Air Exchange Eligibility, value is the ticket number sent with the eligibility request.
When used specifically for form of payment, the value will begin with the characters 'FOP'. Similarly, the OfferIdentifier associated will begin with the character 'O'.
For Hotel Create Reservation (Reference Payload), send the value from the Availability response in CatalogOffering/id or the value from SearchComplete returned in propertyItems/lowestPublicAvailableRate/rateKey/value.
Results from Hotel Availability and Hotel SearchComplete are stored in the cache for 30 minutes. If the offers expire before booking, you must send a new request.
    Example: A0656EFF-FAF4-456F-B061-0161008D7C4E

  - `ErrorResponse.Identifier.authority` (string)
    Name of the supplier system that created this identifier - the source of information.  
For AirPrice, please note that GDS offers return the value 'Travelport' in authority while NDC offers return the carrier code of the issuing NDC carrier.  
When returned from Air Exchange Eligibility, authority is always 'Travelport' as the transaction issuer.  
For Hotels, authority indicates which supplier returned the lowest available rate for that property: either 'TVPT' (Travelport) or 'BKNG' (booking.com). Booking.com access requires additional provisioning and a direct agreement with the supplier. Authority is not returned if the property is closed or returns an error.  
For Hotel Create Reservation (Full Payload) and Sync Reservation send the value from the Availability response in CatalogOffering/Identifier/authority for the instance you want to book.
    Example: TVPT

  - `ErrorResponse.NextSteps` (object)
    Container for the steps that describe actions that may be taken on the containing object.  
Not applicable for an Eligibility or Exchange response.

  - `ErrorResponse.NextSteps.baseURI` (string, required)
    The base portion of the URI in order to shorten the uris in the individual steps

  - `ErrorResponse.NextSteps.id` (string)
    Optional internally referenced id
    Example: 5

  - `ErrorResponse.NextSteps.NextStep` (array, required)

  - `ErrorResponse.NextSteps.NextStep.value` (string)
    Example: www.resourcelocation.com

  - `ErrorResponse.NextSteps.NextStep.id` (string)
    Identifier for the Next Step
    Example: 2

  - `ErrorResponse.NextSteps.NextStep.action` (string, required)
    The action this next step is intended to achieve
    Example: cancel

  - `ErrorResponse.NextSteps.NextStep.method` (string, required)
    Describes the set of potential methods that can be taken after an operation.
    Enum: "GET", "DELETE", "PUT", "POST"

  - `ErrorResponse.NextSteps.NextStep.description` (string)
    Additional clarification for the next step
    Example: remove offer from the order

  - `ErrorResponse.ReferenceList` (array)

  - `ErrorResponse.ReferenceList.@type` (string, required)
    Discriminator
- Air Search child classes are ReferenceListAmenity, ReferenceListBrand, ReferenceListFlight, ReferenceListProduct, ReferenceListTermsAndConditions, and ReferenceListUniversalProductAttribute.
- Air Price child classes are ReferenceListAmenity and ReferenceListBrand.
- FareRules child class is ReferenceListFlight.
- Search Ancillaries child class is ReferenceListFlight.
- Seat Map child class is ReferenceListSeatingChart.
- Hotel Availability child class is ReferenceListPropertyDates.
- Reservation and Reservation Workbench child classes are ReferenceListAmenity, ReferenceListBrand, and ReferenceListUniversalProductAttribute.
- Exchange Search child classes are ReferenceListBrand, ReferenceListFlight, and ReferenceListExchangedPrice.
- Reservation Receipt child classes are ReferenceListOffer and ReferenceListTraveler.
- Book_Traveler child class is ReferenceListTraveler.
    Example: ReferenceListFlight

  - `ErrorResponse.ReferenceList.id` (string)
    Uniquely identifies for the Reference List

  - `ErrorResponse.CurrencyRateConversion` (array)

  - `ErrorResponse.CurrencyRateConversion.@type` (string)

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency` (object, required)
    Currency codes are the three-letter alphabetic codes that represent the various currencies used throughout the world.  
Unless changed in the request, the currency is the default associated with your provisioned PCC from Travelport.  
For Hotel: SourceCurrency is based on the location of the hotel and used for all rates in the response. TargetCurrency is the currency code sent in the request in requestedCurrency.

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.value` (string)
    An ISO 4217 currency code.
    Example: USD

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.codeAuthority` (string)
    Currency code authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.decimalPlace` (integer)
    Number of decimal places for the currency.
    Example: 4

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.decimalAuthority` (string)
    Currency code decimal authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.ConversionRate` (object, required)
    Conversion rate of SourceCurrency value to TargetCurrency value. This value can be used to calculate, independently of the API, conversion for the rates in the response. The response does not convert any amounts.

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.value` (number)

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.rateAuthority` (string)
    Contextual rate authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.rateAsOf` (string)
    Rate as of
    Example: 2026-08-07T12:12:00Z

  - `ErrorResponse.Pagination` (object)
    Pagination object used when result sets span across a number of pages.

  - `ErrorResponse.Pagination.@type` (string, required)
    Example: Pagination

  - `ErrorResponse.Pagination.page` (integer, required)
    The current page number of the full result set
    Example: 1

  - `ErrorResponse.Pagination.pageSize` (integer, required)
    The total number of items on this page
    Example: 20

  - `ErrorResponse.Pagination.totalPages` (integer, required)
    The total number of pages in this result set
    Example: 5

  - `ErrorResponse.Pagination.totalItems` (integer, required)
    The total number of pages in this result set
    Example: 100

## Response 401 fields (application/json):

  - `ErrorResponse` (object)
    Base common error response

  - `ErrorResponse.@type` (string)
    Example: response

  - `ErrorResponse.transactionId` (string)
    A unique system-generated (128 bit GUID format) transaction/tracking id for a single request and response (i.e. for a single transaction) used for internal tracking and troubleshooting.  
Also known as E2ETrackingId.  
Not returned in all Hotel API responses.
    Example: 49f58f5f-c443-43b4-9f5d-be405fd00a01

  - `ErrorResponse.traceId` (string)
    Used in hospitality workflows to provide a unique transaction or tracking id for a single request and response.  
For Air Eligibility, returned if a custom trace ID was sent in the request header.  
For Hotel Rules, returned if a custom trace ID was sent in the request header.
    Example: TraceID_123456

  - `ErrorResponse.correlationId` (string)
    Identifier used to correlate hotel API invocations across a multi-call business flows.

  - `ErrorResponse.reservationStatus` (string)
    Status of reservation or offer completion.
    Enum: "Success", "Fail", "Partial", "Pending", "OnHold", "Retry", "Other"

  - `ErrorResponse.Result` (object)
    Returns the error and/or warning message information, if applicable.

  - `ErrorResponse.Result.@type` (string)
    Discriminator class Result only
    Example: Result

  - `ErrorResponse.Result.status` (string)
    The status of an error or warning
    Enum: "Not processed", "Incomplete", "Complete", "Unknown"

  - `ErrorResponse.Result.Error` (array)
    A list of error information returned at the provider level for a response.

  - `ErrorResponse.Result.Error.@type` (string, required)
    Discriminator classes Error or ErrorDetail
    Example: ErrorDetail

  - `ErrorResponse.Result.Error.StatusCode` (integer)
    Http standard response code
    Example: 200

  - `ErrorResponse.Result.Error.Message` (string)
    The Travelport standardized error or warning message
    Example: No flights found.

  - `ErrorResponse.Result.Error.NameValuePair` (array)

  - `ErrorResponse.Result.Error.NameValuePair.value` (string)
    Text directly related to name description, providing more detail. May have character restrictions based on remark type (e.g. Free Text limitations: 84 characters, alphanumeric and some special characters).
    Example: Sunday

  - `ErrorResponse.Result.Error.NameValuePair.id` (string)
    Optional internally referenced id
    Example: 6

  - `ErrorResponse.Result.Error.NameValuePair.name` (string, required)
    Key, categorizing the type of remark or error.
    Example: Day1

  - `ErrorResponse.Result.Warning` (array)
    A list of warning information returned at the provider level for a response.

  - `ErrorResponse.Result.Warning.@type` (string, required)
    Discriminator classes Warning or WarningDetail
    Example: WarningDetail

  - `ErrorResponse.Result.Warning.StatusCode` (integer)
    Http standard response code
    Example: 200

  - `ErrorResponse.Result.Warning.Message` (string)
    The Travelport standardized error or warning message
    Example: Customer Loyalty could not be applied.

  - `ErrorResponse.Result.Warning.NameValuePair` (array)

  - `ErrorResponse.Identifier` (object)
    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).

  - `ErrorResponse.Identifier.value` (string)
    Unique offer identifier that can be sent in subsequent payload requests to reference this offer.
When used for reference flight calls, the CatalogProductOfferingsIdentifier will be the transaction identifier from the Search, Next Leg Search, or Flight Specific Search response in CatalogProductOfferings/Identifier/value.
If you choose to pull the CatalogProductOfferingsIdentifier from the Price response instead (OfferListResponse/Identifier/value), either full or reference payload, please note for subsequent Add Offer requests you must remove the _PC appended to the end of the value in the AirPrice response (e.g., change value: '93d2091d-3d04-48ab-8091-6ae1525f02ea_PC' to value: '93d2091d-3d04-48ab-8091-6ae1525f02ea').
When building an AirPrice or Add Offer reference payload request:
- Look for the CatalogProductOfferingIdentifier (ex: o1) in a Search response at CatalogProductOfferings/CatalogProductOffering/id or a Price response at OfferListResponse/OfferID/id.
- Look for the ProductIdentifier (ex: p0) in a Search response at CatalogProductOfferings/CatalogProductOffering/ProductBrandOptions/ProductBrandOffering/Product/productRef or from a Price response at OfferListResponse/OfferID/Product/id.

When returned from a Workbench, this value is the workbench identifier that must be sent in all subsequent requests for this workbench session.
When returned from Air Exchange Eligibility, value is the ticket number sent with the eligibility request.
When used specifically for form of payment, the value will begin with the characters 'FOP'. Similarly, the OfferIdentifier associated will begin with the character 'O'.
For Hotel Create Reservation (Reference Payload), send the value from the Availability response in CatalogOffering/id or the value from SearchComplete returned in propertyItems/lowestPublicAvailableRate/rateKey/value.
Results from Hotel Availability and Hotel SearchComplete are stored in the cache for 30 minutes. If the offers expire before booking, you must send a new request.
    Example: A0656EFF-FAF4-456F-B061-0161008D7C4E

  - `ErrorResponse.Identifier.authority` (string)
    Name of the supplier system that created this identifier - the source of information.  
For AirPrice, please note that GDS offers return the value 'Travelport' in authority while NDC offers return the carrier code of the issuing NDC carrier.  
When returned from Air Exchange Eligibility, authority is always 'Travelport' as the transaction issuer.  
For Hotels, authority indicates which supplier returned the lowest available rate for that property: either 'TVPT' (Travelport) or 'BKNG' (booking.com). Booking.com access requires additional provisioning and a direct agreement with the supplier. Authority is not returned if the property is closed or returns an error.  
For Hotel Create Reservation (Full Payload) and Sync Reservation send the value from the Availability response in CatalogOffering/Identifier/authority for the instance you want to book.
    Example: TVPT

  - `ErrorResponse.NextSteps` (object)
    Container for the steps that describe actions that may be taken on the containing object.  
Not applicable for an Eligibility or Exchange response.

  - `ErrorResponse.NextSteps.baseURI` (string, required)
    The base portion of the URI in order to shorten the uris in the individual steps

  - `ErrorResponse.NextSteps.id` (string)
    Optional internally referenced id
    Example: 5

  - `ErrorResponse.NextSteps.NextStep` (array, required)

  - `ErrorResponse.NextSteps.NextStep.value` (string)
    Example: www.resourcelocation.com

  - `ErrorResponse.NextSteps.NextStep.id` (string)
    Identifier for the Next Step
    Example: 2

  - `ErrorResponse.NextSteps.NextStep.action` (string, required)
    The action this next step is intended to achieve
    Example: cancel

  - `ErrorResponse.NextSteps.NextStep.method` (string, required)
    Describes the set of potential methods that can be taken after an operation.
    Enum: "GET", "DELETE", "PUT", "POST"

  - `ErrorResponse.NextSteps.NextStep.description` (string)
    Additional clarification for the next step
    Example: remove offer from the order

  - `ErrorResponse.ReferenceList` (array)

  - `ErrorResponse.ReferenceList.@type` (string, required)
    Discriminator
- Air Search child classes are ReferenceListAmenity, ReferenceListBrand, ReferenceListFlight, ReferenceListProduct, ReferenceListTermsAndConditions, and ReferenceListUniversalProductAttribute.
- Air Price child classes are ReferenceListAmenity and ReferenceListBrand.
- FareRules child class is ReferenceListFlight.
- Search Ancillaries child class is ReferenceListFlight.
- Seat Map child class is ReferenceListSeatingChart.
- Hotel Availability child class is ReferenceListPropertyDates.
- Reservation and Reservation Workbench child classes are ReferenceListAmenity, ReferenceListBrand, and ReferenceListUniversalProductAttribute.
- Exchange Search child classes are ReferenceListBrand, ReferenceListFlight, and ReferenceListExchangedPrice.
- Reservation Receipt child classes are ReferenceListOffer and ReferenceListTraveler.
- Book_Traveler child class is ReferenceListTraveler.
    Example: ReferenceListFlight

  - `ErrorResponse.ReferenceList.id` (string)
    Uniquely identifies for the Reference List

  - `ErrorResponse.CurrencyRateConversion` (array)

  - `ErrorResponse.CurrencyRateConversion.@type` (string)

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency` (object, required)
    Currency codes are the three-letter alphabetic codes that represent the various currencies used throughout the world.  
Unless changed in the request, the currency is the default associated with your provisioned PCC from Travelport.  
For Hotel: SourceCurrency is based on the location of the hotel and used for all rates in the response. TargetCurrency is the currency code sent in the request in requestedCurrency.

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.value` (string)
    An ISO 4217 currency code.
    Example: USD

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.codeAuthority` (string)
    Currency code authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.decimalPlace` (integer)
    Number of decimal places for the currency.
    Example: 4

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.decimalAuthority` (string)
    Currency code decimal authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.ConversionRate` (object, required)
    Conversion rate of SourceCurrency value to TargetCurrency value. This value can be used to calculate, independently of the API, conversion for the rates in the response. The response does not convert any amounts.

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.value` (number)

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.rateAuthority` (string)
    Contextual rate authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.rateAsOf` (string)
    Rate as of
    Example: 2026-08-07T12:12:00Z

  - `ErrorResponse.Pagination` (object)
    Pagination object used when result sets span across a number of pages.

  - `ErrorResponse.Pagination.@type` (string, required)
    Example: Pagination

  - `ErrorResponse.Pagination.page` (integer, required)
    The current page number of the full result set
    Example: 1

  - `ErrorResponse.Pagination.pageSize` (integer, required)
    The total number of items on this page
    Example: 20

  - `ErrorResponse.Pagination.totalPages` (integer, required)
    The total number of pages in this result set
    Example: 5

  - `ErrorResponse.Pagination.totalItems` (integer, required)
    The total number of pages in this result set
    Example: 100

## Response 402 fields (application/json):

  - `ErrorResponse` (object)
    Base common error response

  - `ErrorResponse.@type` (string)
    Example: response

  - `ErrorResponse.transactionId` (string)
    A unique system-generated (128 bit GUID format) transaction/tracking id for a single request and response (i.e. for a single transaction) used for internal tracking and troubleshooting.  
Also known as E2ETrackingId.  
Not returned in all Hotel API responses.
    Example: 49f58f5f-c443-43b4-9f5d-be405fd00a01

  - `ErrorResponse.traceId` (string)
    Used in hospitality workflows to provide a unique transaction or tracking id for a single request and response.  
For Air Eligibility, returned if a custom trace ID was sent in the request header.  
For Hotel Rules, returned if a custom trace ID was sent in the request header.
    Example: TraceID_123456

  - `ErrorResponse.correlationId` (string)
    Identifier used to correlate hotel API invocations across a multi-call business flows.

  - `ErrorResponse.reservationStatus` (string)
    Status of reservation or offer completion.
    Enum: "Success", "Fail", "Partial", "Pending", "OnHold", "Retry", "Other"

  - `ErrorResponse.Result` (object)
    Returns the error and/or warning message information, if applicable.

  - `ErrorResponse.Result.@type` (string)
    Discriminator class Result only
    Example: Result

  - `ErrorResponse.Result.status` (string)
    The status of an error or warning
    Enum: "Not processed", "Incomplete", "Complete", "Unknown"

  - `ErrorResponse.Result.Error` (array)
    A list of error information returned at the provider level for a response.

  - `ErrorResponse.Result.Error.@type` (string, required)
    Discriminator classes Error or ErrorDetail
    Example: ErrorDetail

  - `ErrorResponse.Result.Error.StatusCode` (integer)
    Http standard response code
    Example: 200

  - `ErrorResponse.Result.Error.Message` (string)
    The Travelport standardized error or warning message
    Example: No flights found.

  - `ErrorResponse.Result.Error.NameValuePair` (array)

  - `ErrorResponse.Result.Error.NameValuePair.value` (string)
    Text directly related to name description, providing more detail. May have character restrictions based on remark type (e.g. Free Text limitations: 84 characters, alphanumeric and some special characters).
    Example: Sunday

  - `ErrorResponse.Result.Error.NameValuePair.id` (string)
    Optional internally referenced id
    Example: 6

  - `ErrorResponse.Result.Error.NameValuePair.name` (string, required)
    Key, categorizing the type of remark or error.
    Example: Day1

  - `ErrorResponse.Result.Warning` (array)
    A list of warning information returned at the provider level for a response.

  - `ErrorResponse.Result.Warning.@type` (string, required)
    Discriminator classes Warning or WarningDetail
    Example: WarningDetail

  - `ErrorResponse.Result.Warning.StatusCode` (integer)
    Http standard response code
    Example: 200

  - `ErrorResponse.Result.Warning.Message` (string)
    The Travelport standardized error or warning message
    Example: Customer Loyalty could not be applied.

  - `ErrorResponse.Result.Warning.NameValuePair` (array)

  - `ErrorResponse.Identifier` (object)
    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).

  - `ErrorResponse.Identifier.value` (string)
    Unique offer identifier that can be sent in subsequent payload requests to reference this offer.
When used for reference flight calls, the CatalogProductOfferingsIdentifier will be the transaction identifier from the Search, Next Leg Search, or Flight Specific Search response in CatalogProductOfferings/Identifier/value.
If you choose to pull the CatalogProductOfferingsIdentifier from the Price response instead (OfferListResponse/Identifier/value), either full or reference payload, please note for subsequent Add Offer requests you must remove the _PC appended to the end of the value in the AirPrice response (e.g., change value: '93d2091d-3d04-48ab-8091-6ae1525f02ea_PC' to value: '93d2091d-3d04-48ab-8091-6ae1525f02ea').
When building an AirPrice or Add Offer reference payload request:
- Look for the CatalogProductOfferingIdentifier (ex: o1) in a Search response at CatalogProductOfferings/CatalogProductOffering/id or a Price response at OfferListResponse/OfferID/id.
- Look for the ProductIdentifier (ex: p0) in a Search response at CatalogProductOfferings/CatalogProductOffering/ProductBrandOptions/ProductBrandOffering/Product/productRef or from a Price response at OfferListResponse/OfferID/Product/id.

When returned from a Workbench, this value is the workbench identifier that must be sent in all subsequent requests for this workbench session.
When returned from Air Exchange Eligibility, value is the ticket number sent with the eligibility request.
When used specifically for form of payment, the value will begin with the characters 'FOP'. Similarly, the OfferIdentifier associated will begin with the character 'O'.
For Hotel Create Reservation (Reference Payload), send the value from the Availability response in CatalogOffering/id or the value from SearchComplete returned in propertyItems/lowestPublicAvailableRate/rateKey/value.
Results from Hotel Availability and Hotel SearchComplete are stored in the cache for 30 minutes. If the offers expire before booking, you must send a new request.
    Example: A0656EFF-FAF4-456F-B061-0161008D7C4E

  - `ErrorResponse.Identifier.authority` (string)
    Name of the supplier system that created this identifier - the source of information.  
For AirPrice, please note that GDS offers return the value 'Travelport' in authority while NDC offers return the carrier code of the issuing NDC carrier.  
When returned from Air Exchange Eligibility, authority is always 'Travelport' as the transaction issuer.  
For Hotels, authority indicates which supplier returned the lowest available rate for that property: either 'TVPT' (Travelport) or 'BKNG' (booking.com). Booking.com access requires additional provisioning and a direct agreement with the supplier. Authority is not returned if the property is closed or returns an error.  
For Hotel Create Reservation (Full Payload) and Sync Reservation send the value from the Availability response in CatalogOffering/Identifier/authority for the instance you want to book.
    Example: TVPT

  - `ErrorResponse.NextSteps` (object)
    Container for the steps that describe actions that may be taken on the containing object.  
Not applicable for an Eligibility or Exchange response.

  - `ErrorResponse.NextSteps.baseURI` (string, required)
    The base portion of the URI in order to shorten the uris in the individual steps

  - `ErrorResponse.NextSteps.id` (string)
    Optional internally referenced id
    Example: 5

  - `ErrorResponse.NextSteps.NextStep` (array, required)

  - `ErrorResponse.NextSteps.NextStep.value` (string)
    Example: www.resourcelocation.com

  - `ErrorResponse.NextSteps.NextStep.id` (string)
    Identifier for the Next Step
    Example: 2

  - `ErrorResponse.NextSteps.NextStep.action` (string, required)
    The action this next step is intended to achieve
    Example: cancel

  - `ErrorResponse.NextSteps.NextStep.method` (string, required)
    Describes the set of potential methods that can be taken after an operation.
    Enum: "GET", "DELETE", "PUT", "POST"

  - `ErrorResponse.NextSteps.NextStep.description` (string)
    Additional clarification for the next step
    Example: remove offer from the order

  - `ErrorResponse.ReferenceList` (array)

  - `ErrorResponse.ReferenceList.@type` (string, required)
    Discriminator
- Air Search child classes are ReferenceListAmenity, ReferenceListBrand, ReferenceListFlight, ReferenceListProduct, ReferenceListTermsAndConditions, and ReferenceListUniversalProductAttribute.
- Air Price child classes are ReferenceListAmenity and ReferenceListBrand.
- FareRules child class is ReferenceListFlight.
- Search Ancillaries child class is ReferenceListFlight.
- Seat Map child class is ReferenceListSeatingChart.
- Hotel Availability child class is ReferenceListPropertyDates.
- Reservation and Reservation Workbench child classes are ReferenceListAmenity, ReferenceListBrand, and ReferenceListUniversalProductAttribute.
- Exchange Search child classes are ReferenceListBrand, ReferenceListFlight, and ReferenceListExchangedPrice.
- Reservation Receipt child classes are ReferenceListOffer and ReferenceListTraveler.
- Book_Traveler child class is ReferenceListTraveler.
    Example: ReferenceListFlight

  - `ErrorResponse.ReferenceList.id` (string)
    Uniquely identifies for the Reference List

  - `ErrorResponse.CurrencyRateConversion` (array)

  - `ErrorResponse.CurrencyRateConversion.@type` (string)

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency` (object, required)
    Currency codes are the three-letter alphabetic codes that represent the various currencies used throughout the world.  
Unless changed in the request, the currency is the default associated with your provisioned PCC from Travelport.  
For Hotel: SourceCurrency is based on the location of the hotel and used for all rates in the response. TargetCurrency is the currency code sent in the request in requestedCurrency.

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.value` (string)
    An ISO 4217 currency code.
    Example: USD

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.codeAuthority` (string)
    Currency code authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.decimalPlace` (integer)
    Number of decimal places for the currency.
    Example: 4

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.decimalAuthority` (string)
    Currency code decimal authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.ConversionRate` (object, required)
    Conversion rate of SourceCurrency value to TargetCurrency value. This value can be used to calculate, independently of the API, conversion for the rates in the response. The response does not convert any amounts.

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.value` (number)

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.rateAuthority` (string)
    Contextual rate authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.rateAsOf` (string)
    Rate as of
    Example: 2026-08-07T12:12:00Z

  - `ErrorResponse.Pagination` (object)
    Pagination object used when result sets span across a number of pages.

  - `ErrorResponse.Pagination.@type` (string, required)
    Example: Pagination

  - `ErrorResponse.Pagination.page` (integer, required)
    The current page number of the full result set
    Example: 1

  - `ErrorResponse.Pagination.pageSize` (integer, required)
    The total number of items on this page
    Example: 20

  - `ErrorResponse.Pagination.totalPages` (integer, required)
    The total number of pages in this result set
    Example: 5

  - `ErrorResponse.Pagination.totalItems` (integer, required)
    The total number of pages in this result set
    Example: 100

## Response 403 fields (application/json):

  - `ErrorResponse` (object)
    Base common error response

  - `ErrorResponse.@type` (string)
    Example: response

  - `ErrorResponse.transactionId` (string)
    A unique system-generated (128 bit GUID format) transaction/tracking id for a single request and response (i.e. for a single transaction) used for internal tracking and troubleshooting.  
Also known as E2ETrackingId.  
Not returned in all Hotel API responses.
    Example: 49f58f5f-c443-43b4-9f5d-be405fd00a01

  - `ErrorResponse.traceId` (string)
    Used in hospitality workflows to provide a unique transaction or tracking id for a single request and response.  
For Air Eligibility, returned if a custom trace ID was sent in the request header.  
For Hotel Rules, returned if a custom trace ID was sent in the request header.
    Example: TraceID_123456

  - `ErrorResponse.correlationId` (string)
    Identifier used to correlate hotel API invocations across a multi-call business flows.

  - `ErrorResponse.reservationStatus` (string)
    Status of reservation or offer completion.
    Enum: "Success", "Fail", "Partial", "Pending", "OnHold", "Retry", "Other"

  - `ErrorResponse.Result` (object)
    Returns the error and/or warning message information, if applicable.

  - `ErrorResponse.Result.@type` (string)
    Discriminator class Result only
    Example: Result

  - `ErrorResponse.Result.status` (string)
    The status of an error or warning
    Enum: "Not processed", "Incomplete", "Complete", "Unknown"

  - `ErrorResponse.Result.Error` (array)
    A list of error information returned at the provider level for a response.

  - `ErrorResponse.Result.Error.@type` (string, required)
    Discriminator classes Error or ErrorDetail
    Example: ErrorDetail

  - `ErrorResponse.Result.Error.StatusCode` (integer)
    Http standard response code
    Example: 200

  - `ErrorResponse.Result.Error.Message` (string)
    The Travelport standardized error or warning message
    Example: No flights found.

  - `ErrorResponse.Result.Error.NameValuePair` (array)

  - `ErrorResponse.Result.Error.NameValuePair.value` (string)
    Text directly related to name description, providing more detail. May have character restrictions based on remark type (e.g. Free Text limitations: 84 characters, alphanumeric and some special characters).
    Example: Sunday

  - `ErrorResponse.Result.Error.NameValuePair.id` (string)
    Optional internally referenced id
    Example: 6

  - `ErrorResponse.Result.Error.NameValuePair.name` (string, required)
    Key, categorizing the type of remark or error.
    Example: Day1

  - `ErrorResponse.Result.Warning` (array)
    A list of warning information returned at the provider level for a response.

  - `ErrorResponse.Result.Warning.@type` (string, required)
    Discriminator classes Warning or WarningDetail
    Example: WarningDetail

  - `ErrorResponse.Result.Warning.StatusCode` (integer)
    Http standard response code
    Example: 200

  - `ErrorResponse.Result.Warning.Message` (string)
    The Travelport standardized error or warning message
    Example: Customer Loyalty could not be applied.

  - `ErrorResponse.Result.Warning.NameValuePair` (array)

  - `ErrorResponse.Identifier` (object)
    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).

  - `ErrorResponse.Identifier.value` (string)
    Unique offer identifier that can be sent in subsequent payload requests to reference this offer.
When used for reference flight calls, the CatalogProductOfferingsIdentifier will be the transaction identifier from the Search, Next Leg Search, or Flight Specific Search response in CatalogProductOfferings/Identifier/value.
If you choose to pull the CatalogProductOfferingsIdentifier from the Price response instead (OfferListResponse/Identifier/value), either full or reference payload, please note for subsequent Add Offer requests you must remove the _PC appended to the end of the value in the AirPrice response (e.g., change value: '93d2091d-3d04-48ab-8091-6ae1525f02ea_PC' to value: '93d2091d-3d04-48ab-8091-6ae1525f02ea').
When building an AirPrice or Add Offer reference payload request:
- Look for the CatalogProductOfferingIdentifier (ex: o1) in a Search response at CatalogProductOfferings/CatalogProductOffering/id or a Price response at OfferListResponse/OfferID/id.
- Look for the ProductIdentifier (ex: p0) in a Search response at CatalogProductOfferings/CatalogProductOffering/ProductBrandOptions/ProductBrandOffering/Product/productRef or from a Price response at OfferListResponse/OfferID/Product/id.

When returned from a Workbench, this value is the workbench identifier that must be sent in all subsequent requests for this workbench session.
When returned from Air Exchange Eligibility, value is the ticket number sent with the eligibility request.
When used specifically for form of payment, the value will begin with the characters 'FOP'. Similarly, the OfferIdentifier associated will begin with the character 'O'.
For Hotel Create Reservation (Reference Payload), send the value from the Availability response in CatalogOffering/id or the value from SearchComplete returned in propertyItems/lowestPublicAvailableRate/rateKey/value.
Results from Hotel Availability and Hotel SearchComplete are stored in the cache for 30 minutes. If the offers expire before booking, you must send a new request.
    Example: A0656EFF-FAF4-456F-B061-0161008D7C4E

  - `ErrorResponse.Identifier.authority` (string)
    Name of the supplier system that created this identifier - the source of information.  
For AirPrice, please note that GDS offers return the value 'Travelport' in authority while NDC offers return the carrier code of the issuing NDC carrier.  
When returned from Air Exchange Eligibility, authority is always 'Travelport' as the transaction issuer.  
For Hotels, authority indicates which supplier returned the lowest available rate for that property: either 'TVPT' (Travelport) or 'BKNG' (booking.com). Booking.com access requires additional provisioning and a direct agreement with the supplier. Authority is not returned if the property is closed or returns an error.  
For Hotel Create Reservation (Full Payload) and Sync Reservation send the value from the Availability response in CatalogOffering/Identifier/authority for the instance you want to book.
    Example: TVPT

  - `ErrorResponse.NextSteps` (object)
    Container for the steps that describe actions that may be taken on the containing object.  
Not applicable for an Eligibility or Exchange response.

  - `ErrorResponse.NextSteps.baseURI` (string, required)
    The base portion of the URI in order to shorten the uris in the individual steps

  - `ErrorResponse.NextSteps.id` (string)
    Optional internally referenced id
    Example: 5

  - `ErrorResponse.NextSteps.NextStep` (array, required)

  - `ErrorResponse.NextSteps.NextStep.value` (string)
    Example: www.resourcelocation.com

  - `ErrorResponse.NextSteps.NextStep.id` (string)
    Identifier for the Next Step
    Example: 2

  - `ErrorResponse.NextSteps.NextStep.action` (string, required)
    The action this next step is intended to achieve
    Example: cancel

  - `ErrorResponse.NextSteps.NextStep.method` (string, required)
    Describes the set of potential methods that can be taken after an operation.
    Enum: "GET", "DELETE", "PUT", "POST"

  - `ErrorResponse.NextSteps.NextStep.description` (string)
    Additional clarification for the next step
    Example: remove offer from the order

  - `ErrorResponse.ReferenceList` (array)

  - `ErrorResponse.ReferenceList.@type` (string, required)
    Discriminator
- Air Search child classes are ReferenceListAmenity, ReferenceListBrand, ReferenceListFlight, ReferenceListProduct, ReferenceListTermsAndConditions, and ReferenceListUniversalProductAttribute.
- Air Price child classes are ReferenceListAmenity and ReferenceListBrand.
- FareRules child class is ReferenceListFlight.
- Search Ancillaries child class is ReferenceListFlight.
- Seat Map child class is ReferenceListSeatingChart.
- Hotel Availability child class is ReferenceListPropertyDates.
- Reservation and Reservation Workbench child classes are ReferenceListAmenity, ReferenceListBrand, and ReferenceListUniversalProductAttribute.
- Exchange Search child classes are ReferenceListBrand, ReferenceListFlight, and ReferenceListExchangedPrice.
- Reservation Receipt child classes are ReferenceListOffer and ReferenceListTraveler.
- Book_Traveler child class is ReferenceListTraveler.
    Example: ReferenceListFlight

  - `ErrorResponse.ReferenceList.id` (string)
    Uniquely identifies for the Reference List

  - `ErrorResponse.CurrencyRateConversion` (array)

  - `ErrorResponse.CurrencyRateConversion.@type` (string)

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency` (object, required)
    Currency codes are the three-letter alphabetic codes that represent the various currencies used throughout the world.  
Unless changed in the request, the currency is the default associated with your provisioned PCC from Travelport.  
For Hotel: SourceCurrency is based on the location of the hotel and used for all rates in the response. TargetCurrency is the currency code sent in the request in requestedCurrency.

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.value` (string)
    An ISO 4217 currency code.
    Example: USD

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.codeAuthority` (string)
    Currency code authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.decimalPlace` (integer)
    Number of decimal places for the currency.
    Example: 4

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.decimalAuthority` (string)
    Currency code decimal authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.ConversionRate` (object, required)
    Conversion rate of SourceCurrency value to TargetCurrency value. This value can be used to calculate, independently of the API, conversion for the rates in the response. The response does not convert any amounts.

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.value` (number)

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.rateAuthority` (string)
    Contextual rate authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.rateAsOf` (string)
    Rate as of
    Example: 2026-08-07T12:12:00Z

  - `ErrorResponse.Pagination` (object)
    Pagination object used when result sets span across a number of pages.

  - `ErrorResponse.Pagination.@type` (string, required)
    Example: Pagination

  - `ErrorResponse.Pagination.page` (integer, required)
    The current page number of the full result set
    Example: 1

  - `ErrorResponse.Pagination.pageSize` (integer, required)
    The total number of items on this page
    Example: 20

  - `ErrorResponse.Pagination.totalPages` (integer, required)
    The total number of pages in this result set
    Example: 5

  - `ErrorResponse.Pagination.totalItems` (integer, required)
    The total number of pages in this result set
    Example: 100

## Response 404 fields (application/json):

  - `ErrorResponse` (object)
    Base common error response

  - `ErrorResponse.@type` (string)
    Example: response

  - `ErrorResponse.transactionId` (string)
    A unique system-generated (128 bit GUID format) transaction/tracking id for a single request and response (i.e. for a single transaction) used for internal tracking and troubleshooting.  
Also known as E2ETrackingId.  
Not returned in all Hotel API responses.
    Example: 49f58f5f-c443-43b4-9f5d-be405fd00a01

  - `ErrorResponse.traceId` (string)
    Used in hospitality workflows to provide a unique transaction or tracking id for a single request and response.  
For Air Eligibility, returned if a custom trace ID was sent in the request header.  
For Hotel Rules, returned if a custom trace ID was sent in the request header.
    Example: TraceID_123456

  - `ErrorResponse.correlationId` (string)
    Identifier used to correlate hotel API invocations across a multi-call business flows.

  - `ErrorResponse.reservationStatus` (string)
    Status of reservation or offer completion.
    Enum: "Success", "Fail", "Partial", "Pending", "OnHold", "Retry", "Other"

  - `ErrorResponse.Result` (object)
    Returns the error and/or warning message information, if applicable.

  - `ErrorResponse.Result.@type` (string)
    Discriminator class Result only
    Example: Result

  - `ErrorResponse.Result.status` (string)
    The status of an error or warning
    Enum: "Not processed", "Incomplete", "Complete", "Unknown"

  - `ErrorResponse.Result.Error` (array)
    A list of error information returned at the provider level for a response.

  - `ErrorResponse.Result.Error.@type` (string, required)
    Discriminator classes Error or ErrorDetail
    Example: ErrorDetail

  - `ErrorResponse.Result.Error.StatusCode` (integer)
    Http standard response code
    Example: 200

  - `ErrorResponse.Result.Error.Message` (string)
    The Travelport standardized error or warning message
    Example: No flights found.

  - `ErrorResponse.Result.Error.NameValuePair` (array)

  - `ErrorResponse.Result.Error.NameValuePair.value` (string)
    Text directly related to name description, providing more detail. May have character restrictions based on remark type (e.g. Free Text limitations: 84 characters, alphanumeric and some special characters).
    Example: Sunday

  - `ErrorResponse.Result.Error.NameValuePair.id` (string)
    Optional internally referenced id
    Example: 6

  - `ErrorResponse.Result.Error.NameValuePair.name` (string, required)
    Key, categorizing the type of remark or error.
    Example: Day1

  - `ErrorResponse.Result.Warning` (array)
    A list of warning information returned at the provider level for a response.

  - `ErrorResponse.Result.Warning.@type` (string, required)
    Discriminator classes Warning or WarningDetail
    Example: WarningDetail

  - `ErrorResponse.Result.Warning.StatusCode` (integer)
    Http standard response code
    Example: 200

  - `ErrorResponse.Result.Warning.Message` (string)
    The Travelport standardized error or warning message
    Example: Customer Loyalty could not be applied.

  - `ErrorResponse.Result.Warning.NameValuePair` (array)

  - `ErrorResponse.Identifier` (object)
    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).

  - `ErrorResponse.Identifier.value` (string)
    Unique offer identifier that can be sent in subsequent payload requests to reference this offer.
When used for reference flight calls, the CatalogProductOfferingsIdentifier will be the transaction identifier from the Search, Next Leg Search, or Flight Specific Search response in CatalogProductOfferings/Identifier/value.
If you choose to pull the CatalogProductOfferingsIdentifier from the Price response instead (OfferListResponse/Identifier/value), either full or reference payload, please note for subsequent Add Offer requests you must remove the _PC appended to the end of the value in the AirPrice response (e.g., change value: '93d2091d-3d04-48ab-8091-6ae1525f02ea_PC' to value: '93d2091d-3d04-48ab-8091-6ae1525f02ea').
When building an AirPrice or Add Offer reference payload request:
- Look for the CatalogProductOfferingIdentifier (ex: o1) in a Search response at CatalogProductOfferings/CatalogProductOffering/id or a Price response at OfferListResponse/OfferID/id.
- Look for the ProductIdentifier (ex: p0) in a Search response at CatalogProductOfferings/CatalogProductOffering/ProductBrandOptions/ProductBrandOffering/Product/productRef or from a Price response at OfferListResponse/OfferID/Product/id.

When returned from a Workbench, this value is the workbench identifier that must be sent in all subsequent requests for this workbench session.
When returned from Air Exchange Eligibility, value is the ticket number sent with the eligibility request.
When used specifically for form of payment, the value will begin with the characters 'FOP'. Similarly, the OfferIdentifier associated will begin with the character 'O'.
For Hotel Create Reservation (Reference Payload), send the value from the Availability response in CatalogOffering/id or the value from SearchComplete returned in propertyItems/lowestPublicAvailableRate/rateKey/value.
Results from Hotel Availability and Hotel SearchComplete are stored in the cache for 30 minutes. If the offers expire before booking, you must send a new request.
    Example: A0656EFF-FAF4-456F-B061-0161008D7C4E

  - `ErrorResponse.Identifier.authority` (string)
    Name of the supplier system that created this identifier - the source of information.  
For AirPrice, please note that GDS offers return the value 'Travelport' in authority while NDC offers return the carrier code of the issuing NDC carrier.  
When returned from Air Exchange Eligibility, authority is always 'Travelport' as the transaction issuer.  
For Hotels, authority indicates which supplier returned the lowest available rate for that property: either 'TVPT' (Travelport) or 'BKNG' (booking.com). Booking.com access requires additional provisioning and a direct agreement with the supplier. Authority is not returned if the property is closed or returns an error.  
For Hotel Create Reservation (Full Payload) and Sync Reservation send the value from the Availability response in CatalogOffering/Identifier/authority for the instance you want to book.
    Example: TVPT

  - `ErrorResponse.NextSteps` (object)
    Container for the steps that describe actions that may be taken on the containing object.  
Not applicable for an Eligibility or Exchange response.

  - `ErrorResponse.NextSteps.baseURI` (string, required)
    The base portion of the URI in order to shorten the uris in the individual steps

  - `ErrorResponse.NextSteps.id` (string)
    Optional internally referenced id
    Example: 5

  - `ErrorResponse.NextSteps.NextStep` (array, required)

  - `ErrorResponse.NextSteps.NextStep.value` (string)
    Example: www.resourcelocation.com

  - `ErrorResponse.NextSteps.NextStep.id` (string)
    Identifier for the Next Step
    Example: 2

  - `ErrorResponse.NextSteps.NextStep.action` (string, required)
    The action this next step is intended to achieve
    Example: cancel

  - `ErrorResponse.NextSteps.NextStep.method` (string, required)
    Describes the set of potential methods that can be taken after an operation.
    Enum: "GET", "DELETE", "PUT", "POST"

  - `ErrorResponse.NextSteps.NextStep.description` (string)
    Additional clarification for the next step
    Example: remove offer from the order

  - `ErrorResponse.ReferenceList` (array)

  - `ErrorResponse.ReferenceList.@type` (string, required)
    Discriminator
- Air Search child classes are ReferenceListAmenity, ReferenceListBrand, ReferenceListFlight, ReferenceListProduct, ReferenceListTermsAndConditions, and ReferenceListUniversalProductAttribute.
- Air Price child classes are ReferenceListAmenity and ReferenceListBrand.
- FareRules child class is ReferenceListFlight.
- Search Ancillaries child class is ReferenceListFlight.
- Seat Map child class is ReferenceListSeatingChart.
- Hotel Availability child class is ReferenceListPropertyDates.
- Reservation and Reservation Workbench child classes are ReferenceListAmenity, ReferenceListBrand, and ReferenceListUniversalProductAttribute.
- Exchange Search child classes are ReferenceListBrand, ReferenceListFlight, and ReferenceListExchangedPrice.
- Reservation Receipt child classes are ReferenceListOffer and ReferenceListTraveler.
- Book_Traveler child class is ReferenceListTraveler.
    Example: ReferenceListFlight

  - `ErrorResponse.ReferenceList.id` (string)
    Uniquely identifies for the Reference List

  - `ErrorResponse.CurrencyRateConversion` (array)

  - `ErrorResponse.CurrencyRateConversion.@type` (string)

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency` (object, required)
    Currency codes are the three-letter alphabetic codes that represent the various currencies used throughout the world.  
Unless changed in the request, the currency is the default associated with your provisioned PCC from Travelport.  
For Hotel: SourceCurrency is based on the location of the hotel and used for all rates in the response. TargetCurrency is the currency code sent in the request in requestedCurrency.

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.value` (string)
    An ISO 4217 currency code.
    Example: USD

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.codeAuthority` (string)
    Currency code authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.decimalPlace` (integer)
    Number of decimal places for the currency.
    Example: 4

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.decimalAuthority` (string)
    Currency code decimal authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.ConversionRate` (object, required)
    Conversion rate of SourceCurrency value to TargetCurrency value. This value can be used to calculate, independently of the API, conversion for the rates in the response. The response does not convert any amounts.

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.value` (number)

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.rateAuthority` (string)
    Contextual rate authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.rateAsOf` (string)
    Rate as of
    Example: 2026-08-07T12:12:00Z

  - `ErrorResponse.Pagination` (object)
    Pagination object used when result sets span across a number of pages.

  - `ErrorResponse.Pagination.@type` (string, required)
    Example: Pagination

  - `ErrorResponse.Pagination.page` (integer, required)
    The current page number of the full result set
    Example: 1

  - `ErrorResponse.Pagination.pageSize` (integer, required)
    The total number of items on this page
    Example: 20

  - `ErrorResponse.Pagination.totalPages` (integer, required)
    The total number of pages in this result set
    Example: 5

  - `ErrorResponse.Pagination.totalItems` (integer, required)
    The total number of pages in this result set
    Example: 100

## Response 500 fields (application/json):

  - `ErrorResponse` (object)
    Base common error response

  - `ErrorResponse.@type` (string)
    Example: response

  - `ErrorResponse.transactionId` (string)
    A unique system-generated (128 bit GUID format) transaction/tracking id for a single request and response (i.e. for a single transaction) used for internal tracking and troubleshooting.  
Also known as E2ETrackingId.  
Not returned in all Hotel API responses.
    Example: 49f58f5f-c443-43b4-9f5d-be405fd00a01

  - `ErrorResponse.traceId` (string)
    Used in hospitality workflows to provide a unique transaction or tracking id for a single request and response.  
For Air Eligibility, returned if a custom trace ID was sent in the request header.  
For Hotel Rules, returned if a custom trace ID was sent in the request header.
    Example: TraceID_123456

  - `ErrorResponse.correlationId` (string)
    Identifier used to correlate hotel API invocations across a multi-call business flows.

  - `ErrorResponse.reservationStatus` (string)
    Status of reservation or offer completion.
    Enum: "Success", "Fail", "Partial", "Pending", "OnHold", "Retry", "Other"

  - `ErrorResponse.Result` (object)
    Returns the error and/or warning message information, if applicable.

  - `ErrorResponse.Result.@type` (string)
    Discriminator class Result only
    Example: Result

  - `ErrorResponse.Result.status` (string)
    The status of an error or warning
    Enum: "Not processed", "Incomplete", "Complete", "Unknown"

  - `ErrorResponse.Result.Error` (array)
    A list of error information returned at the provider level for a response.

  - `ErrorResponse.Result.Error.@type` (string, required)
    Discriminator classes Error or ErrorDetail
    Example: ErrorDetail

  - `ErrorResponse.Result.Error.StatusCode` (integer)
    Http standard response code
    Example: 200

  - `ErrorResponse.Result.Error.Message` (string)
    The Travelport standardized error or warning message
    Example: No flights found.

  - `ErrorResponse.Result.Error.NameValuePair` (array)

  - `ErrorResponse.Result.Error.NameValuePair.value` (string)
    Text directly related to name description, providing more detail. May have character restrictions based on remark type (e.g. Free Text limitations: 84 characters, alphanumeric and some special characters).
    Example: Sunday

  - `ErrorResponse.Result.Error.NameValuePair.id` (string)
    Optional internally referenced id
    Example: 6

  - `ErrorResponse.Result.Error.NameValuePair.name` (string, required)
    Key, categorizing the type of remark or error.
    Example: Day1

  - `ErrorResponse.Result.Warning` (array)
    A list of warning information returned at the provider level for a response.

  - `ErrorResponse.Result.Warning.@type` (string, required)
    Discriminator classes Warning or WarningDetail
    Example: WarningDetail

  - `ErrorResponse.Result.Warning.StatusCode` (integer)
    Http standard response code
    Example: 200

  - `ErrorResponse.Result.Warning.Message` (string)
    The Travelport standardized error or warning message
    Example: Customer Loyalty could not be applied.

  - `ErrorResponse.Result.Warning.NameValuePair` (array)

  - `ErrorResponse.Identifier` (object)
    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).

  - `ErrorResponse.Identifier.value` (string)
    Unique offer identifier that can be sent in subsequent payload requests to reference this offer.
When used for reference flight calls, the CatalogProductOfferingsIdentifier will be the transaction identifier from the Search, Next Leg Search, or Flight Specific Search response in CatalogProductOfferings/Identifier/value.
If you choose to pull the CatalogProductOfferingsIdentifier from the Price response instead (OfferListResponse/Identifier/value), either full or reference payload, please note for subsequent Add Offer requests you must remove the _PC appended to the end of the value in the AirPrice response (e.g., change value: '93d2091d-3d04-48ab-8091-6ae1525f02ea_PC' to value: '93d2091d-3d04-48ab-8091-6ae1525f02ea').
When building an AirPrice or Add Offer reference payload request:
- Look for the CatalogProductOfferingIdentifier (ex: o1) in a Search response at CatalogProductOfferings/CatalogProductOffering/id or a Price response at OfferListResponse/OfferID/id.
- Look for the ProductIdentifier (ex: p0) in a Search response at CatalogProductOfferings/CatalogProductOffering/ProductBrandOptions/ProductBrandOffering/Product/productRef or from a Price response at OfferListResponse/OfferID/Product/id.

When returned from a Workbench, this value is the workbench identifier that must be sent in all subsequent requests for this workbench session.
When returned from Air Exchange Eligibility, value is the ticket number sent with the eligibility request.
When used specifically for form of payment, the value will begin with the characters 'FOP'. Similarly, the OfferIdentifier associated will begin with the character 'O'.
For Hotel Create Reservation (Reference Payload), send the value from the Availability response in CatalogOffering/id or the value from SearchComplete returned in propertyItems/lowestPublicAvailableRate/rateKey/value.
Results from Hotel Availability and Hotel SearchComplete are stored in the cache for 30 minutes. If the offers expire before booking, you must send a new request.
    Example: A0656EFF-FAF4-456F-B061-0161008D7C4E

  - `ErrorResponse.Identifier.authority` (string)
    Name of the supplier system that created this identifier - the source of information.  
For AirPrice, please note that GDS offers return the value 'Travelport' in authority while NDC offers return the carrier code of the issuing NDC carrier.  
When returned from Air Exchange Eligibility, authority is always 'Travelport' as the transaction issuer.  
For Hotels, authority indicates which supplier returned the lowest available rate for that property: either 'TVPT' (Travelport) or 'BKNG' (booking.com). Booking.com access requires additional provisioning and a direct agreement with the supplier. Authority is not returned if the property is closed or returns an error.  
For Hotel Create Reservation (Full Payload) and Sync Reservation send the value from the Availability response in CatalogOffering/Identifier/authority for the instance you want to book.
    Example: TVPT

  - `ErrorResponse.NextSteps` (object)
    Container for the steps that describe actions that may be taken on the containing object.  
Not applicable for an Eligibility or Exchange response.

  - `ErrorResponse.NextSteps.baseURI` (string, required)
    The base portion of the URI in order to shorten the uris in the individual steps

  - `ErrorResponse.NextSteps.id` (string)
    Optional internally referenced id
    Example: 5

  - `ErrorResponse.NextSteps.NextStep` (array, required)

  - `ErrorResponse.NextSteps.NextStep.value` (string)
    Example: www.resourcelocation.com

  - `ErrorResponse.NextSteps.NextStep.id` (string)
    Identifier for the Next Step
    Example: 2

  - `ErrorResponse.NextSteps.NextStep.action` (string, required)
    The action this next step is intended to achieve
    Example: cancel

  - `ErrorResponse.NextSteps.NextStep.method` (string, required)
    Describes the set of potential methods that can be taken after an operation.
    Enum: "GET", "DELETE", "PUT", "POST"

  - `ErrorResponse.NextSteps.NextStep.description` (string)
    Additional clarification for the next step
    Example: remove offer from the order

  - `ErrorResponse.ReferenceList` (array)

  - `ErrorResponse.ReferenceList.@type` (string, required)
    Discriminator
- Air Search child classes are ReferenceListAmenity, ReferenceListBrand, ReferenceListFlight, ReferenceListProduct, ReferenceListTermsAndConditions, and ReferenceListUniversalProductAttribute.
- Air Price child classes are ReferenceListAmenity and ReferenceListBrand.
- FareRules child class is ReferenceListFlight.
- Search Ancillaries child class is ReferenceListFlight.
- Seat Map child class is ReferenceListSeatingChart.
- Hotel Availability child class is ReferenceListPropertyDates.
- Reservation and Reservation Workbench child classes are ReferenceListAmenity, ReferenceListBrand, and ReferenceListUniversalProductAttribute.
- Exchange Search child classes are ReferenceListBrand, ReferenceListFlight, and ReferenceListExchangedPrice.
- Reservation Receipt child classes are ReferenceListOffer and ReferenceListTraveler.
- Book_Traveler child class is ReferenceListTraveler.
    Example: ReferenceListFlight

  - `ErrorResponse.ReferenceList.id` (string)
    Uniquely identifies for the Reference List

  - `ErrorResponse.CurrencyRateConversion` (array)

  - `ErrorResponse.CurrencyRateConversion.@type` (string)

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency` (object, required)
    Currency codes are the three-letter alphabetic codes that represent the various currencies used throughout the world.  
Unless changed in the request, the currency is the default associated with your provisioned PCC from Travelport.  
For Hotel: SourceCurrency is based on the location of the hotel and used for all rates in the response. TargetCurrency is the currency code sent in the request in requestedCurrency.

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.value` (string)
    An ISO 4217 currency code.
    Example: USD

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.codeAuthority` (string)
    Currency code authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.decimalPlace` (integer)
    Number of decimal places for the currency.
    Example: 4

  - `ErrorResponse.CurrencyRateConversion.SourceCurrency.decimalAuthority` (string)
    Currency code decimal authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.ConversionRate` (object, required)
    Conversion rate of SourceCurrency value to TargetCurrency value. This value can be used to calculate, independently of the API, conversion for the rates in the response. The response does not convert any amounts.

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.value` (number)

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.rateAuthority` (string)
    Contextual rate authority
    Example: ISO 4217

  - `ErrorResponse.CurrencyRateConversion.ConversionRate.rateAsOf` (string)
    Rate as of
    Example: 2026-08-07T12:12:00Z

  - `ErrorResponse.Pagination` (object)
    Pagination object used when result sets span across a number of pages.

  - `ErrorResponse.Pagination.@type` (string, required)
    Example: Pagination

  - `ErrorResponse.Pagination.page` (integer, required)
    The current page number of the full result set
    Example: 1

  - `ErrorResponse.Pagination.pageSize` (integer, required)
    The total number of items on this page
    Example: 20

  - `ErrorResponse.Pagination.totalPages` (integer, required)
    The total number of pages in this result set
    Example: 5

  - `ErrorResponse.Pagination.totalItems` (integer, required)
    The total number of pages in this result set
    Example: 100

