Skip to main content

Create a session

POST /linc/v1/sessions starts asynchronous provisioning and returns 202 Accepted.
The response includes the session ID, provisioning status, exact 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 to linc.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.
The endpoint returns 202 Accepted after Linc accepts or rejects the command. Read results from the event stream or durable replay endpoints.

Cancel or end

Abort only the current turn while preserving the session:
End the session and stop its sandbox:
Deletion revokes the managed session credential and marks the durable session record as ended.