Skip to Content

PistonHeads Data Parser & API

PistonHeads is the UK’s enthusiast and classic-car portal — owned by CarGurus — and Carapis can extract its specialist used, classic and performance car listings through one REST API. Its enthusiast and classic focus surfaces vehicles you will not find on mainstream portals, and Carapis can serve them without you building a scraper.

On request — not in the live feed today. We do not continuously crawl PistonHeads right now. Activation takes 2–3 weeks of engineering and is quoted per source, because each one ships with dedicated proxies, anti-bot tuning and ongoing maintenance. Ask us to add it.

CountryUK
TypePortal
OwnerCarGurus
Vehicle typesused, classic, dealer
Monthly visitsmid
Active listingsmid (enthusiast/classic)
API accessNo public API (parse-only)
Parse priority★★☆☆☆
Official sitewww.pistonheads.com

What is PistonHeads?

PistonHeads is a UK car community and marketplace owned by CarGurus, known for its enthusiast, performance and classic-car focus. Its classifieds carry used and classic vehicles from both private sellers and dealers, making it a specialist source for the higher-end and collectible segments of the UK market.

Market Position

PistonHeads sits mid-traffic but holds a distinctive niche: it is the UK’s enthusiast and classic-car portal, owned by CarGurus. Where mainstream portals focus on volume used cars, PistonHeads surfaces performance and collectible vehicles — a complementary dataset valuable for the specialist and classic-car segments rather than mass-market supply.

What the API returns

Response schema

Indicative — this is the shape, not a guarantee. Every source returns the same structure, so what you build against does not change when you add one. Which fields carry a value depends on the source and on the individual listing: a site that does not publish mileage returns null there, and PistonHeads is no exception.

List — GET /apix/api/vehicles/ — returns 30 fields per vehicle:

  • idstring
  • source_codestring
  • brand_namestring
  • brand_slugstring
  • model_namestring
  • model_slugstring
  • trimstring
  • yearinteger
  • price_usdinteger
  • mileageinteger
  • fuel_typeFuelTypeEnum
  • transmissionTransmissionEnum
  • body_typeBodyTypeEnum
  • colorColorEnum
  • seller_typeSellerTypeEnum
  • regionstring
  • source_locationobject
  • has_accidentboolean
  • is_new_vehicleboolean
  • is_verifiedboolean
  • statusVehicleStatusEnum
  • is_availableboolean
  • first_seen_atstring
  • last_seen_atstring
  • thumbVehiclePhoto
  • photosarray
  • photos_countinteger
  • has_valuationboolean
  • has_llm_analysisboolean
  • analysisobject

Detail — GET /apix/api/vehicles/{id}/ — adds 23 more:

  • generationstring
  • price_originalstring
  • price_original_currencystring
  • original_msrpstring
  • engine_ccinteger
  • seat_countinteger
  • drive_typeDriveTypeEnum
  • has_simple_repairboolean
  • has_recallboolean
  • recall_fulfilledboolean
  • warranty_typestring
  • inspection_passedboolean
  • owner_countinteger
  • is_undervaluedboolean
  • valuation_scorenumber
  • featuresarray
  • descriptionstring
  • listing_urlstring
  • listing_idstring
  • vinstring
  • vehicle_nostring
  • availability_checked_atstring
  • status_changed_atstring

Abbreviated example:

{
  "id": "0193f2c1-...",
  "source_code": "encar",
  "brand_name": "BMW",
  "model_name": "320i",
  "trim": "M Sport",
  "year": 2021,
  "price_usd": 28400,
  "price_original": "38900000",
  "price_original_currency": "KRW",
  "mileage": 45000,
  "fuel_type": "gasoline",
  "transmission": "automatic",
  "has_accident": false,
  "listing_url": "https://...",
  "photos": [{ "url": "https://cdn.carapis.com/..." }],
  "first_seen_at": "2026-09-28T11:04:22Z",
  "is_available": true
}

Which sources you can actually query is answered by GET /apix/api/sources/ with your API key — it is the list your account can pull today, and it is the one to trust over any page on this site.

The enthusiast and classic focus makes PistonHeads valuable for the specialist and collectible UK segments, distinct from mainstream used-car supply.

API Quick Start

import requests resp = requests.get( "https://api.carapis.com/v2/listings", params={"source": "pistonheads", "limit": 20}, headers={"Authorization": f"Bearer {API_KEY}"}, ) for car in resp.json()["results"]: print(car["make"], car["model"], car["year"], car["price"])

Get an API key at my.carapis.com  and see the full API reference. Pricing is on the pricing page .

Use Cases

  • Market research — track the UK enthusiast and classic-car segment. See market research.
  • Pricing intelligence — specialist and collectible pricing for dealers.
  • Import / export — source UK performance and classic vehicles remotely. See import & export.

Frequently asked questions