Skip to main content

Place an order

Places a LIMIT or MARKET order. The orderType field selects the request variant and its required fields.

Headers

NameTypeRequiredDescription
BROKER-IDStringNoOptional broker/partner identifier to tag orders placed through them

Request Body

Limit

NameTypeRequiredDescription
orderTypeStringYesOrder type. Must be LIMIT for this variant.
clOrderIdStringNoClient-assigned order identifier for tracking and idempotency.
symbolStringYesTrading pair symbol.
orderSideStringYesOrder side: BUY or SELL.
orderSizeLongYesOrder size in number of contracts.
takeProfitTriggerTypeStringNoReference price type used to evaluate the take-profit trigger. — INDEX_PRICE · LAST_PRICE · MARK_PRICE
stopLossTriggerTypeStringNoReference price type used to evaluate the stop-loss trigger. — INDEX_PRICE · LAST_PRICE · MARK_PRICE
takeProfitTriggerPriceDoubleNoTake-profit trigger price. When reached, an attached take-profit order is fired.
stopLossTriggerPriceDoubleNoStop-loss trigger price. When reached, an attached stop-loss order is fired.
positionModeStringNoPosition mode this order applies to (one-way or hedge). — ONE_WAY · HEDGE · ISOLATED
reduceOnlyBooleanNoIf true, the order can only reduce an existing position and cannot open or increase one.
timeInForceStringNoTime-in-force policy for the limit order. Defaults to GTC when omitted. — FOK · GTC · IOC · HALFSEC · HALFMIN · FIVEMIN · HOUR · TWELVEHOUR · DAY · WEEK · MONTH
postOnlyBooleanNoIf true, the order is rejected if it would take liquidity, ensuring maker-only execution.
orderPriceDoubleYesLimit price for the order.

Market

NameTypeRequiredDescription
orderTypeStringYesOrder type. Must be MARKET for this variant. — LIMIT · MARKET · OCO · TWAP · PEG · CONDITIONAL · TRAILING
clOrderIdStringNoClient-assigned order identifier for tracking and idempotency.
symbolStringYesTrading pair symbol.
orderSideStringYesOrder side: BUY or SELL.
orderSizeLongYesOrder size in number of contracts.
takeProfitTriggerTypeStringNoReference price type used to evaluate the take-profit trigger. — INDEX_PRICE · LAST_PRICE · MARK_PRICE
stopLossTriggerTypeStringNoReference price type used to evaluate the stop-loss trigger. — INDEX_PRICE · LAST_PRICE · MARK_PRICE
takeProfitTriggerPriceDoubleNoTake-profit trigger price. When reached, an attached take-profit order is fired.
stopLossTriggerPriceDoubleNoStop-loss trigger price. When reached, an attached stop-loss order is fired.
positionModeStringNoPosition mode this order applies to (one-way or hedge). — ONE_WAY · HEDGE · ISOLATED
reduceOnlyBooleanNoIf true, the order can only reduce an existing position and cannot open or increase one.

Response Content

NameTypeDescription
statusIntegerOrder status code returned for this placement.
typeIntegerOrder type code.
symbolStringTrading pair symbol.
postOnlyBooleanTrue if the order was accepted as maker-only.
orderSideStringOrder side: BUY or SELL.
orderIdStringServer-assigned order id.
clOrderIDStringClient-assigned order id echoed from the request.
timestampLongServer timestamp of the placement, in milliseconds since epoch.
priceDoubleLimit price submitted with the order.
avgFilledPriceDoubleAverage fill price across executions so far. Zero if nothing has filled.
messageStringHuman-readable message returned by the platform (e.g. rejection reason).
originalOrderSizeLongOriginal order size in number of contracts as submitted.
currentOrderSizeLongCurrent remaining order size after fills or amendments.
filledSizeLongSize filled in the most recent match, in contracts.
totalFilledSizeLongCumulative filled size across all matches, in contracts.
remainingSizeLongRemaining unfilled size, in contracts.
positionModeStringPosition mode this order applies to (one-way or hedge). — ONE_WAY · HEDGE · ISOLATED
positionDirectionStringPosition direction the order will affect: LONG or SHORT.
positionIdStringIdentifier of the position the order is bound to.
timeInForceStringTime-in-force policy applied to the order (e.g. GTC, IOC, FOK).
example
POSThttps://api.btse.com/futures/api/v3/trade/orders

Request (Limit)

{
"symbol": "BTC-PERP",
"orderType": "LIMIT",
"orderSide": "BUY",
"orderSize": 1,
"orderPrice": 57009.5
}

Request (Market)

{
"symbol": "BTC-PERP",
"orderType": "MARKET",
"orderSide": "BUY",
"orderSize": 1
}

Response (Limit)

{
"status": 2,
"type": 0,
"symbol": "BTC-PERP",
"postOnly": false,
"orderSide": "BUY",
"orderId": "0251ea47-88b5-48c0-aeb3-b38774fd1f90",
"clOrderID": "",
"timestamp": 1784882344361,
"price": 57009.5,
"avgFilledPrice": 0,
"message": null,
"originalOrderSize": 1,
"currentOrderSize": 1,
"filledSize": 0,
"totalFilledSize": 0,
"remainingSize": 1,
"positionMode": "ONE_WAY",
"positionDirection": null,
"positionId": "BTC-PERP-USDT",
"timeInForce": "GTC"
}

Response (Market)

{
"status": 4,
"type": 0,
"symbol": "BTC-PERP",
"postOnly": false,
"orderSide": "BUY",
"orderId": "8ad94105-8cce-4e01-86b8-2d0fb403db66",
"clOrderID": "",
"timestamp": 1784882344446,
"price": 60010,
"avgFilledPrice": 60010,
"message": null,
"originalOrderSize": 1,
"currentOrderSize": 1,
"filledSize": 1,
"totalFilledSize": 1,
"remainingSize": 0,
"positionMode": "ONE_WAY",
"positionDirection": null,
"positionId": "BTC-PERP-USDT",
"timeInForce": "GTC"
}