Skip to main content

FAQ

Frequently asked questions about the USDⓈ-Margined Futures API.

Is Self Trade Prevention (STP) supported?​

No. The API does not support Self Trade Prevention. The selfTradePreventionMode and tradeGroupId parameters do not exist on any endpoint, and there is no EXPIRED_IN_MATCH order status. Orders from the same account can match against each other and will fill normally. If you need to avoid self-trades, implement the check on the client side.

How do I send parameters to order endpoints?​

POST, PUT, and DELETE endpoints accept parameters only as a JSON request body (Content-Type: application/json). Form-encoded bodies (application/x-www-form-urlencoded) are not supported, and body parameters cannot be mixed with query-string parameters. GET endpoints take parameters in the query string. In all cases, timestamp and signature go in the query string for HMAC authentication.

What format is orderId?​

Order IDs are UUID strings (e.g. "3c9074dc-8fd5-4dfd-8f62-a2f95b9d20e2"), not incrementing integers. Treat orderId as an opaque string: store it as-is and pass it back unchanged when querying or cancelling. clientOrderId remains a user-chosen string of up to 36 characters.

Does my listenKey stay alive while my WebSocket is connected?​

No. A listenKey expires 60 minutes after it was created or last refreshed, regardless of any open WebSocket connection. Call PUT /fapi/v1/listenKey periodically (e.g. every 30 minutes) to keep it alive. If it has expired, re-issue one via POST /fapi/v1/listenKey.

Is Hedge Mode (dual position side) available?​

No. The exchange runs in one-way position mode only. POST /fapi/v1/positionSide/dual with dualSidePosition=true returns error -4059, and orders must use positionSide=BOTH (or omit it). LONG / SHORT appear only as descriptive field values in position query responses.

Is Isolated Margin available?​

No. The exchange runs in cross-margin mode only. POST /fapi/v1/marginType with marginType=ISOLATED returns error -4046.

Is batch order placement available?​

No. POST /fapi/v1/batchOrders is not available — place orders one at a time via POST /fapi/v1/order. Batch cancel is available via DELETE /fapi/v1/batchOrders.

Which kline intervals are supported?​

The natively supported intervals are 1m, 5m, 15m, 1h, 4h, 1d, 1w, 1M. On GET /fapi/v1/klines, some other Binance-style intervals are accepted but silently mapped to the closest supported interval; on WebSocket, only the eight native intervals produce data. See Enum Definitions for the full mapping table.