Incentives API
The Incentives API exposes the active incentive programs and the rewards you have earned. For background on how programs work and their reward formulas, see the Incentive Programs overview; for how liquidity programs score — Target Size, Discount Factor, and Max Spread — see the Liquidity Incentive Program page.Base URL
Field casing. Query parameters are
snake_case (e.g. page_size). Response bodies are lowerCamelCase (e.g. marketSlug). Sending a camelCase query parameter (e.g. pageSize) is silently ignored and the default is used.Endpoints
Get Incentive Programs
Returns active and historical incentive programs grouped by market.Query Parameters
Response
Ongoing programs omit
end until an end time is set.IncentiveProgram Fields
TimePeriod Fields
Reading
maxSpread. A liquidity program may carry a maximum spread from the midpoint. Where it does:- Units.
maxSpreadis in price dollars of a $1 contract (0.035= 3.5¢). The docs pages and polymarket.us/rewards quote the same value in cents; the API always returns dollars. It is a half-width: the two sides may be up to 2 ×maxSpreadapart (3.5¢ from the midpoint = a 7¢ gap). - What is compared. Once per sampled second, each side of the book is walked from its best price outward, one whole price level at a time, until the resting size on that side (all participants combined) reaches
targetSize. The price level that gets there is that side’s size-adjusted price. The midpoint is halfway between the two size-adjusted prices — not the best-bid/best-offer midpoint. A small order at the best price counts toward that side’s depth like any other order; it moves the size-adjusted price only when it is what carries the side totargetSize. - Pass / fail. This is a test of the book, not of each trader: you do not have to quote both sides yourself. The second is scored as usual (every order from the best price through the size-adjusted price qualifies, weighted by its distance from that side’s best price and by its size) when both sides reach
targetSizeand each size-adjusted price is no more thanmaxSpreadfrom the midpoint — a gap of exactly 2 ×maxSpreadpasses. If either side never reachestargetSize, or the gap is wider than 2 ×maxSpread, nobody is paid for that second, including makers quoting tightly and including a side that did reachtargetSize. Once a second qualifies, a one-sided quote still earns on the side it rests on. A failed second still counts toward the period’s total, so its share ofrewardPoolis forfeited, not shifted to other seconds or other makers. - Tick size. The check is in dollars, so a given
maxSpreadmeans the same thing on 1¢-tick and 0.1¢-tick markets. - Omission. The key is absent (never
0) when a program has no Max Spread; it is aliquidityProgramfield. Programs without a Max Spread score each side independently, as before. - Scope. The value applies to every scored second of that
timePeriods[]entry. Parameters can differ between time periods of the same market, so readmaxSpreadper entry rather than per market.
Get Incentive Earnings
Returns rewards earned by the authenticated caller. Each entry sums all payouts for a single(market, date) pair, where date is in Eastern Time.
Query Parameters
Response
Each daily entry represents rewards earned from midnight-to-midnight ET. Callers with no rewards receive
{"rewards":[]}.