docs.vin

emissions

The emissions noun — identity, lifecycle, events, and every capability as an anchored section: 16 capabilities, 0 live, 16 sandbox, 0 declared.

emissions is one of the estate's 317 automotive nouns — a job a car needs done. It carries 16 capabilities: 0 live, 16 sandbox, 0 declared · doors emissions.vin · payments.vin.

Identity

Nounemissions
PillarData (facets: 6 data · 6 services · 4 commerce)
Capabilities16 — 0 live · 16 sandbox · 0 declared
EntitiesInspection
Doorsemissions.vin · payments.vin
SDKVin.emissions.* from apis.vin
Address/catalog/emissions#{action} — the anchor IS the wire name minus emissions.

Events

The vocabulary this noun can append to the record — 13 past-tense, versioned event types, each linked to the capability that emits it:

Discover & read

history

emissions.history · GET /emissions/history · gate none · sandbox · answers EmissionsHistory@1

FieldTypeRequiredNotes
vinstringno

Dooremissions.vin serves this noun on its two routes: / (the landing) · /4S4SLDL62T3045334 (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.

the SDK — emissions.history
import { emissions } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await emissions.history({"vin":"4S4SLDL62T3045334"})
GET /emissions/history
curl 'https://apis.vin/emissions/history?vin=4S4SLDL62T3045334'

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:10.892Z · HTTP 200
{
  "type": "OK",
  "answers": "EmissionsHistory@1",
  "value": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "events": [
      {
        "date": "2024-03-14",
        "kind": "routine",
        "description": "routine emissions test record"
      }
    ]
  },
  "evidence": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "events": [
      {
        "date": "2024-03-14",
        "kind": "routine",
        "description": "routine emissions test record"
      }
    ]
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "compliance-keys-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

resultLookup

emissions.resultLookup · GET /emissions/result-lookup · gate none · sandbox · answers EmissionsResultLookup@1

FieldTypeRequiredNotes
vinstringno

Dooremissions.vin serves this noun on its two routes: / (the landing) · /4S4SLDL62T3045334 (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.

the SDK — emissions.resultLookup
import { emissions } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await emissions.resultLookup({"vin":"4S4SLDL62T3045334"})
GET /emissions/result-lookup
curl 'https://apis.vin/emissions/result-lookup?vin=4S4SLDL62T3045334'

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:10.900Z · HTTP 200
{
  "type": "OK",
  "answers": "EmissionsResultLookup@1",
  "value": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "result": {
      "id": "EMT-c6517efb",
      "result": "pass",
      "verdict": "pass",
      "systems": [
        {
          "system": "engine",
          "verdict": "pass"
        },
        {
          "system": "fuelSystem",
          "verdict": "pass"
        }
      ]
    }
  },
  "evidence": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "result": {
      "id": "EMT-c6517efb",
      "result": "pass",
      "verdict": "pass",
      "systems": [
        {
          "system": "engine",
          "verdict": "pass"
        },
        {
          "system": "fuelSystem",
          "verdict": "pass"
        }
      ]
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "compliance-keys-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

standardLookup

emissions.standardLookup · GET /emissions/standard-lookup · gate none · sandbox · answers EmissionsStandardLookup@1

FieldTypeRequiredNotes
vinstringno

Dooremissions.vin serves this noun on its two routes: / (the landing) · /4S4SLDL62T3045334 (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.

the SDK — emissions.standardLookup
import { emissions } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await emissions.standardLookup({"vin":"4S4SLDL62T3045334"})
GET /emissions/standard-lookup
curl 'https://apis.vin/emissions/standard-lookup?vin=4S4SLDL62T3045334'

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:10.904Z · HTTP 200
{
  "type": "OK",
  "answers": "EmissionsStandardLookup@1",
  "value": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "standard": {
      "regime": "obd-based inspection",
      "passingCriteria": "no active emissions-relevant fault",
      "monitors": [
        "engine",
        "fuelSystem"
      ]
    }
  },
  "evidence": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "standard": {
      "regime": "obd-based inspection",
      "passingCriteria": "no active emissions-relevant fault",
      "monitors": [
        "engine",
        "fuelSystem"
      ]
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "compliance-keys-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

readinessRead

emissions.readinessRead · GET /emissions/readiness-read · gate none · sandbox · answers EmissionsReadinessRead@1

FieldTypeRequiredNotes
vinstringno

Dooremissions.vin serves this noun on its two routes: / (the landing) · /4S4SLDL62T3045334 (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.

the SDK — emissions.readinessRead
import { emissions } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await emissions.readinessRead({"vin":"4S4SLDL62T3045334"})
GET /emissions/readiness-read
curl 'https://apis.vin/emissions/readiness-read?vin=4S4SLDL62T3045334'

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:10.900Z · HTTP 200
{
  "type": "OK",
  "answers": "EmissionsReadinessRead@1",
  "value": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "readiness": {
      "monitors": [
        {
          "monitor": "engine",
          "ready": true
        },
        {
          "monitor": "fuelSystem",
          "ready": true
        }
      ],
      "allReady": true
    }
  },
  "evidence": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "readiness": {
      "monitors": [
        {
          "monitor": "engine",
          "ready": true
        },
        {
          "monitor": "fuelSystem",
          "ready": true
        }
      ],
      "allReady": true
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "compliance-keys-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

exemptionCheck

emissions.exemptionCheck · GET /emissions/exemption-check · gate none · sandbox · answers EmissionsExemptionCheck@1

FieldTypeRequiredNotes
vinstringno

Dooremissions.vin serves this noun on its two routes: / (the landing) · /4S4SLDL62T3045334 (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.

the SDK — emissions.exemptionCheck
import { emissions } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await emissions.exemptionCheck({"vin":"4S4SLDL62T3045334"})
GET /emissions/exemption-check
curl 'https://apis.vin/emissions/exemption-check?vin=4S4SLDL62T3045334'

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:10.881Z · HTTP 200
{
  "type": "OK",
  "answers": "EmissionsExemptionCheck@1",
  "value": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "exemption": {
      "exempt": false
    }
  },
  "evidence": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "exemption": {
      "exempt": false
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "compliance-keys-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

statusCheck

emissions.statusCheck · GET /emissions/status-check · gate none · sandbox · answers EmissionsStatusCheck@1

FieldTypeRequiredNotes
vinstringno

Dooremissions.vin serves this noun on its two routes: / (the landing) · /4S4SLDL62T3045334 (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.

the SDK — emissions.statusCheck
import { emissions } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await emissions.statusCheck({"vin":"4S4SLDL62T3045334"})
GET /emissions/status-check
curl 'https://apis.vin/emissions/status-check?vin=4S4SLDL62T3045334'

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:10.905Z · HTTP 200
{
  "type": "OK",
  "answers": "EmissionsStatusCheck@1",
  "value": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "certificate": {
      "standing": "current",
      "expires": "2027-06-26"
    }
  },
  "evidence": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "certificate": {
      "standing": "current",
      "expires": "2027-06-26"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "compliance-keys-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

Quote & price

certificateFee

emissions.certificateFee · POST /emissions/certificate-fee · gate offer · sandbox · answers EmissionsCertificateFee@1

FieldTypeRequiredNotes
vinstringno

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.

Dooremissions.vin serves this noun on its two routes: / (the landing) · /4S4SLDL62T3045334 (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.

EmitsEmissions.certificateFeeCharged@1.

the SDK — emissions.certificateFee
import { emissions } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await emissions.certificateFee({"vin":"4S4SLDL62T3045334"})
POST /emissions/certificate-fee
curl -X POST https://apis.vin/emissions/certificate-fee \
  -H 'content-type: application/json' \
  -d '{"vin":"4S4SLDL62T3045334"}'

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:10.867Z · HTTP 200
{
  "type": "OK",
  "answers": "EmissionsCertificateFee@1",
  "value": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "fee": {
      "kind": "certificate",
      "amountCents": 2500,
      "currency": "USD"
    }
  },
  "evidence": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "fee": {
      "kind": "certificate",
      "amountCents": 2500,
      "currency": "USD"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "compliance-keys-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

waiverFee

emissions.waiverFee · POST /emissions/waiver-fee · gate offer · sandbox · answers EmissionsWaiverFee@1

FieldTypeRequiredNotes
vinstringno

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.

Dooremissions.vin serves this noun on its two routes: / (the landing) · /4S4SLDL62T3045334 (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.

EmitsEmissions.waiverFeeCharged@1.

the SDK — emissions.waiverFee
import { emissions } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await emissions.waiverFee({"vin":"4S4SLDL62T3045334"})
POST /emissions/waiver-fee
curl -X POST https://apis.vin/emissions/waiver-fee \
  -H 'content-type: application/json' \
  -d '{"vin":"4S4SLDL62T3045334"}'

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:10.909Z · HTTP 200
{
  "type": "OK",
  "answers": "EmissionsWaiverFee@1",
  "value": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "fee": {
      "kind": "waiver",
      "amountCents": 7500,
      "currency": "USD"
    }
  },
  "evidence": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "fee": {
      "kind": "waiver",
      "amountCents": 7500,
      "currency": "USD"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "compliance-keys-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

Apply & book

order

emissions.order · POST /emissions/order · gate offer · sandbox · answers EmissionsTestOrder@1

FieldTypeRequiredNotes
vinstringyes
statestringyes
programstringno
authoritystringno

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.

Delegated calls require a typed Mandate{ ceiling, perAction, expires, tripwires }; the ceiling is a field, not a conversation.

Dooremissions.vin serves this noun on its two routes: / (the landing) · /4S4SLDL62T3045334 (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.

EmitsEmissions.certified@1 · Emissions.ordered@1 · Emissions.tested@1 · Order.placed@1 · ServiceOrder.ordered@1 · ServiceOrder.settled@1.

the SDK — emissions.order
import { emissions } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await emissions.order({"vin":"4S4SLDL62T3045334","state":"state"})
POST /emissions/order
curl -X POST https://apis.vin/emissions/order \
  -H 'content-type: application/json' \
  -d '{"vin":"4S4SLDL62T3045334","state":"state"}'

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:10.892Z · HTTP 200
{
  "type": "OK",
  "answers": "EmissionsTestOrder@1",
  "value": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "order": {
      "id": "ORD-fd5f7121",
      "service": "emissions test",
      "status": "placed",
      "amountCents": 4500,
      "currency": "USD"
    },
    "payer": {
      "name": "Ava Good",
      "castRow": "super-prime",
      "creditTier": "super-prime"
    }
  },
  "evidence": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "order": {
      "id": "ORD-fd5f7121",
      "service": "emissions test",
      "status": "placed",
      "amountCents": 4500,
      "currency": "USD"
    },
    "payer": {
      "name": "Ava Good",
      "castRow": "super-prime",
      "creditTier": "super-prime"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "compliance-keys-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

waiverApply

emissions.waiverApply · POST /emissions/waiver-apply · gate offer · sandbox · answers EmissionsWaiverApply@1

FieldTypeRequiredNotes
vinstringno

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.

Dooremissions.vin serves this noun on its two routes: / (the landing) · /4S4SLDL62T3045334 (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.

EmitsEmissions.waiverApplied@1.

the SDK — emissions.waiverApply
import { emissions } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await emissions.waiverApply({"vin":"4S4SLDL62T3045334"})
POST /emissions/waiver-apply
curl -X POST https://apis.vin/emissions/waiver-apply \
  -H 'content-type: application/json' \
  -d '{"vin":"4S4SLDL62T3045334"}'

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:10.909Z · HTTP 200
{
  "type": "OK",
  "answers": "EmissionsWaiverApply@1",
  "value": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "waiver": {
      "status": "no-failed-test-on-file"
    }
  },
  "evidence": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "waiver": {
      "status": "no-failed-test-on-file"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "compliance-keys-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

Pay & settle

pay

emissions.pay · POST /emissions/pay · gate offer · sandbox · answers EmissionsPayment@1

FieldTypeRequiredNotes
vinstringyes
statestringyes
subjectstringno

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.

Delegated calls require a typed Mandate{ ceiling, perAction, expires, tripwires }; the ceiling is a field, not a conversation.

Doorpayments.vin serves this noun on its two routes: / (the landing) · /4S4SLDL62T3045334 (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.

EmitsEmissions.charged@1 · Order.placed@1 · ServiceOrder.settled@1.

the SDK — emissions.pay
import { emissions } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await emissions.pay({"vin":"4S4SLDL62T3045334","state":"state"})
POST /emissions/pay
curl -X POST https://apis.vin/emissions/pay \
  -H 'content-type: application/json' \
  -d '{"vin":"4S4SLDL62T3045334","state":"state"}'

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:10.897Z · HTTP 200
{
  "type": "OK",
  "answers": "EmissionsPayment@1",
  "value": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "payment": {
      "id": "PAY-bbd513c7",
      "status": "settled",
      "amountCents": 4500,
      "currency": "USD"
    },
    "payer": {
      "name": "Ava Good",
      "castRow": "super-prime",
      "creditTier": "super-prime"
    }
  },
  "evidence": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "payment": {
      "id": "PAY-bbd513c7",
      "status": "settled",
      "amountCents": 4500,
      "currency": "USD"
    },
    "payer": {
      "name": "Ava Good",
      "castRow": "super-prime",
      "creditTier": "super-prime"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "compliance-keys-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

Authorize & resolve

certify

emissions.certify · POST /emissions/certify · gate offer · sandbox · answers EmissionsCertify@1

FieldTypeRequiredNotes
vinstringno

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.

Dooremissions.vin serves this noun on its two routes: / (the landing) · /4S4SLDL62T3045334 (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.

EmitsEmissions.certified@1.

the SDK — emissions.certify
import { emissions } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await emissions.certify({"vin":"4S4SLDL62T3045334"})
POST /emissions/certify
curl -X POST https://apis.vin/emissions/certify \
  -H 'content-type: application/json' \
  -d '{"vin":"4S4SLDL62T3045334"}'

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:10.869Z · HTTP 200
{
  "type": "OK",
  "answers": "EmissionsCertify@1",
  "value": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "certificate": {
      "id": "EMC-0a7cafbe",
      "status": "certified",
      "expires": "2027-06-26"
    }
  },
  "evidence": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "certificate": {
      "id": "EMC-0a7cafbe",
      "status": "certified",
      "expires": "2027-06-26"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "compliance-keys-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

pass

emissions.pass · POST /emissions/pass · gate offer · sandbox · answers EmissionsPass@1

FieldTypeRequiredNotes
vinstringno

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.

Dooremissions.vin serves this noun on its two routes: / (the landing) · /4S4SLDL62T3045334 (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.

EmitsEmissions.passed@1.

the SDK — emissions.pass
import { emissions } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await emissions.pass({"vin":"4S4SLDL62T3045334"})
POST /emissions/pass
curl -X POST https://apis.vin/emissions/pass \
  -H 'content-type: application/json' \
  -d '{"vin":"4S4SLDL62T3045334"}'

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:10.894Z · HTTP 200
{
  "type": "OK",
  "answers": "EmissionsPass@1",
  "value": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "adjudication": {
      "status": "passed",
      "verdict": "pass"
    }
  },
  "evidence": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "adjudication": {
      "status": "passed",
      "verdict": "pass"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "compliance-keys-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

fail

emissions.fail · POST /emissions/fail · gate offer · sandbox · answers EmissionsFail@1

FieldTypeRequiredNotes
vinstringno

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.

Dooremissions.vin serves this noun on its two routes: / (the landing) · /4S4SLDL62T3045334 (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.

EmitsEmissions.failed@1.

the SDK — emissions.fail
import { emissions } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await emissions.fail({"vin":"4S4SLDL62T3045334"})
POST /emissions/fail
curl -X POST https://apis.vin/emissions/fail \
  -H 'content-type: application/json' \
  -d '{"vin":"4S4SLDL62T3045334"}'

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:10.891Z · HTTP 200
{
  "type": "OK",
  "answers": "EmissionsFail@1",
  "value": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "adjudication": {
      "status": "not-failed",
      "verdict": "pass"
    }
  },
  "evidence": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "adjudication": {
      "status": "not-failed",
      "verdict": "pass"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "compliance-keys-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

More actions

retest

emissions.retest · POST /emissions/retest · gate offer · sandbox · answers EmissionsRetest@1

FieldTypeRequiredNotes
vinstringno

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.

Dooremissions.vin serves this noun on its two routes: / (the landing) · /4S4SLDL62T3045334 (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.

EmitsEmissions.retested@1.

the SDK — emissions.retest
import { emissions } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await emissions.retest({"vin":"4S4SLDL62T3045334"})
POST /emissions/retest
curl -X POST https://apis.vin/emissions/retest \
  -H 'content-type: application/json' \
  -d '{"vin":"4S4SLDL62T3045334"}'

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:10.904Z · HTTP 200
{
  "type": "OK",
  "answers": "EmissionsRetest@1",
  "value": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "retest": {
      "status": "nothing-to-retest"
    }
  },
  "evidence": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "retest": {
      "status": "nothing-to-retest"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "compliance-keys-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

test

emissions.test · POST /emissions/test · gate offer · sandbox · answers EmissionsTest@1

FieldTypeRequiredNotes
vinstringno

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.

Dooremissions.vin serves this noun on its two routes: / (the landing) · /4S4SLDL62T3045334 (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.

EmitsEmissions.tested@1.

the SDK — emissions.test
import { emissions } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await emissions.test({"vin":"4S4SLDL62T3045334"})
POST /emissions/test
curl -X POST https://apis.vin/emissions/test \
  -H 'content-type: application/json' \
  -d '{"vin":"4S4SLDL62T3045334"}'

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:10.905Z · HTTP 200
{
  "type": "OK",
  "answers": "EmissionsTest@1",
  "value": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "test": {
      "id": "EMT-c6517efb",
      "result": "pass",
      "verdict": "pass",
      "systems": [
        {
          "system": "engine",
          "verdict": "pass"
        },
        {
          "system": "fuelSystem",
          "verdict": "pass"
        }
      ]
    }
  },
  "evidence": {
    "vin": "4S4SLDL62T3045334",
    "noun": "emissions",
    "asOf": "2026-08-10",
    "test": {
      "id": "EMT-c6517efb",
      "result": "pass",
      "verdict": "pass",
      "systems": [
        {
          "system": "engine",
          "verdict": "pass"
        },
        {
          "system": "fuelSystem",
          "verdict": "pass"
        }
      ]
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "compliance-keys-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.

Inspection

Modeled

The noun drawn out — its record shape, its lifecycle, and how it is exercised end to end. 2 diagrams, rendered from the estate model.

Emissions · Class model

Emissions · State machine


Generated from the catalog. Every capability, answer, gate, and entity on this page is a rendered descriptor — it cannot drift from the wire.