# AutoScout24 API — search and view used and new car listings across Europe on autoscout24 (price, mileage, specs, dealer info and deal ratings)

> Paginated car search by make (+ model/filters) across EU TLDs; deal signals priceEvaluation+superDeal
> ReefAPI engine `autoscout24` · 7 endpoints · clean JSON, no scraping or browsers to manage.

## How to call
- **Endpoint:** `POST https://api.reefapi.com/autoscout24/v1/<action>` with a JSON body.
- **Auth:** header `x-api-key: <YOUR_REEFAPI_KEY>` — create one free (1,000 credits, no card): https://reefapi.com/signup
- **Response (every call):** `{ ok: boolean, data: ..., meta: { record_count, credits, ... }, error: { code, message } }` — branch on `ok`. Failed or blocked calls are free.
- **One key + one shared credit pool** across every ReefAPI API. Per-call credits are listed on each endpoint below.
- **Use it from an AI agent (MCP):** connect `https://api.reefapi.com/mcp` (remote streamable-http, `Authorization: Bearer <key>`) and your assistant can call these actions directly.

## Endpoints

### POST /autoscout24/v1/search — 1 credit
Paginated car search by make (+ model/filters) across EU TLDs; deal signals priceEvaluation+superDeal

**Parameters:**
- `make` (string, optional) — Vehicle make/brand slug (e.g. bmw, audi, volkswagen). Empty = all makes.
- `model` (string, optional) — Model slug within the make (discover via the models action).
- `model_group` (string, optional) — Model-group/line slug (broader than model).
- `country` (enum, optional, default "de") — AutoScout24 country edition (TLD) — each is a separate marketplace. [one of: de, it, fr, nl, es, at, be, ch, pl, ro, hr, lu]
- `page` (integer, optional, default 1) — Result page (1-based). Page forward with meta.next_page.
- `sort` (enum, optional) — Sort field. Common AS24 keys shown; others accepted. [one of: price, age, mileage, power]
- `desc` (boolean, optional) — Sort descending (true) instead of ascending.
- `price_min` (integer, optional) — Minimum price (local currency).
- `price_max` (integer, optional) — Maximum price (local currency).
- `year_min` (integer, optional) — Earliest first-registration year.
- `year_max` (integer, optional) — Latest first-registration year.
- `mileage_min` (integer, optional) — Minimum mileage (km).
- `mileage_max` (integer, optional) — Maximum mileage (km).
- `fuel` (enum, optional) — Fuel type (AS24 code). B=petrol, D=diesel, E=electric, 2=LPG, 3=CNG. [one of: B, D, E, 2, 3]
- `transmission` (enum, optional) — Gearbox. A=automatic, M=manual. [one of: A, M]
- `body_type` (string, optional) — Body type (AS24 code — discover via filter_options).
- `zip` (string, optional) — Postal code center for a radius search.
- `radius` (integer, optional) — Search radius (km) around zip.
- `power_min` (integer, optional) — Minimum engine power (kW).
- `power_max` (integer, optional) — Maximum engine power (kW).
- `super_deal` (boolean, optional) — Only listings flagged superDeal (priced well below market).
- `seller_type` (enum, optional) — Seller type. D=dealer, P=private. [one of: D, P]
- `offer_type` (string, optional) — Offer type (AS24 code, e.g. U=used, N=new, J=annual car).

**Returns:** listings[] (priceEvaluation + superDeal per card), page, total, total_pages, has_more, next_page

**Example request body:**
```json
{
  "make": "bmw",
  "country": "de"
}
```

### POST /autoscout24/v1/listing — 1 credit
Full listing detail by url/path or id (description, prices, vehicle, images, seller, leasing, warranty)

**Parameters:**
- `url` (string, optional) — Full AS24 listing URL or site-relative path (from a search result's url/path).
- `path` (string, optional) — Site-relative listing path (alternative to url).
- `id` (string, optional) — AS24 listing id (alternative to url/path).
- `country` (enum, optional, default "de") — AutoScout24 country edition (TLD) — each is a separate marketplace. [one of: de, it, fr, nl, es, at, be, ch, pl, ro, hr, lu]

**Returns:** listing{} — full detail (vehicle, prices, equipment, seller, images, leasing, warranty)

**Example request body:**
```json
{
  "url": "/angebote/bmw-318-318i-touring-attiva-benzin-cat_ma13mo1640-fb7acb22-cce5-4ab1-8340-7dbe9160bca9",
  "country": "de"
}
```

### POST /autoscout24/v1/makes — 1 credit
Vehicle makes taxonomy from search hub page

**Parameters:**
- `country` (enum, optional, default "de") — AutoScout24 country edition (TLD) — each is a separate marketplace. [one of: de, it, fr, nl, es, at, be, ch, pl, ro, hr, lu]

**Returns:** makes[] — {id, name, slug} for every supported brand

### POST /autoscout24/v1/models — 1 credit
Models taxonomy for a make (query-param filters — path-segment /lst/make/model returns 404)

**Parameters:**
- `make` (string, required) — Vehicle make/brand slug to list models for (e.g. bmw).
- `country` (enum, optional, default "de") — AutoScout24 country edition (TLD) — each is a separate marketplace. [one of: de, it, fr, nl, es, at, be, ch, pl, ro, hr, lu]

**Returns:** models[], model_groups[], model_lines[] (each {id, name, slug}) for the make

**Example request body:**
```json
{
  "make": "bmw"
}
```

### POST /autoscout24/v1/filter_options — 1 credit
Available filter dimensions (fuel, body, transmission, etc.) from taxonomy blob

**Parameters:**
- `make` (string, optional) — Optional make to scope the filter options to.
- `country` (enum, optional, default "de") — AutoScout24 country edition (TLD) — each is a separate marketplace. [one of: de, it, fr, nl, es, at, be, ch, pl, ro, hr, lu]

**Returns:** filters{} — available filter dimensions and their option codes

### POST /autoscout24/v1/seller_listings — 1 credit
Listings for a dealer/private seller by customer id (cid)

**Parameters:**
- `cid` (string, required) — AS24 dealer/seller customer id (cid) — from a listing's seller block.
- `country` (enum, optional, default "de") — AutoScout24 country edition (TLD) — each is a separate marketplace. [one of: de, it, fr, nl, es, at, be, ch, pl, ro, hr, lu]
- `page` (integer, optional, default 1) — Result page (1-based). Page forward with meta.next_page.
- `seller_id` (string, optional) — Alias for cid (accepted interchangeably).

**Returns:** listings[] for this seller, page, total, total_pages, has_more, next_page

### POST /autoscout24/v1/browse_links — 1 credit
SEO browse graph: cities, body types, model lines, top models (interlinking from search page)

**Parameters:**
- `make` (string, optional) — Optional make to scope the browse graph to.
- `country` (enum, optional, default "de") — AutoScout24 country edition (TLD) — each is a separate marketplace. [one of: de, it, fr, nl, es, at, be, ch, pl, ro, hr, lu]

**Returns:** groups[] — SEO browse graph (cities, body types, model lines, top models)

## More
- Try it live, no code: https://reefapi.com/playground?engine=autoscout24
- Human docs page: https://reefapi.com/docs/autoscout24
- Every ReefAPI API in one file (for your AI): https://reefapi.com/llms-full.txt
