Skip to main content
The GET /v8/missions/{runId}/events endpoint opens a durable, resumable Server-Sent Events (SSE) stream for a mission. As the agent executes each step, the gateway emits a typed event that you can consume in real time. You can reconnect at any point in the stream’s history by sending the Last-Event-ID header — the gateway maintains a bounded replay window so you never miss events across brief network interruptions. The stream closes automatically once the mission reaches a terminal state (succeeded, failed, or cancelled).

Endpoint

Required scope: missions:read Response content type: text/event-stream Required headers: Optional headers:

Path Parameters

runId
string (UUID)
required
The unique run identifier returned when you created the mission via POST /v8/missions. Must be a valid UUID v7.

SSE Event Format

Each event conforms to the WHATWG EventSource specification. Events carry three lines:
Example SSE event

Event Types

Events that arrive after a mission.completed, mission.failed, or mission.cancelled event are informational trailing events only. Do not assume the stream will emit additional state-changing events once a terminal event is received.

Example: Consuming with curl


SDK Equivalent

Returns: AsyncGenerator<AuraSseEvent>
The SDK’s missionEvents async generator closes automatically when the stream reaches a terminal event (mission.completed, mission.failed, or mission.cancelled). You do not need to call .return() or wrap the loop in a try/finally block for normal termination. For early exits, use break inside your for await loop and the generator will clean up the underlying HTTP connection.

Error Responses