Polymarket Endpoints
Polymarket Markets API
Find Polymarket markets using filters including search, status, category, slug, and volume sorting.
How TPM stores Polymarket markets
TPM stores Polymarket in normalized tables: Event -> PlatformMarket -> Outcome -> Snapshot. A Polymarket market_slug maps to platform_market_id or group_slug on the Polymarket PlatformMarket row.
Get Polymarket markets
Find Polymarket markets using TPM storage with search, category, status, pagination, volume, liquidity, and outcome price data.
Live GET Request
Try it
Live Response
Click Try It to run this GET request against the API.Request
curl 'https://api.thepredictionmarkets.com/api/v2/polymarket/markets?search=nba&limit=5&sort=volume' \
-H 'X-API-Key: YOUR_TPM_API_KEY'Response
{
"markets": [
{
"market_slug": "2026-nba-champion",
"event_slug": "2026-nba-champion",
"title": "2026 NBA Champion",
"status": "active",
"category": "sports",
"platform_url": "https://polymarket.com/event/2026-nba-champion",
"volume_total": 310498252.36,
"liquidity": 8134623.28,
"outcomes": [
{
"title": "Oklahoma City Thunder",
"probability": 0.495,
"best_bid": 0.49,
"best_ask": 0.5,
"spread": 0.01,
"volume": 8208874.22
}
]
}
],
"total": 1,
"limit": 5,
"offset": 0
}Query Parameters
| Name | Type | Required | Default | Example | Description |
|---|---|---|---|---|---|
| market_slug | string | No | - | 2026-nba-champion | Filter by one or more Polymarket market slugs. Use commas for multiple slugs. |
| event_slug | string | No | - | 2026-nba-champion | Filter by TPM event slug. This is useful after discovering events from the events endpoint. |
| condition_id | string | No | - | 0xabc123 | Filter by Polymarket condition ID when stored on the market or outcome row. |
| search | string | No | - | nba champion | Search event titles and Polymarket market slugs. |
| status | active | closed | resolved | all | No | active | active | Return markets by lifecycle status. |
| category | string | No | - | sports | Filter by TPM category slug. |
| limit | integer | No | 25 | 5 | Number of markets to return. Maximum 100. |
| offset | integer | No | 0 | 0 | Offset for page-based pagination. |
| sort | volume | volume_24h | liquidity | updated_at | end_time | created_at | No | volume | volume | Sort returned markets by activity, liquidity, or time. |
| order | asc | desc | No | desc | desc | Sort direction. |
Response Fields
| Field | Type | Example | Description |
|---|---|---|---|
| market_slug | string | 2026-nba-champion | Polymarket market slug. |
| event_slug | string | 2026-nba-champion | TPM event slug. |
| title | string | 2026 NBA Champion | Event title. |
| status | string | - | TPM status: active, closed, or resolved. |
| market_status | string | - | Raw platform status. |
| category | string | sports | Category slug. |
| platform_url | string | - | Direct link to Polymarket. |
| volume_total | number | 310498252.36 | Total volume in USD. |
| volume_24h | number | 1250000.00 | 24-hour volume. |
| liquidity | number | null | 8134623.28 | Total liquidity. |
| open_interest | number | null | - | Current open interest. |
| outcomes | object[] | - | List of outcomes with prices. See Outcome Fields. |
Build with TPM
Get your API key
Start with Kalshi and Polymarket market data, then add unified spreads, signals, alerts, and watchlists as your workflow grows.