Searching and booking cars
Search car rentals, pick a fare, and create a car booking.
Cars follow the standard four-step flow: search → fares → build → book.
Search and fares stream results as Server-Sent Events (SSE); build and book
return JSON. All requests require the consumer HMAC and a traveler bearer
token — omitted from the snippets below for brevity.
1. Search
POST /v1/cars/search streams car-rental solutions as SSE.
Request body (CarSearchRequest) — pickup and drop-off are CarLocation
objects identified by id and type (airport or place), each carrying its
own date (YYYY-MM-DD) and time (HH:MM, no timezone):
{
"pickupLocation": {
"id": "MXP",
"type": "airport",
"name": "Milan Malpensa",
"country": "IT",
"date": "2026-02-10",
"time": "10:00"
},
"dropoffLocation": {
"id": "MXP",
"type": "airport",
"date": "2026-02-14",
"time": "10:00"
},
"driverAge": 30,
"destinationTimezone": "Europe/Rome"
}When dropoffLocation is omitted, the vehicle is returned to the pickup
location. Each streamed solution's id is the searchSolutionId for the next
step.
2. List fares
POST /v1/cars/fares streams the bookable fares for a chosen solution.
Request body (CarFaresBody):
{ "searchSolutionId": "018f...", "solutionKey": null }3. Build the fare
POST /v1/cars/fares/build locks a specific fare and returns it as JSON
(201).
Request body (CarBuildFareBody):
{ "fareId": "018f...", "searchSolutionId": "018f...", "solutionKey": null }4. Book
POST /v1/cars/bookings creates the booking from the built fareId using the
shared CreateBookingRequest. Send a unique Idempotency-Key header
(required — see Bookings and trips):
{
"fareId": "018f...",
"passengers": [
{
"firstName": "Ada",
"lastName": "Lovelace",
"type": "adult",
"isHolder": true
}
],
"isPersonal": false,
"tripId": null
}Manage the booking lifecycle with the shared endpoints in
Bookings and trips.
See the API Reference for the complete request and
response schemas.
Reporting issues
This page is maintained by the BizAway integration team. To request changes or
report an error, contact your BizAway integration contact. Edits made directly
in the ReadMe dashboard are overwritten on the next publish.