Skip to navigation

Send a message to a thread

View as Markdown

Adds a turn to a thread. If the latest run in the thread is still live (not terminal, not paused) the message steers it in place; otherwise a successor run is started in the same thread, carrying the previous conversation forward as context (spec §A.4). A thread holds at most one non-terminal run. Authorization: whoever may contribute to the thread’s container — its owner for a desk thread, any holder of space:contribute for a thread in a space (everyone else gets 404). Gated by AGENTS_ENABLED; disabled → 404. Returns { threadId, runId, steered, status, spaceId } — 200 when steered, 201 for a successor run. 409 agent_busy when the run’s steering queue is full: with several participants that is routine, so retry after retryAfterMs (default ~3 s) rather than surfacing an error.

Authentication

AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Path parameters

threadIdstringRequired

Request

This endpoint expects an object.
messagestringRequired1-4000 characters

Response

The steered run.
threadIdstring
runIdstring
steeredboolean
statusstring
spaceIdstring

Errors

404
Not Found Error
409
Conflict Error