orders

Create Order

Place a new order.

Submits an order for asynchronous processing. The order is persisted immediately and queued for execution on the target exchange.

See Orders and Order Types for more information.

Asset Selection: Provide exactly one of river_id (standard instrument) or generic_asset_id (user-defined basket). Generic asset orders are LIMIT only — the system routes IOC limit orders to each underlying instrument at optimal prices. price bounds the fills (max for buys, min for sells); liquidity beyond it is not taken and the unfilled remainder is cancelled.

Response: Returns 202 Accepted with the order_id and associated complex_orders ids (TP/SL). Poll GET /v1/orders/{order_id} or use webhooks to track execution.

post/v1/orders

Request body

order_type'LIMIT' | 'MARKET' | 'RFQ_TAKER' required

Order type: 'LIMIT' or 'MARKET'

time_in_force'FOK' | 'GTC' | 'GTD' | 'IOC' required

Time in force: 'FOK', 'GTC', 'GTD', or 'IOC'

qtynumber required

Order quantity (number of contracts)

pricenumber nullable

Limit price between 0 and 1. Required for LIMIT orders.

buy_flagboolean required

Order direction: true=buy, false=sell

post_onlyboolean

If true, the order is rejected instead of taking liquidity. Only valid for LIMIT orders with a resting time in force (GTC or GTD).

cancel_order_on_pauseboolean

Kalshi only: if true, the resting order is cancelled by the exchange when it enters a trading pause. Ignored on other venues.

river_idinteger nullable

Instrument ID. Mutually exclusive with generic_asset_id.

generic_asset_idstring uuid nullable

Generic asset basket UUID. Mutually exclusive with river_id.

subaccount_idstring uuid required

Subaccount to place the order under

expiry_ts_utcstring date-time nullable

Expiry timestamp in UTC(ISO 8601). Required for GTD orders. i.e '2023-11-07T05:31:56Z'

exchangesstring[] nullable

Generic asset orders only: restrict routing to these exchanges (e.g. ['KALSHI', 'POLYMARKET']). Omit to route across all member venues.

Response

Successful Response

river_order_idstring uuid required

Unique order identifier

complex_ordersobject required

List of complex river orders id

Changes