Added

v1.8.0 - 2025-08-30

Added

  • WebSocket orderbook subscription filtering by maker address

    • New capability: Filter orderbook events (post_order, cancel_order, trade) by specific market maker address
    • Benefits: Reduces bandwidth usage by receiving only relevant orderbook updates, enables tracking specific market makers
    • Channels affected: orderbook_options, orderbook_perps

    Example:

    // Subscribe to orderbook events from a specific maker only
    const subscription = {
      channel: 'orderbook_options',
      query: {
        pair: 'BTC_USDC',
        maker: '0x1234567890abcdef1234567890abcdef12345678'
      }
    };
  • WebSocket orderbook snapshot skipping option

    • New capability: Skip initial orderbook snapshot when subscribing to orderbook channels
    • Benefits: Faster subscription initialization, reduced initial data transfer for clients that only need incremental updates
    • Use case: Ideal for applications that maintain their own orderbook state or only need real-time updates

    Example:

    // Subscribe without receiving initial orderbook state
    const subscription = {
      channel: 'orderbook_perps',
      query: {
        instrument_name: 'BTC_USDC-PERPETUAL',
        options: {
          skip_snapshot: true  // Only receive incremental updates
        }
      }
    };

Changed

  • WebSocket orderbook subscriptions now support optional pair parameter

    • Breaking Change: The pair parameter is now optional for orderbook_options and orderbook_perps channels
    • Benefits: Subscribe to all instruments across all markets in a single subscription, simplified market-wide monitoring

    Before:

    // Previously required to specify a pair
    const subscription = {
      channel: 'orderbook_options',
      query: {
        pair: 'BTC_USDC',  // Was required
        maturity: '29AUG25'
      }
    };

    After:

    // Now can subscribe to all markets at once
    const subscription = {
      channel: 'orderbook_options',
      query: {
        // pair is now optional - omit to receive all markets
        maturity: '29AUG25'  // Can filter by maturity across all pairs
      }
    };
    
    // Or subscribe to absolutely everything
    const subscribeToAll = {
      channel: 'orderbook_perps',
      query: {}  // Receives all perpetual orderbook events
    };

    Migration Guide:

    • Existing subscriptions with pair specified will continue to work unchanged
    • To subscribe to all markets, simply omit the pair parameter
    • Consider using the new maker filter or skip_snapshot option to manage data volume when subscribing broadly