Stream changes to the sessions gestalt as Server-Sent Events
Streams changes to unclassified public root sessions in the requested window as gestalt.change events whose data is a SessionGestaltChange and whose id is the frame’s read timestamp. Resume from a snapshot’s as_of via after, or from the last frame via after or Last-Event-ID. A gestalt.reset event means more changed than one frame carries: take a fresh snapshot, then reconnect from its as_of. Classified updates and deletes are omitted. Each stream holds a server-side slot and is capped separately from request rate, so close it when done.
Authorizations
A Recursion API key, created in the console under API keys.
Headers
RFC 3339 read timestamp to resume from when after is absent. Required one way or the other, and rejected once more than 30 days old: take a new snapshot instead.
Optional tenant consistency check. When present, it must name the tenant bound to the API key, including when x-organization-id is default.
1Organization in which to act. Required for a tenant-scoped API key. Optional for an organization-scoped key, where it must name that same organization. The value may be an organization id or default.
1Query Parameters
The same agent_id filter used for the snapshot.
RFC 3339 start of the window, the same value the snapshot was taken with.
RFC 3339 read timestamp to resume from: the snapshot's as_of, or the last frame's. The Last-Event-ID header is honoured when this is absent. Required one way or the other, and rejected once more than 30 days old: take a new snapshot instead.
Response
A UTF-8 server-sent event stream. Each canonical event frame carries one session-gestalt change or stream error as JSON in its data field.
UTF-8 server-sent event wire stream. The JSON schema for each framed data value is declared by x-recursion-sse-data-schema.