Skip to main content

Endpoints

EndpointMethodDescriptionRate Limit
/v1/marketsGETList all markets1 req/min
/v1/market/slug/{slug}GETGet market by slug1 req/5sec
/v1/markets/{market_id}/sidesGETGet market sides1 req/5sec
Authentication: API key signature (or public for /v1/markets)

List All Markets

Get all available markets. Request:
GET /v1/markets
X-API-Key: {api_key}
X-API-Signature: {signature}
Response:
{
  "markets": [
    {
      "id": "inst_abc123",
      "slug": "will-btc-hit-100k-by-dec-31",
      "question": "Will Bitcoin hit $100,000 by December 31, 2026?",
      "category": "crypto",
      "status": "active",
      "volume_24h": 125000.00,
      "liquidity": 50000.00,
      "bid": 0.61,
      "ask": 0.63,
      "last_price": 0.62,
      "created_at": "2026-01-01T00:00:00Z",
      "end_date": "2026-12-31T23:59:59Z"
    }
  ],
  "total": 150
}

Market Fields

FieldTypeDescription
idstringUnique market identifier
slugstringURL-friendly identifier
questionstringThe market question
categorystringMarket category (crypto, politics, sports, etc.)
statusstringMarket status (active, closed, resolved)
volume_24hnumberTrading volume in last 24 hours
liquiditynumberCurrent order book liquidity
bidnumberCurrent best bid price
asknumberCurrent best ask price
last_pricenumberMost recent trade price
created_atstringMarket creation timestamp
end_datestringMarket closing/resolution date

Get Market by Slug

Get details for a specific market using its slug. Request:
GET /v1/market/slug/will-btc-hit-100k-by-dec-31
X-API-Key: {api_key}
X-API-Signature: {signature}
Response:
{
  "id": "inst_abc123",
  "slug": "will-btc-hit-100k-by-dec-31",
  "question": "Will Bitcoin hit $100,000 by December 31, 2026?",
  "description": "This market resolves to Yes if Bitcoin reaches or exceeds $100,000 USD on any major exchange before December 31, 2026 at 11:59 PM ET.",
  "category": "crypto",
  "status": "active",
  "volume_24h": 125000.00,
  "liquidity": 50000.00,
  "bid": 0.61,
  "ask": 0.63,
  "last_price": 0.62,
  "price_change_24h": 0.05,
  "price_change_percentage_24h": 8.77,
  "created_at": "2026-01-01T00:00:00Z",
  "end_date": "2026-12-31T23:59:59Z",
  "resolution_source": "CoinGecko BTC/USD price feed",
  "min_order_size": 1,
  "max_order_size": 10000
}

Get Market Sides

Get the Yes/No side information for a market. Request:
GET /v1/markets/{market_id}/sides
X-API-Key: {api_key}
X-API-Signature: {signature}
Response:
{
  "market_id": "inst_abc123",
  "sides": [
    {
      "side": "yes",
      "price": 0.62,
      "volume_24h": 75000.00,
      "holders": 1250
    },
    {
      "side": "no",
      "price": 0.38,
      "volume_24h": 50000.00,
      "holders": 890
    }
  ]
}

Filtering and Searching

By Category

GET /v1/markets?category=crypto

By Status

GET /v1/markets?status=active

Pagination

GET /v1/markets?page=2&per_page=50

Market Status

StatusDescription
activeMarket is open for trading
closedMarket is closed, awaiting resolution
resolvedMarket has been resolved with outcome
suspendedTrading temporarily halted
These features will soon be available via the Retail API:
  • /v1/events - Group markets by event
  • /v1/search - Full-text search across markets
  • /v1/series - Browse by series (NFL, NBA, etc.)
  • /v1/tags - Filter by tags
In the meantime users should browse markets by category or list all.

Best Practices

  • Cache market list - Update every 5-10 minutes, not on every request
  • Use slugs for user-facing URLs - More readable than market IDs
  • Check status before trading - Don’t attempt orders on closed/resolved markets
  • Monitor end_date - Markets close at the specified time
  • Track volume and liquidity - Better for order execution on high-volume markets