Find Polymarket markets and resolved outcomes
Browse Polymarket market metadata with resumable pagination.
GET /markets
With resolved=true, this endpoint reads the local archive and returns only confirmed winning outcomes. With resolved=false or no resolved filter, it queries Gamma live. These modes have different cursors; keep the same filter while paging. The confirmed-resolution archive grows as the background crawler discovers markets.
Authentication
Send your key in the X-API-Key header. Keep the key out of URLs and shared logs.
Parameters
| Name | Location | Type | Required | Details |
|---|---|---|---|---|
limit | query | integer | No | Default: 100. minimum: 1. maximum: 500. |
cursor | query | string or null | No | |
resolved | query | boolean or null | No |
Example request
curl --fail-with-body -X GET \
"https://polymarket.omray.dev/markets" \
-H "X-API-Key: $PM_API_KEY"Responses
| Status | Meaning |
|---|---|
200 | Successful Response |
422 | Validation Error |
Authenticated requests can return 401 for an invalid key or 429 when a plan limit is reached. Upstream failures may return a server error; do not treat an error as an empty dataset.
OpenAPI operation schema
{
"tags": [
"Markets"
],
"summary": "Find Polymarket markets and resolutions",
"description": "Read live Gamma market metadata with keyset pagination. With resolved=true, read confirmed winners from the local archive; each response identifies its pagination source.",
"operationId": "markets",
"security": [
{
"APIKeyHeader": []
}
],
"parameters": [
{
"name": "limit",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"default": 100,
"title": "Limit"
}
},
{
"name": "cursor",
"in": "query",
"required": false,
"schema": {
"anyOf": [
{
"type": "string",
"maxLength": 2048
},
{
"type": "null"
}
],
"title": "Cursor"
}
},
{
"name": "resolved",
"in": "query",
"required": false,
"schema": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Resolved"
}
}
],
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/MarketPage"
}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
}
}