71trust / 100

Official Nhtsa Vin Decode

by VIN Decoder (NHTSA vPIC) in AI models & inference

x402 APIPassing, checked 3 h ago

Decode a VIN into make, model, model year and vehicle attributes using NHTSA vPIC. Use when an agent has a VIN and needs structured vehicle information. Call GET ?vin= or POST JSON {"vin"}; full or partial VINs, decode errors preserved. No owner lookup.

GET
https://foundry-par007-machine-revenue-mainnet.inference-chip-index.workers.dev/v2/official/nhtsa-vin-decode
Price
$0.003
per call in USDC
Uptime
100%
last 30 days
Response time
1.4 s
1.7 s slowest 5%
Last check
Passed
3 h ago, next any minute now

Run a free test callHow to call it

Reliability

All checks passedSome failedAll failedNot checked

Status and outage history · Atom feed

How to call it

GET https://foundry-par007-machine-revenue-mainnet.inference-chip-index.workers.dev/v2/official/nhtsa-vin-decode

Each call costs $0.003 in USDC on Base, paid with the request over x402.

Run a free test callOne unpaid request, the way an agent sends it. You see the payment challenge it gets back. Nothing is charged.

Example request

From the listing.

GET https://foundry-par007-machine-revenue-mainnet.inference-chip-index.workers.dev/v2/official/nhtsa-vin-decode?vin=1HGCM82633A004352

Parameters

ParameterTypeRequiredDescription
model_yearintegerNo
vinstringYes

Example response

The provider's example. We can't check it without paying.

Example response, 53 lines
{
  "observed_at": "2026-09-06T00:00:00Z",
  "result": {
    "freshness": {
      "cacheAgeSeconds": 0,
      "maximumCacheSeconds": 0,
      "recordAgeIsNotRetrievalAge": true,
      "retrievedAt": "2026-09-25T00:00:00Z",
      "state": "CURRENT_RETRIEVAL"
    },
    "normalizedResult": [
      {
        "BodyClass": "Coupe",
        "ElectrificationLevel": null,
        "EngineCylinders": "6",
        "ErrorCode": "0",
        "ErrorText": "0 - VIN decoded clean. Check Digit (9th position) is correct",
        "FuelTypePrimary": "Gasoline",
        "Make": "HONDA",
        "Manufacturer": "AMERICAN HONDA MOTOR CO., INC.",
        "Model": "Accord",
        "ModelYear": "2003",
        "VIN": "1HGCM82633A004352",
        "VehicleType": "PASSENGER CAR"
      }
    ],
    "observedAt": "2026-09-25T00:00:00Z",
    "provenance": {
      "attribution": "NHTSA vPIC; manufacturer-reported vehicle attributes",
      "documentationUrl": "https://vpic.nhtsa.dot.gov/api/",
      "license": "Public vPIC Open Data API; no licensing or registration requirement",
      "limitations": [
        "Example recorded from NHTSA vPIC DecodeVinValues on 2026-09-25 for a widely published sample VIN.",
        "Manufacturer-reported decode only; not ownership, history, roadworthiness or recall applicability."
      ],
      "modifications": "Selected factual fields, normalized names and bounded result count; no source ownership claimed.",
      "termsUrl": "https://vpic.nhtsa.dot.gov/api/Home/Index/FAQ",
      "truncated": false,
      "upstreamCalls": 1
    },
    "query": {
      "vin": "1HGCM82633A004352"
    },
    "rawSourceIdentifiers": [
      "1HGCM82633A004352"
    ],
    "source": "NHTSA vPIC",
    "sourceProcessedAt": null,
    "sourceUpdatedAt": null,
    "sourceUrl": "https://vpic.nhtsa.dot.gov"
  },
  "route": "nhtsa-vin-decode"
}

Call it from code

The curl command shows the payment challenge. The JavaScript and Python versions pay and call, and never pay more than $0.003.

curl: see the payment challenge
# bash or zsh: see the payment challenge. Nothing is charged.
curl -sS -g -i 'https://foundry-par007-machine-revenue-mainnet.inference-chip-index.workers.dev/v2/official/nhtsa-vin-decode?vin=1HGCM82633A004352'

# x402 v2 sends the challenge base64-encoded in the PAYMENT-REQUIRED header (v1 sends it in the body).
# To read the header:
curl -sS -g -o /dev/null -D - 'https://foundry-par007-machine-revenue-mainnet.inference-chip-index.workers.dev/v2/official/nhtsa-vin-decode?vin=1HGCM82633A004352' \
  | grep -i '^payment-required:' | cut -d' ' -f2 | tr -d '\r' | base64 --decode
JavaScript: pay and call
// npm i @x402/fetch @x402/evm viem
import { wrapFetchWithPayment, x402Client } from "@x402/fetch";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

// Pays at most $0.003 per call.
const client = new x402Client().setSpendControls({ maxAmountPerPayment: "$0.003" });
registerExactEvmScheme(client, { signer: privateKeyToAccount(process.env.EVM_PRIVATE_KEY) });
const pay = wrapFetchWithPayment(fetch, client);

// Not sure it's safe to pay? ToolVet checks it first for $0.005. Pay for that from a separate
// client: this one is capped at $0.003 per payment. GET https://toolvet.app/api/v1/check?url=https%3A%2F%2Ffoundry-par007-machine-revenue-mainnet.inference-chip-index.workers.dev%2Fv2%2Fofficial%2Fnhtsa-vin-decode
const res = await pay("https://foundry-par007-machine-revenue-mainnet.inference-chip-index.workers.dev/v2/official/nhtsa-vin-decode?vin=1HGCM82633A004352");
console.log(res.status, await res.text());
Python: pay and call
# pip install "x402[requests,evm]"
import os
from eth_account import Account
from x402 import x402ClientSync
from x402.http.clients import x402_requests
from x402.mechanisms.evm import EthAccountSigner
from x402.mechanisms.evm.exact.register import register_exact_evm_client

# Pays at most $0.003 per call.
client = x402ClientSync().set_spend_controls({"max_amount_per_payment": "$0.003"})
register_exact_evm_client(client, EthAccountSigner(Account.from_key(os.environ["EVM_PRIVATE_KEY"])))

with x402_requests(client) as session:
    res = session.get("https://foundry-par007-machine-revenue-mainnet.inference-chip-index.workers.dev/v2/official/nhtsa-vin-decode?vin=1HGCM82633A004352")
    print(res.status_code, res.text)

Security scan

No findings

We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.

Recent checks

WhenResultHTTPTimePrice
3 h agoPassed4021.5 s$0.003
7 h agoPassed4021.7 s$0.003
11 h agoPassed4021.7 s$0.003
15 h agoPassed4021.1 s$0.003
19 h agoPassed4021.4 s$0.003
Show 10 older checks
23 h agoPassed4021.4 s$0.003
27 h agoPassed4021.4 s$0.003
31 h agoPassed4021.4 s$0.003
34 h agoPassed4021.4 s$0.003
38 h agoPassed4021.7 s$0.003
41 h agoPassed4021.4 s$0.003
45 h agoPassed4021.2 s$0.003
2 days agoPassed4021.4 s$0.003
2 days agoPassed4021.4 s$0.003
2 days agoPassed4021.8 s$0.003