Request
| Field | Type | Required | Description |
|---|---|---|---|
message | string | Yes | createOrder |
content.clientRequestId | string | No | Client-generated UUID for correlation |
content.market | string | No | Market name, only required when connecting with market=ALL |
content.price | string | Yes | Limit price; for market orders, the expected price |
content.quantity | string | Yes | Order quantity |
content.orderType | string | Yes | Order side: buy or sell |
content.tradeType | string | Yes | Order type: limit or market |
content.postOnly | boolean | No | Maker-only flag; limit orders only |
content.reduceOnly | boolean | No | Restrict the order to reducing an existing position |
content.maxSlippage | string | No | Market orders only; 0 - 1 inclusive. 0 behaves as IOC |
Response — Acknowledgment
| Field | Type | Required | Description |
|---|---|---|---|
resultType | string | Yes | createOrder |
market | string | Yes | Contract name |
data.statusCode | number | Yes | 202 |
data.body | string | Yes | order received |
data.order.market | string | Yes | Contract name |
data.order.orderId | string | Yes | Unique order identifier |
data.order.orderType | string | Yes | Order side: buy or sell |
data.order.tradeType | string | Yes | Order type: limit or market |
data.order.price | string | Yes | Order price |
data.order.quantity | string | Yes | Order quantity |
data.order.filledQuantity | string | Yes | Quantity filled so far |
data.order.leverage | string | Yes | Leverage — always 0 for options |
data.order.orderStatus | string | Yes | pending |
data.order.postOnly | boolean | Yes | Maker-only flag |
data.order.createdAt | number | Yes | Creation time (ms since epoch) |
data.order.updatedAt | number | Yes | Last update time (ms since epoch) |
data.order.clientRequestId | string | No | Client-generated UUID for correlation |
data.clientRequestId | string | No | Client-generated UUID for correlation |
Response — Confirmation
| Field | Type | Required | Description |
|---|---|---|---|
resultType | string | Yes | createOrder |
market | string | Yes | Contract name |
data.statusCode | number | Yes | 200 |
data.body | string | Yes | order placed |
data.order.market | string | Yes | Contract name |
data.order.orderId | string | Yes | Unique order identifier |
data.order.orderType | string | Yes | Order side: buy or sell |
data.order.tradeType | string | Yes | Order type: limit or market |
data.order.price | string | Yes | Order price |
data.order.quantity | string | Yes | Order quantity |
data.order.filledQuantity | string | Yes | Quantity filled so far |
data.order.leverage | string | Yes | Leverage — always 0 for options |
data.order.orderStatus | string | Yes | open |
data.order.postOnly | boolean | Yes | Maker-only flag |
data.order.createdAt | number | Yes | Creation time (ms since epoch) |
data.order.updatedAt | number | Yes | Last update time (ms since epoch) |
data.order.clientRequestId | string | No | Client-generated UUID for correlation |
data.clientRequestId | string | No | Client-generated UUID for correlation |
Response — Error
| Field | Type | Required | Description |
|---|---|---|---|
resultType | string | Yes | createOrder |
market | string | Yes | Contract name |
data.statusCode | number | Yes | Error status, e.g. 400 |
data.body | string | Yes | Error description |
data.order | object | No | The rejected order, when available (same fields as the acknowledgment, with orderStatus: rejected) |
data.error.slug | string | Yes | Machine-readable error slug |
data.error.code | string | Yes | Error code |
data.clientRequestId | string | No | Client-generated UUID for correlation |