Skip to content
Scrappa Get API key
Rentalcars API 1 credit/request

Rentalcars Flexible Prices API Documentation

GET https://scrappa.co/api/rentalcars/flexible-prices

Get a price calendar for an airport. Each entry has a pickup date, a dropoff date, a predicted price and the currency, for the rental length you choose. Only airports work here, so use a 3-letter IATA code. The date window can be at most 60 days. A code that is not an airport returns 200 with an empty prices array. This response is not billed. The market (cor) and the currency decide the prices. The response echoes both values in the market object. Scrappa is not affiliated with Rentalcars.com. This is an unofficial API.

Rentalcars Flexible Prices API Documentation 1 credit/request

Endpoint

Request preview
GET
https://scrappa.co/api/rentalcars/flexible-prices
Auth header
x-api-key
Cost
1 credit/request
iata = BER start_date = 2026-12-01 end_date = 2026-12-10
Response preview
200 OK
{
    "meta": {
        "attempts": 1,
        "duration_ms": 2,
        "endpoint_family": "flexible_prices"
    },
    "prices": [
        {
            "currency": "EUR",
            "pickup_date": "2026-11-20",
            "dropoff_date": "2026-11-23",
            "predicted_price": 72.39
        },
        {
...

Parameters

Start with the required fields, then add optional filters only when your use case needs them.

Runnable path

3 required parameters needed before sending a request.

4 optional filters available.

iata string Required

Airport code with 3 letters. Example: BER.

Example value BER
start_date string Required

First pickup date in Y-m-d format.

Example value 2026-12-01
end_date string Required

Last pickup date in Y-m-d format.

Example value 2026-12-10
rental_days integer Optional

Length of the rental, from 1 to 30 days. Default: 3.

Example value 10
language string Optional

Language code. Default: en.

Example value en
cor string Optional

Country of residence as a 2-letter code. Default: gb.

Example value example
currency string Optional

Currency code for prices. Default: EUR.

Example value USD

Response Schema

Example response fields are illustrative; inspect the JSON before integrating.

Example response fields

Scan these fields before integrating.

meta prices search_parameters

Common prices fields

currency pickup_date dropoff_date predicted_price
JSON Response
200 OK
{
    "meta": {
        "attempts": 1,
        "duration_ms": 2,
        "endpoint_family": "flexible_prices"
    },
    "prices": [
        {
            "currency": "EUR",
            "pickup_date": "2026-11-20",
            "dropoff_date": "2026-11-23",
            "predicted_price": 72.39
        },
        {
            "currency": "EUR",
            "pickup_date": "2026-11-27",
            "dropoff_date": "2026-11-30",
            "predicted_price": 72.69
        },
        {
            "currency": "EUR",
            "pickup_date": "2026-11-28",
            "dropoff_date": "2026-12-01",
            "predicted_price": 75.99
        }
    ],
    "search_parameters": {
        "iata": "BER",
        "engine": "rentalcars_flexible_prices",
        "market": "gb",
        "currency": "EUR",
        "end_date": "2026-11-08",
        "start_date": "2026-10-29",
        "rental_days": 3
    }
}

Errors

Handle these documented responses before retrying or showing customer-facing failures.

422

Validation Error

A parameter is missing or invalid. No request is made upstream. Not billed.

{
    "errors": {
        "pickup_location": [
            "A pick-up location is required: an airport IATA code or \"latitude,longitude\"."
        ]
    },
    "message": "A pick-up location is required: an airport IATA code or \"latitude,longitude\"."
}
422

Request Rejected

Rentalcars rejected the search values, for example a filter value that is not in available_filters. Not billed.

{
    "meta": {
        "attempts": 1,
        "billable": false,
        "retryable": false,
        "duration_ms": 900,
        "endpoint_family": "flexible_prices"
    },
    "error": {
        "code": "rentalcars_request_rejected",
        "message": "Rentalcars rejected the request. Check the parameters."
    }
}
503

Rentalcars Temporarily Unavailable

Rentalcars did not answer in time. Retry after a short pause. Other 503 codes start with rentalcars_ too, for example rentalcars_invalid_response. Not billed.

{
    "meta": {
        "attempts": 1,
        "billable": false,
        "retryable": true,
        "duration_ms": 900,
        "endpoint_family": "flexible_prices"
    },
    "error": {
        "code": "rentalcars_upstream_unavailable",
        "message": "Rentalcars is temporarily unavailable. Please retry."
    }
}

Generate Code with AI

Copy a ready-made prompt with all the endpoint details, parameters, and example responses. Paste it into ChatGPT, Claude, or any AI assistant to instantly generate working code.

Try It Live

Test this endpoint in our interactive playground with real data.