# Manifold Prediction Markets Scraper (`parseforge/manifold-prediction-markets-scraper`) Actor

Scrape prediction market data from Manifold.markets public API. Get question, probability, volume, creator, close date, comments count for thousands of markets. No API key required.

- **URL**: https://apify.com/parseforge/manifold-prediction-markets-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Business, Developer tools, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $32.02 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

![ParseForge Banner](https://raw.githubusercontent.com/ParseForge/apify-assets/main/parseforge-banner.png)

## 🎯 Manifold Prediction Markets Scraper

> 🚀 **Export live prediction markets from Manifold in seconds.** Questions, current probabilities, volume, creator data, resolution status, and optional full descriptions. No API key, no registration.

> 🕒 **Last updated:** 2026-05-12 · **📊 Up to 30 fields** per record · **🎯 100,000+ markets** · **💰 Live probability + volume** · **🔓 Public API**

The **Manifold Prediction Markets Scraper** pulls live data from Manifold.markets, the leading play-money prediction-market platform where users forecast everything from elections to AI benchmarks. Each record returns **up to 30 fields**: market question, current probability, slug and ID, creator profile, created/close/last-bet timestamps, outcome type (binary, multi-choice, date, numeric), automated market maker (AMM) state, total volume, 24-hour volume, total liquidity, unique bettor count, internal pool balances, and optional full HTML and text descriptions.

The Actor supports two modes. `list` walks the chronological feed using cursor pagination. `search` runs full-text queries with filters for resolution status (open, closed, resolved, closing-this-week, etc.) and 8 sort options. Manifold is used by forecasters, journalists, researchers, and AI safety teams to crowdsource probability estimates on real-world events, making it a rich source of structured forecast data.

| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| Forecasting researchers, journalists, AI safety teams, prediction-market arbitrageurs, calibration scientists, news aggregators, betting analysts | Probability-feed dashboards, AI benchmark tracking, calibration studies, election-night feeds, news-event forecasting, market sentiment indicators, machine-learning training data |

---

### 📋 What the Manifold Prediction Markets Scraper does

Two scraping modes plus rich filtering:

- 📋 **List mode.** Chronological feed across all public Manifold markets with cursor pagination.
- 🔍 **Search mode.** Full-text query with 8 sort orders (score, newest, liquidity, subsidy, last-updated, most-popular, resolve-date, close-date).
- 🏷️ **State filters.** All, open, closed, resolved, closing this month/week/day.
- 📝 **Optional descriptions.** Toggle `fetchDescriptions` to fetch full HTML and plain-text descriptions per market.

Each market record includes a stable market ID, canonical URL, exact question text, slug, creator ID/username/name/avatar, four timestamps (created, close, last-updated, last-bet), outcome type, mechanism (`cpmm-1`, `cpmm-multi-1`, etc.), resolution status with optional resolution value and probability, current probability, lifetime volume, 24-hour volume, total liquidity, unique bettor count, and the internal AMM pool state. With `fetchDescriptions`, you also get full HTML and plain-text market descriptions, optional answers array for multi-choice markets, group slugs, token symbol, and AMM configuration flags.

> 💡 **Why it matters:** prediction markets aggregate distributed knowledge into a single probability number. Manifold is the largest play-money platform with hundreds of new markets per day. Building a forecast feed yourself means parsing JSON, paging through cursors, and managing rate limits. This Actor returns clean structured rows ready for dashboards, calibration studies, or AI agent context windows.

---

### 🎬 Full Demo

_🚧 Coming soon: a 3-minute walkthrough showing how to go from sign-up to a downloaded prediction-markets dataset._

---

### ⚙️ Input

<table>
<thead>
<tr><th>Input</th><th>Type</th><th>Default</th><th>Behavior</th></tr>
</thead>
<tbody>
<tr><td><code>mode</code></td><td>string</td><td><code>"list"</code></td><td>Either <code>list</code> for the chronological feed or <code>search</code> for full-text search.</td></tr>
<tr><td><code>query</code></td><td>string</td><td><code>""</code></td><td>For <code>search</code> mode. Free-text search across market questions.</td></tr>
<tr><td><code>sort</code></td><td>string</td><td><code>"score"</code></td><td>One of <code>score</code>, <code>newest</code>, <code>liquidity</code>, <code>subsidy</code>, <code>last-updated</code>, <code>most-popular</code>, <code>resolve-date</code>, <code>close-date</code>.</td></tr>
<tr><td><code>filter</code></td><td>string</td><td><code>""</code></td><td>State filter. Empty = all. Options: <code>open</code>, <code>closed</code>, <code>resolved</code>, <code>closing-month</code>, <code>closing-week</code>, <code>closing-day</code>.</td></tr>
<tr><td><code>fetchDescriptions</code></td><td>boolean</td><td><code>false</code></td><td>When <code>true</code>, fetches full HTML and plain-text description per market. One extra API call per record.</td></tr>
<tr><td><code>maxItems</code></td><td>integer</td><td><code>10</code></td><td>Records to return. Free plan caps at 10, paid plan at 1,000,000.</td></tr>
</tbody>
</table>

**Example: latest 200 open markets.**

```json
{
    "mode": "list",
    "maxItems": 200
}
````

**Example: search for AI-related markets with full descriptions.**

```json
{
    "mode": "search",
    "query": "AI",
    "sort": "most-popular",
    "filter": "open",
    "fetchDescriptions": true,
    "maxItems": 100
}
```

> ⚠️ **Good to Know:** probabilities are point-in-time and drift continuously as bettors trade. For accurate historical series, schedule the Actor on an interval. Multi-choice market probabilities are returned per-answer when `fetchDescriptions` is on.

***

### 📊 Output

Each market record contains up to **30 fields** depending on outcome type and `fetchDescriptions` flag. Download the dataset as CSV, Excel, JSON, or XML.

#### 🧾 Schema

| Field | Type | Example |
|---|---|---|
| 🆔 `id` | string | `"n0h0uppcyl"` |
| 🔗 `url` | string | `"https://manifold.markets/arnv/will-brent-crude-oil-..."` |
| ❓ `question` | string | `"Will Brent Crude Oil close above $110 on May 15th, 2026?"` |
| 🔗 `slug` | string | `"will-brent-crude-oil-close-above-11-h9QuZ8SQCq"` |
| 🆔 `creatorId` | string | `"kfh173b1eWb6FZdNVet6wDYm1YH3"` |
| 👤 `creatorUsername` | string | null | `"arnv"` |
| 👤 `creatorName` | string | null | `"arnav"` |
| 🖼️ `creatorAvatarUrl` | string | null | `"https://storage.googleapis.com/.../ngQcz5QZ.png"` |
| 📅 `createdTime` | ISO 8601 | null | `"2026-05-12T15:27:16.479Z"` |
| 📅 `closeTime` | ISO 8601 | null | `"2026-05-15T23:59:00.000Z"` |
| 📅 `lastUpdatedTime` | ISO 8601 | null | `"2026-05-12T16:23:26.767Z"` |
| 📅 `lastBetTime` | ISO 8601 | null | `"2026-05-12T16:23:26.767Z"` |
| 🎲 `outcomeType` | string | null | `"BINARY"` |
| ⚙️ `mechanism` | string | null | `"cpmm-1"` |
| ✅ `isResolved` | boolean | null | `false` |
| 🏁 `resolution` | string | undefined | `"YES"` |
| 📊 `resolutionProbability` | number | undefined | `0.95` |
| 📈 `probability` | number | null | `0.43686192415738545` |
| 💰 `volume` | number | null | `30` |
| 💰 `volume24Hours` | number | null | `20` |
| 💧 `totalLiquidity` | number | null | `250` |
| 👥 `uniqueBettorCount` | number | null | `2` |
| 🏊 `pool` | object | null | `{"NO": 207.08, "YES": 220.12}` |
| 🔢 `p` | number | undefined | `0.4519406403830469` |
| 💵 `token` | string | undefined | `"MANA"` |
| ➕ `shouldAnswersSumToOne` | boolean | undefined | `true` |
| ➕ `addAnswersMode` | string | undefined | `"DISABLED"` |
| 📝 `answers` | array | undefined | `[{"id":"a","text":"...","probability":0.6}]` |
| 🏷️ `groupSlugs` | string\[] | undefined | `["politics","2026-election"]` |
| 📝 `description` | string | undefined | `"<p>Full HTML description...</p>"` |
| 📝 `textDescription` | string | undefined | `"Plain text description..."` |
| 🕒 `scrapedAt` | ISO 8601 | `"2026-05-12T16:30:27.593Z"` |

#### 📦 Sample records

<details>
<summary><strong>📊 Binary market: Brent Crude Oil price prediction (CPMM-1)</strong></summary>

```json
{
    "id": "n0h0uppcyl",
    "url": "https://manifold.markets/arnv/will-brent-crude-oil-close-above-11-h9QuZ8SQCq",
    "question": "Will Brent Crude Oil close above $110 on May 15th, 2026?",
    "slug": "will-brent-crude-oil-close-above-11-h9QuZ8SQCq",
    "creatorId": "kfh173b1eWb6FZdNVet6wDYm1YH3",
    "creatorUsername": "arnv",
    "creatorName": "arnav",
    "createdTime": "2026-05-12T15:27:16.479Z",
    "closeTime": "2026-05-15T23:59:00.000Z",
    "outcomeType": "BINARY",
    "mechanism": "cpmm-1",
    "isResolved": false,
    "probability": 0.43686192415738545,
    "volume": 30,
    "volume24Hours": 20,
    "totalLiquidity": 250,
    "uniqueBettorCount": 2,
    "pool": {"NO": 207.08, "YES": 220.12},
    "p": 0.4519406403830469,
    "scrapedAt": "2026-05-12T16:30:27.593Z"
}
```

</details>

<details>
<summary><strong>🪙 Daily coin-flip market with heavy liquidity and unicode question</strong></summary>

```json
{
    "id": "U8pcnUt6tO",
    "url": "https://manifold.markets/Velaris/daily-coin-flip-day-3-Qu82tE50NP",
    "question": "Däilÿ Cöin Flip - Day 3⅖",
    "slug": "daily-coin-flip-day-3-Qu82tE50NP",
    "creatorId": "HPeDnjOmgPPLdVKM8E80YlkJTVp2",
    "creatorUsername": "Velaris",
    "createdTime": "2026-05-12T15:10:59.686Z",
    "closeTime": "2026-05-13T15:10:00.000Z",
    "outcomeType": "BINARY",
    "mechanism": "cpmm-1",
    "isResolved": false,
    "probability": 0.5000000000000001,
    "volume": 304.5,
    "volume24Hours": 306.5,
    "totalLiquidity": 19500,
    "uniqueBettorCount": 3,
    "scrapedAt": "2026-05-12T16:30:27.593Z"
}
```

</details>

<details>
<summary><strong>📅 Multi-choice DATE market (cpmm-multi-1, no single probability)</strong></summary>

```json
{
    "id": "O9CUgl2l2S",
    "url": "https://manifold.markets/AIBear/last-confirmed-case-of-the-andes-vi",
    "question": "Last confirmed case of the Andes virus (hantavirus) linked to MV Hondius outbreak",
    "slug": "last-confirmed-case-of-the-andes-vi",
    "creatorId": "P6S5rDrKA9d5tWUdvS7yATJeyEJ3",
    "creatorUsername": "AIBear",
    "creatorName": "Limerick Ostrich",
    "createdTime": "2026-05-12T14:58:25.865Z",
    "closeTime": "2026-08-31T23:59:00.000Z",
    "outcomeType": "DATE",
    "mechanism": "cpmm-multi-1",
    "isResolved": false,
    "probability": null,
    "volume": 184.91495713052967,
    "totalLiquidity": 1000,
    "uniqueBettorCount": 2,
    "pool": null,
    "scrapedAt": "2026-05-12T16:30:27.593Z"
}
```

</details>

***

### ✨ Why choose this Actor

| | Capability |
|---|---|
| 🎯 | **Live probabilities.** Current crowd-sourced probability for every public market. |
| 📋 | **Two modes.** List for chronological feed, search for query-driven discovery. |
| 🏷️ | **Rich state filters.** Open, closed, resolved, or closing within a specific window. |
| 🔢 | **8 sort orders.** Score, newest, liquidity, subsidy, last-updated, most-popular, resolve-date, close-date. |
| 💧 | **AMM pool data.** Internal `pool` object exposes the YES/NO balances driving the price. |
| 📝 | **Optional descriptions.** Toggle `fetchDescriptions` for HTML and plain-text per market. |
| 🔓 | **No login or API key.** Manifold's API is fully public and free. |

> 📊 Manifold hosts 100,000+ play-money prediction markets covering elections, science, AI benchmarks, pop culture, and personal predictions.

***

### 📈 How it compares to alternatives

| Approach | Cost | Coverage | Refresh | Filters | Setup |
|---|---|---|---|---|---|
| **⭐ Manifold Prediction Markets Scraper** *(this Actor)* | $5 free credit, then pay-per-use | **100,000+ markets** | **Live per run** | mode, query, sort, filter, descriptions | ⚡ 2 min |
| Paid forecasting platforms | $99+/month | Curated | Daily | Vendor-defined | ⏳ Hours |
| Manual API calls in code | Free | DIY | Live | Code-defined | 🛠️ Hours |
| Legacy CSV dumps | Free | Stale | Rarely | None | 🐢 Days |

Pick this Actor when you want live prediction-market feeds with filters and pagination handled for you.

***

### 🚀 How to use

1. 📝 **Sign up.** [Create a free account with $5 credit](https://console.apify.com/sign-up?fpr=vmoqkp) (takes 2 minutes).
2. 🌐 **Open the Actor.** Go to the Manifold Prediction Markets Scraper page on the Apify Store.
3. 🎯 **Set input.** Pick `list` or `search`, optionally add a query, sort, filter, and `maxItems`.
4. 🚀 **Run it.** Click **Start** and let the Actor walk the markets feed.
5. 📥 **Download.** Grab your results in the **Dataset** tab as CSV, Excel, JSON, or XML.

> ⏱️ Total time from signup to downloaded dataset: **3-5 minutes.** No coding required.

***

### 💼 Business use cases

<table>
<tr>
<td width="50%" valign="top">

#### 📊 Forecasting Research

- Calibration studies on crowd-sourced probabilities
- Bias analyses across question categories
- Comparison of AMM vs continuous double auction outcomes
- Forecast accuracy benchmarks

</td>
<td width="50%" valign="top">

#### 📰 News & Journalism

- Election-night live probability dashboards
- Story-event probability tracking over time
- Embed probability charts into news articles
- Sentiment indicators for breaking news

</td>
</tr>
<tr>
<td width="50%" valign="top">

#### 🤖 AI & ML

- Training data for forecasting LLMs
- Real-time market signals for agent context windows
- AI benchmark resolution tracking
- AI safety market monitoring

</td>
<td width="50%" valign="top">

#### 💰 Markets & Arbitrage

- Cross-platform price comparison
- Liquidity-weighted index construction
- Volume-leader watchlists
- Market-maker subsidy tracking

</td>
</tr>
</table>

***

### 🌟 Beyond business use cases

Data like this powers more than commercial workflows. The same structured records support research, education, civic projects, and personal initiatives.

<table>
<tr>
<td width="50%">

#### 🎓 Research and academia

- Empirical datasets for papers, thesis work, and coursework
- Longitudinal studies tracking changes across snapshots
- Reproducible research with cited, versioned data pulls
- Classroom exercises on data analysis and ethical scraping

</td>
<td width="50%">

#### 🎨 Personal and creative

- Side projects, portfolio demos, and indie app launches
- Data visualizations, dashboards, and infographics
- Content research for bloggers, YouTubers, and podcasters
- Hobbyist collections and personal trackers

</td>
</tr>
<tr>
<td width="50%">

#### 🤝 Non-profit and civic

- Transparency reporting and accountability projects
- Advocacy campaigns backed by public-interest data
- Community-run databases for local issues
- Investigative journalism on public records

</td>
<td width="50%">

#### 🧪 Experimentation

- Prototype AI and machine-learning pipelines with real data
- Validate product-market hypotheses before engineering spend
- Train small domain-specific models on niche corpora
- Test dashboard concepts with live input

</td>
</tr>
</table>

***

### 🔌 Automating Manifold Prediction Markets Scraper

Control the scraper programmatically for scheduled runs and pipeline integrations:

- 🟢 **Node.js.** Install the `apify-client` NPM package.
- 🐍 **Python.** Use the `apify-client` PyPI package.
- 📚 See the [Apify API documentation](https://docs.apify.com/api/v2) for full details.

The [Apify Schedules feature](https://docs.apify.com/platform/schedules) lets you trigger this Actor on any cron interval. Hourly or daily refreshes keep forecast dashboards and calibration studies updated automatically.

***

### ❓ Frequently Asked Questions

#### 🧩 How does it work?

Pick `list` for the chronological feed or `search` for full-text search, optionally add filters, click Start, and the Actor walks the Manifold public API using cursor pagination and emits a clean structured record per market.

#### 📈 What is `probability`?

The current crowd-implied probability between 0 and 1 of the market resolving YES (for binary markets). It updates continuously as bettors trade. For multi-choice and DATE markets, the field is `null` and answer-level probabilities arrive in `answers` when `fetchDescriptions` is on.

#### 🎲 What outcome types are there?

`BINARY` (yes/no), `MULTIPLE_CHOICE`, `NUMERIC`, `DATE`, `PSEUDO_NUMERIC`, and `STONK` (stock-like markets). The `mechanism` field shows whether the market uses CPMM-1, CPMM-MULTI-1, or DPM.

#### 💧 What is the `pool` object?

The internal automated-market-maker (AMM) reserve. For binary CPMM markets it shows `YES` and `NO` token balances; the ratio drives the implied probability. Useful for calibration research and liquidity studies.

#### 🔁 How often is the data refreshed?

Every run pulls live data. Markets move continuously, so for accurate time-series data schedule the Actor at the granularity you need (hourly, every 15 minutes, etc.).

#### ⏰ Can I schedule regular runs?

Yes. Use Apify Schedules to run this Actor on any cron interval (hourly, daily, weekly) and keep a downstream database in sync.

#### ⚖️ Is this data legal to use?

Manifold's API and data are publicly available. The platform uses play-money (MANA), not real currency, so prediction-market regulation concerns generally do not apply. Review Manifold's terms for redistribution rules.

#### 💼 Can I use this data commercially?

Yes. Public prediction-market data is commonly used for analytics, dashboards, and research. Manifold encourages downstream use of its API for non-abusive purposes. Respect their rate limits.

#### 💳 Do I need a paid Apify plan to use this Actor?

No. The free Apify plan is enough for testing and small runs (10 records per run). A paid plan lifts the limit and gives you access to scheduling, higher concurrency, and larger datasets.

#### 🔁 What happens if a run fails or gets interrupted?

Apify automatically retries transient errors. If a run still fails, you can inspect the log in the Runs tab, fix the input, and re-run. Partial datasets from failed runs are preserved so you never lose progress.

#### 🆘 What if I need help?

Our support team is here to help. Contact us through the Apify platform or use the Tally form linked below.

***

### 🔌 Integrate with any app

Manifold Prediction Markets Scraper connects to any cloud service via [Apify integrations](https://apify.com/integrations):

- [**Make**](https://docs.apify.com/platform/integrations/make) - Automate multi-step workflows
- [**Zapier**](https://docs.apify.com/platform/integrations/zapier) - Connect with 5,000+ apps
- [**Slack**](https://docs.apify.com/platform/integrations/slack) - Get run notifications in your channels
- [**Airbyte**](https://docs.apify.com/platform/integrations/airbyte) - Pipe market data into your warehouse
- [**GitHub**](https://docs.apify.com/platform/integrations/github) - Trigger runs from commits and releases
- [**Google Drive**](https://docs.apify.com/platform/integrations/drive) - Export datasets straight to Sheets

You can also use webhooks to trigger downstream actions when a run finishes. Push fresh forecast data into your dashboard, or alert your team in Slack when a key probability crosses a threshold.

***

### 🔗 Recommended Actors

- [**📈 Polymarket Scraper**](https://apify.com/parseforge/polymarket-scraper) - Real-money prediction market questions and odds
- [**♟️ Lichess Chess Users Scraper**](https://apify.com/parseforge/lichess-chess-users-scraper) - Chess player profiles and rating statistics
- [**🐉 EDHREC MTG Commander Scraper**](https://apify.com/parseforge/edhrec-mtg-commander-scraper) - Magic: The Gathering Commander format meta statistics
- [**📰 Hacker News Scraper**](https://apify.com/parseforge/hacker-news-scraper) - Tech news headlines, scores, and discussion threads
- [**📊 Google Trends Scraper**](https://apify.com/parseforge/google-trends-scraper) - Search interest trends across regions and timeframes

> 💡 **Pro Tip:** browse the complete [ParseForge collection](https://apify.com/parseforge) for more forecasting and community-data scrapers.

***

**🆘 Need Help?** [**Open our contact form**](https://tally.so/r/BzdKgA) to request a new scraper, propose a custom data project, or report an issue.

***

> **⚠️ Disclaimer:** this Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Manifold Markets Inc. or its users. All trademarks mentioned are the property of their respective owners. Only publicly available market data is collected. Manifold uses play-money tokens (MANA), not real currency.

# Actor input Schema

## `mode` (type: `string`):

What to scrape

## `query` (type: `string`):

Full-text search across markets

## `sort` (type: `string`):

Sort order

## `filter` (type: `string`):

Filter markets by state

## `fetchDescriptions` (type: `boolean`):

If enabled, fetches each market's full description (1 extra API call per market — slower).

## `maxItems` (type: `integer`):

Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000

## Actor input object example

```json
{
  "mode": "list",
  "sort": "score",
  "filter": "",
  "fetchDescriptions": false,
  "maxItems": 10
}
```

# Actor output Schema

## `overview` (type: `string`):

Overview of scraped data

## `fullData` (type: `string`):

Complete dataset

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "mode": "list",
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/manifold-prediction-markets-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "mode": "list",
    "maxItems": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/manifold-prediction-markets-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "mode": "list",
  "maxItems": 10
}' |
apify call parseforge/manifold-prediction-markets-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=parseforge/manifold-prediction-markets-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Manifold Prediction Markets Scraper",
        "description": "Scrape prediction market data from Manifold.markets public API. Get question, probability, volume, creator, close date, comments count for thousands of markets. No API key required.",
        "version": "0.0",
        "x-build-id": "LhUZKY3LglyhxcMMw"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/parseforge~manifold-prediction-markets-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-parseforge-manifold-prediction-markets-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/parseforge~manifold-prediction-markets-scraper/runs": {
            "post": {
                "operationId": "runs-sync-parseforge-manifold-prediction-markets-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/parseforge~manifold-prediction-markets-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-parseforge-manifold-prediction-markets-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "list",
                            "search"
                        ],
                        "type": "string",
                        "description": "What to scrape",
                        "default": "list"
                    },
                    "query": {
                        "title": "Search query (for search mode)",
                        "type": "string",
                        "description": "Full-text search across markets"
                    },
                    "sort": {
                        "title": "Sort",
                        "enum": [
                            "score",
                            "newest",
                            "liquidity",
                            "subsidy",
                            "last-updated",
                            "most-popular",
                            "resolve-date",
                            "close-date"
                        ],
                        "type": "string",
                        "description": "Sort order",
                        "default": "score"
                    },
                    "filter": {
                        "title": "Filter",
                        "enum": [
                            "",
                            "open",
                            "closed",
                            "resolved",
                            "closing-month",
                            "closing-week",
                            "closing-day"
                        ],
                        "type": "string",
                        "description": "Filter markets by state",
                        "default": ""
                    },
                    "fetchDescriptions": {
                        "title": "Fetch full descriptions",
                        "type": "boolean",
                        "description": "If enabled, fetches each market's full description (1 extra API call per market — slower).",
                        "default": false
                    },
                    "maxItems": {
                        "title": "Max Items",
                        "minimum": 1,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000"
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
