Paintbase API
https://api.paintbase.app
Authentication
Authorization: Bearer <api_key>Endpoints
GET /v1/test
Used to test your api key.
GET /v1/vehicle/:regno/:country
Lookup vehicle data by registration number and country.
countrymust be one of:SE,NL,NO
Response 200 OK
{
"display_name": "string",
"vin": "string",
"make": "string",
"model": "string",
"color_code": "string",
"year": "string"
}Rate limit response headers
X-RateLimit-LimitX-RateLimit-RemainingX-RateLimit-Reset
Errors
Common response codes:
400Invalid input (for example VIN length or country code)401Missing or invalid API key403Out of credits404Vehicle or route not found502Upstream provider unavailable
Example error response
{
"error": "Bad Gateway",
"message": "Failed to reach the upstream data provider. Please try again later."
}Test License Plates
Use these special registration numbers on GET /v1/vehicle/:regno/:country (any valid country code) to get deterministic hardcoded responses without hitting the upstream provider. Plates are case-insensitive.
| Plate | Scenario | Status | Delay | Response |
|---|---|---|---|---|
TEST001 | Citroën | 200 | — | Citroën C3, color KKN |
TEST002 | Vehicle not found | 404 | — | Empty body |
TEST003 | Sparse data | 200 | — | Only make: "Toyota", all other fields null |
TEST004 | Compound make | 200 | — | Mercedes-Benz E 220 D, color 197 |
TEST005 | Slow response | 200 | 25 s | Volvo V60, color 717 |
TEST006 | Upstream server error | 500 | — | Empty body |
Example
GET /v1/vehicle/TEST001/SE
Authorization: Bearer <api_key>{
"display_name": "Citroen C3",
"vin": "VF7SAHMZ0EW512345",
"make": "Citroën",
"model": "C3",
"color_code": "KKN (Elixir red)",
"year": "2020"
}Last updated on