Skip to main content
GET
/
rewards
/
user
/
markets
Get user earnings and markets configuration
curl --request GET \
  --url https://clob.polymarket.com/rewards/user/markets \
  --header 'POLY_ADDRESS: <api-key>' \
  --header 'POLY_API_KEY: <api-key>' \
  --header 'POLY_PASSPHRASE: <api-key>' \
  --header 'POLY_SIGNATURE: <api-key>' \
  --header 'POLY_TIMESTAMP: <api-key>'
{
  "limit": 100,
  "count": 1,
  "total_count": 42,
  "next_cursor": "LTE=",
  "data": [
    {
      "condition_id": "0xbd31dc8a20211944f6b70f31557f1001557b59905b7738480ca09bd4532f84af",
      "market_id": "248849",
      "event_id": "12345",
      "question": "Will Trump win the 2024 Iowa Caucus?",
      "market_slug": "will-trump-win-the-2024-iowa-caucus",
      "event_slug": "will-trump-win-the-2024-iowa-caucus",
      "image": "https://polymarket-upload.s3.us-east-2.amazonaws.com/trump1+copy.png",
      "rewards_max_spread": 99,
      "rewards_min_size": 10,
      "volume_24hr": 12345.67,
      "spread": 0.12,
      "market_competitiveness": 0.42,
      "tokens": [
        {
          "token_id": "1343197538147866997676250008839231694243646439454152539053893078719042421992",
          "outcome": "YES",
          "price": 0.8
        },
        {
          "token_id": "16678291189211314787145083999015737376658799626183230671758641503291735614088",
          "outcome": "NO",
          "price": 0.2
        }
      ],
      "rewards_config": [
        {
          "id": 0,
          "asset_address": "0x9c4E1703476E875070EE25b56A58B008CFb8FA78",
          "start_date": "2024-03-01",
          "end_date": "2500-12-31",
          "rate_per_day": 2,
          "total_rewards": 92
        }
      ],
      "maker_address": "0xD527CCdBEB6478488c848465F9947bDA3C2e6994",
      "earning_percentage": 30,
      "earnings": [
        {
          "asset_address": "0x9c4E1703476E875070EE25b56A58B008CFb8FA78",
          "earnings": 0.585051,
          "asset_rate": 1.001
        }
      ]
    }
  ]
}

Authorizations

POLY_API_KEY
string
header
required

Your API key

POLY_ADDRESS
string
header
required

Ethereum address associated with the API key

POLY_SIGNATURE
string
header
required

HMAC signature of the request

POLY_PASSPHRASE
string
header
required

API key passphrase

POLY_TIMESTAMP
string
header
required

Unix timestamp of the request

Query Parameters

date
string<date>

Date in YYYY-MM-DD format. Defaults to current date if not provided.

signature_type
enum<integer>

Signature type for address derivation (required for API KEY auth):

  • 0: EOA
  • 1: POLY_PROXY
  • 2: POLY_GNOSIS_SAFE
Available options:
0,
1,
2
maker_address
string

Maker address to query data for

sponsored
boolean
default:false

If true, returns sponsored reward earnings

next_cursor
string

Pagination cursor from previous response

page_size
integer
default:100

Number of items per page (max 500, values above are capped)

Required range: x <= 500
q
string

Search query to filter markets by question/description

tag_slug
string

Filter by tag slug (can be repeated for OR logic)

favorite_markets
boolean
default:false

If true, only show markets favorited by the user (requires auth)

no_competition
boolean
default:false

Filter for markets with no competition

only_mergeable
boolean
default:false

Filter for only mergeable markets

only_open_orders
boolean
default:false

Filter for markets where user has open orders

only_open_positions
boolean
default:false

Filter for markets where user has open positions

order_by
enum<string>

Field to sort by

Available options:
max_spread,
min_size,
end_date,
earning_percentage,
rate_per_day,
earnings,
spread,
competitiveness,
question,
price,
market,
volume_24hr
position
enum<string>

Sort direction

Available options:
ASC,
DESC

Response

Successfully retrieved user earnings and market configurations

Paginated list of user rewards markets

limit
integer
required

Maximum number of items per page

count
integer
required

Number of items in the current response

next_cursor
string
required

Cursor for the next page. "LTE=" indicates the last page.

data
object[]
required
total_count
integer

Total number of items across all pages