Specs, road tax, live market valuations and plate dossiers for the Cyprus market — one key, one REST API, powered by the engine behind AllCars.cy.
Try the playground Interactive docs$ curl -H "Authorization: Bearer $KEY" "https://api.allcars.cy/v1/plate/KXX000"
{
"plate": "KXX000",
"vehicle": {
"make": "BMW", "model": "320d", "year": 2019,
"fuel": "diesel", "co2_gkm": 117,
"annual_road_tax": 59
},
"value": { "estimate_eur": 21400, "confidence": "high" },
"history": [ … 3 market sightings … ]
}
General car-data APIs stop at global spec sheets. This one is built for one market — Cyprus — and goes all the way to what a specific car is worth here, today.
Local registration eras, taxonomies and plate formats modelled correctly, not approximated.
13-dimension similarity engine over the live market — with depreciation projections.
Era + CO₂ + engine resolved per car, including the alternate-method comparison.
Identity, specs, history and value from one plate — privacy-scrubbed by construction.
Curated factory specs plus technical blueprint JSON and rendered SVGs.
Bearer keys, transparent /v1/usage, OpenAPI schema, additive-only v1.
Authenticate with Authorization: Bearer or X-API-Key. JSON in, JSON out, one flat error envelope.
# factory specs
$ curl -H "Authorization: Bearer $KEY" "https://api.allcars.cy/v1/specs?make=toyota&model=corolla&year=2019"
# what is it worth on the Cyprus market right now?
$ curl -X POST -H "Authorization: Bearer $KEY" -H "Content-Type: application/json" -d '{"make":"toyota","model":"corolla","year":2019,"mileage_km":85000}' "https://api.allcars.cy/v1/value"
# your quota, any time
$ curl -H "Authorization: Bearer $KEY" "https://api.allcars.cy/v1/usage"
Try them with real sample data in the playground; full request/response shapes in the interactive docs and OpenAPI schema.
| Endpoint | Method | What you get | Needs |
|---|---|---|---|
/v1/specs | GET | Factory specs by make/model | make, model (+ year, cc, fuel, body) |
/v1/tax | GET | Cyprus road tax — era-aware, method + CO₂ | make, model (+ year, fuel, plate, body) |
/v1/value | POST | Live market valuation + comparables | make, model, year, fuel_type, mileage_km (+ engine, body, gearbox, city) |
/v1/deal | POST | Deal score 0–100 + rating for an asking price (spec-based: price vs comparable market) | make, model, year, fuel_type, mileage_km, price |
/v1/listing/{id}/score | GET | Full deal score for a real listing — value×quality split + all 15 sub-scores (gearbox, colour, photos, seller…) | bazaraki listing id |
/v1/depreciation | GET | Value-over-time curve from historical market data | make, model, year |
/v1/plate/{plate} | GET | Vehicle dossier by plate (PII-scrubbed) | plate |
/v1/blueprint.json|.svg | GET | Blueprint data / rendered SVG | make, model (+ year, fuel) |
/v1/catalog/* | GET | Makes → models → generations → variants | — |
/v1/usage | GET | Your live monthly quota | — |
Which deal endpoint? Use /v1/deal to judge an asking price for an arbitrary spec (engine-aware price-vs-market). When you have a real bazaraki listing, /v1/listing/{id}/score returns the full value×quality breakdown — gearbox, colour, photos, description, and seller signals a bare spec can’t carry.
Drop a live, on-brand SVG straight onto your own site with one <img> — no JS, no styling work. Pass ?key= in the URL (image tags can’t send headers).
<img src="https://api.allcars.cy/v1/widget/deal.svg?make=toyota&model=corolla&year=2019&fuel_type=petrol&mileage_km=85000&price=9900&key=ac_live_…">
| Widget | Method | Renders | Needs |
|---|---|---|---|
/v1/widget/deal.svg | GET | Deal-score gauge + over/under-market | make, model, year, fuel_type, mileage_km, price |
/v1/widget/value.svg | GET | Expected price + p20–p80 market band | make, model, year, fuel_type, mileage_km |
/v1/widget/depreciation.svg | GET | Self-drawing value-over-time chart | make, model, year |
/v1/widget/specs.svg | GET | Factory-specs card | make, model, year |
/v1/blueprint.svg | GET | Technical car blueprint (also ?key= embeddable) | make, model (+ year, fuel) |
No signup forms, no billing portals — access is handled personally. Message me on
Telegram (@itsnotalisher), tell me what you’re building, and you’ll get a key (ac_live_…,
shown exactly once, lives 90 days, can auto-renew) with a quota that fits your use case.