Skip to main content
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.
Kairos exposes prediction market data, trading, portfolio analytics, sports markets, and trader intelligence across multiple providers over REST and WebSocket. This page is the map: where each service lives, how to make your first authenticated call, and what the shared conventions are for errors, rate limits, and status codes. Start here, then follow the links into the module reference.

Base URLs

Don’t confuse this with the Market Data API. The separate Market Data API (md.kairos.trade) is a lighter-weight, beta, read-only service with a free anonymous tier and ETag caching — reach for it instead of the Data API above if you only need candles/trades/marks at scale. See its authentication guide for the free tier.

Quick Start

1. Get credentials

Contact Kairos for API credentials, then export them for the examples below:
You can authenticate with either API keys (recommended for programmatic access) or JWT tokens (Authorization: Bearer <token>, for user-facing apps). See Authentication for headers, scopes, and token structure — or the Market Data API’s free tier if you just need read-only market data without a key at all.

2. Discover markets

3. Get market prices

4. Fetch historical candles

5. Submit an order via WebSocket

Connect to wss://execution.kairos.trade/ws with your credentials, then send:
See Order Types for kind, time_in_force, and price-format details.

Providers

The Kairos API aggregates data from multiple prediction market providers: Pass the numeric provider_id (or the string provider name, e.g. "predictfun") wherever an endpoint takes a provider.

API Modules

See the API Reference for the full endpoint index with parameters and live try-it panels.

Real-Time Data

Kairos exposes live data through two WebSocket streams — the Market Data stream (which also carries live crypto/oracle prices) and the Order Execution stream — plus REST endpoints for current and historical crypto/oracle data.
Fee quotes also stream — subscribe to subscribe_fee_quote on the order-execution socket for live per-order fee estimates. See Fee Quote WebSocket.

Response Format

All responses are JSON. Successful responses return data directly:
Error envelopes differ by service — do not assume one shape across both.
  • Data API (data.kairos.trade): { "detail": "Error message describing what went wrong" }, or FastAPI’s standard validation envelope on 422.
  • Order Execution API (execution.kairos.trade): { "error": "...", "error_details": { "code": "...", "message": "...", "actions": [] } } on most order-mutation endpoints; some auth/ownership/not-found responses return an empty body, so treat the status code as authoritative there. See Orders — Errors.

Rate Limits

Data API (data.kairos.trade)

Order Execution (execution.kairos.trade)

WebSocket (stream.kairos.trade)

Order Execution WebSocket (execution.kairos.trade/ws)

Exceeding connection limits returns 429 Too Many Requests on upgrade.

Status Codes

Support

Contact your Kairos account representative for API access and support.