cooling
The cooling noun — identity, lifecycle, events, and every capability as an anchored section: 25 capabilities, 0 live, 25 sandbox, 0 declared.
cooling is one of the estate's 317 automotive nouns — a job a car needs done. It carries 25 capabilities: 0 live, 25 sandbox, 0 declared · doors aggregator.vin.
Identity
| Noun | cooling |
| Pillar | Services (facets: 9 data · 10 services · 6 commerce) |
| Capabilities | 25 — 0 live · 25 sandbox · 0 declared |
| Entities | RepairOrder |
| Doors | aggregator.vin |
| SDK | Vin.cooling.* from apis.vin |
| Address | /catalog/cooling#{action} — the anchor IS the wire name minus cooling. |
Events
The vocabulary this noun can append to the record — 37 past-tense, versioned event types, each linked to the capability that emits it:
Cooling.charged@1— emitted bypayCooling.completed@1— emitted byorderCooling.coolantAnalyzed@1— emitted bycoolantAnalysisCooling.diagnosed@1— emitted bydiagnoseCooling.dispatched@1— emitted byorderCooling.estimateRequested@1— emitted byestimateCooling.estimated@1— emitted byestimateCooling.flushFailed@1— emitted byflushCooling.flushRequested@1— emitted byflushCooling.flushed@1— emitted byflushCooling.inspectRequested@1— emitted byinspectCooling.inspected@1— emitted byinspectCooling.leakDetected@1— emitted byleakDetectCooling.ordered@1— emitted byorderCooling.paid@1— emitted bypayCooling.payFailed@1— emitted bypayCooling.payRequested@1— emitted bypayCooling.pressureTested@1— emitted bypressureTestCooling.quoted@1— emitted byquoteCooling.radiatorReplaceFailed@1— emitted byradiatorReplaceCooling.radiatorReplaceRequested@1— emitted byradiatorReplaceCooling.radiatorReplaced@1— emitted byradiatorReplaceCooling.refunded@1— emitted byrefundCooling.repaired@1— emitted byrepairCooling.replaced@1— emitted byreplaceCooling.thermostatReplaceFailed@1— emitted bythermostatReplaceCooling.thermostatReplaceRequested@1— emitted bythermostatReplaceCooling.thermostatReplaced@1— emitted bythermostatReplaceCooling.warrantyClaimFiled@1— emitted bywarrantyClaimCooling.waterPumpReplaced@1— emitted bywaterPumpReplaceCooling.waterpumpReplaceFailed@1— emitted bywaterPumpReplaceCooling.waterpumpReplaceRequested@1— emitted bywaterPumpReplaceCooling.waterpumpReplaced@1— emitted bywaterPumpReplaceOrder.placed@1— emitted byorderServiceOrder.settled@1— emitted byorder·payWarrantyClaim.approved@1— emitted bywarrantyClaimWarrantyClaim.reimbursed@1— emitted bywarrantyClaim
Discover & read
decode
cooling.decode · GET /coolings/decode · gate none · sandbox · answers CoolingDecode@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.decode({"vin":"2T3RFREV8GW466960"})curl 'https://apis.vin/coolings/decode?vin=2T3RFREV8GW466960'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.
{
"type": "OK",
"answers": "CoolingDecode@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"component": "cooling system",
"coolantSpec": "OAT long-life",
"capacityQt": "7.2",
"ratedPressurePsi": 16,
"thermostatOpenF": 195
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"component": "cooling system",
"coolantSpec": "OAT long-life",
"capacityQt": "7.2",
"ratedPressurePsi": 16,
"thermostatOpenF": 195
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}spec
cooling.spec · GET /coolings/spec · gate none · sandbox · answers CoolingSpec@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.spec({"vin":"2T3RFREV8GW466960"})curl 'https://apis.vin/coolings/spec?vin=2T3RFREV8GW466960'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.
{
"type": "OK",
"answers": "CoolingSpec@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"component": "cooling system",
"coolantSpec": "OAT long-life",
"capacityQt": "7.2",
"ratedPressurePsi": 16,
"thermostatOpenF": 195
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"component": "cooling system",
"coolantSpec": "OAT long-life",
"capacityQt": "7.2",
"ratedPressurePsi": 16,
"thermostatOpenF": 195
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}history
cooling.history · GET /coolings/history · gate none · sandbox · answers CoolingHistory@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.history({"vin":"2T3RFREV8GW466960"})curl 'https://apis.vin/coolings/history?vin=2T3RFREV8GW466960'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.
{
"type": "OK",
"answers": "CoolingHistory@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"events": [
{
"date": "2024-03-14",
"kind": "maintenance",
"description": "scheduled cooling system service"
}
],
"count": 1
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"events": [
{
"date": "2024-03-14",
"kind": "maintenance",
"description": "scheduled cooling system service"
}
],
"count": 1
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}status
cooling.status · GET /coolings/status · gate none · sandbox · answers CoolingStatus@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.status({"vin":"2T3RFREV8GW466960"})curl 'https://apis.vin/coolings/status?vin=2T3RFREV8GW466960'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.
{
"type": "OK",
"answers": "CoolingStatus@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"findings": []
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"findings": []
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}healthCheck
cooling.healthCheck · GET /coolings/health-check · gate none · sandbox · answers CoolingHealthCheck@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.healthCheck({"vin":"2T3RFREV8GW466960"})curl 'https://apis.vin/coolings/health-check?vin=2T3RFREV8GW466960'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.
{
"type": "OK",
"answers": "CoolingHealthCheck@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"findings": []
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"findings": []
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}leakDetect
cooling.leakDetect · POST /coolings/leak-detect · gate offer · sandbox · answers CoolingLeakDetect@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.leakDetected@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.leakDetect({"vin":"2T3RFREV8GW466960"})curl -X POST https://apis.vin/coolings/leak-detect \
-H 'content-type: application/json' \
-d '{"vin":"2T3RFREV8GW466960"}'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.
{
"type": "OK",
"answers": "CoolingLeakDetect@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"faults": [],
"faultCount": 0
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"faults": [],
"faultCount": 0
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}failurePredict
cooling.failurePredict · GET /coolings/failure-predict · gate none · sandbox · answers CoolingFailurePredict@1
No input — this capability takes no request body.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.failurePredict()curl 'https://apis.vin/coolings/failure-predict'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.
{
"type": "OK",
"answers": "CoolingFailurePredict@1",
"value": {
"vin": "1HGCM82633A004352",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"failureRiskPct": 8,
"horizonMiles": 12000
},
"evidence": {
"vin": "1HGCM82633A004352",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"failureRiskPct": 8,
"horizonMiles": 12000
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}Quote & price
quote
cooling.quote · POST /coolings/quote · gate offer · sandbox · answers CoolingQuote@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.quoted@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.quote({"vin":"2T3RFREV8GW466960"})curl -X POST https://apis.vin/coolings/quote \
-H 'content-type: application/json' \
-d '{"vin":"2T3RFREV8GW466960"}'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.
{
"type": "OK",
"answers": "CoolingQuote@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"band": "pass",
"estimateId": "EST-5355d89f",
"laborCents": 34100,
"partsCents": 27900,
"subtotalCents": 62000,
"partSource": "aftermarket",
"currency": "USD"
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"band": "pass",
"estimateId": "EST-5355d89f",
"laborCents": 34100,
"partsCents": 27900,
"subtotalCents": 62000,
"partSource": "aftermarket",
"currency": "USD"
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}estimate
cooling.estimate · POST /coolings/estimate · gate offer · sandbox · answers CoolingEstimate@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.estimateRequested@1 · Cooling.estimated@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.estimate({"vin":"2T3RFREV8GW466960"})curl -X POST https://apis.vin/coolings/estimate \
-H 'content-type: application/json' \
-d '{"vin":"2T3RFREV8GW466960"}'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.
{
"type": "OK",
"answers": "CoolingEstimate@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"band": "pass",
"estimateId": "EST-0f9ff39f",
"laborCents": 34100,
"partsCents": 27900,
"subtotalCents": 62000,
"partSource": "aftermarket",
"currency": "USD"
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"band": "pass",
"estimateId": "EST-0f9ff39f",
"laborCents": 34100,
"partsCents": 27900,
"subtotalCents": 62000,
"partSource": "aftermarket",
"currency": "USD"
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}Apply & book
order
cooling.order · POST /coolings/order · gate offer · sandbox · answers CoolingOrder@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.completed@1 · Cooling.dispatched@1 · Cooling.ordered@1 · Order.placed@1 · ServiceOrder.settled@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.order({"vin":"2T3RFREV8GW466960"})curl -X POST https://apis.vin/coolings/order \
-H 'content-type: application/json' \
-d '{"vin":"2T3RFREV8GW466960"}'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.
{
"type": "OK",
"answers": "CoolingOrder@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"workOrder": {
"id": "WO-9d4607bf",
"operation": "order",
"status": "scheduled",
"costCents": 31000,
"currency": "USD"
}
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"workOrder": {
"id": "WO-9d4607bf",
"operation": "order",
"status": "scheduled",
"costCents": 31000,
"currency": "USD"
}
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}Pay & settle
pay
cooling.pay · POST /coolings/pay · gate offer · sandbox · answers CoolingPay@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.charged@1 · Cooling.paid@1 · Cooling.payFailed@1 · Cooling.payRequested@1 · ServiceOrder.settled@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.pay({"vin":"2T3RFREV8GW466960"})curl -X POST https://apis.vin/coolings/pay \
-H 'content-type: application/json' \
-d '{"vin":"2T3RFREV8GW466960"}'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.
{
"type": "OK",
"answers": "CoolingPay@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"payment": {
"id": "PAY-d1c1ba51",
"status": "settled",
"amountCents": 31000,
"currency": "USD"
},
"payer": {
"name": "Ava Good",
"castRow": "super-prime",
"creditTier": "super-prime"
}
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"payment": {
"id": "PAY-d1c1ba51",
"status": "settled",
"amountCents": 31000,
"currency": "USD"
},
"payer": {
"name": "Ava Good",
"castRow": "super-prime",
"creditTier": "super-prime"
}
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}refund
cooling.refund · POST /coolings/refund · gate offer · sandbox · answers CoolingRefund@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.refunded@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.refund({"vin":"2T3RFREV8GW466960"})curl -X POST https://apis.vin/coolings/refund \
-H 'content-type: application/json' \
-d '{"vin":"2T3RFREV8GW466960"}'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.
{
"type": "OK",
"answers": "CoolingRefund@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"refund": {
"id": "RF-ce1a6497",
"status": "issued",
"amountCents": 6200,
"currency": "USD"
},
"payer": {
"name": "Ava Good",
"castRow": "super-prime",
"creditTier": "super-prime"
}
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"refund": {
"id": "RF-ce1a6497",
"status": "issued",
"amountCents": 6200,
"currency": "USD"
},
"payer": {
"name": "Ava Good",
"castRow": "super-prime",
"creditTier": "super-prime"
}
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}Fulfill & operate
repair
cooling.repair · POST /coolings/repair · gate offer · sandbox · answers CoolingRepair@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.repaired@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.repair({"vin":"2T3RFREV8GW466960"})curl -X POST https://apis.vin/coolings/repair \
-H 'content-type: application/json' \
-d '{"vin":"2T3RFREV8GW466960"}'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.
{
"type": "OK",
"answers": "CoolingRepair@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"workOrder": {
"id": "WO-262df0ec",
"operation": "repair",
"status": "scheduled",
"costCents": 31000,
"currency": "USD"
}
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"workOrder": {
"id": "WO-262df0ec",
"operation": "repair",
"status": "scheduled",
"costCents": 31000,
"currency": "USD"
}
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}replace
cooling.replace · POST /coolings/replace · gate offer · sandbox · answers CoolingReplace@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.replaced@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.replace({"vin":"2T3RFREV8GW466960"})curl -X POST https://apis.vin/coolings/replace \
-H 'content-type: application/json' \
-d '{"vin":"2T3RFREV8GW466960"}'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.
{
"type": "OK",
"answers": "CoolingReplace@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"workOrder": {
"id": "WO-07efc6ab",
"operation": "replace",
"status": "scheduled",
"costCents": 31000,
"currency": "USD"
}
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"workOrder": {
"id": "WO-07efc6ab",
"operation": "replace",
"status": "scheduled",
"costCents": 31000,
"currency": "USD"
}
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}diagnose
cooling.diagnose · POST /coolings/diagnose · gate offer · sandbox · answers CoolingDiagnose@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.diagnosed@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.diagnose({"vin":"2T3RFREV8GW466960"})curl -X POST https://apis.vin/coolings/diagnose \
-H 'content-type: application/json' \
-d '{"vin":"2T3RFREV8GW466960"}'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.
{
"type": "OK",
"answers": "CoolingDiagnose@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"faults": [],
"faultCount": 0
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"faults": [],
"faultCount": 0
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}inspect
cooling.inspect · POST /coolings/inspect · gate offer · sandbox · answers CoolingInspect@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.inspectRequested@1 · Cooling.inspected@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.inspect({"vin":"2T3RFREV8GW466960"})curl -X POST https://apis.vin/coolings/inspect \
-H 'content-type: application/json' \
-d '{"vin":"2T3RFREV8GW466960"}'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.
{
"type": "OK",
"answers": "CoolingInspect@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"findings": []
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"findings": []
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}radiatorReplace
cooling.radiatorReplace · POST /coolings/radiator-replace · gate offer · sandbox · answers CoolingRadiatorReplace@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.radiatorReplaceFailed@1 · Cooling.radiatorReplaceRequested@1 · Cooling.radiatorReplaced@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.radiatorReplace({"vin":"2T3RFREV8GW466960"})curl -X POST https://apis.vin/coolings/radiator-replace \
-H 'content-type: application/json' \
-d '{"vin":"2T3RFREV8GW466960"}'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.
{
"type": "OK",
"answers": "CoolingRadiatorReplace@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"workOrder": {
"id": "WO-c03bea9d",
"operation": "radiatorReplace",
"status": "scheduled",
"costCents": 31000,
"currency": "USD"
}
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"workOrder": {
"id": "WO-c03bea9d",
"operation": "radiatorReplace",
"status": "scheduled",
"costCents": 31000,
"currency": "USD"
}
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}thermostatReplace
cooling.thermostatReplace · POST /coolings/thermostat-replace · gate offer · sandbox · answers CoolingThermostatReplace@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.thermostatReplaceFailed@1 · Cooling.thermostatReplaceRequested@1 · Cooling.thermostatReplaced@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.thermostatReplace({"vin":"2T3RFREV8GW466960"})curl -X POST https://apis.vin/coolings/thermostat-replace \
-H 'content-type: application/json' \
-d '{"vin":"2T3RFREV8GW466960"}'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.
{
"type": "OK",
"answers": "CoolingThermostatReplace@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"workOrder": {
"id": "WO-df7ab904",
"operation": "thermostatReplace",
"status": "scheduled",
"costCents": 31000,
"currency": "USD"
}
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"workOrder": {
"id": "WO-df7ab904",
"operation": "thermostatReplace",
"status": "scheduled",
"costCents": 31000,
"currency": "USD"
}
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}waterPumpReplace
cooling.waterPumpReplace · POST /coolings/water-pump-replace · gate offer · sandbox · answers CoolingWaterPumpReplace@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.waterPumpReplaced@1 · Cooling.waterpumpReplaceFailed@1 · Cooling.waterpumpReplaceRequested@1 · Cooling.waterpumpReplaced@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.waterPumpReplace({"vin":"2T3RFREV8GW466960"})curl -X POST https://apis.vin/coolings/water-pump-replace \
-H 'content-type: application/json' \
-d '{"vin":"2T3RFREV8GW466960"}'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.
{
"type": "OK",
"answers": "CoolingWaterPumpReplace@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"workOrder": {
"id": "WO-b83d3706",
"operation": "waterPumpReplace",
"status": "scheduled",
"costCents": 31000,
"currency": "USD"
}
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"workOrder": {
"id": "WO-b83d3706",
"operation": "waterPumpReplace",
"status": "scheduled",
"costCents": 31000,
"currency": "USD"
}
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}Authorize & resolve
warrantyClaim
cooling.warrantyClaim · POST /coolings/warranty-claim · gate offer · sandbox · answers CoolingWarrantyClaim@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.warrantyClaimFiled@1 · WarrantyClaim.approved@1 · WarrantyClaim.reimbursed@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.warrantyClaim({"vin":"2T3RFREV8GW466960"})curl -X POST https://apis.vin/coolings/warranty-claim \
-H 'content-type: application/json' \
-d '{"vin":"2T3RFREV8GW466960"}'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.
{
"type": "OK",
"answers": "CoolingWarrantyClaim@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"warranty": "expired",
"claim": {
"id": "WC-141c2777",
"decision": "denied",
"reason": "coverage-expired"
}
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"warranty": "expired",
"claim": {
"id": "WC-141c2777",
"decision": "denied",
"reason": "coverage-expired"
}
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}warrantyCheck
cooling.warrantyCheck · GET /coolings/warranty-check · gate none · sandbox · answers CoolingWarrantyCheck@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.warrantyCheck({"vin":"2T3RFREV8GW466960"})curl 'https://apis.vin/coolings/warranty-check?vin=2T3RFREV8GW466960'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.
{
"type": "OK",
"answers": "CoolingWarrantyCheck@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"warranty": "expired",
"void": false,
"coverageMilesLeft": 0
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"warranty": "expired",
"void": false,
"coverageMilesLeft": 0
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}More actions
coolantAnalysis
cooling.coolantAnalysis · POST /coolings/coolant-analysis · gate key · sandbox · answers CoolingCoolantAnalysis@1
No input — this capability takes no request body.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.coolantAnalyzed@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.coolantAnalysis()curl -X POST https://apis.vin/coolings/coolant-analysis \
-H 'content-type: application/json' \
-d '{}'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.
{
"type": "OK",
"answers": "CoolingCoolantAnalysis@1",
"value": {
"vin": "1HGCM82633A004352",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"contamination": "none",
"wearMetalsPpm": 25,
"recommendation": "continue normal service interval"
},
"evidence": {
"vin": "1HGCM82633A004352",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"contamination": "none",
"wearMetalsPpm": 25,
"recommendation": "continue normal service interval"
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}coolantCondition
cooling.coolantCondition · GET /coolings/coolant-condition · gate none · sandbox · answers CoolingCoolantCondition@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.coolantCondition({"vin":"2T3RFREV8GW466960"})curl 'https://apis.vin/coolings/coolant-condition?vin=2T3RFREV8GW466960'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.
{
"type": "OK",
"answers": "CoolingCoolantCondition@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"findings": []
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"findings": []
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}flush
cooling.flush · POST /coolings/flush · gate offer · sandbox · answers CoolingFlush@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
The gate is a 402 OFFER — the price and a hard ceiling on the wire, with a durable intent that executes on settlement. Never a wall, never "contact sales". Price: not posted — see /pricing.
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.flushFailed@1 · Cooling.flushRequested@1 · Cooling.flushed@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.flush({"vin":"2T3RFREV8GW466960"})curl -X POST https://apis.vin/coolings/flush \
-H 'content-type: application/json' \
-d '{"vin":"2T3RFREV8GW466960"}'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.
{
"type": "OK",
"answers": "CoolingFlush@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"workOrder": {
"id": "WO-c9989ed5",
"operation": "flush",
"status": "scheduled",
"costCents": 31000,
"currency": "USD"
}
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"workOrder": {
"id": "WO-c9989ed5",
"operation": "flush",
"status": "scheduled",
"costCents": 31000,
"currency": "USD"
}
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}pressureTest
cooling.pressureTest · GET /coolings/pressure-test · gate none · sandbox · answers CoolingPressureTest@1
| Field | Type | Required | Notes |
|---|---|---|---|
vin | string | no | — |
Door — aggregator.vin serves this noun on its two routes: / (the landing) · /2T3RFREV8GW466960 (the VIN lens).
Try it — sandbox: every call answers a deterministic, provenance-labeled simulated payload ({ environment, simulated } in the body). Force any documented outcome with the magic triggers. Going live is a connect, never a ballot: submit the credential at integrates.vin (dealer systems) or connects.vin (consumer accounts) — submissions enter the activation queue and rank live rollout.
Emits — Cooling.pressureTested@1.
import { cooling } from 'apis.vin'
// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await cooling.pressureTest({"vin":"2T3RFREV8GW466960"})curl 'https://apis.vin/coolings/pressure-test?vin=2T3RFREV8GW466960'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.
{
"type": "OK",
"answers": "CoolingPressureTest@1",
"value": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"measurement": "pressureTest",
"reading": 42,
"unit": "index",
"withinSpec": true
},
"evidence": {
"vin": "2T3RFREV8GW466960",
"system": "cooling",
"asOf": "2026-08-10",
"verdict": "pass",
"measurement": "pressureTest",
"reading": 42,
"unit": "index",
"withinSpec": true
},
"provenance": {
"simulated": true,
"environment": "sandbox",
"source": "vehicle-systems-sandbox"
},
"events": [],
"meter": {
"charged": "0.00",
"posted": false
}
}Data model
The record shape behind this noun — one entity, each property an evidence field. See the whole estate model on the data model page.
RepairOrder
Generated from the catalog. Every capability, answer, gate, and entity on this page is a rendered descriptor — it cannot drift from the wire.
contractsInTransit
The contractsInTransit noun — identity, lifecycle, events, and every capability as an anchored section: 5 capabilities, 0 live, 5 sandbox, 0 declared.
courtesyTransport
The courtesyTransport noun — identity, lifecycle, events, and every capability as an anchored section: 12 capabilities, 0 live, 12 sandbox, 0 declared.