Transaction and Trace IDs

The JSON Air APIs support transaction and trace IDs for both GDS and NDC content. These IDs can be used to assist in tracking and troubleshooting if you need Support Options.

Tracking IDs in the Request

The JSON APIs support two separate tracking IDs, one issued by Travelport by default (transactionId) and another that customers can send by choice (traceId). The traceId is sent in the message request header, and both transactionId and traceId are returned in the response header and/or response payload depending on transaction type.

  • transactionId is unique to a single transaction and returned in most APIs. Note that the header may be titled e2etrackingid instead of transactionId. See the table below. When returned, the response payload object is always transactionId.

  • traceId is returned only if sent by the customer. Can be sent in all transaction types to add the same common identifier to all transactions in a workflow.

Do not confuse traceId with the Open Telemetry TraceId header.

For more about headers, see Common Air Headers.

Do not change the TraceID value in subsequent transactions in the same flow, such as between transactions in the same workbench session. For example, don't send a value of ABC in the header of the request to establish a workbench and then change that value to 123 when you add an offer.

Tracking IDs in the Response

All JSON API responses return the system-generated transaction ID. Most responses return the ID in the transactionId object in the first object of the response payload (object name varies by API) and in the e2etrackingid field in the response header, although some APIs return it only in the header.

If you send a trace ID in the header, the response returns that ID. Most responses return a traceId object with your traceID value in the first object in the response payload and in the TraceID field in the response header, although some APIs return it only in the header. If you do not send a trace ID, traceId is not returned.

The following example shows the transaction and trace IDs as returned in the headers and response payloads of different APIs.

Depending on the API, the transactionId is returned in a response header titled either transactionid or e2etrackingid.In the response payload, the transactionId is always returned in the transactionId object.