Threads

Submit Tool Outputs (Simplified)

Submit tool outputs for a thread in a single JSON call — no path parameters, no run_id. The server resolves the run from the latest REQUIRES_ACTION assistant message on the thread.

Body: {thread_id, tool_outputs: [{tool_call_id, output}], stream?, thinking?} — same entry shape as the original endpoint. Optional thinking overrides reasoning for this continuation round; omit it to reuse the run's original thinking config.

For explicit run-pinning or per-run tool overrides, use the original POST /threads/{thread_id}/runs/{run_id}/submit-tool-outputs.

post/threads/tool-outputs

Headers

authorizationstring nullable
x_session_tokenstring nullable

Request body

thread_idstring uuid required

Thread UUID the outputs belong to.

streamboolean nullable

Whether to stream the response.

Response

Successful Response

messagestring required
thread_idstring uuid required
run_idstring required
contentstring nullable
message_idstring uuid nullable
role'user' | 'assistant' | 'tool'
status'IN_PROGRESS' | 'REQUIRES_ACTION' | 'COMPLETED' | 'FAILED' | 'CANCELLED'
tool_callsobject[] nullable
memory_operation_idstring nullable
retrieved_filesstring[] nullable
retrieved_files_countinteger
reasoningstring nullable
model_providerstring nullable
model_namestring nullable
input_tokensinteger nullable
output_tokensinteger nullable
total_tokensinteger nullable
created_atstring date-time nullable
timestampstring date-time required
context_usageobject nullable

Changes