# data.vin > Every fact about every car, cataloged — posted coverage, posted license, posted price, keyed to one VIN. Every fact about every car, cataloged. Decode, listings, values, history, build, recalls, photos — posted coverage, posted license, posted price, keyed to one VIN. One page answers what vehicle data exists, how complete it is, and what it costs. Motions: B2A · B2A2D Routes: GET / (this document's page) · GET /{VIN} (the record for one vehicle) Representations: text/html · text/markdown · application/json (Accept header; same URL) Evidence: every field posts value · source · timestamp · verification state; empty states are typed EMPTY, invalid VINs are typed INVALID_VIN — never a faked 200. Agent surface: one estate MCP server — https://apis.vin/mcp (all .vin doors are lenses over one spine; tools: decode_vin, vehicle_history, market_value, window_sticker, out_the_door_price, open_recalls, search_listings, cash_offer, transport_quote, finance_prequal, insurance_quote, start_purchase) Gates: typed OFFER (posted price, hard ceiling, x402) or NEEDS_HUMAN handoff URL — no account walls. Auth: https://auth.vin (issuer) · keys/metering via id.org.ai Siblings: https://vhr.vin/ — One answer, not the catalog? What happened to any VIN is vhr.vin's job — the history, posted. https://values.vin/ — What any VIN is worth is values.vin's job — the posted numbers and their basis. https://listings.vin/ — Whether any VIN is for sale is listings.vin's job — the live-listing corpus. https://sticker.vin/ — How any VIN was built is sticker.vin's job — the window sticker, retrieved. https://apis.vin/ — Key, SDK, MCP — how to integrate is apis.vin's job. This page prices what you integrate. https://all.vin/ — Every door, one record: all.vin/