API & developers · 4 min read
Use developer WebSockets and the live console
Connect one installation with the right event stream, key and device identity.
Select the developer stream you need
Open Developers → WebSockets and select the event type whose contract matches your task. Native event streams and analytics subscriptions have different message shapes, so read the selected stream's parameters, subscribe example and event fields first. Developer WebSockets use the API account and key, separately from the terminal's own market sockets. A working terminal chart is not proof that your API plan permits the selected stream. Confirm the plan, dataset, symbol and session before opening a connection, especially when moving from an authenticated REST example to a streaming integration.
Supply the key and installation identity
The browser console uses the saved project key or the supported pasted-key field. Browser WebSockets cannot set an ordinary arbitrary Authorization header, so the documented handshake uses the ordermap.v1, ordermap.key and ordermap.device subprotocol values. Native clients use the documented device header. Keep the installation identity stable across streams and keys on that installation. It is an application installation lease, not hardware attestation, and inventing new device identifiers does not create more authorized account capacity.
Respect one installation and one event connection
An account shares one active client-installation lease across all developer keys and projects, with one connection per event type. Another installation or a duplicate event-type connection can be refused while the first remains connected. If you are moving to another machine, close the existing streams rather than repeatedly reconnecting with new keys. The handshake counts toward request limiting; all keys share 250 requests per rolling minute and a 30-per-second burst limit, with no credits. A reconnect storm therefore creates additional avoidable failures.
Connect and manage the subscription
Fill the selected event's supported symbols and filters, then use Connect. Once open, use Subscribe or Unsubscribe according to the documented message contract. Analytics subscriptions expose Subscription id, Route, Parameters JSON and Interval controls; their route must be an eligible streamable endpoint. Valid JSON is an object, not a list or arbitrary text. Disconnect releases the connection when finished. A Connected state confirms the socket opened, while subscribed and status messages explain what the server actually admitted and whether source data is currently available.
- Choose an event type and a valid project key.
- Enter its supported selection and connect once from the intended installation.
- Read hello, subscribed, status, event or error messages before interpreting the stream.
Use the message console as a bounded view
The console keeps the most recent 500 messages. Expand an entry to inspect its full structured content, direction and receive time. Pause controls the visible console publication rather than establishing that upstream market activity stopped, and clearing the log does not delete a provider's market history. Use sequence, gap and status messages to assess continuity instead of assuming a quiet log means a quiet market. A small browser console is a diagnostic window, not an immutable export of every event transmitted during a long-running connection.
Handle closure and authority rechecks
Long-lived developer streams recheck the key, project, account and plan at the documented interval, currently every 30 seconds. Revocation or lost access can therefore close a stream after its initial successful handshake. Slow consumers and overflowing server queues can also cause closure, including the documented slow-consumer code. Treat a gap or reconnect as a continuity boundary and use eligible REST history when you need to investigate missing observations. Do not assume native event streaming is an unlimited replayable queue or that reopening guarantees every missed tick will be delivered.
Diagnose a refused browser upgrade
Browsers cannot expose every failed handshake response detail, so Could not connect can be more generic than a REST error. Check for another active installation, a duplicate event type, key or plan denial and dataset availability. Record the event path, safe symbols, installation context, approximate time and any close code or server message. Disconnect obsolete consoles before retrying. Never send the full key or the key-bearing subprotocol value in a support screenshot. The presence of a live console and protocol examples does not establish successful acceptance against every real provider.