docs.vin

Journeys

Curated end-to-end workflow narratives — every step a catalog capability, every snippet runnable against the sandbox world, every shown answer a deterministic claim.

A journey is one multi-step workflow — buying a car, refinancing it, adjudicating a claim — told end to end through the doors. It is not a new surface: every step names the catalog capability that fulfills it and links its reference page, every snippet runs against the sandbox as-is, and every shown answer is the deterministic answer the world gives back.

The law journeys are written under

Journeys are written against the curated sandbox world — the exemplar fleet (one valid 17-char VIN per reachable lifecycle state, like 1FDEALFRESH000000) and the persona cast (one named identity per credit tier, like Ava Good) — never against generated-fallback answers. The world is deterministic and replayable: the same request answers the same bytes, forever, and every simulated payload carries its provenance block in the body. The full trigger register lives at sandbox test triggers.

That determinism is what makes a journey checkable. An expected answer printed on these pages is not an illustration — it is a claim you can verify by running the trigger above it.

The anatomy of a journey page

Every journey page follows one shape:

  1. The cast — which fleet VINs and personas the journey rides, up front.
  2. The steps — each step is a heading, then a capability register line, then a runnable frame. The register line links every capability the step uses to its catalog page; the runnable frame holds exactly one trigger (the copy-paste call) and one expected world answer, trimmed to its load-bearing fields.
  3. The gates — where a step answers 402 OFFER or 403 NEEDS_HUMAN, the journey shows the gate, not a detour around it. See the act.

This is what a step's runnable frame looks like — run it yourself:

capabilitymaintenance.intervalLookupGET /maintenances/interval-lookup
runnable — sandbox · deterministicJM3KFBXY1S0597748
run it — GET /maintenances/interval-lookup
curl 'https://apis.vin/maintenances/interval-lookup?vin=JM3KFBXY1S0597748'
the world answers — MaintenanceIntervalLookup@1, trimmed
{
  "type": "OK",
  "answers": "MaintenanceIntervalLookup@1",
  "value": {
    "vin": "JM3KFBXY1S0597748",
    "intervals": [
      { "service": "oilChange", "everyMiles": 7500, "everyMonths": 12 },
      { "service": "tireRotation", "everyMiles": 7500 }
    ]
  },
  "provenance": { "simulated": true, "environment": "sandbox", "source": "services-sandbox" }
}

The journeys

Each journey below is declared — named here before its page exists, the same way the catalog types absence instead of faking a 200. Until its page lands, its spine workflow's reference page models the same ground end to end (stategraph, sequence, decision logic, flow of funds).

JourneySpine workflowStatus
Buy a car — search → offer → credit → F&I → e-contract → settlement → title & registration → transport → deliverybuywritten
Refinance — payoff quote → application → funding → reconcilerefinancewritten
Repossession — default → assignment → recovery → deficiency → redemptionrepo-to-remarketingwritten
Insurance claim — FNOL → estimate → repair order → settlement → subrogationclaim-to-repairwritten
Auction — consignment → run list → sale → transport → title relayconsignmentwritten
F&I product lifecycle — rate → sell → administer → cancel → refundfni.selectwritten
Agent-run estate — MCP handshake → search → fetch → the exec gateai.estateMcpwritten
Service-drive RO — check-in → estimate → authorize → repair → invoiceservice-drive-rodeclared

Next

  • Sandbox test triggers — the full deterministic trigger register the journeys draw from.
  • The catalog — the reference page every step links into.
  • The act — the gate law every journey's write steps pass through.