Prefer WebSocket for order submission. Placing and cancelling orders over the persistent
/ws socket is lower-latency (one round trip instead of the REST submit/poll pair) and simpler to build: one connection, one auth handshake, and pushed order_update/fill events instead of polling. See Order Execution over WebSocket.Order Types
Kairos supports two fundamental order types across prediction market venues:Limit Orders
You specify a maximum buy price or minimum sell price. The order rests on the order book until it matches or you cancel it. Most prediction market venues only support limit orders.
Market Orders
You accept the best available price immediately. Market orders fill against the existing book and do not rest. Availability depends on venue capabilities — check
supports_market_orders before submitting.Key Order Fields
Every order you submit includes a standard set of fields. The table below describes each one:Example Order Payload
POST /orders:
Order Lifecycle
Once submitted, an order moves through the following states:1
Open
The order has been accepted by the venue and is resting on the order book, waiting for a counterparty at your price.
2
Partially Filled
Some — but not all — of your requested size has been matched. The unfilled remainder continues to rest on the book (for GTC orders).
3
Filled
The full order size has been matched. Your position is updated and collateral is debited/credited accordingly.
4
Cancelled
The order was removed from the book — either by you explicitly, by a cancel-all call, or because it expired (IOC/FOK with no fill).
Checking Order Status
Fetch a single order by its Kairos-assigned ID:GET /orders.
Fee Quotes
Before submitting an order, request a combined platform + venue fee quote so you know the exact cost:Hosted vs Self-Custody Execution
Kairos offers two execution modes for on-chain venues (Polymarket, Predict.fun, Opinion):- Hosted (v1 endpoints)
- Self-Custody (v2 endpoints)
Kairos holds signing keys on your behalf. You call
POST /orders and Kairos signs and submits the on-chain transaction for you. This is the simplest integration path.EIP-712 Signing
For self-custody orders, Kairos returns a structured EIP-712 typed data object from/v2/orders/intent. Sign it with your wallet using eth_signTypedData_v4 and pass the resulting hex signature to /v2/orders/submit.
EIP-712 signing keeps your private key off Kairos servers entirely. The signature is mathematically bound to the exact order parameters — it cannot be modified after signing.
Cancelling Orders
Cancel a single order
Cancel a specific set of orders atomically
UsePOST /orders/cancel-batch to cancel multiple order IDs in a single atomic operation at the routing layer:
Cancel all open orders on a venue
Cross-Venue Routing
When the same market exists on multiple venues (e.g., matched on both Polymarket and Kalshi), Kairos can split your order across both legs automatically. This lets you fill larger sizes than any single venue’s book can absorb. Step 1 — Price the route:Synthetic Books
Kairos can create a Synthetic Book — a virtual order book that combines liquidity across multiple related markets or venues. Synthetic books are useful for cross-venue arbitrage strategies and unified pricing views. Create or join a Synthetic Book definition withPOST /v1/synthetics. Inspect an existing one with GET /v1/synthetics/{synthetic_id}. Leases expire and must be refreshed with POST /v1/synthetics/subscriptions/{subscription_id}/refresh.
Combos and Parlays
For Polymarket, Kairos supports combo orders — multi-leg parlays where you take a position on multiple independent outcomes simultaneously. Get a quote without executing withPOST /combo/quote, then execute with POST /combo/execute. Manage open positions with GET /combo/positions.

