Polymarket Sports Markets avatar

Polymarket Sports Markets

Pricing

from $1.00 / 1,000 market records

Go to Apify Store
Polymarket Sports Markets

Polymarket Sports Markets

Collect Polymarket sports markets with event context, outcome probabilities, liquidity, volume, and optional order books. One record per unique market with stable source identifiers and a versioned normalized envelope. Filter by event, tag, market type, and reported activity.

Pricing

from $1.00 / 1,000 market records

Rating

0.0

(0)

Developer

Philip Kirkbride

Philip Kirkbride

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Quick Start

Collect Polymarket sports markets with event context, outcome probabilities, liquidity, volume, and optional order books. Use the records for research, dashboards, and scheduled snapshots.

{"tagSlug":"sports","marketTypes":["moneyline","spreads","totals"],"maxResults":250,"includeOrderBooks":false}

The default input keeps all market types, including futures and markets without a published type. A run returns up to maxResults, not necessarily the whole board. Open or active does not mean upcoming: older unresolved markets may still appear. Source tags and live flags are retained as reported; they are not independently verified game status.

Input

NameTypeDefaultWhat it does
eventSlugsarray[]Collects up to 50 selected events. Bypasses discovery tag and date bounds; other filters still apply.
tagSlugstringsportsSelects the discovery tag, for example nba.
marketTypesarray[]Exact case-insensitive sportsMarketType values, such as moneyline, spreads, totals, or first_half_totals. Empty keeps every type.
activeOnlybooleantrueExcludes explicitly inactive events and markets.
openOnlybooleantrueExcludes closed events and markets. false includes both open and closed records.
liveOnlybooleanfalseKeeps events explicitly marked live by the source.
startDateMin / startDateMaxstringunsetInclusive discovery bounds on listing time (eventListingTime), not game kickoff. ISO-8601; naive times mean UTC. Ignored for exact event slugs.
liquidityMin / volumeMinnumberunsetMinimum reported market liquidity / lifetime volume. An explicit bound excludes unknown values, including when the bound is zero.
pageSizeinteger100Events requested per page, from 1 to 500; each event may contain many markets.
maxResultsinteger500Maximum unique market records, from 1 to 5,000, across all events.
includeOrderBooksbooleanfalseAdds order books for the market's outcome tokens.
orderBookConcurrencyinteger4Concurrent book requests, from 1 to 16; the request delay still applies.
includeRawbooleanfalseRetains original event and market objects. This can substantially enlarge each row.
requestDelaySecsnumber0.1Pause between page, event, or book requests, from 0 to 10 seconds.

Unknown input fields, invalid types, non-finite numbers, reversed date ranges, and out-of-range limits fail validation. Very restrictive filters may require scanning many event pages before enough markets match.

Output

Each dataset row represents one unique market. Identity uses conditionId when available; recordKey includes the polymarket: prefix. Rows include event details, sportsMarketType, line, outcomes (names), parallel outcomePrices (probabilities, not decimal odds), token IDs, liquidity, volume, quotes, and a versioned canonical envelope. Unpublished values remain null or empty lists; no kickoff, market type, or probability is invented.

Selected fields from a snapshot captured on 2026-10-16 (prices are historical, not current quotes):

{
"recordKey": "polymarket:0xe0f7727d3f05d038618bc44f8cc2e14cefa02016b53805028e82070eb5c84a67",
"eventSlug": "nba-mia-orl-2026-10-16",
"question": "Heat vs. Magic",
"sportsMarketType": "moneyline",
"line": null,
"outcomes": ["Heat", "Magic"],
"outcomePrices": [0.415, 0.585],
"liquidity": 51561.2906
}

eventStartTime is the reported kickoff when present; eventListingTime is when the event was listed. canonical retains conservative market/participant evidence: ambiguous or unsupported interpretations remain unknown or quarantined rather than being forced into a match.

orderBooks is null when disabled. When enabled it follows clobTokenIds order; each successful book contains bids, asks, timestamps, and reported trading increments. A failed token has a tokenId and sanitized error, while its market is retained. raw is null unless enabled.

The separate OUTPUT summary reports written records, event counts, coverage counters, warnings, and succeeded, succeeded_empty, succeeded_partial, or failed. Collection or validation failures publish no buffered markets. Book failures preserve markets and report a partial result. A dataset charge limit can also produce a partial result, including zero written records; this is not reported as a genuine empty query. Coverage counters describe every market considered during collection, not necessarily the rows ultimately written.

FAQ

What sports can I collect? Use the default sports tag, another supported source tag, or exact event slugs. Market availability and published metadata vary by sport.

Are all markets moneylines, spreads, or totals? No. Keep marketTypes empty for all source types; use explicit values to restrict the result. Unknown source types are preserved, not guessed.

Is this a trading service? No. It collects snapshots; it does not place trades or guarantee game status, executable prices, settlement equivalence, or cross-book matches.

What are the limits? Up to 5,000 unique markets per run (maxResults) and up to 50 exact event slugs. Turning on order books makes runs slower.

Price

See the Actor's Pricing tab on Apify for current rates.

For support, contact Apify support and include the Actor run ID.