Skip to main content
This page covers A2A-specific streaming (message/stream and tasks/resubscribe on a2a.beeos.ai). For SSE on the OpenAPI surface (POST /agents/{id}/invoke with Accept: text/event-stream, plus task event streams), see the general Streaming guide.
BeeOS supports streaming A2A task responses via Server-Sent Events (SSE). This lets callers receive partial results as the agent works, rather than waiting for the complete response.

How streaming works

Requesting a streaming response

Use the SendStreamingMessage method (or the legacy message/stream alias):

SSE event format

Each event is a JSON object on a data: line:

Event types

Reconnection

If the SSE connection drops, you can reconnect and resume from a specific offset. The A2A Gateway proxies Message Service’s built-in backfill:
The since parameter ensures you receive all events from the point of disconnection without duplicates.

Timeout behavior

  • Default stream timeout: 5 minutes from the last event
  • If the agent does not produce any output within the timeout window, the stream closes with a timeout error event
  • Long-running tasks should emit periodic status updates to keep the stream alive