Public Exchange Data
Some data is provided by the exchange without requiring authorization, including:
Async API Heartbeat
Matcher State
Instruments List
Funding Rate Updates
Order Book Depth
Order Book Best
Last Trades
[TOC]
Available environments
All channel names have an {env}
prefix showing the current environment.
futures-perp-dev
— for the Development environmentfutures-perp-demo
— for the Demo environmentfutures-perp-beta
— for the Beta environmentfutures-perp
— for the Production environment
Heartbeat
To check the availability of the exchange's Async API, the {env}:heartbeat
channel is used, which periodically sends events with the current timestamp.
Important: If no events are received on this channel for more than 30 seconds, the connection to the Async API should be considered lost.
Matcher State
In some cases, trading may be globally paused for all instruments. To detect such states, use the GET /api/market method, which returns the current exchange state (state
field).
The exchange signals state changes via Async API using the {env}:info
channel, which transmits snapshots of the current state.
Important: Any state other than active
should be treated as a global trading halt.
Instruments List
To get a list of instruments available for trading, use the GET /api/market/instrument method. This returns an array of all instruments registered on the exchange (including those not available for trading).
Important: If the trading
field is none
or restricted
, the instrument should be considered unavailable for any orders. onlyClose
means it is only available for position closing and order cancellation. Otherwise, the instrument is available for trading.
Instrument state updates are signaled via Async API on the {env}:instruments
channel with snapshots of current instrument state.
Important: To ensure state consistency on the client, compare snapshots by the updatedAt
field.
Funding Rate
To get the current funding rate for an instrument, use the GET /api/market/instrument method with fields=metrics
. This returns all instruments with additional metrics.
Important: This method is relatively heavy and should not be used frequently or during initial client load.
Funding rate updates are sent via Async API using the {env}:funding-rate
channel.
Important: To ensure funding rate state consistency on the client, compare snapshots by the createdAt
field.
Order Book Depth
To get the current state of the order book, use the GET api/market/{instrument}/deep method, which returns grouped volume data by price levels (up to 4 decimal places).
Order book updates are sent via Async API on the {env}:orderBook-{instrument}-0.1
channel.
Important: To ensure consistency of the order book state on the client, compare snapshots by the orderBook.t
timestamp field.
Order Book Best
To get the best bid and ask prices, use the same REST API method as for order book depth but with the marketLevel=1
parameter.
Best price updates are sent via Async API using the {env}:orderBook-{instrument}-best
channel. The event format matches the previous section.
Last Trades
To get a list of recent trades on the exchange, use the GET /api/market/{instrument}/recent-trades method. This returns anonymized trades for a specific instrument.
Trade updates are sent via Async API using the {env}:trade-{instrument}
channel.
Last updated