New Order
Type: TRADE
External endpoint:
POST /fapi/v1/order
Rocky impl:POST /fapi/v1/order✓
Place a new order. Currently only LIMIT is supported; MARKET returns -1100 until the matching engine grows a MARKET type.
Request
POST /fapi/v1/order
Query / body params
| Name | Type | Required | Notes |
|---|---|---|---|
symbol | string | yes | standard pair, e.g. BTCUSDT. |
side | string | yes | BUY or SELL. |
type | string | yes | Only LIMIT accepted today. |
quantity | string | yes | Base-asset quantity. |
price | string | yes for LIMIT | Limit price. |
newClientOrderId | string | no | Free-form idempotency key. Auto-generated UUID if omitted. |
Response — 200
{
"orderId": "8a3f5b2c-4d1e-6f7a-8b9c-0d1e2f3a4b5c",
"clientOrderId": "my-bot-1748275200-001",
"symbol": "BTCUSDT",
"status": "NEW",
"side": "BUY",
"type": "LIMIT",
"price": "76500.00",
"origQty": "0.001",
"updateTime": 1748275200500
}
Errors
| HTTP | code | msg |
|---|---|---|
400 | -1100 | Unknown symbol, invalid side, or unsupported type (e.g. MARKET). |
400 | -1102 | price missing on a LIMIT order. |
422 | -2010 | Insufficient balance to lock the required margin. |
401 | -2015 | Invalid or revoked API key. |
Other standard params not yet supported:
timeInForce,reduceOnly,closePosition,stopPrice,activationPrice,callbackRate,workingType,priceProtect,newOrderRespType,positionSide. Leverage is system-wideLEVERAGE_V1=10and cannot be set per-order.