API reference · Consolidated

List consolidated groups

GET/v1/consolidated

Groups of equivalent markets across Kalshi and Polymarket, each with its consolidated YES probability, venues and venue gap.

On this page

Auth. None. Without a token the call is served as Free (the Free delay and request budget, shared per IP); send Authorization: Bearer lb_… for your plan's.

Limits. Its own per-minute limit: 20 anonymous or on Free, 120 on Builder, 600 on Standard. Not counted against any allowance.

Parameters

Query parameters

NameTypeRequiredDescription
qstringnoWords in the question, or tickers.
categorystringnoA category.
tickerstringnoOnly groups that contain this market.
limitintegernoPage size. 1 to 200. Default 50.
cursorstringnonext_cursor from the previous page.

Request

Terminal
curl "https://api.langbot.ai/v1/consolidated?limit=1"

Response

200 OK

JSON
{
  "ts": 1793685859494,
  "method": {
    "version": 1,
    "stale_after_ms": 300000,
    "max_spread": 0.1,
    "volume_window_ms": 86400000,
    "weights": "mean(depth share, 24h volume share)",
    "fees": "not included",
    "doc": "https://langbot.ai/docs/consolidated/"
  },
  "count": 1594,
  "next_cursor": "1",
  "groups": [
    {
      "group_id": "cq_kxtime-26-ale",
      "title": "Will Alexandria Ocasio-Cortez be TIME Person of the Year 2026?",
      "category": "culture",
      "p": null,
      "ts": 1793685840000,
      "venue_gap": null,
      "included": 0,
      "computed": false,
      "verified": true,
      "members": ["KXTIME-26-ALE", "pm_5262639"],
      "venues": [
        {
          "ticker": "KXTIME-26-ALE",
          "venue": "kalshi",
          "title": "Will Alexandria Ocasio-Cortez be Time Person of the Year in 2026?",
          "subtitle": "Alexandria Ocasio-Cortez",
          "url": "https://kalshi.com/markets/kxtime",
          "mid": 0.03,
          "bid": 0.02,
          "ask": 0.04,
          "spread": 0.02,
          "depth_usd": 62.28,
          "volume_24h_usd": null,
          "weight": 0.0,
          "quote_ts": 1793684508879,
          "age_s": 1332.1,
          "source": "orderbook_snaps",
          "included": false,
          "excluded": "stale"
        },
        {
          "ticker": "pm_5262639",
          "venue": "polymarket",
          "title": "Will Alexandria Ocasio-Cortez be TIME Person of the Year 2026?",
          "subtitle": "Alexandria Ocasio-Cortez",
          "url": "https://polymarket.com/event/time-person-of-the-year-2026",
          "mid": 0.031,
          "bid": 0.02,
          "ask": 0.042,
          "spread": 0.022,
          "depth_usd": 2.85,
          "volume_24h_usd": null,
          "weight": 0.0,
          "quote_ts": 1793675977256,
          "age_s": 9863.8,
          "source": "venue_api",
          "included": false,
          "excluded": "stale"
        }
      ]
    }
  ],
  "disclaimer": "The Langbot consolidated probability is a published measurement: a liquidity-weighted average of the YES mids of markets on different venues that resolve on…",
  "licence": "Free to read and cite with attribution (\"Langbot consolidated probability\"). Bulk access, redistribution, commercial feeds and embeds at scale are licensed:…"
}

A real response from the API; long lists are cut to their first items.

p is the liquidity-weighted YES mid of the included venues (fees not included); venues[].excluded says why a quote was left out (stale, one_sided, crossed, wide). The method is in Consolidated prices. A measurement, not advice.

Errors

StatuscodeWhen
401token_invalidA token was sent and not recognised. Send a valid one, or none to call anonymously.
422validation_errorA parameter failed validation; detail[].loc names it.
429rate_limitedOver your request budget; wait Retry-After seconds.

Every error body is {"detail": …, "code": "…"}; branch on code. All codes: Errors.