---
title: "Get Markets"
method: GET
path: "/polymarket/markets"
---

# Get Markets

`GET /polymarket/markets`

Fetches market data with optional filtering and search functionality. Supports filtering by market slug, condition ID, token ID, or tags, as well as fuzzy search across market titles and descriptions. Returns markets ordered by volume (most popular first) when filters are applied, or by start_time (most recent first) when no filters are provided.

## Query parameters

- `market_slug` string[]
- `event_slug` string[]
- `condition_id` string[]
- `token_id` string[]
- `tags` string[]
- `search` string
- `status` 'open' | 'closed'
- `min_volume` number
- `limit` integer
- `pagination_key` string
- `start_time` integer
- `end_time` integer

## Response `200`

Markets response with pagination

- object
  - `markets` object[]
    - `market_slug` string
    - `event_slug` string, nullable — The event slug this market belongs to, or null if not associated with an event
    - `condition_id` string
    - `title` string
    - `start_time` integer — Unix timestamp in seconds when the market starts
    - `end_time` integer — Unix timestamp in seconds when the market ends
    - `completed_time` integer, nullable — Unix timestamp in seconds when the market was completed
    - `close_time` integer, nullable — Unix timestamp in seconds when the market was closed
    - `game_start_time` string, date-time, nullable — Datetime string in UTC format (YYYY-MM-DD HH:MM:SS.000) for when the game/event starts. Only present for sports markets that have a game start time.
    - `tags` string[]
    - `volume_1_week` number — Trading volume in USD for the past week
    - `volume_1_month` number — Trading volume in USD for the past month
    - `volume_1_year` number — Trading volume in USD for the past year
    - `volume_total` number — Total trading volume in USD
    - `resolution_source` string — URL to the data source used for market resolution
    - `image` string — URL to the market image
    - `description` string, nullable — Detailed description of the market, or null if no description is available
    - `negative_risk_id` string, nullable — Negative risk identifier for the market, or null if not applicable
    - `side_a` object — First side/outcome of the market
      - `id` string — Token ID for side A
      - `label` string — Label for side A
    - `side_b` object — Second side/outcome of the market
      - `id` string — Token ID for side B
      - `label` string — Label for side B
    - `winning_side` string, nullable — The winning side of the market (null if not yet resolved)
    - `status` 'open' | 'closed'
    - `extra_fields` object — Additional market-specific fields as a map of key-value pairs. For updown markets (markets with slugs containing '-updown-15m-', '-up-or-down-', or '-updown-4h-'), this object includes 'price_to_beat' and 'final_price' fields. Empty object if no extra fields are present.
  - `pagination` object
    - `limit` integer
    - `total` integer — Total number of markets matching the filters
    - `has_more` boolean — Whether there are more markets available
    - `pagination_key` string — Cursor for next page. Only present when has_more is true and using cursor-based pagination.

## Other responses

- `400` — Bad Request - Invalid parameters or validation errors
- `500` — Internal Server Error

---

[API](https://skmtc.net/domeapi/apis/dome-api.md) · [All operations](https://skmtc.net/domeapi/apis/dome-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/domeapi/dome-api/versions/7c5d22727cce/schema)
