Flight Resume Booking API

Guidance and examples for accessing the Flight Resume Booking API

The Flight Resume Booking API allows you to resume a flight booking that is currently in a pending booking status while awaiting payment.

Endpoint

MethodEndpoint
PUThttps://apim.expedia.com/flights/bookings/[TripNumber]/resume

Required Headers

Key:Expedia API key
Authorization:Expedia API Authorization String
User-Id:username@domain.com

The email address associated with the booking and to which the Booking Confirmation Email will be sent.

Content-Type:application/json
Accept:application/vnd.exp-flight.v3+json
Partner-Transaction-Id:Partner TransactionID String

Next Steps

  • View the booked flight itinerary via WebItinRetrieve website deeplink.
  • View air fare rules via ApiFareRules website deeplink.

Example of Resume Booking Request

Booking URL and Headers

https://apim.expedia.com/flights/bookings/[tripNumber]/resume?releaseHoldIfPossible=false

Confirmation Response When Called On Pending Trip After Making Payment

{
	"TransactionId": "389cd2f5-e664-4540-9475-73fdcd2d53db",
	"ItineraryNumber": 791414152351,
	"BookingDateTime": "2021-07-18T18:50:13-07:00",
	"PartnerAgentId": "123456",
	"PartnerConfirmationNumber": "hello123",
	"Links": {
		"ApiFareRules": {
			"Accept": "application/vnd.exp-flight.v1+json",
			"Method": "GET",
			"Href": "http://ews-air-service.us-west-2.int.expedia.com/flights/farerules/CgVjb2FjaBoJUHVibGlzaGVkIgd1bmtub3duKgl1bml2ZXJzYWwyAkRMQksIARIZMjAxOS0wOS0wNlQwNzoxMDowMC0wNDowMBoDTEdBIgNDTFQqAkRMMghWQVZOQTBCUEIGQ0xUTllDSgVTYWJyZWoFQURVTFRCSwgCEhkyMDE5LTA5LTEwVDE0OjU5OjAwLTA0OjAwGgNDTFQiA0xHQSoCREwyCFZBVk5BMEJQQgZOWUNDTFRKBVNhYnJlagVBRFVMVA"
		}
	},
	"Title": "My Flight Booking",
	"BillingDetails": {
		"CreditCard": {
			"CardNumber": "XXXXXXXXXXXX1096",
			"CardType": "MasterCard"
		}
	},
	"AirlineConfirmations": [{
		"MarketingAirlineCode": "DL",
		"ConfirmationNumber": "GVU77M"
	}],
	"TripStartTime": "2021-09-06T07:10:00-04:00",
	"TripEndTime": "2021-09-10T17:20:00-04:00",
	"SplitTicket": false,
	"GDSLocators": ["ZVKZZT"],
	"Free24HourCancellation": true,
	"Travelers": [{
		"Name": {
			"FirstName": "REENA",
			"LastName": "JOSE"
		},
		"Phone": {
			"CountryCode": "1",
			"AreaCode": "206",
			"Number": "9876543"
		},
		"Email": "john.doe@gmail.com",
		"Primary": true,
		"Gender": "Female",
		"PassengerType": "ADULT",
		"DateOfBirth": "1988-01-17",
		"Passport": {
			"CountryCode": "US",
			"Number": "123GHX",
			"ExpirationDate": "2025-11-11"
		},
		"FrequentFlyerPrograms": [{
			"MarketingCarrierCode": "DL",
			"ProgramCarrierCode": "DL",
			"Number": "9080037642",
			"Status": "Frequent flyer requests should be confirmed directly with the airline"
		}],
		"Tickets": [{
			"MarketingAirlineCode": "DL",
			"TicketNumber": "Unassigned",
			"ConfirmationNumber": "GVU77M"
		}]
	}],
	"Segments": [{
			"FlightDuration": "PT2H1M",
			"TotalStops": 0,
			"DepartureArrivalDayDifference": 0,
			"AirportChange": false,
			"FareType": "PUBLISHED",
			"Links": {
				"ApiBaggageFees": {
					"Accept": "application/vnd.exp-flight.v1+json",
					"Method": "GET",
					"Href": "http://ews-air-service.us-west-2.int.expedia.com/flights/baggagefees/CkYKAkRMEgJETBoKMjAxOS0wOS0wNiIDQ0xUKgoyMDE5LTA5LTA2MgNMR0E6AUVCCFZBVk5BMEJQSgdFQ09OT01ZUgQ1NDk2EgNVU0QaAmtn"
				}
			},
			"Legs": [{
				"DepartureAirport": {
					"Code": "CLT",
					"Name": "Charlotte-Douglas Intl.",
					"City": "Charlotte",
					"Province": "NC",
					"Country": "USA",
					"Latitude": "35.220985",
					"Longitude": "-80.944074"
				},
				"ArrivalAirport": {
					"Code": "LGA",
					"Name": "LaGuardia",
					"City": "New York",
					"Province": "NY",
					"Country": "USA",
					"Latitude": "40.77429",
					"Longitude": "-73.872035"
				},
				"DepartureDateTime": "2021-09-06T07:10:00-04:00",
				"ArrivalDateTime": "2021-09-06T09:11:00-04:00",
				"FlightNumber": "5496",
				"MarketingAirlineCode": "DL",
				"MarketingAirlineName": "Delta",
				"OperatingAirlineCode": "DL",
				"OperatingAirlineName": "Delta",
				"EquipmentCode": "CR9",
				"EquipmentName": "Canadair Regional Jet 900",
				"FlightDuration": "PT2H1M",
				"FlightDistance": {
					"Value": "543",
					"Unit": "MI"
				},
				"BookingCode": "E",
				"CabinClass": "ECONOMY",
				"EquipmentChange": false,
				"AirlineConfirmation": {
					"MarketingAirlineCode": "DL",
					"ConfirmationNumber": "GVU77M"
				},
				"GDSLocator": "ZVKZZT"
			}]
		},
		{
			"FlightDuration": "PT2H21M",
			"TotalStops": 0,
			"DepartureArrivalDayDifference": 0,
			"AirportChange": false,
			"FareType": "PUBLISHED",
			"Links": {
				"ApiBaggageFees": {
					"Accept": "application/vnd.exp-flight.v1+json",
					"Method": "GET",
					"Href": "http://ews-air-service.us-west-2.int.expedia.com/flights/baggagefees/CkYKAkRMEgJETBoKMjAxOS0wOS0xMCIDTEdBKgoyMDE5LTA5LTEwMgNDTFQ6AUVCCFZBVk5BMEJQSgdFQ09OT01ZUgQ0MDIzEgNVU0QaAmtn"
				}
			},
			"Legs": [{
				"DepartureAirport": {
					"Code": "LGA",
					"Name": "LaGuardia",
					"City": "New York",
					"Province": "NY",
					"Country": "USA",
					"Latitude": "40.77429",
					"Longitude": "-73.872035"
				},
				"ArrivalAirport": {
					"Code": "CLT",
					"Name": "Charlotte-Douglas Intl.",
					"City": "Charlotte",
					"Province": "NC",
					"Country": "USA",
					"Latitude": "35.220985",
					"Longitude": "-80.944074"
				},
				"DepartureDateTime": "2021-09-10T14:59:00-04:00",
				"ArrivalDateTime": "2021-09-10T17:20:00-04:00",
				"FlightNumber": "4023",
				"MarketingAirlineCode": "DL",
				"MarketingAirlineName": "Delta",
				"OperatingAirlineCode": "DL",
				"OperatingAirlineName": "Delta",
				"EquipmentCode": "E7W",
				"EquipmentName": "Embraer 175 (Enhanced Winglets)",
				"FlightDuration": "PT2H21M",
				"FlightDistance": {
					"Value": "543",
					"Unit": "MI"
				},
				"BookingCode": "E",
				"CabinClass": "ECONOMY",
				"EquipmentChange": false,
				"AirlineConfirmation": {
					"MarketingAirlineCode": "DL",
					"ConfirmationNumber": "GVU77M"
				},
				"GDSLocator": "ZVKZZT"
			}]
		}
	],
	"Price": {
		"TotalPrice": {
			"Value": "159.09",
			"Currency": "USD"
		},
		"BasePrice": {
			"Value": "119.06",
			"Currency": "USD"
		},
		"Fees": [{
			"Value": "4.00",
			"Currency": "USD",
			"Name": "Service"
		}],
		"TotalTaxes": {
			"Value": "36.03",
			"Currency": "USD"
		},
		"TotalTaxesAndFees": {
			"Value": "40.03",
			"Currency": "USD"
		},
		"PricePerPassengerCategory": [{
			"Category": "ADULT",
			"Count": 1,
			"BasePrice": {
				"Value": "119.06",
				"Currency": "USD"
			},
			"TotalTaxes": {
				"Value": "36.03",
				"Currency": "USD"
			}
		}]
	}
}

Resume Response when called on pending trip to release hold on order

{
    "TransactionId": "56cac4ff-ed3e-4ad1-8cda-30effa42bf3d",
    "ReleaseHold": "SUCCESS",
    "Description": "Order was released as a result of client's request."
}

Resume Call on Expired or Reversed Trip Number

{
	"Errors": [{
		"Code": "TWO_STEP_PAYMENT_EXPIRED_TRIP",
		"Description": "two step payment was not completed on time or trip has been reversed. Trip no longer exists."
	}],
	"TransactionId": "3b1d6a6d-b9ef-42c8-adb7-3733c490291f"
}

Resume Call on a Processed or Booked Trip Number

{
	"Errors": [{
		"Code": "RESUME_CALL_INVALID",
		"Description": "Trip has already been processed. Call Retrieve booking for additional details."
	}],
	"TransactionId": "0f5c105a-8358-49d3-9f5e-36849ad1d700"
}


Error Codes

Common Error Codes

HTTP Status CodeError CodeError MessageReason
400RESUME_CALL_INVALIDTrip has already been processed. Call Retrieve booking for additional details.On calling Resume API on a booked trip number.
400PAYPAL_EXPIRED_TRIPPayPal payment was not completed on time or trip has been reversed. Trip no longer exists.When payment is not made on a pending trip and it expires.
400TWO_STEP_PAYMENT_EXPIRED_TRIPTwo Step Payment was not completed on time or trip has been reversed. Trip no longer exists.When payment is not made on a pending trip and it expires.
400PAYMENT_PENDINGResume booking called before making redirection payment.When Resume API is called before making payment within the timeout window.
400ITINERARY_NOT_FOUND_FOR_PARTNERItinerary was not found for client key .The itinerary does not belong to the partner.
400ITIN_NOT_ASSOCIATED_WITH_CLIENT_KEYThe itinerary is not associated with client key.The itinerary is not associated with client key .
500RESUME_APPLICATION_ERRORResume booking failed. Application Error.Other errors

API details

Here, you can explore the endpoint definitions for this API, then go to the API Explorer to try out all the XAP endpoints, download OpenAPI specs, or download our Postman collections. Testing with one or all of these options will give you an understanding of how the examples and schema definitions compare to the actual output.


Did you find this page helpful?
How can we improve this content?
Thank you for helping us improve!