API reference · Markets
List event markets
GET/v1/markets
The markets attached to recorded live events, with their rules text and the phrases they settle on.
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. Counts against your plan's API requests (60, 600 or 3,000 a minute on Free, Builder and Standard).
Parameters
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
q | string | no | Free text over the ticker and title. |
venue | string | no | kalshi or polymarket. |
status | string | no | open, closed, settled or all. Default open. |
event_id | string | no | Only the markets of this event (ev_…). |
speaker | string | no | Only the markets on this speaker key (for example powell). |
limit | integer | no | Page size. 1 to 1000. Default 200. |
Request
curl "https://api.langbot.ai/v1/markets?status=open&limit=1"from langbot import LangbotClient
async with LangbotClient() as lb:
for m in await lb.markets(status="open"):
print(m.ticker, m.phrases)import { LangbotClient } from "@langbotai/sdk";
const lb = new LangbotClient();
const markets = await lb.markets({ status: "open" });
console.log(markets.length);Response
200 OK
{
"count": 1,
"markets": [
{
"ticker": "pm_5532353",
"venue": "polymarket",
"event_id": "ev_pm_what_will_the_announcers_say_during_the_49ers_vs_seahawks_game_20261011",
"title": "Will the announcers say \"One Handed\" during the 49ers vs Seahawks game?",
"rules_text": "This market will resolve to \"Yes\" if the listed term is mentioned by a play-by-play announcer or a game analyst of the official FOX announce team during the…",
"phrases": ["one handed"],
"status": "open",
"close_ts": 1791750600000
}
]
}A real response from the API; long lists are cut to their first items.
For every listed market with its price history, use List markets. This list never carries order-book data.
Errors
| Status | code | When |
|---|---|---|
| 401 | token_invalid | A token was sent and not recognised. Send a valid one, or none to call anonymously. |
| 422 | validation_error | A parameter failed validation; detail[].loc names it. |
| 429 | rate_limited | Over your request budget; wait Retry-After seconds. |
Every error body is {"detail": …, "code": "…"}; branch on code. All codes: Errors.