Travel & Lodging

Car Rental API

The Car Rental API aggregates rental offers as clean JSON.

3 actionsLive JSON1,000 free creditsMCP-ready
Get a free keyOpen in playground

🤖 Using an AI assistant? Copy this link into ChatGPT / Claude / Cursor — it reads every endpoint and parameter instantly and tells you if this API fits your use case.

The primary cars/search endpoint returns offers with the vehicle (name, category, ACRISS code, transmission, seats, bags, fuel) and price, and you can autocomplete a location and pull reviews. It is built for travel apps and rental price monitoring that need aggregated car-rental data without a scraper. One ReefAPI key, one shared credit pool, the standard envelope.

Live example

Real request and response JSON

Captured from the indexed primary action, cars/search, on .

Captured request
{
  "method": "POST",
  "url": "https://api.reefapi.com/car-rental/v1/cars/search",
  "headers": {
    "x-api-key": "$REEF_KEY",
    "content-type": "application/json"
  },
  "body": {
    "query": "Madrid Airport",
    "currency": "EUR",
    "pickup_date": "2026-09-01",
    "dropoff_date": "2026-09-04",
    "max_offers": 40
  }
}
Captured response
{
  "ok": true,
  "meta": {
    "api": "car-rental",
    "endpoint": "cars/search",
    "mode": "live",
    "latency_ms": 9657.3,
    "record_count": 40,
    "bytes": 4338436,
    "cache_hit": false,
    "completeness_pct": 100,
    "polls": 2,
    "currency": "EUR",
    "driver_age": "35",
    "residence_country": "US",
    "completeness_basis": {
      "offers": 40,
      "supplier_count": 4,
      "field_slots": 520,
      "field_slots_filled": 520
    }
  },
  "data": {
    "count": 40,
    "supplier_count": 4,
    "currency": "EUR",
    "offers": [
      {
        "offer_id": "24MG",
        "vehicle": {
          "name": "[redacted-name]",
          "category": "Mini",
          "acriss": "MBAE",
          "transmission": "automatic",
          "seats": 4,
          "doors": 3,
          "bags": 1,
          "air_conditioning": true,
          "fuel_type": "Electric",
          "guaranteed_model": false,
          "image": "https://www.discovercars.com/images/car/8625/220.png"
        },
        "price": {
          "amount": 68.76,
          "currency": "EUR",
          "formatted": "€68.76",
          "rental_days": 3,
          "daily": 22.92
        },
        "supplier": {
          "name": "Click&Rent",
          "key": "click-rent",
          "logo": "https://www.discovercars.com/PartnerFiles/1041/logo_140x70.png?v=6918",
          "rating": {
            "score": "[trimmed-depth]",
            "label": "[trimmed-depth]",
            "review_count": "[trimmed-depth]"
          },
          "rating_detailed": {
            "valueForMoney": "[trimmed-depth]",
            "valueForMoneyColor": "[trimmed-depth]",
            "valueForMoneyLabel": "[trimmed-depth]",
            "findPickup": "[trimmed-depth]",
            "findPickupColor": "[trimmed-depth]",
            "findPickupLabel": "[trimmed-depth]",
            "workEfficiency": "[trimmed-depth]",
            "workEfficiencyColor": "[trimmed-depth]",
            "workEfficiencyLabel": "[trimmed-depth]",
            "timeSpentPickingUp": "[trimmed-depth]",
            "timeSpentPickingUpColor": "[trimmed-depth]",
            "timeSpentPickingUpLabel": "[trimmed-depth]",
            "timeSpentDroppingOff": "[trimmed-depth]",
            "timeSpentDroppingOffColor": "[trimmed-depth]",
            "timeSpentDroppingOffLabel": "[trimmed-depth]",
            "carCleanliness": "[trimmed-depth]",
            "carCleanlinessColor": "[trimmed-depth]",
            "carCleanlinessLabel": "[trimmed-depth]",
            "carCondition": "[trimmed-depth]",
            "carConditionColor": "[trimmed-depth]",
            "carConditionLabel": "[trimmed-depth]",
            "avgValue": "[trimmed-depth]",
            "locationReviewCount": "[trimmed-depth]",
            "countryReviewCount": "[trimmed-depth]",
            "worldReviewCount": "[trimmed-depth]"
          },
          "pickup_address": "Hotel Madrid Airport Suites Affiliated By Meliá,  Calle De Lola Flores 20",
          "coords": {
            "key": "[trimmed-depth]",
            "lat": "[trimmed-depth]",
            "lng": "[trimmed-depth]"
          }
        },
        "pickup": {
          "location": "Madrid Airport (MAD)",
          "is_airport": true,
          "type": "Free shuttle service",
          "type_icon": "bus"
        },
        "mileage": {
          "unlimited": false,
          "label": "Limited",
          "unspecified": false,
          "day_limit": "200 km/day included mileage"
        },
        "fuel_policy": "Full to full",
        "payment_type": "Pay now",
        "deposit": {
          "key": "average",
          "title": "Average deposit",
          "amount": "€1,200.00"
        },
        "coverage": {
          "total": 28.49,
          "currency": "EUR"
        },
        "extras": null,
        "free_cancellation": true,
        "instant_confirmation": true,
        "badges": [
          "online_check_in",
          "zero_emission"
        ],
        "book_url": "https://www.discovercars.com/en/offer/699ed965-aec[redacted-phone]a6-68c7145865cd-24MG?sq=eyJQaWNrdXBMb2NhdGlvbklkIjoxODc1LCJEcm9wT2ZmTG9jYXRpb25JZCI6MTg3NSwiUGlja3VwRGF0ZVRpbWUiOiIyMDI2LTA5LTAxVDEwOjAwOjAwIiwiRHJvcE9mZkRhdGVUaW1lIjoiMjAyNi0wOS0wNFQxMDowMDowMCIsIlJlc2lkZW5jZUNvdW50cnkiOiJVUyIsIkRyaXZlckFnZSI6MzUsIkhhc2giOiIzMmFmN2UyM2I3ZDE1OTVlNDI2ZDQ5ZWFlYWJjMzE4ZCJ9"
      },
      {
        "offer_id": "9PTP",
        "vehicle": {
          "name": "[redacted-name]",
          "category": "Mini",
          "acriss": "MCMR",
          "transmission": "manual",
          "seats": 4,
          "doors": 4,
          "bags": 1,
          "air_conditioning": true,
          "fuel_type": null,
          "guaranteed_model": false,
          "image": "https://www.discovercars.com/images/car/7189/220.png"
        },
        "price": {
          "amount": 68.76,
          "currency": "EUR",
          "formatted": "€68.76",
          "rental_days": 3,
          "daily": 22.92
        },
        "supplier": {
          "name": "Click&Rent",
          "key": "click-rent",
          "logo": "https://www.discovercars.com/PartnerFiles/1041/logo_140x70.png?v=6918",
          "rating": {
            "score": "[trimmed-depth]",
            "label": "[trimmed-depth]",
            "review_count": "[trimmed-depth]"
          },
          "rating_detailed": {
            "valueForMoney": "[trimmed-depth]",
            "valueForMoneyColor": "[trimmed-depth]",
            "valueForMoneyLabel": "[trimmed-depth]",
            "findPickup": "[trimmed-depth]",
            "findPickupColor": "[trimmed-depth]",
            "findPickupLabel": "[trimmed-depth]",
            "workEfficiency": "[trimmed-depth]",
            "workEfficiencyColor": "[trimmed-depth]",
            "workEfficiencyLabel": "[trimmed-depth]",
            "timeSpentPickingUp": "[trimmed-depth]",
            "timeSpentPickingUpColor": "[trimmed-depth]",
            "timeSpentPickingUpLabel": "[trimmed-depth]",
            "timeSpentDroppingOff": "[trimmed-depth]",
            "timeSpentDroppingOffColor": "[trimmed-depth]",
            "timeSpentDroppingOffLabel": "[trimmed-depth]",
            "carCleanliness": "[trimmed-depth]",
            "carCleanlinessColor": "[trimmed-depth]",
            "carCleanlinessLabel": "[trimmed-depth]",
            "carCondition": "[trimmed-depth]",
            "carConditionColor": "[trimmed-depth]",
            "carConditionLabel": "[trimmed-depth]",
            "avgValue": "[trimmed-depth]",
            "locationReviewCount": "[trimmed-depth]",
            "countryReviewCount": "[trimmed-depth]",
            "worldReviewCount": "[trimmed-depth]"
          },
          "pickup_address": "Hotel Madrid Airport Suites Affiliated By Meliá,  Calle De Lola Flores 20",
          "coords": {
            "key": "[trimmed-depth]",
            "lat": "[trimmed-depth]",
            "lng": "[trimmed-depth]"
          }
        },
        "pickup": {
          "location": "Madrid Airport (MAD)",
          "is_airport": true,
          "type": "Free shuttle service",
          "type_icon": "bus"
        },
        "mileage": {
          "unlimited": false,
          "label": "Limited",
          "unspecified": false,
          "day_limit": "200 km/day included mileage"
        },
        "fuel_policy": "Full to full",
        "payment_type": "Pay now",
        "deposit": {
          "key": "average",
          "title": "Average deposit",
          "amount": "€1,000.00"
        },
        "coverage": {
          "total": 28.49,
          "currency": "EUR"
        },
        "extras": null,
        "free_cancellation": true,
        "instant_confirmation": true,
        "badges": [
          "online_check_in"
        ],
        "book_url": "https://www.discovercars.com/en/offer/699ed965-aec[redacted-phone]a6-68c7145865cd-9PTP?sq=eyJQaWNrdXBMb2NhdGlvbklkIjoxODc1LCJEcm9wT2ZmTG9jYXRpb25JZCI6MTg3NSwiUGlja3VwRGF0ZVRpbWUiOiIyMDI2LTA5LTAxVDEwOjAwOjAwIiwiRHJvcE9mZkRhdGVUaW1lIjoiMjAyNi0wOS0wNFQxMDowMDowMCIsIlJlc2lkZW5jZUNvdW50cnkiOiJVUyIsIkRyaXZlckFnZSI6MzUsIkhhc2giOiIxODU3MzE2ZWZjODc0MWZhOGQ3NGJhMzg1ODUxZDVlZiJ9"
      },
      {
        "offer_id": "M8QC",
        "vehicle": {
          "name": "[redacted-name]",
          "category": "Economy",
          "acriss": "ECMR",
          "transmission": "manual",
          "seats": 4,
          "doors": 3,
          "bags": 1,
          "air_conditioning": true,
          "fuel_type": null,
          "guaranteed_model": false,
          "image": "https://www.discovercars.com/images/car/110/220.png"
        },
        "price": {
          "amount": 68.76,
          "currency": "EUR",
          "formatted": "€68.76",
          "rental_days": 3,
          "daily": 22.92
        },
        "supplier": {
          "name": "Click&Rent",
          "key": "click-rent",
          "logo": "https://www.discovercars.com/PartnerFiles/1041/logo_140x70.png?v=6918",
          "rating": {
            "score": "[trimmed-depth]",
            "label": "[trimmed-depth]",
            "review_count": "[trimmed-depth]"
          },
          "rating_detailed": {
            "valueForMoney": "[trimmed-depth]",
            "valueForMoneyColor": "[trimmed-depth]",
            "valueForMoneyLabel": "[trimmed-depth]",
            "findPickup": "[trimmed-depth]",
            "findPickupColor": "[trimmed-depth]",
            "findPickupLabel": "[trimmed-depth]",
            "workEfficiency": "[trimmed-depth]",
            "workEfficiencyColor": "[trimmed-depth]",
            "workEfficiencyLabel": "[trimmed-depth]",
            "timeSpentPickingUp": "[trimmed-depth]",
            "timeSpentPickingUpColor": "[trimmed-depth]",
            "timeSpentPickingUpLabel": "[trimmed-depth]",
            "timeSpentDroppingOff": "[trimmed-depth]",
            "timeSpentDroppingOffColor": "[trimmed-depth]",
            "timeSpentDroppingOffLabel": "[trimmed-depth]",
            "carCleanliness": "[trimmed-depth]",
            "carCleanlinessColor": "[trimmed-depth]",
            "carCleanlinessLabel": "[trimmed-depth]",
            "carCondition": "[trimmed-depth]",
            "carConditionColor": "[trimmed-depth]",
            "carConditionLabel": "[trimmed-depth]",
            "avgValue": "[trimmed-depth]",
            "locationReviewCount": "[trimmed-depth]",
            "countryReviewCount": "[trimmed-depth]",
            "worldReviewCount": "[trimmed-depth]"
          },
          "pickup_address": "Hotel Madrid Airport Suites Affiliated By Meliá,  Calle De Lola Flores 20",
          "coords": {
            "key": "[trimmed-depth]",
            "lat": "[trimmed-depth]",
            "lng": "[trimmed-depth]"
          }
        },
        "pickup": {
          "location": "Madrid Airport (MAD)",
          "is_airport": true,
          "type": "Free shuttle service",
          "type_icon": "bus"
        },
        "mileage": {
          "unlimited": false,
          "label": "Limited",
          "unspecified": false,
          "day_limit": "200 km/day included mileage"
        },
        "fuel_policy": "Full to full",
        "payment_type": "Pay now",
        "deposit": {
          "key": "average",
          "title": "Average deposit",
          "amount": "€1,000.00"
        },
        "coverage": {
          "total": 28.49,
          "currency": "EUR"
        },
        "extras": null,
        "free_cancellation": true,
        "instant_confirmation": true,
        "badges": [
          "online_check_in"
        ],
        "book_url": "https://www.discovercars.com/en/offer/699ed965-aec[redacted-phone]a6-68c7145865cd-M8QC?sq=eyJQaWNrdXBMb2NhdGlvbklkIjoxODc1LCJEcm9wT2ZmTG9jYXRpb25JZCI6MTg3NSwiUGlja3VwRGF0ZVRpbWUiOiIyMDI2LTA5LTAxVDEwOjAwOjAwIiwiRHJvcE9mZkRhdGVUaW1lIjoiMjAyNi0wOS0wNFQxMDowMDowMCIsIlJlc2lkZW5jZUNvdW50cnkiOiJVUyIsIkRyaXZlckFnZSI6MzUsIkhhc2giOiIxN2Y4OGQ3YTM1N2JmN2Q3MzM0NDM1ZjQ2Y2Q1ZDMzNyJ9"
      }
    ],
    "__trimmed": "response capped for page display"
  }
}
Actions

What the Car Rental API does

ActionDescriptionConcrete use caseKey params
cars/searchaggregated rental-car offers for a location + dates → offers[]{vehicle(name/category/ACRISS/transmission/seats/bags/fuel), price{amount,currency}, supplier(name/rating/pickup_address/coords), pickup.type, mileage, fuel_policy, free_cancellation, book_url} + facets. Location via `query` OR explicit place_id/city_id/country_id. One-way via drop_query. Dates pickup_date/dropoff_date (YYYY-MM-DD). Narrow with category/supplier/transmission/max_price/min_supplier_rating/free_cancellation_only filters + sort.Travel apps call cars/search to get aggregated rental-car offers for a location + dates → offers[]{vehicle(name/category/ACRISS/t….query, place_id, city_id, country_id, pickup_date, ...
cars/autocompleteresolve a location string (`query`) → place/city/country IDs (for cars/search)Pricing monitors call cars/autocomplete to resolve a location string (`query`) → place/city/country IDs (for cars/search).query
cars/reviewsDiscoverCars customer reviews for a location → reviews[]{rating(0-10), text, author, author_country, car_name, date, photos} + average_rating + count. Location via `query` (city/country name; resolved automatically) OR explicit location_url. Filter with min_rating / with_text_only; country_only widens city→country scope.Itinerary products call cars/reviews to get discoverCars customer reviews for a location → reviews[]{rating(0-10), text, author, author_c….query, location_url, country_only, min_rating, with_text_only, ...
Code samples

Call cars/search from your stack

curl -X POST https://api.reefapi.com/car-rental/v1/cars/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"query":"Madrid Airport","currency":"EUR","pickup_date":"2026-09-01","dropoff_date":"2026-09-04","max_offers":40}'
MCP one-liner
Ask your MCP-connected assistant: call reefapi.car-rental.cars/search with {"query":"Madrid Airport","currency":"EUR","pickup_date":"2026-09-01","dropoff_date":"2026-09-04","max_offers":40}.
Use cases

Who uses this API and why

  • Travel apps call cars/search to compare rental prices by vehicle class.
  • Price monitors track daily rates across suppliers.
  • Apps use cars/reviews to surface supplier quality.
FAQ

Questions developers ask before integrating

What is the Car Rental API?

Car Rental API is a ReefAPI endpoint group for compare rental cars, prices and availability worldwide. It returns live JSON through POST requests under /car-rental/v1.

Is the Car Rental API free to try?

Yes. ReefAPI starts with 1,000 free credits, no card required. Car Rental calls use the same shared credit balance as every other ReefAPI engine.

Do I need a Car Rental login or account?

No login to Car Rental is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.

How fresh is the Car Rental data?

The page example is captured from a live cars/search call, and production requests fetch live data through ReefAPI rather than a static sample.

How many credits does the Car Rental API use?

Car Rental actions currently cost 1-2 credits per successful call. Failed or blocked calls are free, and all APIs draw from one credit pool.

Can I call Car Rental from an AI assistant or MCP client?

Yes. Connect ReefAPI once through MCP and your assistant can call car-rental actions with the same key, credit pool and JSON envelope used by normal REST requests.

Is the Car Rental API a Car Rental scraper?

It is the managed alternative to a DIY Car Rental scraper. Instead of building and maintaining your own scraper — proxies, headless browsers, captcha and constant breakage — you call one ReefAPI endpoint and get the same compare rental cars, prices and availability worldwide back as clean JSON.

Why does my Car Rental scraper keep getting blocked?

Most Car Rental scrapers break on anti-bot defenses, rate limits and IP bans that need rotating residential proxies and browser fingerprinting to clear. ReefAPI handles all of that for you — no proxies, no captchas, no maintenance — and returns live JSON. Blocked or failed calls are free.

docs / car-rental

Car Rental

Compare rental cars, prices and availability worldwide.

base /car-rental/v13 endpoints
post/car-rental/v1/cars/search2 credits

aggregated rental-car offers for a location + dates → offers[]{vehicle(name/category/ACRISS/transmission/seats/bags/fuel), price{amount,currency}, supplier(name/rating/pickup_address/coords), pickup.type, mileage, fuel_policy, free_cancellation, book_url} + facets. Location via `query` OR explicit place_id/city_id/country_id. One-way via drop_query. Dates pickup_date/dropoff_date (YYYY-MM-DD). Narrow with category/supplier/transmission/max_price/min_supplier_rating/free_cancellation_only filters + sort.

ParameterAllowed / rangeDescription
queryoptionalPickup location to resolve (city / airport name). Provide this OR an explicit place_id + city_id + country_id.
place_idoptionalExplicit DiscoverCars place id (from cars/autocomplete). Use together with city_id + country_id to skip resolution.
city_idoptionalExplicit DiscoverCars city id (pairs with place_id + country_id).
country_idoptionalExplicit DiscoverCars country id (pairs with place_id + city_id).
pickup_dateoptionalPickup date (YYYY-MM-DD). Defaults to ~30 days out if omitted.
dropoff_dateoptionalDrop-off date (YYYY-MM-DD). Defaults to ~30 days out if omitted.
pickup_time = 10:00optionalPickup time of day (HH:MM, 24h). Default 10:00.
dropoff_time = 10:00optionalDrop-off time of day (HH:MM, 24h). Default 10:00.
currency = EURoptionalISO-4217 currency for prices (e.g. EUR, USD, GBP). Default EUR.
residence_country = USoptionalDriver's country of residence (ISO-2, e.g. US, GB) — affects pricing/availability. Default US.
driver_age = 35optional18–99Driver age (affects young/senior-driver fees). Default 35.
drop_queryoptionalDifferent drop-off location (city/airport name) for a one-way rental. Omit for same-location return.
drop_place_idoptionalExplicit drop-off place id (one-way; pairs with drop_city_id).
drop_city_idoptionalExplicit drop-off city id (one-way).
drop_country_idoptionalExplicit drop-off country id (one-way).
max_offersoptional1–Cap the number of offers returned. Omit for all.
include_facets = trueoptionalInclude aggregation facets (supplier/category/price buckets) in the response. Default true.
prefer_airport = trueoptionalWhen resolving `query`, prefer the airport location over downtown. Default true.
categoryoptionalFilter by vehicle category substring (case-insensitive), e.g. Mini, Economy, Compact, Intermediate, SUV, Luxury, Van. From facets.carGroups.
supplieroptionalFilter by supplier name substring (case-insensitive), e.g. Avis, Hertz, Sixt, Budget, Enterprise. See the `suppliers` rollup for what's available.
transmissionoptionalautomatic · manualFilter by transmission. One of: automatic, manual.
min_seatsoptional1–Only offers with at least this many seats.
max_priceoptional0–Only offers whose TOTAL rental price is at or below this (in `currency`).
min_supplier_ratingoptional0–10Only suppliers rated at or above this score (0-10 scale).
free_cancellation_only = falseoptionalOnly offers with free cancellation. Default false.
unlimited_mileage_only = falseoptionalOnly offers with unlimited mileage. Default false.
sort = price_ascoptionalprice_asc · price_desc · rating_descSort order. One of: price_asc (default, cheapest first), price_desc, rating_desc (best-rated supplier first).
include_supplier_summary = trueoptionalInclude a per-supplier rollup (cheapest price, offer count, rating) in the response. Default true.
Try in playground →
post/car-rental/v1/cars/autocomplete1 credit

resolve a location string (`query`) → place/city/country IDs (for cars/search)

ParameterAllowed / rangeDescription
queryrequiredLocation string to resolve into place/city/country IDs.
Try in playground →
post/car-rental/v1/cars/reviews1 credit

DiscoverCars customer reviews for a location → reviews[]{rating(0-10), text, author, author_country, car_name, date, photos} + average_rating + count. Location via `query` (city/country name; resolved automatically) OR explicit location_url. Filter with min_rating / with_text_only; country_only widens city→country scope.

ParameterAllowed / rangeDescription
queryoptionalLocation (city or country name) to fetch DiscoverCars customer reviews for. Provide this OR an explicit location_url.
location_urloptionalExplicit DiscoverCars review slug `country/city` (or `country`), e.g. spain/madrid, usa-california/los-angeles. Skips query resolution.
country_only = falseoptionalFetch country-wide reviews instead of city-level. Default false (city-level, auto-falls back to country if the city has none).
min_ratingoptional0–10Only reviews rated at or above this (0-10 scale).
with_text_only = falseoptionalOnly reviews that include written text. Default false.
max_reviewsoptional1–Cap the number of reviews returned. Omit for all (~up to 50 most recent).
Try in playground →