Place perp orders
POST /v1/trading-gateway/place-orders — Batch place perp orders against the sub-account's bound exchange. Each order uses an action-based DTO (`open_long` | `op
POST /v1/trading-gateway/place-orders
Batch place perp orders against the sub-account's bound exchange. Each order uses an action-based DTO (open_long | open_short | close_long | close_short | set_stop_loss | set_take_profit) with optional nested stop_loss_orders / take_profit_orders arrays for first-class TpSL. Body: { orders: BatchOrderItem[], subAccountId?: string }. Returns BatchPlaceOrderResult[] — one per input order with per-order success / failure so a partially-rejected batch doesn't fail the whole call.
| Method | POST |
| Path | /v1/trading-gateway/place-orders |
| Auth | Authorization: Bearer <token> required when GATEWAY_AUTH_TOKEN is set |
| Category | perps |
Request body
{ "orders": [{ "action": "open_long", "symbol": "BTC", "quantity": "0.01", "leverage": 5, "stop_loss_orders": [{ "price": "55000" }], "take_profit_orders": [{ "price": "75000" }] }], "subAccountId": "sub_hl_default" }Response body
[{ "success": true, "order": { "order_id": "ord_abc", "symbol": "BTC", "side": "buy", "price": "62000", "quantity": "0.01", "status": "open", "created_at": 1716796800000, "raw_data": { } } }]