docs.vin

claim-to-repair

The claim-to-repair workflow — a composition over the deal grid, modeled end to end.

Sandbox — a caller mode, never a status claim

The key selects the mode. Wire-compatible simulated responses, deterministic and replayable. Every payload is provenance-labeled { environment, simulated } in the body itself — where the row's live rail is a certified connection, it is live via connection: certified, connect to activate. Connecting is the ceremony: a credential submission at integrates.vin (dealer systems) or connects.vin (consumer accounts) enters the activation queue, and submissions rank live rollout.

Noun deal · Pillar Workflows

Descriptor

The catalog row, rendered. This is the same descriptor that answers GET /catalog?select=….

FieldValue
Noundeal
FacetCommerce
Sidedemand
PillarWorkflows
Kindworkflow
Statussandbox
Gatekey
Mandaterequired-when-delegated
Pricefree — $0.00, posted
Doorcollision.vin
MotionsB2A · B2H2A

The two spellings

One capability, two addresses — generated from one descriptor, so they cannot disagree:

  • The catalog nameclaim-to-repair. What the SDK, the CLI, and the MCP index call it.
  • The wire routeGET /workflows/claim-to-repair. What HTTP calls it.

Call it

the SDK — claimToRepair(vin)
import { claimToRepair } from 'apis.vin'

// claim-to-repair is a workflow — a composition of standalone acts.
// Run it end-to-end, or call each leaf act directly.
const run = await claimToRepair('1C6JJTBG8PL577033')
GET /workflows/claim-to-repair
curl 'https://apis.vin/workflows/claim-to-repair?workflow=claim-to-repair&vin=1C6JJTBG8PL577033'

Receipt — the sandbox wire answered the request above with this exact body at build time. Captured by the receipts runner (timestamped, provenance in the payload), never authored; it re-executes only when this descriptor changes.

receipt · executed 2026-08-17T12:42:19.386Z · HTTP 200
{
  "type": "OK",
  "answers": "Deal@1",
  "value": {
    "workflow": "claim-to-repair",
    "dealId": "DEAL-1SRLLT1",
    "vin": "1C6JJTBG8PL577033",
    "state": "accepted",
    "currentStep": "fnol",
    "steps": [
      {
        "name": "fnol",
        "state": "active"
      },
      {
        "name": "assign",
        "state": "pending"
      },
      {
        "name": "estimate",
        "state": "pending"
      },
      {
        "name": "repair",
        "state": "pending"
      },
      {
        "name": "settle",
        "state": "pending"
      }
    ],
    "stepCount": 5,
    "asOf": "2026-08-10"
  },
  "evidence": {
    "workflow": "claim-to-repair",
    "dealId": "DEAL-1SRLLT1",
    "vin": "1C6JJTBG8PL577033",
    "state": "accepted",
    "currentStep": "fnol",
    "steps": [
      {
        "name": "fnol",
        "state": "active"
      },
      {
        "name": "assign",
        "state": "pending"
      },
      {
        "name": "estimate",
        "state": "pending"
      },
      {
        "name": "repair",
        "state": "pending"
      },
      {
        "name": "settle",
        "state": "pending"
      }
    ],
    "stepCount": 5,
    "asOf": "2026-08-10"
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "workflow-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": true
  }
}

Input

FieldTypeRequiredNotes
workflowstringyesconst claim-to-repair
vinstringyes
dealTypestringnoconst COLLISION_CLAIM
claimstringnoclm_… originating FNOL
authoritystringnomnd_… — required when delegated

Answers

A typed OK envelope carrying Deal@1. Every fact inside it is an evidence object — { value, source, timestamp, verification } — and act-minted facts carry a dereferenceable pointer to the event that minted them. Absence is typed (EMPTY), never a faked 200.

The gate

This capability is keyed — mint an anonymous key with POST /keys; no account, no email.

When an agent acts on a principal's behalf, a typed Mandate is required — { ceiling, perAction, expires, tripwires }. The ceiling is a field, not a conversation; sub-delegation only narrows it.

How it runs

Modeled end to end — the stategraph it advances, the actors and messages it sequences, its decision logic, and its flow of funds. Delete the workflow and every leaf still transacts on its own address.

(a) Stategraph

(b) Sequence

(c) Supplement / total-loss pivot sub-logic

(d) Flow of funds

Emits

On success this capability appends to the record and emits:

Subscribe on the universal /webhooks rail, or replay from the subject snapshot.


Generated from the catalog descriptor. It shows only what the descriptor declares — the provider behind a fact is never named here; evidence source names the attesting authority at the estate's own level of abstraction.