---
title: "New Order List - OTOCO (TRADE)"
method: POST
path: "/api/v3/orderList/otoco"
tags: ["Trade"]
---

# New Order List - OTOCO (TRADE)

`POST /api/v3/orderList/otoco`

Place an `OTOCO`.
- An `OTOCO` (One-Triggers-One-Cancels-the-Other) is an order list comprised of 3 orders.
- The first order is called the working order and must be `LIMIT` or `LIMIT_MAKER`. Initially, only the working order goes on the order book.
  - The behavior of the working order is the same as the `OTO`.
- `OTOCO` has 2 pending orders (pending above and pending below), forming an `OCO` pair. The pending orders are only placed on the order book when the working order gets fully filled.
  - The rules of the pending above and pending below follow the same rules as the Order List `OCO`.
- OTOCOs add 3 orders against the unfilled order count, `EXCHANGE_MAX_NUM_ORDERS` filter, and `MAX_NUM_ORDERS` filter.

Weight: 1

## Query parameters

- `symbol` string, required
- `listClientOrderId` string
- `newOrderRespType` 'ACK' | 'RESULT' | 'FULL'
- `selfTradePreventionMode` 'EXPIRE_TAKER' | 'EXPIRE_MAKER' | 'EXPIRE_BOTH' | 'NONE'
- `workingType` 'LIMIT' | 'LIMIT_MAKER', required
- `workingSide` 'BUY' | 'SELL', required
- `workingClientOrderId` string
- `workingPrice` number, double, required
- `workingQuantity` number, double, required
- `workingIcebergQty` number, double, required
- `workingTimeInForce` 'GTC' | 'IOC' | 'FOK'
- `workingStrategyId` number, double
- `workingStrategyType` integer
- `pendingSide` 'BUY' | 'SELL', required
- `pendingQuantity` number, double, required
- `pendingAboveType` 'LIMIT_MAKER' | 'STOP_LOSS' | 'STOP_LOSS_LIMIT', required
- `pendingAboveClientOrderId` string
- `pendingAbovePrice` number, double
- `pendingAboveStopPrice` number, double
- `pendingAboveTrailingDelta` number, double
- `pendingAboveIcebergQty` number, double
- `pendingAboveTimeInForce` 'GTC' | 'IOC' | 'FOK'
- `pendingAboveStrategyId` number, double
- `pendingAboveStrategyType` integer
- `pendingBelowType` 'LIMIT_MAKER' | 'STOP_LOSS' | 'STOP_LOSS_LIMIT'
- `pendingBelowClientOrderId` string
- `pendingBelowPrice` number, double
- `pendingBelowStopPrice` number, double
- `pendingBelowTrailingDelta` number, double
- `pendingBelowIcebergQty` number, double
- `pendingBelowTimeInForce` 'GTC' | 'IOC' | 'FOK'
- `pendingBelowStrategyId` number, double
- `pendingBelowStrategyType` integer
- `recvWindow` integer
- `timestamp` integer, required
- `signature` string, required

## Response `200`

New OTOCO details

- object
  - `orderListId` integer, required
  - `contingencyType` string, required
  - `listStatusType` string, required
  - `listOrderStatus` string, required
  - `listClientOrderId` string, required
  - `transactionTime` integer, required
  - `symbol` string, required
  - `orders` object[], required
    - `symbol` string, required
    - `orderId` integer, required
    - `clientOrderId` string, required
  - `orderReports` object[], required
    - `symbol` string, required
    - `orderId` integer, required
    - `orderListId` integer, required
    - `clientOrderId` string, required
    - `transactTime` integer, required
    - `price` string, required
    - `origQty` string, required
    - `executedQty` string, required
    - `cummulativeQuoteQty` string, required
    - `status` string, required
    - `timeInForce` string, required
    - `type` string, required
    - `side` string, required
    - `workingTime` integer, required
    - `selfTradePreventionMode` string, required

## Other responses

- `400` — Bad Request
- `401` — Unauthorized Request

---

[API](https://skmtc.net/binance/apis/binance-public-spot-api.md) · [All operations](https://skmtc.net/binance/apis/binance-public-spot-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/binance/binance-public-spot-api/versions/0dd2f133e12d/schema)
