Overview

Public, read-only endpoints for locations, fleet, availability, and quotes.
Requests accept European dates (DD-MM-YYYY) via pick_up_date and delivery_date. Responses keep current field names as implemented (e.g. pickup_date / return_date in ISO).

Base URL
https://alfarentacar.ro
Agents & search engines can auto-discover this API via: Link: <https://alfarentacar.ro/.well-known/openapi.json>; rel="service-desc"
GET

/api/v1/locations

List fixed pickup/return locations.

Query params
Name Type Required Description
q string No Optional free-text filter
cURL
Copycurl -s https://alfarentacar.ro/api/v1/locations | jq .
Response (example)
Copy{
  "items": [
    {
      "id": "clj_airport",
      "name": "Cluj-Napoca International Airport",
      "iata_code": "CLJ",
      "address": {
        "street": "Str. Traian Vuia 149",
        "city": "Cluj-Napoca",
        "region": "Cluj",
        "postal_code": "400397",
        "country_code": "RO"
      },
      "timezone": "Europe/Bucharest"
    }
  ]
}
GET

/api/v1/cars

List car models; if dates are provided, includes computed total and availability hint.

Query params
Name Type Req Description
car_id string No Filter by model id
pick_up_date string DD-MM-YYYY No Pickup date
delivery_date string DD-MM-YYYY No Return date
category string No economy|compact|suv|minivan|premium
transmission string No manual|automatic
ac boolean No Air conditioning
cURL (with dates)
Copycurl -s "https://alfarentacar.ro/api/v1/cars?pick_up_date=03-11-2025&delivery_date=20-11-2025" | jq .
Response item (example)
Copy{
  "id": "40",
  "make": "Seat",
  "model": "Ibiza",
  "category": "economy",
  "year": null,
  "seats": null,
  "doors": null,
  "luggage_small": null,
  "luggage_large": null,
  "transmission": null,
  "ac": true,
  "fuel_type": null,
  "features": ["usb","abs","esp"],
  "images": [
    { "url": "https://alfarentacar.ro/uploads/cars/big/40-seat-ibiza-s1.webp", "alt": "Seat Ibiza exterior" }
  ],
  "lead_price": {
    "pickup_date": "2025-11-03",
    "return_date": "2025-11-20",
    "currency": "EUR",
    "price_per_day": 26,
    "total_price": 442,
    "availability_hint": "in_stock"
  },
  "jsonld": {
    "@context": "https://schema.org",
    "@type": "Car",
    "brand": "Seat",
    "model": "Ibiza"
  }
}
GET

/api/v1/cars/{car_id}

Get full details for one model.

cURL
Copycurl -s https://alfarentacar.ro/api/v1/cars/108 | jq .
Response (example)
Copy{
  "id":"108",
  "make":"VW",
  "model":"Passat",
  "year":null,
  "category":"premium",
  "category_label_ro":"Family | Business",
  "seats":null,
  "doors":null,
  "luggage_small":null,
  "luggage_large":null,
  "transmission":null,
  "ac":true,
  "fuel_type":null,
  "features":["bluetooth","abs","esp","parking_sensors"],
  "images":[
    {"url":"https://alfarentacar.ro/uploads/cars/big/108-vw-passat-b7-automat.webp","alt":"VW Passat exterior"}
  ],
  "description":"Here comes the car description",
  "included":["Asigurare RCA","Asistență rutieră 24/7","Kilometraj 200 km/zi"],
  "policies":{
    "mileage_policy":"200 km/zi incluse; 0.15 EUR/km după",
    "fuel_policy":"La fel ca la preluare",
    "deposit_amount":200,
    "age_requirement":"Șofer 21+ ani, permis 2+ ani",
    "cancellation_policy":"Gratuit până la 24h înainte de preluare",
    "terms_url":"https://alfarentacar.ro/termeni-si-conditii"
  },
  "base_price":{"currency":"EUR","price_per_day":35},
  "extras":[],
  "links":{
    "self":"https://alfarentacar.ro/api/v1/cars/108",
    "availability":"https://alfarentacar.ro/api/v1/availability?car_id=108",
    "quote":"https://alfarentacar.ro/api/v1/quote"
  },
  "jsonld":{
    "@context":"https://schema.org",
    "@type":"Car",
    "brand":"Volkswagen",
    "model":"Passat"
  }
}
GET

/api/v1/availability

Check precise availability for a model in a date range.

Query params
Name Type Req Description
car_id string Yes Model id
pick_up_date string DD-MM-YYYY Yes Pickup date
delivery_date string DD-MM-YYYY Yes Return date
cURL
Copycurl -s "https://alfarentacar.ro/api/v1/availability?car_id=108&pick_up_date=03-11-2025&delivery_date=20-11-2025" | jq .
Response (example)
Copy{
  "car_id": "108",
  "pickup_date": "2025-11-03",
  "return_date": "2025-11-20",
  "available": true,
  "remaining_units": 2,
  "notes": "Available to reserve",
  "jsonld": {
    "@context": "https://schema.org",
    "@type": "Offer",
    "itemOffered": { "@type": "Car", "brand": "Volkswagen", "model": "Passat" },
    "availability": "https://schema.org/InStock"
  }
}
POST

/api/v1/quote

Calculate final price for a rental. Extras are optional and priced per day.

Request body
Name Type Req Description
car_id string Yes Model id
pick_up_date string DD-MM-YYYY Yes Pickup date
delivery_date string DD-MM-YYYY Yes Return date
pickup_time string HH:MM No Optional
return_time string HH:MM No Optional
currency string No Default EUR
extras object (map) No e.g. {"gps":1,"child_seat":2}
cURL
Copycurl -s -X POST https://alfarentacar.ro/api/v1/quote 
  -H "Content-Type: application/json" 
  -d '{"car_id":"88","pick_up_date":"03-11-2025","delivery_date":"20-11-2025"}' | jq .
Response (example)
Copy{
  "car_id": "88",
  "pickup_date": "2025-11-03",
  "return_date": "2025-11-20",
  "rental_days": 17,
  "currency": "EUR",
  "price_per_day": 37,
  "base_total": 629,
  "extras_total": 0,
  "total_price": 629,
  "breakdown": [
    { "label": "Base", "detail": "37 × 17 zile / days", "amount": 629, "currency": "EUR" }
  ]
}
Error examples
{
  "error": "bad_request",
  "message": "car_id, pick_up_date and delivery_date are required (DD-MM-YYYY)."
}
{
  "error": "conflict",
  "message": "Car not available for the requested interval."
}

Contact & Terms

Support: office@alfarentacar.ro

Terms: https://alfarentacar.ro/termeni-si-conditii

The driving test is changing, and the license will be accessed directly from the phone

2026-07-31 20:54:24

The driving license goes digital, and the exam rules and sanctions change radically The European Union has adopted new driving licence regulations, bringing major changes for ...

Audi has officially launched the new Q9 2027. The largest SUV in the brands history starts at 108.400 euros

2026-07-30 20:14:00

Audi Officially Unveils the New Q9 (2027): The Largest SUV in the History of the German Brand The Ingolstadt-based company is redefining its top-of-the-range portfolio and is ...

BMW announces layoffs of 8.000 employees. Eliminates thousands of positions in administration and development by 2027

2026-07-30 02:25:17

Crisis in the German auto industry: BMW, Audi and Volkswagen cut tens of thousands of jobs MUNICH / BUCHAREST – The German auto industry, considered for decades the unstoppa...

Fastest growth in BMW history. 50.000 iX3 Neue Klasse models have already rolled off the assembly line

2026-07-28 17:35:23

Historic milestone in Debrecen: BMW has already produced 50,000 copies of the iX3 Neue Klasse The BMW plant in Debrecen, Hungary, has marked a remarkable achievement in the au...