Prediction Markets Scraper: Kalshi, Polymarket & Manifold avatar

Prediction Markets Scraper: Kalshi, Polymarket & Manifold

Pricing

Pay per event

Go to Apify Store
Prediction Markets Scraper: Kalshi, Polymarket & Manifold

Prediction Markets Scraper: Kalshi, Polymarket & Manifold

Live odds, prices, volume and price history from Kalshi, Polymarket and Manifold in one clean, unified schema. Search by keyword, filter by status, compare venues. Uses official public APIs only.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Cameron Fagan

Cameron Fagan

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

16 days ago

Last modified

Share

Get live odds, prices, volume, liquidity and price history from Kalshi, Polymarket and Manifold Markets, all returned in one unified schema. Search by keyword ("bitcoin", "fed", "election"), compare the same question across venues, or pull every open market ranked by volume.

Uses only the venues' official public APIs. No login, no cookies, no proxies, no browser, so runs are fast, cheap and reliable.

What you can do with it

  • Compare odds across venues. See what Kalshi, Polymarket and Manifold each price for the same event, and spot arbitrage or mispricing.
  • Feed trading bots and AI agents with clean, consistent JSON instead of three different APIs.
  • Track sentiment over time with daily or hourly price history.
  • Research resolved markets. Pull closed markets with their final resolution for backtesting and calibration studies.
  • Build dashboards and alerts on elections, crypto, the Fed, sports, AI, weather and more.

Input

FieldDescription
sourcesAny of kalshi, polymarket, manifold.
searchOptional keyword. Whole-word match on the market question, so fed finds "Fed rate cut" but not "Federico".
statusopen (trading now) or closed (resolved).
maxItemsPerSourceMax markets per venue, highest volume first.
minVolumeUsdSkip thin markets.
includePriceHistoryAttach a YES-price time series (Kalshi, Polymarket).
historyDays, historyIntervalLookback and resolution (hour / day).

Example:

{
"sources": ["kalshi", "polymarket", "manifold"],
"search": "bitcoin",
"status": "open",
"maxItemsPerSource": 50,
"includePriceHistory": true,
"historyDays": 30
}

Output

One row per tradable YES contract (example below; values illustrative). Multi-outcome events (e.g. "Bitcoin price at end of 2026" with price buckets, or "Who wins the House?") become one row per outcome, so every row has a single YES price.

{
"source": "polymarket",
"marketId": "0x…",
"eventId": "what-price-will-bitcoin-hit-in-2026",
"question": "Will Bitcoin reach $250,000 by December 31, 2026?",
"outcome": "↑ 250,000",
"url": "https://polymarket.com/event/…",
"status": "open",
"yesPrice": 0.0065,
"noPrice": 0.9935,
"yesBid": 0.006,
"yesAsk": 0.007,
"lastTradePrice": 0.0065,
"outcomes": [{ "name": "Yes", "price": 0.0065 }, { "name": "No", "price": 0.9935 }],
"volume": 5493137,
"volume24h": 41210,
"volumeUnit": "usd",
"volumeUsd": 5493137,
"volume24hUsd": 41210,
"liquidityUsd": 120334,
"openInterest": null,
"createdTime": "2025-12-31T…",
"closeTime": "2026-12-31T…",
"resolution": null,
"rules": "This market will resolve to \"Yes\" if…",
"priceHistory": [{ "t": "2026-09-27T00:00:00.000Z", "price": 0.007 }],
"scrapedAt": "2026-10-04T…"
}

Prices are probabilities from 0 to 1 (0.25 = 25% = 25¢).

Notes per venue

  • Kalshi: volume is in contracts. Each contract settles at $1, so contracts ≈ USD notional, and volumeUsd uses that. openInterest is included.
  • Polymarket: volumes and liquidity in USD (USDC). Bid/ask from the order book.
  • Manifold: play-money markets. volume is in mana, not dollars, so volumeUsd is empty. Multiple-choice markets are split into one row per answer.

Pricing

Pay per result: you're charged per market returned, plus a small extra per market when price history is attached. No monthly fee. Set a maximum charge per run in Apify and the scraper stops cleanly when it's reached.

Use with AI agents

Works with the Apify MCP server and API, so agents (Claude, ChatGPT, LangChain, n8n, Make, Zapier) can call it directly, e.g. "get current odds on all Fed markets across Kalshi and Polymarket".

FAQ

Is this allowed? It reads public market data from each venue's official public API, the same data shown on their websites. It doesn't log in, place trades, or touch any private data.

How fresh is the data? Live at the moment the run executes. Schedule the Actor (e.g. every 15 minutes) for a continuous feed.

A venue was down. Does the run fail? No. Each venue is fetched independently; if one fails, the others still return results and the error is logged.

Found a bug or want another venue? Open an issue on the Issues tab. Requests are welcome.