AutoTrader API
The AutoTrader UK API returns used- and new-car listings from one of the UK's largest car marketplaces as clean JSON.
🤖 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 search endpoint returns listings with advert id, title, price, RRP, make, model, year, mileage, location, seller type and images, and you can pull a listing_detail. It is built for automotive pricing, dealer tools and UK car-market analytics that need AutoTrader data without a scraper. One ReefAPI key, one shared credit pool, the standard envelope.
Real request and response JSON
Captured from the indexed primary action, search, on .
{
"method": "POST",
"url": "https://api.reefapi.com/autotrader/v1/search",
"headers": {
"x-api-key": "$REEF_KEY",
"content-type": "application/json"
},
"body": {
"make": "BMW",
"model": "3 Series",
"postcode": "SW1A 1AA",
"market": "uk"
}
}{
"ok": true,
"meta": {
"api": "autotrader",
"endpoint": "search",
"mode": "live",
"latency_ms": 1804.7,
"record_count": 20,
"bytes": 22640,
"cache_hit": false,
"market": "uk",
"page": 1,
"page_count": 351,
"total_results": 7005,
"postcode": "SW1A 1AA",
"postcode_defaulted": false
},
"data": {
"market": "uk",
"listings": [
{
"advert_id": "[redacted-phone]",
"title": "BMW 3 Series",
"subtitle": "2.0 320i M Sport Business Edition Euro 5 4dr",
"attention_grabber": "Part X to clear-runs and drive",
"price": 2495,
"price_formatted": "£2,495",
"currency": "GBP",
"rrp": null,
"discount": null,
"monthly_finance": null,
"make": "BMW",
"model": "3 Series",
"year": 2010,
"condition": "used",
"vehicle_category": "car",
"location": "Sandy (45 miles)",
"location_type": "STANDARD",
"distance": {
"value": 45,
"unit": null
},
"seller_type": "TRADE",
"dealer_rating": 4.7,
"dealer_link": "https://www.autotrader.co.uk/dealers/bedfordshire/sandy/one-class-auto-limited-10037829?channel=cars",
"image_count": 20,
"images": [
"https://m.atcdn.co.uk/a/media/w800h600/191c5e89c9f44ea5bc9b312f14cb5b2b.jpg",
"https://m.atcdn.co.uk/a/media/w800h600/8e8b9b3e9bc54b3bae380cda40f9f031.jpg",
"https://m.atcdn.co.uk/a/media/w800h600/7e8520e3cdb94d99855a27dfcb0f03d9.jpg"
],
"badges": [
"95,000 miles",
"2010 (10 reg)"
],
"url": "https://www.autotrader.co.uk/car-details/[redacted-phone]?sort=relevance&twcs=true&searchId="
},
{
"advert_id": "[redacted-phone]",
"title": "BMW 3 Series",
"subtitle": "2.0 318i ES Auto Euro 4 4dr",
"attention_grabber": "BARGAIN | READ DESCRIPTION",
"price": 500,
"price_formatted": "£500",
"currency": "GBP",
"rrp": null,
"discount": null,
"monthly_finance": null,
"make": "BMW",
"model": "3 Series",
"year": 2007,
"condition": "used",
"vehicle_category": "car",
"location": "Kingston Upon Thames (10 miles)",
"location_type": "STANDARD",
"distance": {
"value": 10,
"unit": null
},
"seller_type": "TRADE",
"dealer_rating": null,
"dealer_link": null,
"image_count": 9,
"images": [
"https://m.atcdn.co.uk/a/media/w800h600/23d912ff41e74a25a[redacted-phone]a3d2d6.jpg",
"https://m.atcdn.co.uk/a/media/w800h600/819900dee1474f919d96c6959d63dfd3.jpg",
"https://m.atcdn.co.uk/a/media/w800h600/f1782f57453343ba95a3f3821ac04381.jpg"
],
"badges": [
"105,000 miles",
"2007 (57 reg)"
],
"url": "https://www.autotrader.co.uk/car-details/[redacted-phone]?sort=relevance&searchId="
},
{
"advert_id": "[redacted-phone]",
"title": "BMW 3 Series",
"subtitle": "2.2 320i SE 4dr",
"attention_grabber": null,
"price": 990,
"price_formatted": "£990",
"currency": "GBP",
"rrp": null,
"discount": null,
"monthly_finance": null,
"make": "BMW",
"model": "3 Series",
"year": 2002,
"condition": "used",
"vehicle_category": "car",
"location": "Croydon (8 miles)",
"location_type": "STANDARD",
"distance": {
"value": 8,
"unit": null
},
"seller_type": "TRADE",
"dealer_rating": 3.7,
"dealer_link": "https://www.autotrader.co.uk/dealers/surrey/croydon/dvp-car-sales-ltd-10008582?channel=cars",
"image_count": 25,
"images": [
"https://m.atcdn.co.uk/a/media/w800h600/47cc0f92063e445795e2abc861e69b18.jpg",
"https://m.atcdn.co.uk/a/media/w800h600/84f8bd1584d44c29a0732b07286571c6.jpg",
"https://m.atcdn.co.uk/a/media/w800h600/d1c6568f45cd4460acb50ed42f26aa87.jpg"
],
"badges": [
"157,000 miles",
"2002 (02 reg)"
],
"url": "https://www.autotrader.co.uk/car-details/[redacted-phone]?sort=relevance&twcs=true&searchId="
}
],
"page_info": {
"page": 1,
"page_count": 351,
"total_results": 7005,
"search_id": ""
}
}
}What the AutoTrader API does
| Action | Description | Concrete use case | Key params |
|---|---|---|---|
| search | UK car listings (make/model + filters, paginated); postcode defaults to a UK centroid if omitted | Pricing teams call search to get uK car listings (make/model + filters, paginated); postcode defaults to a UK centroid if omitted. | make, model, postcode, min_price, max_price, ... |
| listing_detail | Full advert (price+priceIndicator+deviation, mileage, full spec [fuel/trans/body/doors/seats/engine], description, images[], dealer+reviews+address) | Marketplace operators call listing_detail to get full advert (price+priceIndicator+deviation, mileage, full spec [fuel/trans/body/doors/seats/…. | id, postcode, market |
Call search from your stack
curl -X POST https://api.reefapi.com/autotrader/v1/search \
-H "x-api-key: $REEF_KEY" \
-H "content-type: application/json" \
-d '{"make":"BMW","model":"3 Series","postcode":"SW1A 1AA","market":"uk"}'import requests
r = requests.post(
"https://api.reefapi.com/autotrader/v1/search",
headers={"x-api-key": REEF_KEY},
json={
"make": "BMW",
"model": "3 Series",
"postcode": "SW1A 1AA",
"market": "uk"
},
)
print(r.json()["data"])const res = await fetch("https://api.reefapi.com/autotrader/v1/search", {
method: "POST",
headers: {
"x-api-key": process.env.REEF_KEY,
"content-type": "application/json",
},
body: JSON.stringify({
"make": "BMW",
"model": "3 Series",
"postcode": "SW1A 1AA",
"market": "uk"
}),
});
const { ok, data, meta, error } = await res.json();Ask your MCP-connected assistant: call reefapi.autotrader.search with {"make":"BMW","model":"3 Series","postcode":"SW1A 1AA","market":"uk"}.Who uses this API and why
- Automotive pricing tools call search to track used-car prices by make, model and mileage.
- Dealer-intelligence products filter search by seller type to monitor trade vs private listings.
- Market analysts use listing_detail to study price-vs-RRP and depreciation across the UK market.
Questions developers ask before integrating
What is the AutoTrader API?
AutoTrader API is a ReefAPI endpoint group for new and used car listings with prices and specs. It returns live JSON through POST requests under /autotrader/v1.
Is the AutoTrader API free to try?
Yes. ReefAPI starts with 1,000 free credits, no card required. AutoTrader calls use the same shared credit balance as every other ReefAPI engine.
Do I need a AutoTrader login or account?
No login to AutoTrader 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 AutoTrader data?
The page example is captured from a live search call, and production requests fetch live data through ReefAPI rather than a static sample.
How many credits does the AutoTrader API use?
AutoTrader actions currently cost 1 credit per successful call. Failed or blocked calls are free, and all APIs draw from one credit pool.
Can I call AutoTrader from an AI assistant or MCP client?
Yes. Connect ReefAPI once through MCP and your assistant can call autotrader actions with the same key, credit pool and JSON envelope used by normal REST requests.
Is the AutoTrader API a AutoTrader scraper?
It is the managed alternative to a DIY AutoTrader 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 new and used car listings with prices and specs back as clean JSON.
Why does my AutoTrader scraper keep getting blocked?
Most AutoTrader 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.