Create a session
POST /linc/v1/sessions starts asynchronous provisioning and returns 202 Accepted.
vaultScopes, installed-skill
report, and URLs for state, replay, and live event streams. Missing requested skills are reported
explicitly.
Use vaultScopes when the runtime must see only selected objects. Every entry requires an
objectIds array; an empty array grants no object access in that vault. The older vaultIds
field explicitly grants whole-vault access and is mutually exclusive with vaultScopes. Omitting
both preserves the legacy organization-level session behavior.
Wait for activation
Create a signed webhook endpoint filtered tolinc.session.ready and
linc.session.provisioning_failed, then wait for the event matching the returned session ID. See
Events quickstart for endpoint creation and signature verification.
Use GET /linc/v1/sessions/$SESSION_ID/state only to recover after a missed delivery or inspect a
session; do not poll it for normal provisioning. A runtime that has idle-stopped remains
resumable—the next prompt wakes it and restores its session file.
Send a prompt
Commands use the native Linc RPC envelope. Prompt IDs are idempotency keys, so retry the same request with the same ID if delivery is uncertain.202 Accepted after Linc accepts or rejects the command. Read results from
the event stream or durable replay endpoints.

