Skip to content

SSE (Server-Sent Events)

Server-Sent Events are a one-way HTTP stream: the server pushes, the client listens. Restorm makes it a request type in its own right.

Right-click in the tree ▸ Add ▸ SSE request.

A connected SSE tab: on the right, each event received appears with its timestamp, its name ("ping") and its sequence-number payload.

FieldRole
URLThe stream’s endpoint
HeadersThe opening request’s headers — this is where authentication travels
Last event identifierSeed value for the Last-Event-ID header, sent on the first connection only

Restorm follows the EventSource specification: it parses the event:, data:, id: and retry: fields, and shows each event received with its timestamp, its name and its payload — clicking an event unfolds its full content. The identifier is remembered for reconnection.

If the stream is cut, reconnection automatically re-sends the last identifier received in Last-Event-ID — which is what lets the server pick up where it left off.

The stream is receive-only: there is nothing to send once the connection is open.

Two actions: SSE connect (connected and message outputs, one emission per event received) and SSE close. See Connections and streams.

The usual pattern: open the stream, trigger the business action with an HTTP call, then check with an assertion that the expected event does indeed arrive on the message port.

Three targets: cURL, the browser’s EventSource, Python (streaming requests).