Reference
Wire protocol
The request bodies and server-sent events the agent endpoint speaks.
On this page
The endpoint takes POST with a JSON body. A chat turn answers with server-sent events; history actions answer with JSON.
Requests#
{ "threadId"?: string, "message": string, "context"?: unknown }
{ "threadId": string, "approval": { "token": string, "decision": "approve" | "reject" } }
{ "action": "threads.list" }
{ "action": "threads.get", "threadId": string }
{ "action": "threads.delete", "threadId": string }
Events in a turn#
| Event | Meaning |
| --- | --- |
| turn.start | Carries the threadId. |
| text.delta | A piece of the assistant's text. |
| tool.start | The agent began calling an operation. |
| approval.request | The call needs approval. Carries the arguments, a token and an expiry. |
| tool.complete | The call finished: HTTP status, arguments, result, and tags to invalidate. |
| tool.rejected | The user rejected the call. |
| error | A code and a message. |
| turn.end | The turn is over. |