API Reference

A thin API that turns decisions into portable records, then publishes into VMS systems via adapters.

Core
Intent → Plan → Preflight → Publish
MethodPathSummaryRequestResponse
POST/intentCreate an intent record (returns intent_id).IntentCreateRequestIntentRecord
PATCH/intent/{intent_id}Patch diagnostics/routing/admin fields.IntentPatchRequestIntentRecord
POST/planApply Channel Map to determine target destination(s).PlanGenerateRequestPlanGenerateResponse
POST/preflightValidate required fields and transforms; returns enrichment gaps.PreflightRequestPreflightResponse
POST/publishIdempotent publish via adapter; records external IDs.PublishRequestPublishResponse
Example flow (pseudo) expand
POST /intent → { intent_id } PATCH /intent/{intent_id} → attach diagnostics/routing/admin POST /plan → select destination(s) via Channel Map POST /preflight → missing_fields[] (if any) POST /publish → external_id + receipts
Meta
Platform variability (capabilities + requirements)

This is the “linked destination” layer: what objects/operations exist, what fields are required, and which features are supported.

MethodPathPurpose
GET/platformsList platforms and doc availability.
GET/destinationsList connected tenants (“linked accounts”).
GET/destinations/{id}/capabilitiesCapability matrix + required fields per object/op.
Operations
Passthrough, webhooks, reconciliation, enrichment loop

Passthrough

Use when a platform field/endpoint isn’t in the canonical model. Still anchors the call to the Intent ID and timeline.

POST /passthrough

Reconciliation

Detect drift when humans change the VMS directly. Produces a report and can trigger follow-up actions.

POST /reconcile

Webhooks (back-sync)

Update intent state when a VMS object changes (cancelled, updated rate, status changed).

POST /webhooks/{platform}

Enrichment loop

If preflight fails due to missing platform-required fields, emit an enrichment request back to Triage/Intake.

POST /enrichment-request