AutoScout24 API: coches de segunda mano de autoscout24.es en JSON
Aquí llega en JSON lo mismo que ve un comprador en autoscout24.es: marca, modelo, versión, kilometraje, fecha de matriculación, precio, concesionario o particular y dónde está el coche. No sirve para publicar anuncios ni para gestionar el stock de un concesionario; es el lado del comprador, consultado en directo. Lo que la hace útil para analizar precios es un dato que el portal ya calcula: en qué tramo de su propia escala cae cada anuncio.
Endpoints
| endpoint | Qué devuelve | Obligatorios |
|---|---|---|
| search | Búsqueda paginada (20 por página) por marca, modelo y filtros: precio, año de matriculación, kilómetros, combustible, cambio, carrocería, potencia, concesionario o particular, código postal y radio. Cada fila trae la valoración de precio del portal y la marca super_deal. | todos opcionales |
| listing | La ficha entera de un anuncio a partir de la url o la ruta que devuelve search: descripción, precio en número, la mediana y los tramos de la valoración de precio, si el IVA es deducible, garantía, fotos y el vendedor con su horario. | todos opcionales |
| makes | Todas las marcas con su id y su slug. | todos opcionales |
| models | Modelos, grupos y líneas de modelo de una marca, con los valores exactos que acepta search. | make |
| filter_options | Las dimensiones de filtro disponibles (combustible, carrocería, cambio…) y sus códigos. | todos opcionales |
| seller_listings | El stock de un concesionario o de un particular por su número de cliente (cid), que aparece en el bloque del vendedor de cada anuncio. | cid |
| browse_links | El mapa de enlaces del buscador: ciudades, carrocerías, líneas de modelo y modelos más buscados. | todos opcionales |
Cada llamada se cobra en créditos. Las llamadas fallidas y bloqueadas son gratuitas.
Ejemplo que funciona
En la búsqueda, el precio llega como texto ('€ 13.990') y la valoración como un número suelto. Para saber qué significa ese 1 hay que pedir listing: en este León 2.0 TDI de Leganés, el portal fijaba la mediana en 15.300 € y el tramo 1 iba de 12.901 a 14.100 €. Es la escala de AutoScout24, no una tasación nuestra.
curl -X POST https://api.reefapi.com/autoscout24/v1/search \
-H "x-api-key: TU_CLAVE" \
-H "content-type: application/json" \
-d '{"country": "es", "make": "seat", "model": "leon", "year_min": 2019, "price_max": 20000}'{
"ok": true,
"data": {
"total": 2748,
"total_pages": 138,
"listings": [
...
{
"id": "38143013-d231-4f06-b418-6c120fb695f2",
"make": "SEAT",
"model": "Leon",
"model_version": "2.0 TDI 85kW S&S Style Go",
"fuel": "Diésel",
"transmission": "manual",
"mileage_km": "98.401 km",
"first_registration": "04-2022",
"price_formatted": "€ 13.990",
"price_evaluation": 1,
"location": { "countryCode": "ES", "zip": "28919", "city": "LEGANES" },
"seller": { "type": "Dealer", "companyName": "AUTOS MADRID LEGÁNES" }
},
...
]
},
"meta": { "record_count": 20, "cache_hit": false, "mode": "live" }
}Antes de montar tu propio scraper de AutoScout24
El fallo más caro de un scraper casero de AutoScout24 no es un bloqueo, es un filtro que no filtra. Lo medimos en octubre de 2026 en las ediciones alemana, austriaca e italiana: si la clave del parámetro no es la que el portal espera, la web la ignora sin avisar y devuelve la marca entera. Pedimos solo Golf y llegaron Polo y Taigo; pedimos solo particulares y las 20 filas eran de concesionario. Con un valor desconocido de combustible o carrocería pasa lo mismo, y con ciertos criterios de orden la respuesta es cero.
Además, cada edición nacional tiene su propia taxonomía de modelos: el mismo nombre no abarca lo mismo en el portal alemán que en el italiano. Nuestro motor compara la respuesta con lo que el propio portal dice haber aplicado y, si no coincide, devuelve INVALID_PARAM en lugar de una lista sin filtrar.
Para sacar una muestra una vez, tu script vale. Para un seguimiento de precios que corre cada semana, lo que cuesta es descubrir tarde que llevabas meses guardando datos sin filtrar.
Límites y notas honestas
- No es la API oficial de AutoScout24 ni existe ningún acuerdo con AutoScout24.
- country elige la edición del portal; para el mercado español es "es". El valor por defecto es "de", así que sin él la búsqueda va a la edición alemana.
- En la búsqueda, precio y kilómetros vienen como texto formateado. El precio en número, la mediana y los tramos de valoración solo están en listing.
- model_version se entrega tal como lo publica el portal y a veces lleva entidades HTML sin decodificar ('S&S' en lugar de 'S&S').
- En la edición española, listing solo con id devuelve 404 (lo comprobamos el 24 de octubre de 2026); pásale la url o la ruta del anuncio, que sí funcionan.
- Con zip pero sin radius, el portal aplica su radio por defecto de 200 km.
- No hay caché: cada llamada consulta autoscout24.es en ese mismo momento.