openapi: 3.0.1
info:
title: ClearVIN Vendor Authentication Report API
description: REST API for ClearVIN's VIN decoding and vehicle history data. Clients exchange account credentials for a JWT bearer token at /rest/vendor/login, then request vehicle data by VIN from /rest/vendor/report. A single report endpoint returns VIN decode specifications, NMVTIS title and history data, and market valuation depending on the account subscription. Requests must originate from an IP address registered with ClearVIN. Documented endpoint paths are limited to login and report; additional product surfaces are served through the report endpoint.
termsOfService: https://www.clearvin.com/en/terms-of-service/
contact:
name: ClearVIN
url: https://www.clearvin.com/en/contact/
version: '1.0'
servers:
- url: https://www.clearvin.com
description: ClearVIN production API
tags:
- name: Report
paths:
/rest/vendor/report:
get:
operationId: getReport
tags:
- Report
summary: Retrieve a vehicle report by VIN.
description: Returns a vehicle report for the supplied VIN. Depending on the account subscription the report contains VIN decode specifications, NMVTIS title and history data, and / or market valuation. By default the response is JSON; pass format=html to receive an HTML rendering of the report. Requires a valid bearer token from /rest/vendor/login.
security:
- bearerAuth: []
parameters:
- name: vin
in: query
required: true
description: The 17-character Vehicle Identification Number to look up.
schema:
type: string
example: 5UXFA13544LU21050
- name: format
in: query
required: false
description: Response format. Omit for JSON (default) or set to html to receive an HTML rendering of the report.
schema:
type: string
enum:
- html
responses:
'200':
description: Report result for the requested VIN.
content:
application/json:
schema:
$ref: '#/components/schemas/ReportResponse'
text/html:
schema:
type: string
description: HTML rendering of the report when format=html.
components:
schemas:
ReportResult:
type: object
properties:
id:
type: string
description: ClearVIN report identifier.
vin:
type: string
description: The VIN the report was generated for.
report:
$ref: '#/components/schemas/Report'
ReportResponse:
type: object
properties:
status:
type: string
description: Result status, "ok" on success or "error" on failure.
enum:
- ok
- error
message:
type: string
description: Error detail, present when status is "error".
result:
$ref: '#/components/schemas/ReportResult'
Report:
type: object
description: Vehicle report payload. Field structure varies by subscription and data availability; the decoder, history, and valuation sections below are representative and require reconciliation against a live account response for exact shapes.
properties:
decoder:
type: object
description: VIN decode output - up to 150 specification parameters such as year, make, model, trim, engine, body, dimensions, standard features, and recall data.
additionalProperties: true
nmvtis:
type: object
description: NMVTIS title and history data - DMV title records, brand codes, junk / salvage / total-loss events, insurance claims, and odometer / mileage history.
additionalProperties: true
valuation:
type: object
description: Market valuation data - wholesale, retail, and trade-in values across condition categories, with mileage adjustments.
additionalProperties: true
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
description: 'JWT obtained from /rest/vendor/login, sent as "Authorization: Bearer {token}". Tokens expire after 120 minutes.'