docs.vin

fleet

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

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

Identity

Nounfleet
PillarData (facets: 7 data · 6 services · 5 commerce)
Capabilities18 — 0 live · 18 sandbox · 0 declared
EntitiesParty
Doorsaggregator.vin · fleet.vin
SDKVin.fleet.* from apis.vin
Address/catalog/fleet#{action} — the anchor IS the wire name minus fleet.

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

lookup

fleet.lookup · GET /fleets/lookup · gate none · sandbox · answers FleetLookup@1

FieldTypeRequiredNotes
vinstringno

Doorfleet.vin serves this noun on its two routes: / (the landing) · /1FA6P8AM4H5302076 (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 — fleet.lookup
import { fleet } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await fleet.lookup({"vin":"1FA6P8AM4H5302076"})
GET /fleets/lookup
curl 'https://apis.vin/fleets/lookup?vin=1FA6P8AM4H5302076'

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:11.644Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetLookup@1",
  "value": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "fleet": {
      "id": "FLT-53de9f6b",
      "class": "managed-fleet",
      "units": 11,
      "domicile": "estate-yard"
    }
  },
  "evidence": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "fleet": {
      "id": "FLT-53de9f6b",
      "class": "managed-fleet",
      "units": 11,
      "domicile": "estate-yard"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

read

fleet.read · GET /fleets/read · gate none · sandbox · answers FleetRead@1

FieldTypeRequiredNotes
vinstringno

Doorfleet.vin serves this noun on its two routes: / (the landing) · /1FA6P8AM4H5302076 (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 — fleet.read
import { fleet } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await fleet.read({"vin":"1FA6P8AM4H5302076"})
GET /fleets/read
curl 'https://apis.vin/fleets/read?vin=1FA6P8AM4H5302076'

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:11.652Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetRead@1",
  "value": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "fleet": {
      "id": "FLT-53de9f6b",
      "class": "managed-fleet",
      "units": 11,
      "domicile": "estate-yard"
    }
  },
  "evidence": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "fleet": {
      "id": "FLT-53de9f6b",
      "class": "managed-fleet",
      "units": 11,
      "domicile": "estate-yard"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

utilization

fleet.utilization · GET /fleets/utilization · gate key · sandbox · answers FleetUtilization@1

FieldTypeRequiredNotes
vinstringno

Doorfleet.vin serves this noun on its two routes: / (the landing) · /1FA6P8AM4H5302076 (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 — fleet.utilization
import { fleet } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await fleet.utilization({"vin":"1FA6P8AM4H5302076"})
GET /fleets/utilization
curl 'https://apis.vin/fleets/utilization?vin=1FA6P8AM4H5302076'

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:11.655Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetUtilization@1",
  "value": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "utilization": {
      "vin": "1FA6P8AM4H5302076",
      "pct": 11,
      "basisMiles": 27158
    }
  },
  "evidence": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "utilization": {
      "vin": "1FA6P8AM4H5302076",
      "pct": 11,
      "basisMiles": 27158
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

Quote & price

quote

fleet.quote · POST /fleets/quote · gate offer · sandbox · answers FleetQuote@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.

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

EmitsFleet.failed@1 · Fleet.quoted@1.

the SDK — fleet.quote
import { fleet } from 'apis.vin'

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

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:11.645Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetQuote@1",
  "value": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "quote": {
      "id": "FQ-a4f6c572",
      "kind": "fleet-management",
      "units": 11,
      "unitFeeCents": 4500,
      "amountCents": 49500,
      "currency": "USD",
      "status": "extended"
    }
  },
  "evidence": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "quote": {
      "id": "FQ-a4f6c572",
      "kind": "fleet-management",
      "units": 11,
      "unitFeeCents": 4500,
      "amountCents": 49500,
      "currency": "USD",
      "status": "extended"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

Apply & book

order

fleet.order · POST /fleets/order · gate offer · sandbox · answers FleetOrder@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.

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

EmitsFleet.failed@1 · Fleet.ordered@1 · Fleet.requested@1.

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

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

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:11.644Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetOrder@1",
  "value": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "order": {
      "id": "ORD-54f259a6",
      "item": "fleet-unit",
      "status": "placed",
      "amountCents": 1850000,
      "currency": "USD"
    },
    "payer": {
      "name": "Ava Good",
      "castRow": "super-prime",
      "creditTier": "super-prime"
    }
  },
  "evidence": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "order": {
      "id": "ORD-54f259a6",
      "item": "fleet-unit",
      "status": "placed",
      "amountCents": 1850000,
      "currency": "USD"
    },
    "payer": {
      "name": "Ava Good",
      "castRow": "super-prime",
      "creditTier": "super-prime"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

enroll

fleet.enroll · POST /fleets/enroll · gate offer · sandbox · answers FleetEnroll@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.

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

EmitsFleet.enrolled@1.

the SDK — fleet.enroll
import { fleet } from 'apis.vin'

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

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:11.629Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetEnroll@1",
  "value": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "enrollment": {
      "vin": "1FA6P8AM4H5302076",
      "status": "already-enrolled",
      "keepPosition": "Monitoring"
    }
  },
  "evidence": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "enrollment": {
      "vin": "1FA6P8AM4H5302076",
      "status": "already-enrolled",
      "keepPosition": "Monitoring"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

register

fleet.register · POST /fleets/register · gate offer · sandbox · answers FleetRegister@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.

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

EmitsFleet.registered@1.

the SDK — fleet.register
import { fleet } from 'apis.vin'

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

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:11.653Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetRegister@1",
  "value": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "enrollment": {
      "vin": "1FA6P8AM4H5302076",
      "status": "already-enrolled",
      "keepPosition": "Monitoring"
    }
  },
  "evidence": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "enrollment": {
      "vin": "1FA6P8AM4H5302076",
      "status": "already-enrolled",
      "keepPosition": "Monitoring"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

onboard

fleet.onboard · POST /fleets/onboard · gate offer · sandbox · answers FleetOnboard@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.

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

EmitsFleet.onboarded@1.

the SDK — fleet.onboard
import { fleet } from 'apis.vin'

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

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:11.644Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetOnboard@1",
  "value": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "enrollment": {
      "vin": "1FA6P8AM4H5302076",
      "status": "already-enrolled",
      "keepPosition": "Monitoring"
    }
  },
  "evidence": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "enrollment": {
      "vin": "1FA6P8AM4H5302076",
      "status": "already-enrolled",
      "keepPosition": "Monitoring"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

assign

fleet.assign · POST /fleets/assign · gate offer · sandbox · answers FleetAssign@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.

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

EmitsFleet.assigned@1.

the SDK — fleet.assign
import { fleet } from 'apis.vin'

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

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:11.613Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetAssign@1",
  "value": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "assignment": {
      "vin": "1FA6P8AM4H5302076",
      "driver": {
        "name": "Ava Good",
        "castRow": "super-prime",
        "creditTier": "super-prime"
      },
      "status": "assigned"
    }
  },
  "evidence": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "assignment": {
      "vin": "1FA6P8AM4H5302076",
      "driver": {
        "name": "Ava Good",
        "castRow": "super-prime",
        "creditTier": "super-prime"
      },
      "status": "assigned"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

credential

fleet.credential · POST /fleets/credential · gate offer · sandbox · answers FleetCredential@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.

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

EmitsFleet.credentialed@1.

the SDK — fleet.credential
import { fleet } from 'apis.vin'

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

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:11.615Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetCredential@1",
  "value": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "credential": {
      "id": "CRD-de5160eb",
      "driver": {
        "name": "Ava Good",
        "castRow": "super-prime",
        "creditTier": "super-prime"
      },
      "kind": "driver-credential",
      "status": "active"
    }
  },
  "evidence": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "credential": {
      "id": "CRD-de5160eb",
      "driver": {
        "name": "Ava Good",
        "castRow": "super-prime",
        "creditTier": "super-prime"
      },
      "kind": "driver-credential",
      "status": "active"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

upfitOrder

fleet.upfitOrder · POST /fleets/upfit-order · gate key · sandbox · answers FleetUpfitOrder@1

No input — this capability takes no request body.

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

EmitsFleet.upfitOrdered@1.

the SDK — fleet.upfitOrder
import { fleet } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await fleet.upfitOrder()
POST /fleets/upfit-order
curl -X POST https://apis.vin/fleets/upfit-order \
  -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.

receipt · executed 2026-08-16T14:50:09.829Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetUpfitOrder@1",
  "value": {
    "vin": "1HGCM82633A004352",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "order": {
      "id": "UF-aff99146",
      "item": "upfit-package",
      "status": "placed",
      "amountCents": 260000,
      "currency": "USD"
    },
    "payer": {
      "name": "Ava Good",
      "castRow": "super-prime",
      "creditTier": "super-prime"
    }
  },
  "evidence": {
    "vin": "1HGCM82633A004352",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "order": {
      "id": "UF-aff99146",
      "item": "upfit-package",
      "status": "placed",
      "amountCents": 260000,
      "currency": "USD"
    },
    "payer": {
      "name": "Ava Good",
      "castRow": "super-prime",
      "creditTier": "super-prime"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

Pay & settle

pay

fleet.pay · POST /fleets/pay · gate offer · sandbox · answers FleetPay@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.

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

EmitsFleet.failed@1 · Fleet.paid@1.

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

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

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:11.644Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetPay@1",
  "value": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "payment": {
      "id": "PAY-e0a5ed68",
      "status": "settled",
      "amountCents": 49500,
      "currency": "USD"
    },
    "payer": {
      "name": "Ava Good",
      "castRow": "super-prime",
      "creditTier": "super-prime"
    }
  },
  "evidence": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "payment": {
      "id": "PAY-e0a5ed68",
      "status": "settled",
      "amountCents": 49500,
      "currency": "USD"
    },
    "payer": {
      "name": "Ava Good",
      "castRow": "super-prime",
      "creditTier": "super-prime"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

mileageCapture

fleet.mileageCapture · GET /fleets/mileage-capture · gate none · sandbox · answers FleetMileageCapture@1

No input — this capability takes no request body.

Dooraggregator.vin serves this noun on its two routes: / (the landing) · /1FA6P8AM4H5302076 (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 — fleet.mileageCapture
import { fleet } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await fleet.mileageCapture()
GET /fleets/mileage-capture
curl 'https://apis.vin/fleets/mileage-capture'

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-16T14:50:09.828Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetMileageCapture@1",
  "value": {
    "vin": "1HGCM82633A004352",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "capture": {
      "odometerMiles": 32490,
      "unit": "mi",
      "method": "telematics"
    }
  },
  "evidence": {
    "vin": "1HGCM82633A004352",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "capture": {
      "odometerMiles": 32490,
      "unit": "mi",
      "method": "telematics"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

consolidatedBill

fleet.consolidatedBill · POST /fleets/consolidated-bill · gate offer · sandbox · answers FleetConsolidatedBill@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.

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

EmitsFleet.consolidatedBilled@1 · Fleet.failed@1.

the SDK — fleet.consolidatedBill
import { fleet } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await fleet.consolidatedBill({"vin":"1FA6P8AM4H5302076"})
POST /fleets/consolidated-bill
curl -X POST https://apis.vin/fleets/consolidated-bill \
  -H 'content-type: application/json' \
  -d '{"vin":"1FA6P8AM4H5302076"}'

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:11.613Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetConsolidatedBill@1",
  "value": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "bill": {
      "id": "FB-44a40e4c",
      "kind": "consolidated",
      "units": 11,
      "amountCents": 49500,
      "currency": "USD",
      "status": "issued"
    },
    "payer": {
      "name": "Ava Good",
      "castRow": "super-prime",
      "creditTier": "super-prime"
    }
  },
  "evidence": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "bill": {
      "id": "FB-44a40e4c",
      "kind": "consolidated",
      "units": 11,
      "amountCents": 49500,
      "currency": "USD",
      "status": "issued"
    },
    "payer": {
      "name": "Ava Good",
      "castRow": "super-prime",
      "creditTier": "super-prime"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

Lifecycle & state

deactivate

fleet.deactivate · POST /fleets/deactivate · gate offer · sandbox · answers FleetDeactivate@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.

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

EmitsFleet.deactivated@1.

the SDK — fleet.deactivate
import { fleet } from 'apis.vin'

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

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:11.621Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetDeactivate@1",
  "value": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "enrollment": {
      "vin": "1FA6P8AM4H5302076",
      "status": "deactivated"
    }
  },
  "evidence": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "enrollment": {
      "vin": "1FA6P8AM4H5302076",
      "status": "deactivated"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

More actions

roster

fleet.roster · GET /fleets/roster · gate key · sandbox · answers FleetRoster@1

FieldTypeRequiredNotes
vinstringno

Doorfleet.vin serves this noun on its two routes: / (the landing) · /1FA6P8AM4H5302076 (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 — fleet.roster
import { fleet } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await fleet.roster({"vin":"1FA6P8AM4H5302076"})
GET /fleets/roster
curl 'https://apis.vin/fleets/roster?vin=1FA6P8AM4H5302076'

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:11.653Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetRoster@1",
  "value": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "roster": {
      "units": 11,
      "vins": [
        "1FKEEPREG1STERED0",
        "1FKEEPVER1F1ED000",
        "1FKEEPM0N1T0R0000",
        "1FKEEPSVCDUE00000",
        "1FKEEPRECALL00000",
        "1FKEEPMA1NT000000",
        "1FKEEP1NSERV1CE00",
        "1FKEEPLAPS1NG0000",
        "1FKEEPLAPSED00000",
        "1FKEEPVALUED00000",
        "1FKEEPD1SP0SED000"
      ]
    }
  },
  "evidence": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "roster": {
      "units": 11,
      "vins": [
        "1FKEEPREG1STERED0",
        "1FKEEPVER1F1ED000",
        "1FKEEPM0N1T0R0000",
        "1FKEEPSVCDUE00000",
        "1FKEEPRECALL00000",
        "1FKEEPMA1NT000000",
        "1FKEEP1NSERV1CE00",
        "1FKEEPLAPS1NG0000",
        "1FKEEPLAPSED00000",
        "1FKEEPVALUED00000",
        "1FKEEPD1SP0SED000"
      ]
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

tco

fleet.tco · GET /fleets/tco · gate key · sandbox · answers FleetTco@1

FieldTypeRequiredNotes
vinstringno

Doorfleet.vin serves this noun on its two routes: / (the landing) · /1FA6P8AM4H5302076 (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 — fleet.tco
import { fleet } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await fleet.tco({"vin":"1FA6P8AM4H5302076"})
GET /fleets/tco
curl 'https://apis.vin/fleets/tco?vin=1FA6P8AM4H5302076'

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:11.653Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetTco@1",
  "value": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "tco": {
      "vin": "1FA6P8AM4H5302076",
      "amountCents": 1073844,
      "currency": "USD",
      "perMileCents": 18
    }
  },
  "evidence": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "tco": {
      "vin": "1FA6P8AM4H5302076",
      "amountCents": 1073844,
      "currency": "USD",
      "perMileCents": 18
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

telematics

fleet.telematics · GET /fleets/telematics · gate key · sandbox · answers FleetTelematics@1

FieldTypeRequiredNotes
vinstringno

Doorfleet.vin serves this noun on its two routes: / (the landing) · /1FA6P8AM4H5302076 (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 — fleet.telematics
import { fleet } from 'apis.vin'

// the gate law is in the type system: Answer<T> = Ok | Empty | Blocked | Offer
const answer = await fleet.telematics({"vin":"1FA6P8AM4H5302076"})
GET /fleets/telematics
curl 'https://apis.vin/fleets/telematics?vin=1FA6P8AM4H5302076'

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:11.653Z · HTTP 200
{
  "type": "OK",
  "answers": "FleetTelematics@1",
  "value": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "telematics": {
      "status": "offline",
      "connection": "expired"
    }
  },
  "evidence": {
    "vin": "1FA6P8AM4H5302076",
    "noun": "fleet",
    "asOf": "2026-08-10",
    "fleetId": "FLT-53de9f6b",
    "telematics": {
      "status": "offline",
      "connection": "expired"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "freight-fleet-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.

Party


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