Place an Order

The method POST /orders enables you to place a buy or sell order. Both Limit and Market orders are available.

HTTP Request

Header Parameters

You must specify the following authorization parameters in your request:

ParameterDescriptionRequired
keySee the section, AuthenticationYes
signatureSee the section, AuthenticationYes
nonceSee the section, AuthenticationYes

Body Parameters

Body parameters must be JSON encoded and precisely the same as the JSON payload used to construct the signature:

Parameter

Description

Required

book

The book to use.

Yes

major

The amount in the major currency for the order.

  • Limit Orders: Required. You must always specify the amount using major.
  • Market Orders:Optional. You may specify the amount using either major or minor, but not both. If both are provided, the request will be rejected.

No

minor

The amount in the minor currency for the order.

  • Limit Orders: Not supported. Do not use minor when placing Limit Orders.
  • Market Orders: Optional. You may specify the amount using either major or minor, but not both.

No

origin_id

The order's client-supplied, unique ID (if any). Valid character set: a to z (lower and uppercase),  0 to 9, underscore, _, and dash, -. Maximum length = 40 characters.

No

price

The price per unit of major. Use this parameter only with Limit Orders. The rounding algorithm considers only eight decimal places, rounding up to the nearest price when selling and down when buying.

No

side

The order's side. Valid values: buy and sell.

Yes

stop

The price per unit of major at which to stop and place the order. Use this parameter only with Stop Orders.

No

time_in_force

The period a Limit Order remains active before it is executed or expires. Valid values: goodtillcancelled, fillorkill, immediateorcancel, and postonly.

No

type

The order's type. Valid values: market and limit.

Yes

slippage_tolerance

The maximum acceptable slippage for Market or Stop-Loss Orders, expressed as a percentage in decimal form (e.g., 0.5 = 0.5%, 0 = no slippage allowed).
Must be >= 0 and <= 100 (100%).
Only applicable to Market and Stop-Loss Orders; ignored for other order types.
If omitted or negative slippage protection is disabled.
If not a number, request fails withincorrect_slippage (code 0418)

No

📘

Order Rejected if origin_id Is Not Unique

The origin_id parameter must uniquely identify each active order. If a new order placement request uses an origin_id already associated with an active order, the system rejects the request.

JSON Response Payload

The endpoint returns a JSON object representing the order. This object includes the following field:

Field NameDescriptionType
oidThe order's unique ID.String

The following response object exemplifies the JSON object returned:

{
    "success": true,
    "payload": {
        "oid": "qlbga6b600n3xta7"
    }
}