Markets
Endpoint:
wss://api.testnet.arcus.xyz/v1/ws— one socket multiplexes every channel and RPC request. Click Connect, then send the example subscribe message below to start receiving data.
Global channel — no id required. Streams full per-market metadata for all listed markets.
Snapshot-only channel: every message is a full map of all markets keyed by marketId (same shape on subscribe and on every periodic re-emission, no partial diffs). Clients replace their entire markets view on each message.
Cadence: ~5s periodic snapshot, plus an immediate snapshot when a new funding rate is applied (~hourly) so the just-applied fundingRate propagates without waiting for the next periodic snapshot.
Field coverage today: marketDisplayName, marketId, baseAsset, quoteAsset, status (always ONLINE today — dynamic state changes not yet plumbed), static config (tick/step/min/max sizes, margin fractions, fees), oraclePrice, fundingRate, nextFundingRate, and nextFundingAt are populated. priceChange24h, volume24h, and trades24h are populated by the rolling-24h aggregator (in-memory ring of the last 1440 closed 1m candles per market, plus the in-progress 1m candle from Redis) and refresh every ~10s. openInterest is the total size of all open long positions per market (equals total short), in base asset units, refreshed from a periodic snapshot (default ~60s) so it may lag real time.