Streams a single assistant turn from a Daytona-backed chat runtime as normalized SSE events with stable turn, message, and part IDs. Emits events: turn.started, turn.status, message.created, message.part.updated, message.completed, session.usage, turn.completed.
When to use this endpoint: Recommended for building custom chat UIs that need real-time streaming progress. This is the primary streaming endpoint for new integrations.
Alternatives:
POST /chat/:id/message — synchronous, returns complete response as JSON (best for server-to-server)API key starting with sk_case_
Chat session ID
Message payload following the AI SDK UIMessage format. The body is passed through 1:1 to the underlying OpenCode session. Currently only text parts are supported.
Optional model override. When provided, the runtime bootstrap config is updated so subsequent turns use this model. Conversation history is preserved.
Message content parts. Currently only "text" type is supported. Additional types (e.g. file, image) may be added in future versions.
Turn-scoped normalized SSE stream
The response is of type string.