Skip to content
Car Rental API

Car Rental API

Beta

Compare and reserve rental cars from international and local brands.

Version v0.9 · 3 endpoints

Examples use the sandbox base URL https://sandbox.flightota.com. Beta: live reservations need a connected rental supplier. Sandbox reservations are simulated and are not sent to any rental brand.

Reservations

Create a reservation

POST/car/v0/reservations

Reserves a vehicle rate for the main driver.

This operation creates or changes a booking with a supplier. Always send an Idempotency-Key. In production it runs only when a supplier is connected. In the sandbox it is simulated.

Parameters

ParameterInDescription
Idempotency-Key
stringrequired
headerUnique key (UUID v4) that makes retries safe. Reusing a key returns the original result.
Example: 4f9a2c3e-6b1d-4e8a-9c7f-2d5b8e1a0c34
rate_id
stringrequired
bodyRate identifier.

Errors

  • 400validation_errorOne or more request parameters are invalid.
  • 401unauthorizedThe API key is missing, revoked or invalid.
  • 429rate_limitedToo many requests. Retry after the time given in the Retry-After header.
  • 409offer_expiredThe offer is no longer valid at the supplier. Search or reprice again.
  • 502supplier_unavailableThe upstream supplier did not respond. No booking was created.
curl -X POST "https://sandbox.flightota.com/car/v0/reservations" \
  -H "Authorization: Bearer $FLIGHTOTA_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
  "rate_id": "car_rt_01",
  "driver": {
    "given_name": "Omar",
    "family_name": "Rahman",
    "age": 32
  }
}'
Response · 200
{
  "data": {
    "reservation_id": "crs_01JDC1",
    "status": "confirmed",
    "confirmation": "EU-88213"
  }
}
Error · 400
{
  "error": {
    "code": "validation_error",
    "message": "One or more request parameters are invalid.",
    "request_id": "req_01JD8Z4X2N7Q"
  }
}

Reservations

Cancel a reservation

POST/car/v0/reservations/{reservation_id}/cancel

Cancels a car rental reservation.

This operation creates or changes a booking with a supplier. Always send an Idempotency-Key. In production it runs only when a supplier is connected. In the sandbox it is simulated.

Parameters

ParameterInDescription
reservation_id
stringrequired
pathReservation identifier.
Example: crs_01JDC1
Idempotency-Key
stringrequired
headerUnique key (UUID v4) that makes retries safe. Reusing a key returns the original result.
Example: 4f9a2c3e-6b1d-4e8a-9c7f-2d5b8e1a0c34

Errors

  • 400validation_errorOne or more request parameters are invalid.
  • 401unauthorizedThe API key is missing, revoked or invalid.
  • 429rate_limitedToo many requests. Retry after the time given in the Retry-After header.
  • 409offer_expiredThe offer is no longer valid at the supplier. Search or reprice again.
  • 502supplier_unavailableThe upstream supplier did not respond. No booking was created.
curl -X POST "https://sandbox.flightota.com/car/v0/reservations/crs_01JDC1/cancel" \
  -H "Authorization: Bearer $FLIGHTOTA_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)"
Response · 200
{
  "data": {
    "reservation_id": "crs_01JDC1",
    "status": "cancelled"
  }
}
Error · 400
{
  "error": {
    "code": "validation_error",
    "message": "One or more request parameters are invalid.",
    "request_id": "req_01JD8Z4X2N7Q"
  }
}