WebSocket Feeds

Real-time market data is available via Hyperliquid's WebSocket API.

Connection

const ws = new WebSocket("wss://api.hyperliquid.xyz/ws");

ws.onopen = () => {
  console.log("Connected");
  // Subscribe to channels
};

ws.onmessage = (event) => {
  const data = JSON.parse(event.data);
  handleMessage(data);
};

ws.onerror = (error) => {
  console.error("WebSocket error:", error);
};

ws.onclose = () => {
  console.log("Disconnected");
  // Implement reconnection logic
};

Subscription Format

Available Channels

Order Book (l2Book)

Real-time order book updates.

Response:

Trades

Real-time trade feed.

Response:

All Mids

Real-time mid prices for all assets.

Response:

User Events

Real-time updates for your account (requires auth).

Response types:

Candles

OHLCV candlestick data.

Response:

Ping/Pong

Maintain connection with periodic pings:

Server responds with:

Reconnection

Implement robust reconnection:

Example: Price Monitor

Example: Order Book Tracker

Rate Limits

Limit
Value

Subscriptions per connection

100

Connections per IP

10

Messages per second

100

Best Practices

  1. Use single connection — Subscribe to multiple channels on one socket

  2. Handle reconnects — Network issues will happen

  3. Ping regularly — Prevent idle disconnection

  4. Process async — Don't block message handler

  5. Buffer updates — Batch processing for high-frequency data

Last updated