Car Rental API - Getting Started
The Xeni Car Rental API v2 allows you to search for rental cars worldwide, retrieve detailed vehicle and location information, create bookings, and manage reservations. This guide covers the essentials you need to start integrating.
Base URL
All Car Rental API v2 endpoints share the following base path:
{{api_host}}/cars/api/v2/
Replace {{api_host}} with the environment-specific host provided during onboarding.
Authentication
Every request must include a valid signature in the Authorization header. Refer to the Authentication & API Signatures article for instructions on generating and refreshing signatures.
Required Headers
Include the following headers with every request:
| Header | Description |
|---|---|
Authorization | Your generated API signature (Bearer token). |
x-api-key | Your unique API key, provided during onboarding. |
x-correlation-id | A unique identifier (UUID) for the request, used for tracing and debugging. |
The Complete Booking Flow
A typical car rental integration follows a six-step flow. Each step builds on the data returned by the previous one.
Step 1: Autocomplete Pickup Location
Use the Autocomplete endpoint to let users search for pickup and drop-off locations by name. The endpoint returns cities and airports along with geographic coordinates that you will pass into the search.
GET /cars/api/v2/autocomplete?key=new yo
Step 2: Search for Available Rentals
Pass the coordinates from the autocomplete result into the Search Rentals endpoint along with pickup and return dates. The API returns a paginated list of available vehicles with pricing.
GET /cars/api/v2/rentals?country=US&pickupdate=2026-06-15T10:00:00&returndate=2026-06-20T10:00:00&pickuptype=geo&returntype=geo&pickupcode=40.7128,-74.006&returncode=40.7128,-74.006¤cy=USD
Step 3: Apply Filters (Optional)
Narrow down results using filter parameters such as vehicle type, price range, transmission, and more. Filters use a field:operator:value syntax.
GET /cars/api/v2/rentals?...&filter=vehicle_type:in:SUV,price:lte:100
Step 4: Get Rental Details
Once the user selects a vehicle, call the Rental Details endpoint with the availability token. This returns equipment add-ons, location details, operating hours, and vendor terms.
GET /cars/api/v2/rental/details?country=US¤cy=USD&availability_token={token}
Step 5: Create a Booking
Submit the booking with customer details, optional additional drivers, and selected equipment add-ons.
POST /cars/api/v2/bookings?currency=USD
Step 6: Retrieve or Cancel
Use the booking ID to retrieve reservation details at any time, or cancel the booking if needed.
GET /cars/api/v2/bookings/{booking_id}
PATCH /cars/api/v2/bookings/{bookingid}?token={bookingtoken}
What's Next
- How to Search for Pickup Locations — Learn how to use the autocomplete endpoint.
- How to Search for Available Rental Cars — Build your first rental search request.
- How to Use Car Rental Search Filters — Filter and sort results.
- How to Get Rental Car Details and Equipment Add-Ons — Retrieve full vehicle details.
- How to Book a Car Rental — Create a booking.
- How to Retrieve or Cancel a Car Rental Booking — Manage existing reservations.
- Car Rental API - Understanding Response Fields — Reference for SIPP codes, vehicle types, and rate structures.