# appraisal.vin > A condition-adjusted number for any VIN — the posted values.vin basis, moved line by line by inspection facts, every adjustment sourced and timestamped. The act of appraising, posted: the values.vin basis for any VIN adjusted line by line by inspection facts — odometer, title brand, condition findings — each adjustment its own posted line. The number feeds tradein.vin and offers.vin; the resulting record reads on the Data side. Reads are free at every VIN. Motions: B2A2C · 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://commerce.vin/ — The appraised number posts to one deal record https://values.vin/ — The five-number basis for any VIN, posted with the comps behind it https://tradein.vin/ — The walk, before the walk: the trade band for any VIN carried in https://offers.vin/ — The firm cash offer on any VIN: basis posted, payoff handled https://dealers.vin/ — Every dealer rail for any VIN at one desk https://inspection.vin/ — The inspection facts the adjustments cite, ordered by the number