# all.vin > Every car, both sides. One VIN field, every door — and both doors open on the same record. The .vin family front door. Paste a 17-character VIN: history, value, sticker, recalls, buy, sell, finance, insure, ship — every door opens on the same posted record. Motions: B2H2A · B2A2B 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/ — History: records posted for https://values.vin/ — Value: retail · trade · posted, from real transactions https://sticker.vin/ — Original window sticker: on request https://recalls.vin/ — Open-recall check with VIN-watch, free https://taxes.vin/ — Out-the-door by state: computed on request https://buy.vin/ — Buy: checklist close, distance-to-done at every step https://offers.vin/ — Sell: instant offers against posted value https://fi.vin/ — Finance: pre-approval attaches to this record https://insure.vin/ — Insure: quote from the decoded spec, not a 40-question form https://transport.vin/ — Ship: quote from a VIN and two zips https://do.vin/ — The rails: auto.dev · .do infrastructure · do.industries