Skip to main content
GET
/
polymarket
/
market
Get markets
curl --request GET \
  --url https://api.struct.to/v1/polymarket/market
[
  {
    "condition_id": "<string>",
    "status": "<string>",
    "id": "<string>",
    "market_slug": "<string>",
    "question": "<string>",
    "title": "<string>",
    "description": "<string>",
    "image_url": "<string>",
    "oracle": "<string>",
    "created_time": 123,
    "start_time": 123,
    "game_start_time": 123,
    "closed_time": 123,
    "end_time": 123,
    "accepting_orders": true,
    "uma_resolution_status": "<string>",
    "is_neg_risk": true,
    "market_maker_address": "<string>",
    "creator": "<string>",
    "category": "<string>",
    "volume_usd": 123,
    "liquidity_usd": 123,
    "highest_probability": 123,
    "total_holders": 123,
    "total_daily_rate": 123,
    "winning_outcome": {
      "name": "",
      "price": null,
      "position_id": null,
      "outcome_index": null,
      "latest_block": null,
      "latest_confirmed_at": null
    },
    "outcomes": [
      {
        "name": "",
        "price": null,
        "position_id": null,
        "outcome_index": null,
        "latest_block": null,
        "latest_confirmed_at": null
      }
    ],
    "clob_rewards": [
      {
        "id": "<string>",
        "condition_id": "<string>",
        "asset_address": "<string>",
        "rewards_amount": 123,
        "rewards_daily_rate": 123,
        "start_date": "<string>",
        "end_date": "<string>",
        "rewards_max_spread": 123,
        "rewards_min_size": 123,
        "native_daily_rate": 123,
        "sponsored_daily_rate": 123,
        "total_daily_rate": 123,
        "sponsors_count": 123
      }
    ],
    "tags": [
      "<string>"
    ],
    "event_slug": "<string>",
    "resolution_source": "<string>",
    "metrics": {
      "1m": {
        "volume": 0,
        "shares_volume": 0,
        "builder_usd_volume": 0,
        "builder_shares_volume": 0,
        "fees": 0,
        "builder_fees": 0,
        "txns": 0,
        "builder_txns": 0,
        "unique_traders": 0,
        "unique_makers": 0,
        "unique_takers": 0,
        "unique_builder_traders": 0
      },
      "5m": {
        "volume": 0,
        "shares_volume": 0,
        "builder_usd_volume": 0,
        "builder_shares_volume": 0,
        "fees": 0,
        "builder_fees": 0,
        "txns": 0,
        "builder_txns": 0,
        "unique_traders": 0,
        "unique_makers": 0,
        "unique_takers": 0,
        "unique_builder_traders": 0
      },
      "30m": {
        "volume": 0,
        "shares_volume": 0,
        "builder_usd_volume": 0,
        "builder_shares_volume": 0,
        "fees": 0,
        "builder_fees": 0,
        "txns": 0,
        "builder_txns": 0,
        "unique_traders": 0,
        "unique_makers": 0,
        "unique_takers": 0,
        "unique_builder_traders": 0
      },
      "1h": {
        "volume": 0,
        "shares_volume": 0,
        "builder_usd_volume": 0,
        "builder_shares_volume": 0,
        "fees": 0,
        "builder_fees": 0,
        "txns": 0,
        "builder_txns": 0,
        "unique_traders": 0,
        "unique_makers": 0,
        "unique_takers": 0,
        "unique_builder_traders": 0
      },
      "6h": {
        "volume": 0,
        "shares_volume": 0,
        "builder_usd_volume": 0,
        "builder_shares_volume": 0,
        "fees": 0,
        "builder_fees": 0,
        "txns": 0,
        "builder_txns": 0,
        "unique_traders": 0,
        "unique_makers": 0,
        "unique_takers": 0,
        "unique_builder_traders": 0
      },
      "24h": {
        "volume": 0,
        "shares_volume": 0,
        "builder_usd_volume": 0,
        "builder_shares_volume": 0,
        "fees": 0,
        "builder_fees": 0,
        "txns": 0,
        "builder_txns": 0,
        "unique_traders": 0,
        "unique_makers": 0,
        "unique_takers": 0,
        "unique_builder_traders": 0
      },
      "7d": {
        "volume": 0,
        "shares_volume": 0,
        "builder_usd_volume": 0,
        "builder_shares_volume": 0,
        "fees": 0,
        "builder_fees": 0,
        "txns": 0,
        "builder_txns": 0,
        "unique_traders": 0,
        "unique_makers": 0,
        "unique_takers": 0,
        "unique_builder_traders": 0
      },
      "30d": {
        "volume": 0,
        "shares_volume": 0,
        "builder_usd_volume": 0,
        "builder_shares_volume": 0,
        "fees": 0,
        "builder_fees": 0,
        "txns": 0,
        "builder_txns": 0,
        "unique_traders": 0,
        "unique_makers": 0,
        "unique_takers": 0,
        "unique_builder_traders": 0
      },
      "lifetime": {
        "volume": 0,
        "shares_volume": 0,
        "builder_usd_volume": 0,
        "builder_shares_volume": 0,
        "fees": 0,
        "builder_fees": 0,
        "txns": 0,
        "builder_txns": 0,
        "unique_traders": 0,
        "unique_makers": 0,
        "unique_takers": 0,
        "unique_builder_traders": 0
      }
    },
    "relevance_score": 123
  }
]

Query Parameters

condition_ids
string

Filter by condition ID(s) - comma-separated (max 50)

question_ids
string

Filter by question ID(s) - comma-separated (max 50)

market_ids
string

Filter by market ID(s) - comma-separated (max 50)

market_slugs
string

Filter by market slug(s) - comma-separated (max 50)

event_slugs
string

Filter by event slug(s) - comma-separated (max 50)

position_ids
string

Filter by position ID(s) - comma-separated (max 50)

Search in title (3-100 characters)

status
enum<string>

Filter by status: open, closed, or all (default: all)

Available options:
open,
closed,
all
sort_by
enum<string>

Sort: volume, txns, unique_traders, liquidity, holders, total_daily_rate, end_time, start_time, created_time, relevance

Available options:
volume,
txns,
unique_traders,
liquidity,
holders,
total_daily_rate,
end_time,
start_time,
created_time,
relevance
sort_dir
enum<string>

Sort direction: asc, desc (default: desc)

Available options:
asc,
desc
timeframe
enum<string>

Metrics timeframe: 1m, 5m, 30m, 1h, 6h, 24h, 7d, 30d (default: 24h)

Available options:
1m,
5m,
30m,
1h,
6h,
24h,
7d,
30d,
lifetime
min_volume
number<double>

Minimum total volume USD

max_volume
number<double>

Maximum total volume USD

min_liquidity
number<double>

Minimum liquidity USD

max_liquidity
number<double>

Maximum liquidity USD

min_txns
integer<int32>

Minimum transactions in selected timeframe

max_txns
integer<int32>

Maximum transactions in selected timeframe

min_unique_traders
integer<int32>

Minimum unique traders in selected timeframe

max_unique_traders
integer<int32>

Maximum unique traders in selected timeframe

min_holders
integer<int64>

Minimum total holders

max_holders
integer<int64>

Maximum total holders

categories
string

Comma-separated category filters (max 50)

exclude_categories
string

Comma-separated categories to exclude

tags
string

Filter by tag(s) - comma-separated (max 50)

exclude_tags
string

Comma-separated tags to exclude

start_time
integer<int64>

Filter markets with end_time >= start_time (Unix timestamp)

end_time
integer<int64>

Filter markets with end_time <= end_time (Unix timestamp)

include_tags
boolean

Include tags array (default: true)

include_event
boolean

Include event object (default: true)

include_metrics
boolean

Include all timeframe metrics (default: true)

limit
integer<int32>

Results limit (default: 10, max: 100)

pagination_key
string

Cursor-based pagination key

has_rewards
boolean

Only return markets that have CLOB rewards (default: false)

ai
boolean

Return truncated response optimized for AI consumers (default: false)

Response

List of markets with metadata, outcomes, tags, event, and metrics. Response includes pagination: { has_more, pagination_key } for cursor-based pagination.

condition_id
string
required

Condition ID.

status
string
required

Status.

id
string | null

ID.

market_slug
string | null

Market slug.

question
string | null

Question.

title
string | null

Title.

description
string | null

Description.

image_url
string | null

Image URL.

oracle
string | null

Oracle.

created_time
integer<int64> | null

Created time timestamp.

start_time
integer<int64> | null

Start time timestamp.

game_start_time
integer<int64> | null

Game start time timestamp.

closed_time
integer<int64> | null

Closed time timestamp.

end_time
integer<int64> | null

End time timestamp.

accepting_orders
boolean | null

Accepting orders.

uma_resolution_status
string | null

Uma resolution status.

is_neg_risk
boolean | null

Whether neg risk is true.

market_maker_address
string | null

Market maker address.

creator
string | null

Creator.

category
string | null

Category.

volume_usd
number<double> | null

Volume in USD.

liquidity_usd
number<double> | null

Liquidity in USD.

highest_probability
number<double> | null

Highest probability.

total_holders
integer<int64> | null

Total holders.

total_daily_rate
number<double> | null

Total daily rate.

winning_outcome
object

Winning outcome.

outcomes
object[]

Outcomes.

clob_rewards
object[]

Clob rewards.

tags
string[]

Tags.

event_slug
string | null

Event slug.

resolution_source
string | null

Resolution source.

metrics
object

Per-timeframe metrics keyed by lookback window. Each timeframe key is optional — present only when data exists for that window.

relevance_score
number<double> | null

Relevance score.

Last modified on June 17, 2026