> ## Documentation Index
> Fetch the complete documentation index at: https://api.visor.vin/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Look up a VIN

> Returns the current or latest known record for a VIN. Unknown VINs return 404 not_found_error; known VINs can return status: missing.



## OpenAPI

````yaml /openapi.json get /v1/vins/{vin}
openapi: 3.1.0
info:
  title: Visor Public API
  version: 1.0.0-beta
  summary: Vehicle listings, facets, VIN, and dealer data for API customers.
  description: >-
    Public beta API for customer integrations. Normal /v1 endpoints require
    Authorization: Bearer <api_key>. API keys are scoped to API accounts; usage
    is metered per request and billed from the account ledger. The OpenAPI
    document is available without authentication at /v1/openapi.json.
servers:
  - url: https://api.visor.vin
    description: Production public API
security:
  - bearerAuth: []
tags:
  - name: Inventory
  - name: Dealers
  - name: Usage
paths:
  /v1/vins/{vin}:
    get:
      tags:
        - Inventory
      summary: Look up a VIN
      description: >-
        Returns the current or latest known record for a VIN. Unknown VINs
        return 404 not_found_error; known VINs can return status: missing.
      operationId: publicInventory.vin
      parameters:
        - name: vin
          in: path
          schema:
            type: string
            description: 17-character VIN. I, O, and Q are not valid VIN characters.
          required: true
          description: 17-character VIN. I, O, and Q are not valid VIN characters.
          example: 4T1DAACKXTU765422
        - name: include
          in: query
          schema:
            type: string
            description: >-
              Comma-separated optional expansions. Supported values are
              price_history and options.
          required: false
          description: >-
            Comma-separated optional expansions. Supported values are
            price_history and options.
          example: price_history,options
      responses:
        '200':
          description: Successful public API response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      vin:
                        type: string
                        description: Vehicle identification number.
                      status:
                        type: string
                        enum:
                          - active
                          - missing
                          - sold
                        description: >-
                          Public VIN availability classification. Unseen VINs
                          return 404 instead of a status.
                      latest_listing:
                        anyOf:
                          - type: object
                            properties:
                              id:
                                anyOf:
                                  - type: string
                                  - type: 'null'
                                description: Latest known listing identifier for this VIN.
                              price:
                                anyOf:
                                  - type: number
                                  - type: 'null'
                                description: Latest listed price in whole dollars.
                              miles:
                                anyOf:
                                  - type: number
                                  - type: 'null'
                                description: Latest observed odometer mileage.
                              inventory_type:
                                anyOf:
                                  - type: string
                                  - type: 'null'
                                description: >-
                                  Latest inventory classification: new, used, or
                                  certified.
                              stock_number:
                                anyOf:
                                  - type: string
                                  - type: 'null'
                                description: Dealer stock number when available.
                              vdp_url:
                                anyOf:
                                  - type: string
                                  - type: 'null'
                                description: Vehicle detail page URL when available.
                              vhr_url:
                                anyOf:
                                  - type: string
                                  - type: 'null'
                                description: Vehicle history report URL when available.
                              photo_urls:
                                type: array
                                items:
                                  type: string
                                description: Listing photo URLs. Included by default.
                              photo_url_primary:
                                anyOf:
                                  - type: string
                                  - type: 'null'
                                description: Primary listing photo URL when available.
                              pricing:
                                anyOf:
                                  - type: object
                                    properties:
                                      displayed_provider_current_price_usd:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                        description: >-
                                          Provider-displayed listing price for
                                          broad shopper consumption at observation
                                          time. Excludes MSRP fallback and does
                                          not imply the lowest eligible price.
                                      seller_total_before_taxes_and_registration_usd:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                        description: >-
                                          Comparable broad-buyer seller-side total
                                          before government taxes, title,
                                          registration, license, lien, and similar
                                          statutory charges.
                                      seller_total_before_manufacturer_incentives_usd:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                        description: >-
                                          Dealer-controlled seller total before
                                          manufacturer-funded incentives and
                                          rebates, including broadly available
                                          temporary programs.
                                      dealer_adjusted_vehicle_price_usd:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                        description: >-
                                          Vehicle price after dealer-controlled
                                          vehicle adjustments, before seller fees,
                                          seller add-ons, government charges, and
                                          manufacturer incentives.
                                      line_items:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            amount_usd:
                                              anyOf:
                                                - type: number
                                                - type: 'null'
                                              description: >-
                                                Provider-observed line item amount in
                                                whole US dollars when available.
                                            applicability:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                              description: >-
                                                Buyer or configuration applicability for
                                                this line item, such as all_buyers,
                                                qualified_buyer, lead_gated, or
                                                configuration.
                                            direction:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                              description: >-
                                                How this line item participates in
                                                pricing context: add, subtract, set,
                                                anchor, or informational.
                                            raw_label:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                              description: >-
                                                Dealer- or provider-displayed line item
                                                label when available.
                                            role:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                              description: >-
                                                Normalized line item role, such as
                                                displayed_price, pricing_anchor,
                                                seller_fee, seller_add_on,
                                                dealer_markup, dealer_discount,
                                                manufacturer_incentive,
                                                government_charge,
                                                conditional_applicability,
                                                payment_quote, aggregate, disclaimer, or
                                                unknown.
                                            row_key:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                              description: >-
                                                Stable row key for this line item within
                                                the listing pricing payload when
                                                available.
                                            row_order:
                                              anyOf:
                                                - type: number
                                                - type: 'null'
                                              description: >-
                                                Original display order for this line
                                                item when available.
                                            subtype:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                              description: >-
                                                Additional normalized line item subtype
                                                when available.
                                          required:
                                            - amount_usd
                                            - applicability
                                            - direction
                                            - raw_label
                                            - role
                                            - row_key
                                            - row_order
                                            - subtype
                                          additionalProperties: false
                                          description: >-
                                            Customer-safe provider-observed pricing
                                            row evidence for the listing. Internal
                                            parser/source fields are not exposed.
                                        description: >-
                                          Provider-observed pricing row evidence
                                          when available.
                                    required:
                                      - displayed_provider_current_price_usd
                                      - >-
                                        seller_total_before_taxes_and_registration_usd
                                      - >-
                                        seller_total_before_manufacturer_incentives_usd
                                      - dealer_adjusted_vehicle_price_usd
                                      - line_items
                                    additionalProperties: false
                                    description: >-
                                      Nullable listing pricing detail when
                                      supported provider data is available.
                                      Existing price remains unchanged.
                                  - type: 'null'
                                description: >-
                                  Detailed listing pricing when available from
                                  supported providers; otherwise null.
                              inventory_date:
                                anyOf:
                                  - type: string
                                  - type: 'null'
                                description: >-
                                  Date the latest listing entered inventory when
                                  available.
                              sold_date:
                                anyOf:
                                  - type: string
                                  - type: 'null'
                                description: >-
                                  Best observed date the listing exited active
                                  inventory as sold. Null for active or missing
                                  inventory and when unavailable.
                              last_checked_at:
                                anyOf:
                                  - type: string
                                  - type: 'null'
                                description: >-
                                  Last warehouse observation timestamp for the
                                  latest listing.
                              dealer:
                                type: object
                                properties:
                                  dealer_id:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                    description: >-
                                      Dealer UUID associated with the VIN's
                                      current or latest listing.
                                  name:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                    description: Dealer display name.
                                  city:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                    description: Dealer city.
                                  state:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                    description: Dealer state.
                                  postal_code:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                    description: Dealer ZIP or postal code.
                                  latitude:
                                    anyOf:
                                      - type: number
                                      - type: 'null'
                                    description: Dealer latitude when available.
                                  longitude:
                                    anyOf:
                                      - type: number
                                      - type: 'null'
                                    description: Dealer longitude when available.
                                  phone:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                    description: Dealer phone number when available.
                                required:
                                  - dealer_id
                                  - name
                                  - city
                                  - state
                                  - postal_code
                                  - latitude
                                  - longitude
                                  - phone
                                additionalProperties: false
                                description: Dealer attached to a VIN detail response.
                              price_history:
                                anyOf:
                                  - type: array
                                    items:
                                      type: object
                                      properties:
                                        changed_at:
                                          type: string
                                          description: Timestamp of the price change.
                                        miles:
                                          anyOf:
                                            - type: number
                                            - type: 'null'
                                          description: >-
                                            Observed odometer mileage at the price
                                            change when available.
                                        price_before:
                                          anyOf:
                                            - type: number
                                            - type: 'null'
                                          description: Previous listed price in whole dollars.
                                        price_after:
                                          anyOf:
                                            - type: number
                                            - type: 'null'
                                          description: New listed price in whole dollars.
                                      required:
                                        - changed_at
                                        - miles
                                        - price_before
                                        - price_after
                                      additionalProperties: false
                                      description: VIN price change event.
                                  - type: 'null'
                                description: >-
                                  Price history when include=price_history is
                                  requested; otherwise null.
                            required:
                              - id
                              - price
                              - miles
                              - inventory_type
                              - stock_number
                              - vdp_url
                              - vhr_url
                              - photo_urls
                              - photo_url_primary
                              - pricing
                              - inventory_date
                              - sold_date
                              - last_checked_at
                              - dealer
                              - price_history
                            additionalProperties: false
                            description: >-
                              Latest known listing for the VIN, whether active,
                              missing, or sold.
                          - type: 'null'
                        description: >-
                          Latest known listing for this VIN, or null when
                          listing evidence is unavailable or ambiguous.
                      build:
                        type: object
                        properties:
                          year:
                            anyOf:
                              - type: number
                              - type: 'null'
                            description: Model year when known.
                          make:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Vehicle make.
                          model:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Vehicle model.
                          trim:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Trim label.
                          version:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Vehicle version label.
                          body_type:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Body type.
                          drivetrain:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Drivetrain.
                          fuel_type:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Fuel type.
                          powertrain_type:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Powertrain type.
                          transmission:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Transmission.
                          engine:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Engine description.
                          cylinders:
                            anyOf:
                              - type: number
                              - type: 'null'
                            description: Cylinder count.
                          doors:
                            anyOf:
                              - type: number
                              - type: 'null'
                            description: Door count.
                          seating_capacity:
                            anyOf:
                              - type: number
                              - type: 'null'
                            description: Seating capacity.
                          exterior_color:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Exterior color.
                          interior_color:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Interior color.
                          base_exterior_color:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Normalized exterior color.
                          base_interior_color:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Normalized interior color.
                          assembly_location:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: Assembly location when available.
                          window_sticker_verified:
                            type: boolean
                            description: >-
                              Whether the window sticker was verified for this
                              VIN.
                          base_msrp:
                            anyOf:
                              - type: number
                              - type: 'null'
                            description: Base MSRP in whole dollars when available.
                          combined_msrp:
                            anyOf:
                              - type: number
                              - type: 'null'
                            description: >-
                              Base MSRP plus installed options in whole dollars
                              when available.
                          options:
                            anyOf:
                              - type: array
                                items:
                                  type: object
                                  properties:
                                    code:
                                      type: string
                                      description: Manufacturer option code.
                                    name:
                                      type: string
                                      description: Option name.
                                    msrp:
                                      anyOf:
                                        - type: number
                                        - type: 'null'
                                      description: >-
                                        Option MSRP in whole dollars when
                                        available.
                                  required:
                                    - code
                                    - name
                                    - msrp
                                  additionalProperties: false
                                  description: VIN option decoded from option codes.
                              - type: 'null'
                            description: >-
                              Installed options when include=options is
                              requested and option data is available; otherwise
                              null.
                        required:
                          - year
                          - make
                          - model
                          - trim
                          - version
                          - body_type
                          - drivetrain
                          - fuel_type
                          - powertrain_type
                          - transmission
                          - engine
                          - cylinders
                          - doors
                          - seating_capacity
                          - exterior_color
                          - interior_color
                          - base_exterior_color
                          - base_interior_color
                          - assembly_location
                          - window_sticker_verified
                          - base_msrp
                          - combined_msrp
                          - options
                        additionalProperties: false
                        description: Build and specification fields for a VIN.
                    required:
                      - vin
                      - status
                      - latest_listing
                      - build
                    additionalProperties: false
                    description: VIN detail record.
                  meta:
                    type: object
                    description: >-
                      Reserved metadata object. It is empty for the beta
                      contract unless an endpoint documents otherwise.
                required:
                  - data
                  - meta
                additionalProperties: false
                description: VIN detail response envelope.
              examples:
                success:
                  summary: VIN lookup with latest listing
                  value:
                    data:
                      vin: 4T1DAACKXTU765422
                      status: active
                      build:
                        year: 2026
                        make: Toyota
                        model: Camry
                        trim: SE
                        version: SE Hybrid
                        body_type: Sedan
                        drivetrain: FWD
                        fuel_type: Hybrid
                        powertrain_type: HEV
                        transmission: CVT
                        engine: 2.5L I4
                        cylinders: 4
                        doors: 4
                        seating_capacity: 5
                        exterior_color: Dark Cosmos
                        interior_color: Black SofTex
                        base_exterior_color: Blue
                        base_interior_color: Black
                        assembly_location: null
                        window_sticker_verified: false
                        base_msrp: 31800
                        combined_msrp: 35711
                        options:
                          - code: 3J
                            name: Blackout Emblem Overlays
                            msrp: 89
                          - code: 2T
                            name: All-Weather Floor Liner Package
                            msrp: 319
                      latest_listing:
                        id: 0043554b54709f18a7bcf42f23e5e6ef
                        price: 35236
                        miles: 0
                        inventory_type: new
                        stock_number: '263929'
                        vdp_url: >-
                          https://www.northhollywoodtoyota.com/viewdetails/new/4t1daackxtu765422
                        vhr_url: null
                        photo_urls:
                          - >-
                            https://delivery.via.assetscs.toyota.com/adobe/assets/urn:aaid:aem:260ec892-e9be-4815-9148-8c139edd5b95/as/image.png?fmt=png-alpha%2Crgb%2Cnone
                        photo_url_primary: >-
                          https://delivery.via.assetscs.toyota.com/adobe/assets/urn:aaid:aem:260ec892-e9be-4815-9148-8c139edd5b95/as/image.png?fmt=png-alpha%2Crgb%2Cnone
                        pricing: null
                        inventory_date: '2026-06-09'
                        sold_date: null
                        last_checked_at: '2026-06-09 11:40:57.534384'
                        dealer:
                          dealer_id: 16ed7612-0ffd-4e1e-88db-174f8dd57c54
                          name: North Hollywood Toyota
                          city: North Hollywood
                          state: CA
                          postal_code: '91602'
                          latitude: 34.154
                          longitude: -118.3678
                          phone: (818) 369-3922
                        price_history: []
                    meta: {}
          headers:
            X-Usage-Class:
              description: >-
                Metering class used for the request, for example listing_search,
                listing_search_enriched, facet_counts_historical,
                vehicle_detail_enriched, or dealer_lookup.
              schema:
                type: string
            X-Usage-Cost-Micros:
              description: >-
                Usage cost for this request in integer USD micros. 1000000
                micros equals 1 USD.
              schema:
                type: string
            X-Pricing-Version:
              description: Pricing catalog version UUID used to calculate the request cost.
              schema:
                type: string
            X-RateLimit-Tier:
              description: Effective account Usage Tier code used for rate limiting.
              schema:
                type: string
            X-RateLimit-Limit-10s:
              description: Maximum requests allowed in the 10-second burst window.
              schema:
                type: string
            X-RateLimit-Remaining-10s:
              description: >-
                Remaining requests in the current 10-second burst window after
                this request.
              schema:
                type: string
            X-RateLimit-Limit-60s:
              description: Maximum requests allowed in the 60-second sustained window.
              schema:
                type: string
            X-RateLimit-Remaining-60s:
              description: >-
                Remaining requests in the current 60-second sustained window
                after this request.
              schema:
                type: string
        '400':
          description: >-
            Invalid path or query parameter. Unknown query parameters are
            rejected.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiValidationError'
        '401':
          description: Missing, malformed, or invalid Authorization bearer token.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiAuthenticationError'
        '402':
          description: The API account is blocked by billing state or prepaid balance.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiBillingError'
        '403':
          description: The API key is valid but does not include the required scope.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiPermissionError'
        '404':
          description: The requested VIN or dealer detail resource was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiNotFoundError'
        '429':
          description: >-
            The API account exceeded the public API rate limit. Retry-After is
            included when available.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiRateLimitError'
        '503':
          description: >-
            The platform could not price, meter, rate-limit, or fetch data for
            the request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiPlatformError'
      security:
        - bearerAuth: []
components:
  schemas:
    PublicApiValidationError:
      type: object
      properties:
        _tag:
          type: string
          enum:
            - PublicApiValidationError
        error:
          type: object
          properties:
            type:
              type: string
            code:
              type: string
            message:
              type: string
            current_version:
              anyOf:
                - type: string
                - type: 'null'
            minimum_supported_version:
              anyOf:
                - type: string
                - type: 'null'
            reason_code:
              anyOf:
                - type: string
                - type: 'null'
            update_url:
              type: string
            update_command:
              type: string
          required:
            - type
            - code
            - message
          additionalProperties: false
      required:
        - _tag
        - error
      additionalProperties: false
    PublicApiAuthenticationError:
      type: object
      properties:
        _tag:
          type: string
          enum:
            - PublicApiAuthenticationError
        error:
          type: object
          properties:
            type:
              type: string
            code:
              type: string
            message:
              type: string
            current_version:
              anyOf:
                - type: string
                - type: 'null'
            minimum_supported_version:
              anyOf:
                - type: string
                - type: 'null'
            reason_code:
              anyOf:
                - type: string
                - type: 'null'
            update_url:
              type: string
            update_command:
              type: string
          required:
            - type
            - code
            - message
          additionalProperties: false
      required:
        - _tag
        - error
      additionalProperties: false
    PublicApiBillingError:
      type: object
      properties:
        _tag:
          type: string
          enum:
            - PublicApiBillingError
        error:
          type: object
          properties:
            type:
              type: string
            code:
              type: string
            message:
              type: string
            current_version:
              anyOf:
                - type: string
                - type: 'null'
            minimum_supported_version:
              anyOf:
                - type: string
                - type: 'null'
            reason_code:
              anyOf:
                - type: string
                - type: 'null'
            update_url:
              type: string
            update_command:
              type: string
          required:
            - type
            - code
            - message
          additionalProperties: false
      required:
        - _tag
        - error
      additionalProperties: false
    PublicApiPermissionError:
      type: object
      properties:
        _tag:
          type: string
          enum:
            - PublicApiPermissionError
        error:
          type: object
          properties:
            type:
              type: string
            code:
              type: string
            message:
              type: string
            current_version:
              anyOf:
                - type: string
                - type: 'null'
            minimum_supported_version:
              anyOf:
                - type: string
                - type: 'null'
            reason_code:
              anyOf:
                - type: string
                - type: 'null'
            update_url:
              type: string
            update_command:
              type: string
          required:
            - type
            - code
            - message
          additionalProperties: false
      required:
        - _tag
        - error
      additionalProperties: false
    PublicApiNotFoundError:
      type: object
      properties:
        _tag:
          type: string
          enum:
            - PublicApiNotFoundError
        error:
          type: object
          properties:
            type:
              type: string
            code:
              type: string
            message:
              type: string
            current_version:
              anyOf:
                - type: string
                - type: 'null'
            minimum_supported_version:
              anyOf:
                - type: string
                - type: 'null'
            reason_code:
              anyOf:
                - type: string
                - type: 'null'
            update_url:
              type: string
            update_command:
              type: string
          required:
            - type
            - code
            - message
          additionalProperties: false
      required:
        - _tag
        - error
      additionalProperties: false
    PublicApiRateLimitError:
      type: object
      properties:
        _tag:
          type: string
          enum:
            - PublicApiRateLimitError
        error:
          type: object
          properties:
            type:
              type: string
            code:
              type: string
            message:
              type: string
            current_version:
              anyOf:
                - type: string
                - type: 'null'
            minimum_supported_version:
              anyOf:
                - type: string
                - type: 'null'
            reason_code:
              anyOf:
                - type: string
                - type: 'null'
            update_url:
              type: string
            update_command:
              type: string
          required:
            - type
            - code
            - message
          additionalProperties: false
        retryAfter:
          type: number
      required:
        - _tag
        - error
      additionalProperties: false
    PublicApiPlatformError:
      type: object
      properties:
        _tag:
          type: string
          enum:
            - PublicApiPlatformError
        error:
          type: object
          properties:
            type:
              type: string
            code:
              type: string
            message:
              type: string
            current_version:
              anyOf:
                - type: string
                - type: 'null'
            minimum_supported_version:
              anyOf:
                - type: string
                - type: 'null'
            reason_code:
              anyOf:
                - type: string
                - type: 'null'
            update_url:
              type: string
            update_command:
              type: string
          required:
            - type
            - code
            - message
          additionalProperties: false
      required:
        - _tag
        - error
      additionalProperties: false
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        Send API keys as Authorization: Bearer <api_key>. Query-string API keys
        are rejected.

````