This stream is for trader JWT clients (the Tradara terminal and custom trader-facing apps). Prop firm integrators monitoring traders use
/v1/firm-ws instead. Firm API keys are denied on /v1/ws.What it replaces
There are no SSE endpoints in the Trading API. Every “live” surface — order status, fill stream, position updates — is delivered as a typed envelope on this WebSocket. The REST endpoints under Orders, Fills, Positions, Trades, and Balances are used for hydration and point-in-time reads, not polling.Endpoint
Connection model
Unlike the firm stream, there is noscope.set. Scope is implicit: all events for the authenticated user, across every account the user owns, are delivered on one connection. Client-side code filters by account_id in the envelope when the UI is scoped to a single account.
Hydration is required
The stream is delta-only. Open the WebSocket only after — or in parallel with — the REST hydration reads below, and on every reconnect re-run hydration before resuming live consumption.
See Reconnection for the full re-sync loop.
Next steps
Authentication
JWT session cookie, bearer token, or the
bearer subprotocol.Event catalog
Envelope schema plus every
entity.event published on /v1/ws.Client control
ping, pong, and optional news opt-in for terminal-class clients.Examples
Browser / Node connect + hydration loop.

