For the complete documentation index, see llms.txt. This page is also available as Markdown.

GET /stream

Public WebSocket stream (legacy)

Public WebSocket stream (legacy).

operationId: connectStream

Not reachable through CCXT. WebSocket transport and token minting. Covered by the CCXT Pro channel map, not by a REST unified method.

Authentication: none declared, and the contract declares no document-level default — this operation carries its own signature in the request body. See the description above.

Legacy public-only WebSocket endpoint. Prefer GET /ws which also supports per-account channels. No token is required. Token auth was removed from this endpoint in ENG-3128 — the token store was per-instance, so a token minted on one instance was unknown to another during a rolling deploy and the upgrade failed with a spurious 401. The upgrade is served unauthenticated on purpose: this channel carries only public market data (trades, book, stats) and never per-account data. security being absent above is therefore accurate, and this sentence used to contradict it. Unlike /ws, the protocol is a single untagged subscribe message listing channels:

{"subscribe": ["trades:*", "book:BTC-USDX-PERP", "stats"]}

Channels: trades:* / trades:{market_id}, book:* / book:{market_id}, stats.

Parameters

Name
In
Type
Required
Default
Description

token

query

string

Yes

Short-lived token from POST /ws-tokens

Responses

Status
Body
Meaning

101

(no schema declared)

Switching Protocols — WebSocket upgrade.

Example

curl -X GET 'https://exchange.nexus.xyz/api/exchange/stream'
import requests


response = requests.get("https://exchange.nexus.xyz/api/exchange/stream")
response.raise_for_status()
print(response.json())
const response = await fetch("https://exchange.nexus.xyz/api/exchange/stream", {
  method: "GET",
});
if (!response.ok) throw new Error(`${response.status} ${await response.text()}`);
console.log(await response.json());

Generated from eng/apps/exchange/api/openapi.json (spec 0.9.36). Do not edit by hand — regenerate with python3 product/docs/tools/api-reference/generate.py. Hand-authored context lives in the Guides pages.

Last updated