Skip to main content
An order is an instruction to buy or sell shares in a market outcome. When you place an order, you specify which market you want to trade, which side (buy or sell), what position to take, and how many shares or how much to spend. Orders are created via POST /orders/, listed via GET /orders/, and canceled via PATCH /orders/{id}/cancel/.

Order types

Set price to null to place a market order. The order executes immediately at the best available price in the order book.Use market orders when you want guaranteed execution and don’t need to control the exact price.
{
  "market": 42,
  "side": "bid",
  "position": "l",
  "amount": 10.00,
  "currency": "OOM",
  "price": null
}

Side: bid vs ask

The side field specifies whether you are buying or selling shares.
ValueMeaning
bidYou are buying shares
askYou are selling shares you already hold

Position: long vs short

The position field specifies which direction you are betting.
ValueMeaning
l (long)Betting in favor of the outcome — you profit if it resolves true
s (short)Betting against the outcome — you profit if it resolves false
Long and short positions can both be bought (bid) or sold (ask). For example, selling a long position (ask + l) reduces your existing long exposure.

Order lifecycle

StatusDescription
openThe order is in the order book, waiting to be matched
partial_filledSome shares have been matched; the rest remain open
filledThe order has been fully executed
canceledThe order was canceled before fully filling
processingThe order is being processed — transient state

Order fields reference

You can specify how much to trade using either shares or amount — not both.
  • shares: the number of shares you want to buy or sell
  • amount: the total monetary value to spend or receive, in the specified currency
Use amount when you want to spend a fixed budget. Use shares when you want to acquire a specific quantity.
Set expired_at to an ISO 8601 datetime string to automatically cancel any unfilled portion of the order after that time.If omitted, the order remains open until filled, manually canceled, or the event closes.
{
  "expired_at": "2024-11-05T23:59:00Z"
}
Set cancel_conflicting_orders to true to automatically cancel any of your existing open orders on the same market that would conflict with the new order before placing it.This is useful when you want to change your position without manually canceling previous orders first.

Full order fields

FieldTypeDescription
marketintegerID of the market (outcome) to trade
sidestringbid (buy) or ask (sell)
positionstringl (long) or s (short)
pricefloat | nullLimit price 0–1, or null for a market order
sharesfloatNumber of shares (use instead of amount)
amountfloatMonetary amount to spend (use instead of shares)
currencystringOOM, USDC, USDT, or USD
expired_atdatetimeAuto-cancel time for unfilled order
cancel_conflicting_ordersbooleanCancel conflicting open orders before placing
Real money orders (USDC, USDT, USD) are restricted in some countries. See Currencies for details.