Skip to content

Realtime WebSocket and SSE

Thiago Miranda edited this page Jun 15, 2026 · 1 revision

Realtime: WebSocket and SSE

Beyond one-shot HTTP, Getman speaks two streaming protocols: WebSocket and Server-Sent Events (SSE).

Switching a tab to realtime

Choose the WebSocket/SSE request kind (the request-kind selector next to the method, in the URL bar). For these kinds the SEND button is replaced by a CONNECT button (which becomes DISCONNECT/STOP, shown in red, while connected). The URL and headers are resolved for {{variables}} before connecting.

WebSocket

  1. Enter a ws:// or wss:// URL.
  2. Click CONNECT. A status banner shows CONNECTED (green) / DISCONNECTED (red).
  3. The message log lists frames as they happen. Each frame is labelled and icon-coded:
    • OPEN — connection established
    • IN — a message received
    • OUT — a message you sent
    • CLOSE — connection closed
    • ERROR — a connection error
  4. Send a message: type in the composer (placeholder "Message…") and press the SEND button or Enter. It appears as an OUT frame; the field clears.
  5. Click DISCONNECT to close.

All frame text is monospace and selectable. High-frequency streams are coalesced (batched per animation frame), and a session keeps up to the most recent ~500 frames.

Server-Sent Events (SSE)

  1. Choose the SSE request kind and enter an http(s):// URL (an Accept: text/event-stream header is added for you).
  2. Click CONNECT. Incoming events appear as IN frames in the log as they stream.
  3. SSE is receive-only — there's no composer (the SSE spec is one-directional). Click DISCONNECT to stop.

Getman parses the SSE wire format incrementally, surfacing each event's data payload (and flushing any partial event when the stream ends).

Notes & web caveat

  • Headers you set in the Building Requests are sent on the WebSocket/SSE handshake (desktop).
  • On the web build, browsers can't set custom headers on a WebSocket handshake (use a query param or subprotocol for auth), and SSE may buffer rather than stream incrementally. The desktop builds stream as expected. See FAQ and Troubleshooting.

Clone this wiki locally