Skip to main content
Error

Authorizations

X-API-KEY
string
header
required

HMAC-SHA256 authentication. Sign every request and send X-API-KEY, X-API-SIGNATURE, X-API-TIMESTAMP and X-API-NONCE (see the Authentication guide). Each route also requires a specific claim on your API key (e.g. read:orders, write:orders, read:account, read:market-data).

Body

application/json

Order payload. Required fields depend on type (LIMIT, MARKET, STOP_LIMIT).

side
enum<string>
required

Order side.

Available options:
BUY,
SELL
Example:

"BUY"

type
enum<string>
required

Order type. LIMIT, MARKET and STOP_LIMIT are accepted.

Available options:
LIMIT,
MARKET,
STOP_LIMIT
Example:

"LIMIT"

base_quantity
string
required

Base asset quantity (string-encoded decimal). Required for all orders except a MARKET BUY, which is sized by quote_value instead.

Example:

"0.50"

client_order_id
string
required

Client-generated idempotency key (UUID v4). Replays of the same value return the original order.

Example:

"a1b2c3d4-e5f6-7890-abcd-ef0123456789"

product
string
required

Trading pair id (e.g. BTC-USD, ETH-USDC).

Example:

"ETH-USDC"

quote_value
string

Quote spend (string-encoded decimal). Required for a MARKET BUY (the amount of quote currency to spend); ignored otherwise.

Example:

"100.00"

price
string

Limit price (string-encoded decimal). Required for LIMIT and STOP_LIMIT orders; omitted for MARKET (executes at the prevailing price).

Example:

"3000.00"

stop_price
string

Stop (trigger) price (string-encoded decimal). Required for STOP_LIMIT orders; ignored otherwise.

Example:

"2900.00"

Response

Order creation outcome. Inspect data.type to distinguish NEW_ORDER, DUPLICATE_REPLAY, and the *_EXECUTION_FAILED variants.

statusCode
number
required

HTTP status code echoed in the body.

Example:

200

success
boolean
required

True for success responses.

Example:

true

message
string

Human-readable status message.

Example:

"Request processed successfully"

data
object