Agents Streaming API (SSE)
Phoenix provides an interactive streaming endpoint for agent-style chat interactions. This endpoint streams output and tool events using Server-Sent Events (SSE).
Endpoint
POST /api/agents
Auth: Session-based (browser or trusted service session). This endpoint is intended for interactive use.
Headers:
Accept: text/event-streamContent-Type: application/json
Request Body
{
"messages": [{"role": "user", "content": "Find top competitors for Salesforce"}],
"organizationSlug": "phoenix",
"provider": "openai",
"model": "gpt-4o-mini",
"conversationId": "optional"
}
Streaming Response (SSE)
Events are emitted as SSE frames:
event: messagedata: { "delta": "..." }
event: tool_startdata: { "toolCallId": "...", "toolName": "...", "arguments": { ... } }
event: tool_resultdata: { "toolCallId": "...", "result": "..." }
event: tool_errordata: { "toolCallId": "...", "error": "..." }
event: donedata: { "finishReason": "stop" }
event: errordata: { "error": "...", "details": "..." }
Example stream:
event: message
data: {"delta":"Let me check..."}
event: tool_start
data: {"toolCallId":"tool_123","toolName":"company_firmographic","arguments":{"domain":"salesforce.com"}}
event: tool_result
data: {"toolCallId":"tool_123","result":"..."}
event: message
data: {"delta":"Here are the competitors..."}
event: done
data: {"finishReason":"stop"}
Notes
- This endpoint is for interactive streaming use. For asynchronous agent runs and artifacts, use the
/api/agents/v1endpoints. - The SSE event schema is stable and intended to support A2A-compatible clients.