Booking overview
The Booking API allows travelers to create reservations for rental cars
Once the traveler has chosen the vendor and car with the Shopping API, you’ll provide them with the Booking API to make their reservation. The primary function of the Booking API is to create a reservation for the selected car offer.
Expedia Collect
For Expedia Collect bookings, before the reservation can be completed, payment information must be sent to our payment registration endpoint (v2/payments) which will generate a secure payment_token to be used in the Create Booking request body. You will then pass in a required affiliate_reference_id, primary driver information, and payment token to create the booking.
Note: For Expedia Collect bookings, the payment_registration_required field in availability and details response will always show as true and the payment_token will be included in the Create Booking request.
Vendor Collect
For Vendor Collect flows, the payment_registration_required field from the Availability and Details responses is used to determine whether the payment token is required to create the booking.
- When
payment_registration_required=truein details response, payment registration is mandatory, and thepayment_tokenmust be included in the Create Booking request. - When
payment_registration_required=falsein details response, payment registration is optional, and thepayment_tokenmay or may not be included in the Create Booking request.
>> Learn about the Payments API
Creating a booking
Each successful booking response contains links to retrieve the itinerary. The link to create a booking will remain valid until no more inventory with the supplier is available for that carOfferToken.
Sample request
POST https://api.ean.com/v2/itineraries/car
?token=U1dFC0JHTWxUCwUHCWNjQ1sQRxBVVwFAW... ...15YTQTcHhefjYOfiBQfThuP1hcfVULeAM0W0U6VWBZFzQXdltcUFwRQgkLCgBRAAEHAVEADg==
{
"affiliate_reference_id": "4480ABC",
"primary_driver": {
"given_name": "{{first_name}}",
"middle_name": "Test",
"family_name": "{{last_name}}",
"phone": {
"country_code": "1",
"area_code": "487",
"number": "5550077"
},
"email": "{{email}}"
},
"flight_details": {
"air_carrier_code": "G4",
"flight_number": 778
},
"traveler_loyalty_member_id": "ABCD1234","
"requested_extras": [
"SatelliteRadio",
"ToddlerChildSeat"
],
"affiliate_metadata": "data_point_1:123|data_point2:This is data.",
"payment_token": "{{payment_token}}"
}Sample response
{
"itinerary_id": "9030336886597",
"links": {
"retrieve": {
"method": "GET",
"href": "https://api.ean.com/v2/itineraries/9030336886597/car",
}
}
}>> Learn more about booking management >> See how to handle booking requests
To make a test booking that will not charge your card or be sent to the vendor, see our test request documentation.
API details
Explore the booking-related endpoint definitions on this page, then use the API Explorer or another testing software to get an understanding of how the examples and schema definitions compare to the actual output.
Additional resources
Whether you're looking to try out all the Rapid Car API endpoints or to download its OpenAPI specs, we have what you need.