ClearVIN Authentication API

The Authentication API from ClearVIN — 1 operation(s) for authentication.

OpenAPI Specification

clearvin-authentication-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: ClearVIN Vendor Authentication 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: Authentication
paths:
  /rest/vendor/login:
    post:
      operationId: login
      tags:
      - Authentication
      summary: Authenticate and obtain a bearer token.
      description: Exchanges account email and password for a JWT bearer token that is valid for 120 minutes. The request must originate from an IP address registered with ClearVIN.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LoginRequest'
      responses:
        '200':
          description: Authentication result with token on success.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LoginResponse'
components:
  schemas:
    LoginRequest:
      type: object
      required:
      - email
      - password
      properties:
        email:
          type: string
          format: email
          description: Account email address.
        password:
          type: string
          format: password
          description: Account password.
    LoginResponse:
      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".
        token:
          type: string
          description: JWT bearer token, present when status is "ok". Valid 120 minutes.
  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.'