Skip to main content

Connection

Primary Mainnet WebSocket URL: wss://mainnet-ws1.bulk.trade Testnet WebSocket URL: wss://exchange-ws1.bulk.trade

Ping-Pong Keepalive

The server sends a WebSocket ping frame every 30 seconds. The client must reply with a pong frame; if no pong is received within 10 seconds, the server disconnects the connection. Ping/pong are transport-level frames, not application (JSON) messages. Many client libraries respond to ping automatically. See Connection Management for details.

Stream Types

Market Data

Real-time price feeds, order books, and trades

Account Updates

Live position and order updates

Trading

Submit orders via WebSocket for lowest latency

Connection Management

Subscriptions, reconnection, and best practices

Quick Example


Subscription Response Format

All subscriptions return a confirmation with topic strings:
Use the topic strings to unsubscribe later.

Unsubscribe


Rate Limits

The public mainnet endpoint allows 32 trading actions/second per connection, with a 96-action burst per connection, 15 concurrent connections per IP, and 45 new connection attempts/minute per IP. Trading-action limits are not outbound market-data message limits. See Public API Rate Limits for shared-IP budgets and retry behavior.

Next Steps

Market Data Streams

Ticker, Candles, Trades, Order Book

Account Stream

Real-time positions and orders