DATPAQ VIN Lookup API
NHTSA VIN decode, makes list, and prefix suggestions
NHTSA VIN decode, makes list, and prefix suggestions
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/datpaq-com:datpaq-com-vin-lookup-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Datpaq Com VIN Lookup API
version: 1.1.0
contact:
name: Datpaq Support
url: https://datpaq.com
license:
name: Proprietary
description: 'Operations tagged VIN Lookup across 2 of this provider''s published API definitions: datpaq-com.yaml, datpaq-com-openapi.yaml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
security:
- ApiKeyHeader: []
- ApiKeyQuery: []
tags:
- name: VIN Lookup
description: NHTSA VIN decode, makes list, and prefix suggestions
paths:
/vin-lookup/decode:
post:
tags:
- VIN Lookup
operationId: vinLookupDecode
summary: Decode one or more VINs
description: JSON body vin as a string or an array of up to 50 VINs. Uses NHTSA VPIC.
responses:
'200':
description: Decoded vehicle fields
content:
application/json:
schema:
$ref: '#/components/schemas/GenericSuccess'
example:
success: true
data:
vin: 1HGCM82633A004352
make: HONDA
model: Accord
modelYear: '2003'
bodyClass: Sedan/Saloon
metadata:
correlationId: abc123-def456
timestamp: '2026-08-20T12:00:00.000Z'
processingTime: 86ms
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
requestBody:
required: true
description: VIN decode request
content:
application/json:
schema:
type: object
required:
- vin
properties:
vin:
description: Single VIN or array of VINs
oneOf:
- type: string
example: 1HGCM82633A004352
- type: array
maxItems: 50
items:
type: string
example:
vin: 1HGCM82633A004352
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
/vin-lookup/decode/{vin}:
get:
tags:
- VIN Lookup
operationId: vinLookupDecodeGet
summary: Decode a VIN via path
description: Convenience GET that 307-redirects to /vin-lookup/sample/{vin}.
responses:
'307':
description: Redirects to GET /vin-lookup/sample/{vin}
headers:
Location:
description: Canonical sample-decode URL
schema:
type: string
example: /api/v1/vin-lookup/sample/1HGCM82633A004352
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
parameters:
- name: vin
in: path
required: true
description: 17-character VIN
schema:
type: string
example: 1HGCM82633A004352
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
/vin-lookup/sample/{vin}:
get:
tags:
- VIN Lookup
operationId: vinLookupSample
summary: Sample VIN decode
description: Single-VIN decode used by the GET /decode/{vin} alias.
responses:
'200':
description: Decoded vehicle fields
content:
application/json:
schema:
$ref: '#/components/schemas/GenericSuccess'
example:
success: true
data:
vin: 1HGCM82633A004352
make: HONDA
model: Accord
modelYear: '2003'
bodyClass: Sedan/Saloon
metadata:
correlationId: abc123-def456
timestamp: '2026-08-20T12:00:00.000Z'
processingTime: 82ms
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
parameters:
- name: vin
in: path
required: true
description: 17-character VIN
schema:
type: string
example: 1HGCM82633A004352
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
/vin-lookup/makes:
get:
tags:
- VIN Lookup
operationId: vinLookupMakes
summary: List vehicle makes
description: Reference list of vehicle makes from NHTSA.
responses:
'200':
description: Vehicle makes
content:
application/json:
schema:
$ref: '#/components/schemas/GenericSuccess'
example:
success: true
data:
makes:
- HONDA
- FORD
- TOYOTA
metadata:
correlationId: abc123-def456
timestamp: '2026-08-20T12:00:00.000Z'
processingTime: 20ms
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
/vin-lookup/suggest/{prefix}:
get:
tags:
- VIN Lookup
operationId: vinLookupSuggest
summary: VIN prefix suggestions
description: Manufacturer suggestions for a VIN prefix / WMI.
responses:
'200':
description: Prefix suggestions
content:
application/json:
schema:
$ref: '#/components/schemas/GenericSuccess'
example:
success: true
data:
prefix: 1HG
suggestions:
- make: HONDA
wmi: 1HG
metadata:
correlationId: abc123-def456
timestamp: '2026-08-20T12:00:00.000Z'
processingTime: 12ms
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
parameters:
- name: prefix
in: path
required: true
description: VIN prefix
schema:
type: string
example: 1HG
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
components:
schemas:
ErrorResponse:
type: object
properties:
error:
type: string
description: Human-readable error message
example: Invalid API key
correlationId:
type: string
description: Request tracking identifier for support
example: abc123-def456-789ghi
service:
type: string
description: Service name that produced the error
example: ip-geolocation
GenericSuccess:
type: object
description: Standard success envelope. The data property structure varies by endpoint.
properties:
correlationId:
type: string
description: Request tracking identifier
example: abc123-def456
data:
type: object
description: Response payload (structure varies by endpoint)
cached:
type: boolean
description: Whether the response was served from cache
example: false
responses:
BadRequest:
description: Bad request — missing or invalid parameters
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
RateLimited:
description: Rate limit exceeded — retry after the indicated period
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
ServiceUnavailable:
description: Service temporarily unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
Unauthorized:
description: Unauthorized — missing or invalid API key
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
securitySchemes:
ApiKeyHeader:
type: apiKey
in: header
name: x-api-key
description: API key passed via x-api-key request header
ApiKeyQuery:
type: apiKey
in: query
name: api_key
description: API key passed as api_key query parameter
x-refined-from:
- datpaq-com.yaml
- datpaq-com-openapi.yaml