docs.vin

advisor

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

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

Identity

Nounadvisor
PillarServices (facets: 3 data · 5 services · 2 commerce)
Capabilities10 — 0 live · 10 sandbox · 0 declared
EntitiesParty
Doorsaggregator.vin
SDKVin.advisor.* from apis.vin
Address/catalog/advisor#{action} — the anchor IS the wire name minus advisor.

Events

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

Discover & read

availability

advisor.availability · GET /advisors/availability · gate none · sandbox · answers AdvisorAvailability@1

FieldTypeRequiredNotes
vinstringno

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

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

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:07.162Z · HTTP 200
{
  "type": "OK",
  "answers": "AdvisorAvailability@1",
  "value": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "availability": {
      "nextSlot": "2026-08-11",
      "slotsPerDay": 8,
      "openJobs": 5,
      "openSlots": 3
    }
  },
  "evidence": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "availability": {
      "nextSlot": "2026-08-11",
      "slotsPerDay": 8,
      "openJobs": 5,
      "openSlots": 3
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "desk-people-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

Apply & book

assign

advisor.assign · POST /advisors/assign · gate offer · sandbox · answers AdvisorAssign@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.

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

EmitsAdvisor.assignRequested@1 · Advisor.assigned@1.

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

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

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:07.162Z · HTTP 200
{
  "type": "OK",
  "answers": "AdvisorAssign@1",
  "value": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "assignment": {
      "status": "assigned",
      "advisor": {
        "partyId": "ID-24c9945b",
        "name": "The Estate Service Advisor"
      },
      "roId": "RO-487b18f2",
      "technicianId": "TECH-eeb8ceaa"
    }
  },
  "evidence": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "assignment": {
      "status": "assigned",
      "advisor": {
        "partyId": "ID-24c9945b",
        "name": "The Estate Service Advisor"
      },
      "roId": "RO-487b18f2",
      "technicianId": "TECH-eeb8ceaa"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "desk-people-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

commission

advisor.commission · POST /advisors/commission · gate offer · sandbox · answers AdvisorCommission@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.

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

EmitsAdvisor.commissionRequested@1 · Advisor.commissioned@1.

the SDK — advisor.commission
import { advisor } from 'apis.vin'

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

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:07.163Z · HTTP 200
{
  "type": "OK",
  "answers": "AdvisorCommission@1",
  "value": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "commission": {
      "rateBp": 500,
      "baseCents": 59000,
      "amountCents": 2950,
      "currency": "USD",
      "roId": "RO-487b18f2"
    }
  },
  "evidence": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "commission": {
      "rateBp": 500,
      "baseCents": 59000,
      "amountCents": 2950,
      "currency": "USD",
      "roId": "RO-487b18f2"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "desk-people-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

Pay & settle

pay

advisor.pay · POST /advisors/pay · gate offer · sandbox · answers AdvisorPay@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.

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

EmitsAdvisor.paid@1 · Advisor.payFailed@1 · Advisor.payRequested@1.

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

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

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:07.175Z · HTTP 200
{
  "type": "OK",
  "answers": "AdvisorPay@1",
  "value": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "payment": {
      "id": "APY-bad76a24",
      "amountCents": 2950,
      "currency": "USD",
      "status": "settled"
    },
    "payer": {
      "name": "Ava Good",
      "castRow": "super-prime",
      "creditTier": "super-prime"
    }
  },
  "evidence": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "payment": {
      "id": "APY-bad76a24",
      "amountCents": 2950,
      "currency": "USD",
      "status": "settled"
    },
    "payer": {
      "name": "Ava Good",
      "castRow": "super-prime",
      "creditTier": "super-prime"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "desk-people-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

upsell

advisor.upsell · POST /advisors/upsell · gate offer · sandbox · answers AdvisorUpsell@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.

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

EmitsAdvisor.upsellRequested@1 · Advisor.upsold@1.

the SDK — advisor.upsell
import { advisor } from 'apis.vin'

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

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:07.193Z · HTTP 200
{
  "type": "OK",
  "answers": "AdvisorUpsell@1",
  "value": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "recommendation": {
      "status": "recommended",
      "lines": [
        {
          "system": "fuelSystem",
          "verdict": "attention"
        },
        {
          "system": "exhaust",
          "verdict": "attention"
        }
      ],
      "roId": "RO-487b18f2"
    }
  },
  "evidence": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "recommendation": {
      "status": "recommended",
      "lines": [
        {
          "system": "fuelSystem",
          "verdict": "attention"
        },
        {
          "system": "exhaust",
          "verdict": "attention"
        }
      ],
      "roId": "RO-487b18f2"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "desk-people-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

More actions

followUp

advisor.followUp · POST /advisors/follow-up · gate offer · sandbox · answers AdvisorFollowUp@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.

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

EmitsAdvisor.followUpRequested@1 · Advisor.followedUp@1.

the SDK — advisor.followUp
import { advisor } from 'apis.vin'

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

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:07.170Z · HTTP 200
{
  "type": "OK",
  "answers": "AdvisorFollowUp@1",
  "value": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "followUp": {
      "status": "sent",
      "threadId": "TH-31e306be",
      "message": {
        "id": "MR-1bcfc3de",
        "kind": "maintenance-reminder"
      },
      "customer": {
        "identityId": "ID-11f17424",
        "name": "Ava Good"
      }
    }
  },
  "evidence": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "followUp": {
      "status": "sent",
      "threadId": "TH-31e306be",
      "message": {
        "id": "MR-1bcfc3de",
        "kind": "maintenance-reminder"
      },
      "customer": {
        "identityId": "ID-11f17424",
        "name": "Ava Good"
      }
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "desk-people-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

greet

advisor.greet · POST /advisors/greet · gate offer · sandbox · answers AdvisorGreet@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.

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

EmitsAdvisor.greetRequested@1 · Advisor.greeted@1.

the SDK — advisor.greet
import { advisor } from 'apis.vin'

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

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:07.170Z · HTTP 200
{
  "type": "OK",
  "answers": "AdvisorGreet@1",
  "value": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "greeting": {
      "status": "walk-in-greeted",
      "customer": {
        "identityId": "ID-11f17424",
        "name": "Ava Good"
      },
      "nextSlot": "2026-08-11"
    }
  },
  "evidence": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "greeting": {
      "status": "walk-in-greeted",
      "customer": {
        "identityId": "ID-11f17424",
        "name": "Ava Good"
      },
      "nextSlot": "2026-08-11"
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "desk-people-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

performance

advisor.performance · GET /advisors/performance · gate none · sandbox · answers AdvisorPerformance@1

FieldTypeRequiredNotes
vinstringno

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

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

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:07.193Z · HTTP 200
{
  "type": "OK",
  "answers": "AdvisorPerformance@1",
  "value": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "performance": {
      "jobsOpen": 5,
      "jobsClosed": 4,
      "byPosition": {
        "Opened": 1,
        "Estimated": 1,
        "Approved": 1,
        "Assigned": 1,
        "Dispatched": 1
      }
    }
  },
  "evidence": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "performance": {
      "jobsOpen": 5,
      "jobsClosed": 4,
      "byPosition": {
        "Opened": 1,
        "Estimated": 1,
        "Approved": 1,
        "Assigned": 1,
        "Dispatched": 1
      }
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "desk-people-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

workload

advisor.workload · GET /advisors/workload · gate none · sandbox · answers AdvisorWorkload@1

FieldTypeRequiredNotes
vinstringno

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

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

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:07.195Z · HTTP 200
{
  "type": "OK",
  "answers": "AdvisorWorkload@1",
  "value": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "workload": {
      "openJobs": 5,
      "byPosition": {
        "Opened": 1,
        "Estimated": 1,
        "Approved": 1,
        "Assigned": 1,
        "Dispatched": 1
      }
    }
  },
  "evidence": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "workload": {
      "openJobs": 5,
      "byPosition": {
        "Opened": 1,
        "Estimated": 1,
        "Approved": 1,
        "Assigned": 1,
        "Dispatched": 1
      }
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "desk-people-sandbox"
  },
  "events": [],
  "meter": {
    "charged": "0.00",
    "posted": false
  }
}

writeUp

advisor.writeUp · POST /advisors/write-up · gate offer · sandbox · answers AdvisorWriteUp@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.

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

EmitsAdvisor.writeUpRequested@1 · Advisor.writtenUp@1.

the SDK — advisor.writeUp
import { advisor } from 'apis.vin'

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

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:07.195Z · HTTP 200
{
  "type": "OK",
  "answers": "AdvisorWriteUp@1",
  "value": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "writeUp": {
      "roId": "RO-487b18f2",
      "position": "InProgress",
      "concerns": [
        {
          "system": "fuelSystem",
          "verdict": "attention"
        },
        {
          "system": "exhaust",
          "verdict": "attention"
        }
      ],
      "totalCents": 59000,
      "currency": "USD",
      "customer": {
        "identityId": "ID-11f17424",
        "name": "Ava Good"
      }
    }
  },
  "evidence": {
    "vin": "1FM5K8GC4MGA16032",
    "noun": "advisor",
    "asOf": "2026-08-10",
    "partyId": "ID-24c9945b",
    "type": "person",
    "name": "The Estate Service Advisor",
    "identifiers": [
      {
        "kind": "desk",
        "value": "service-drive"
      }
    ],
    "roles": [
      {
        "role": "advisor"
      }
    ],
    "status": "active",
    "writeUp": {
      "roId": "RO-487b18f2",
      "position": "InProgress",
      "concerns": [
        {
          "system": "fuelSystem",
          "verdict": "attention"
        },
        {
          "system": "exhaust",
          "verdict": "attention"
        }
      ],
      "totalCents": 59000,
      "currency": "USD",
      "customer": {
        "identityId": "ID-11f17424",
        "name": "Ava Good"
      }
    }
  },
  "provenance": {
    "simulated": true,
    "environment": "sandbox",
    "source": "desk-people-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

Modeled

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

Advisor · Class model


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