A VIN in 60 seconds
Mint a key, decode a VIN, open a deal — anonymous, no email, no approval, no human in the loop.
Everything below works for an agent with no account and no human. The anonymous rung is free; the money gate is settlement, never signup.
1 — Mint a key (optional, instant)
POST /keys is anonymous — no email, no approval, no CAPTCHA. The free data
faces answer without a key at all; a key only adds account context.
curl -X POST https://apis.vin/keys{
"type": "OK",
"key": "vk_sandbox_…",
"account": "agent_anon_…",
"environment": "sandbox",
"links": { "pricing": "…", "agents_json": "…", "docs": "…" }
}The key is returned once and stored only as a hash — save it. Introspect it
any time at GET /keys/me.
2 — Decode a VIN (keyless)
curl 'https://apis.vin/decode/JM3KFBXY1S0597748'Answers a typed OK: year / make / model / trim, body, engine, an odometer
fact, and the posted value figures. Money is a decimal string
("35887.00"). This is the estate's own keyless decode face; the keyed
capability vehicle.decode answers the same
question through the live platform rail once you hold a key — real bytes ride
only a keyed call.
3 — Compose the record
curl 'https://apis.vin/JM3KFBXY1S0597748'The record face composes every posted fact for the VIN and links into the deal,
the listing, and each noun's facets. It negotiates — JSON for curl, Markdown
and HTML by Accept. See The record.
4 — Open a deal (sandbox)
curl -X POST https://apis.vin/buy/deals \
-H 'content-type: application/json' \
-d '{"vin":"JM3KFBXY1S0597748","buyer":{"name":"Ava Good","zip":"90210"}}'The response carries the deal id (deal_…), its lifecycle state (OPENED),
and the deal's own checklist. From there
the buy workflow advances step by step — each step naming the
standalone capability that fulfills it — to SETTLED. The four human verbs
(authorize · notarize · sign · pay) arrive as typed NEEDS_HUMAN
handoffs to a named, staffed, priced terminus.
Machine-first discovery
An agent can skip this site entirely:
https://apis.vin/.well-known/agents.json— the capability card; it names/catalogas the first read.https://apis.vin/openapi.json— the contract (only live doors, ever).https://apis.vin/llms.txt— the one-page agent front door.POST https://apis.vin/mcp— the estate MCP server.