This page lists every version of the public chat API. The current version is 1.2. Minor versions add things and keep existing clients working. Major versions can break clients and come with a deprecation period. See the versioning and deprecation policy.
1.2 (2026-10-29)
Changed
- A session emptied by the workspace retention rule is now refused. Every session route
answers
410withmessage: "Session expired"andcode: "SESSION_EXPIRED". Before, the session answered200with messages that had emptycontent.
Migration
- Handle
410on a session route like401: discard the stored session and create a new one. You can tell the user that the previous conversation expired.
1.1 (2026-10-22)
Added
payload.variableson create a session: an agent can declare{{variables}}in its instructions, and the caller supplies their values at session start. Each value is substituted into the agent’s prompt before every reply.- A declared variable without a caller value falls back to the default configured on the agent’s Embed tab.
- When a declared variable has neither a caller value nor a default, the session is refused
with a
400whose body carriescode: "MISSING_PROMPT_VARIABLES"and themissinglist of variable names.
Migration
- None. Existing clients keep working:
payload.variablesis optional, and agents that declare no{{variables}}behave exactly as before.
1.0 (2026-09-09)
Added
- First versioned release of the public chat API, under
/public/v1/agents/{embedToken}/. - Five routes: agent configuration, create a session, read a session, read MCP App card HTML, send a message and stream the reply.
- The reference page documents the routes, the server-sent events, the error codes, the CORS behavior and the limits.
Migration
- None. This is the first published version of the contract.
Last updated: October 29, 2026
Was this article helpful?
Thanks for your feedback!