---
title: "Decode a VIN"
method: GET
path: "/vin-decode/{vin}"
tags: ["VIN"]
---

# Decode a VIN

`GET /vin-decode/{vin}`

Decode a Vehicle Identification Number (VIN) to retrieve detailed vehicle specifications including make, model, fuel type, transmission, engine power, and registration date.

## Path parameters

- `vin` string, required

## Response `200`

Successfully decoded VIN

- VinDecodeResponse
  - `vin` string, required — The decoded VIN (uppercase)
  - `specifications` object, required
    - `make` string, nullable — Vehicle manufacturer
    - `model` string, nullable — Vehicle model
    - `fuel` string, nullable — Fuel type (petrol, diesel, electric, hybrid)
    - `transmission` string, nullable — Transmission type (manual, automatic)
    - `enginePower` integer, nullable — Engine power in kilowatts (kW). Null when unknown.
    - `enginePowerUnit` string, nullable — Unit for enginePower. Always "kW" when enginePower is present, otherwise null.
    - `bodyStyle` 'HATCHBACK' | 'CABRIOLET' | 'COMBI' | 'COUPE' | 'MPV' | 'PICK_UP' | 'SEDAN' | 'SUV' | 'VAN' | 'MOTORCYCLE' | 'TRUCK' | 'BUS' | 'OTHER', nullable — Vehicle body style. Null when unknown.
    - `drivetrain` 'FRONT_WHEEL_DRIVE' | 'REAR_WHEEL_DRIVE' | 'ALL_WHEEL_DRIVE' | 'OTHER', nullable — Drivetrain type. Null when unknown.
    - `color` 'BEIGE' | 'WHITE' | 'BLACK' | 'RED' | 'PURPLE' | 'BROWN' | 'BLUE' | 'ORANGE' | 'PINK' | 'SILVER' | 'GRAY' | 'BURGUNDY' | 'GREEN' | 'YELLOW' | 'OTHER', nullable — Exterior color. Null when unknown.
    - `registrationDate` string, nullable — First registration date (ISO 8601). Null when unknown.
  - `manufacturer` object, nullable — Manufacturer details derived from the World Manufacturer Identifier (first 3 VIN characters).
    - `name` string, nullable — Manufacturer name
    - `region` string, nullable — Manufacturing region
    - `country` string, nullable — Manufacturing country
  - `features` object[], required — List of vehicle features. Each feature has a name and a category.
    - `name` string — Feature identifier
    - `category` 'SAFETY_SYSTEM' | 'ASSISTANCE_SYSTEM' | 'VEHICLE_SECURITY' | 'INTERIOR_FEATURE', nullable — Feature category
  - `plateNumber` object, nullable
    - `country` string, nullable
    - `plateNumber` string, nullable

## Other responses

- `400` — Invalid VIN
- `403` — Invalid or missing API key, suspended account, or inactive subscription
- `404` — VIN not found in database
- `429` — Monthly quota exhausted or per-minute rate limit exceeded. Quota responses carry resetDate; rate-limit responses carry a Retry-After header.

## Changes

- **2026-08-10** `cf1d4e12baca` — 9 info
  - added the non-success response with the status `403`
  - added the non-success response with the status `429`
  - removed the non-success response with the status `401`
  - added the optional property `code` to the response with the `400` status
  - …5 more

[Change history](https://skmtc.dev/carapi/apis/carapi-dev-automotive-data-api/changes/vin-decode/:vin/get.md)

---

[API](https://skmtc.dev/carapi/apis/carapi-dev-automotive-data-api.md) · [All operations](https://skmtc.dev/carapi/apis/carapi-dev-automotive-data-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/carapi/carapi-dev-automotive-data-api/revisions/cf1d4e12baca/schema)
