API Documentation
Everything you need to integrate with the DealerPricing API
Quick Start
1. Get your API key
Sign up for an account and create an API key from the Keys page.
2. Make your first request
curl -X POST https://www.dealerpricing.co.uk/api/v1/vehicle/decode \
-H "X-API-Key: your_api_key_here" \
-H "Content-Type: application/json" \
-d '{"vrm": "AB12CDE"}'Every endpoint takes vrm (registration). The vehicle data endpoints — decode, spec, valuation and provenance — also accept vin (chassis number, 5 to 17 characters) in its place. Tax & MOT, the market endpoints and pricing insights need a registration; sending a VIN there returns a 400 with the endpoints that accept one. The rule is the same for sandbox and live keys.
3. Handle the response
{
"success": true,
"data": {
"vehicle": {
"vrm": "AB12CDE",
"make": "BMW",
"model": "3 Series",
...
}
},
"meta": {
"request_id": "req_abc123",
"cost_pence": 16,
"balance_pence": 984,
"is_sandbox": false
}
}Authentication
All API requests must include your API key in the X-API-Key header.
X-API-Key: dp_live_your_api_key_here
dp_sandbox_ are free and answer only for the published test registrations below. Sandbox data may not be accurate and is for testing purposes only. Every sandbox response carries meta.sandbox: true and a notice saying so, and it must never be shown to end users or used to make decisions. Any other registration returns 404 SANDBOX_VRM_NOT_ALLOWED.Sandbox registrations
The complete set a sandbox key can query, grouped by the scenario each one exercises. The same list is available as JSON from GET /api/v1/sandbox/vrms (no key required). Market endpoints return the market snapshot taken the first time a plate was queried in the sandbox.
Loading sandbox registrations…
Rate Limits
| Limit | Live keys | Sandbox keys |
|---|---|---|
| Per second | 5 requests | 2 requests |
| Per minute | 100 requests | 30 requests |
| Per day, per key | 1,000 requests | 300 requests |
| Per day, all sandbox keys on the account | — | 1,000 requests |
Rate limit headers are included in every response: X-RateLimit-Remaining-*. All packages can request custom limits.
API Endpoints
Base URL: https://www.dealerpricing.co.uk/api
Vehicle Data
/v1/vehicle/decode/v1/vehicle/tax-mot/v1/vehicle/valuation/v1/vehicle/spec/v1/vehicle/provenanceMarket Data
/v1/market/active/v1/market/sold/v1/market/insightsAnalysis
/v1/pricing/insightsError Codes
| Code | HTTP Status | Description |
|---|---|---|
| INVALID_API_KEY | 401 | API key is invalid or not found |
| INSUFFICIENT_BALANCE | 402 | Account balance too low |
| RATE_LIMIT_EXCEEDED | 429 | Too many requests |
| INVALID_VRM | 400 | VRM format is invalid |
| VEHICLE_NOT_FOUND | 404 | No data found for this VRM |
| UPSTREAM_ERROR | 502 | A data source did not respond — safe to retry |
You only pay for successful lookups. A request that ends in a 404, 500 or 502 is not charged, and the error response carries the request_id and your current balance_pence.