Skip to main content
GET
curl (Linux)

Authorizations

Authorization
string
header
required

The token from the agent's discovery file (%ProgramData%\Miru\device-api\device-api.json on Windows). Required over loopback TCP (127.0.0.1:6478 by default on Windows) and accepted by every route; not used over the Unix socket.

Headers

Last-Event-ID
string

Standard SSE reconnection header. Used as the replay cursor if after query parameter is not provided. If the cursor is older than the earliest retained event, the server returns 410 Gone.

Query Parameters

after
integer<int64>

Event ID cursor to resume from. Retained events with id greater than this value are replayed, then live events follow. If the cursor is older than the earliest retained event, the server returns 410 Gone. Takes precedence over the Last-Event-ID header.

types
string[]

Event types to receive. If omitted, all event types are sent.

Response

200 - text/event-stream

SSE event stream. Each event is delivered as an SSE frame with id, event, and data fields. Events are delivered at-least-once, so deduplicate by event id. A ": heartbeat" comment is sent immediately when the connection opens, and again every 30 seconds while the stream is idle. Comments carry no data and should be ignored by clients.

object
enum<string>
required

The object type, which is always event.

Available options:
event
Example:

"event"

id
integer<int64>
required

Monotonically increasing event ID. Used as the SSE id field and for replay cursors.

Example:

42

type
string
required

Event type string in the format {resource}.{action}.

Example:

"deployment.deployed"

occurred_at
string<date-time>
required

Timestamp of when the event occurred.

Example:

"2026-03-10T12:00:00Z"

data
object
required

Event-specific payload. Shape varies by event type.