Markets
Resolved Up-or-Down markets, indexed by asset and timeframe. The condition_id returned here is the canonical key for the order book and trades endpoints.
List markets
GET/v1/markets
Returns a paginated list of markets matching the filter. By default only resolved markets are returned, sorted by end_date descending.
Query parameters
| Field | Type | Description |
|---|---|---|
| token | string | One of BTC or ETH (case-insensitive). Omit for both assets. |
| timeframe | string | One of 5m, 15m, 4h. |
| resolved | boolean | true or false. Set to false to include in-progress markets. |
| from | string | Lower bound on end_date (YYYY-MM-DD). |
| to | string | Upper bound on end_date (YYYY-MM-DD). |
| limit | integer | Page size, 1–1000. Defaults to 100. |
| offset | integer | Number of rows to skip. Defaults to 0. |
Example request
terminal
curl https://polyreplay.dev/api/v1/markets \ -H "Authorization: Bearer pr_xxx" \ -G \ --data-urlencode "token=BTC" \ --data-urlencode "timeframe=4h" \ --data-urlencode "from=2025-01-01" \ --data-urlencode "to=2025-03-31" \ --data-urlencode "limit=2"
Response
200 OK
{
"data": [
{
"condition_id": "0xabc123...",
"slug": "btc-updown-4h-1747776000",
"question": "Bitcoin Up or Down — 4h",
"asset": "BTC",
"timeframe": "4h",
"yes_token_id": "1234567890...",
"no_token_id": "9876543210...",
"start_date": "2025-03-31T20:00:00Z",
"end_date": "2025-04-01T00:00:00Z",
"winner": "YES",
"btc_price_start": 82145.12,
"btc_price_end": 82310.40,
"final_volume": 142908.31,
"final_liquidity": 51820.0
}
],
"pagination": {
"limit": 2,
"offset": 0,
"total": 1240
}
}Common follow-ups
- GET /v1/markets/{conditionId}/book — order book history for this market.
- GET /v1/markets/{conditionId}/trades — every executed fill.