BitMart · Rate Limits

Bitmart Rate Limits

BitMart applies per-endpoint rate limits using time-window buckets (typically 2-second windows) with separate scopes for IP-based public endpoints, API-key-based authenticated endpoints, and UID-based signed trading endpoints. Spot and futures endpoints each carry individually documented limits. Exceeding a rate limit returns HTTP 429. Rate limit usage is reported in response headers. WebSocket connections have separate per-IP connection count limits for public and private channels. A general baseline of 600 requests per 60 seconds applies where no specific endpoint limit is stated.

Bitmart Rate Limits is the machine-readable rate-limit profile for BitMart on the APIs.io network, conforming to the API Commons Rate Limits specification.

It captures 15 rate-limit definitions, measuring requests_per_second, requests_per_window, requests_per_minute, concurrent_connections, and messages_per_window.

The profile also includes 5 backoff/retry policies defined and response codes documented for throttled, authError, and rateLimitExceeded.

Tagged areas include Cryptocurrency, Exchange, Trading, Market Data, and Rate Limiting.

15 Limits Throttle: 429
CryptocurrencyExchangeTradingMarket DataRate Limiting

Limits

System endpoints (IP) IP
requests_per_second
10
System time and service status endpoints. No authentication required.
Public market data - spot (IP) IP
requests_per_window
8-15
Per-endpoint limits vary from 8 to 15 requests per 2-second window for spot market data endpoints including tickers, order books, klines, and trades.
Spot order placement (UID) UID
requests_per_window
40
Submit order, batch order, and cancel order endpoints are limited to 40 requests per 2-second window per user account (UID). Cancel-all is restricted to 1 request per 3 seconds.
Spot order query (KEY) KEY
requests_per_window
50
Order query endpoints allow up to 50 requests per 2-second window per API key. Open orders and history endpoints are limited to 12 per 2-second window.
Spot algo trading (UID/KEY) UID
requests_per_window
10-40
Algo order submission and cancellation are limited to 10 per 2-second window per UID. Algo order queries allow up to 40 requests per 2-second window per KEY.
Margin trading (UID/KEY) UID
requests_per_window
2-150
Margin order submission is limited to 20 per second per UID. Borrow/repay record queries allow up to 150 requests per 2-second window. Account and transfer endpoints range from 2-12 per 2-second window.
Funding account (KEY) KEY
requests_per_window
2-12
Wallet balance and deposit/withdrawal endpoints are limited to 2-12 requests per 2-second window per API key. Withdrawal application requires SIGNED authentication.
Futures market data (IP) IP
requests_per_window
12
Futures market data endpoints including contract details, depth, trades, and klines are limited to 12 requests per 2-second window per IP address.
Futures order placement (UID) UID
requests_per_window
24
Futures order submission is limited to 24 requests per 2-second window per UID. Order cancellation allows up to 40 requests per 2-second window.
Futures position query (KEY) KEY
requests_per_window
6-50
Position detail queries are limited to 6 requests per 2-second window. Open orders list allows up to 50 requests per 2-second window per API key.
General baseline (IP) IP
requests_per_minute
600
General baseline rate limit of 600 requests per 60 seconds per IP where no specific endpoint-level limit is documented.
WebSocket - spot public connections (IP) IP
concurrent_connections
20
Each IP may maintain up to 20 simultaneous connections to the spot public WebSocket endpoint (wss://ws-manager-compress.bitmart.com/api).
WebSocket - spot private connections (IP) IP
concurrent_connections
10
Each IP may maintain up to 10 simultaneous connections to the spot private WebSocket endpoint (wss://ws-manager-compress.bitmart.com/user).
WebSocket - futures private connections (IP) IP
concurrent_connections
500
Each IP may maintain up to 500 simultaneous connections to the futures private WebSocket endpoint, supporting high-throughput institutional deployments.
WebSocket - messages per connection (IP) IP
messages_per_window
100
Up to 100 messages can be sent within a 10-second window per connection. A maximum of 20 topics can be included per subscription message.

Policies

Endpoint-level limits
Each API endpoint declares its own rate limit scope (IP, KEY, or UID) and window. Clients should consult per-endpoint documentation rather than relying solely on the general baseline.
HTTP 429 on breach
When any rate limit is exceeded, the server returns HTTP 429. Clients should inspect the X-BM-RateLimit-Reset header to determine when the current window resets before retrying.
Response header tracking
Every response includes X-BM-RateLimit-Remaining (calls remaining in window), X-BM-RateLimit-Limit (window maximum), and X-BM-RateLimit-Reset (window reset timestamp). Clients should track these headers to implement proactive throttling.
Scope separation
IP-based limits apply to public and keyed endpoints by source IP address. KEY-based limits apply per API key for authenticated queries. UID-based limits apply per user account for signed trading operations such as order placement and cancellation.
WebSocket heartbeat
WebSocket connections use a Ping/Pong keepalive mechanism. Clients must respond to server pings with pong messages to maintain active connections and avoid disconnection.

Sources