# Stack Exchange Questions Search Scraper (`parseforge/stackexchange-questions-scraper`) Actor

Search questions across Stack Overflow, Server Fault, Super User, Mathematics, Cross Validated, Ask Ubuntu and 170+ other Stack Exchange sites. Returns title, full body, tags, score, view count, answer count, accepted answer, asker info, dates and direct URL. Filter by tag, score, sort or site.

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

## Pricing

from $11.00 / 1,000 result items

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://github.com/ParseForge/apify-assets/blob/ad35ccc13ddd068b9d6cba33f323962e39aed5b2/banner.jpg?raw=true)

## 📊 Stack Exchange Questions Scraper

> 🚀 **Search every question across Stack Overflow and 170+ Stack Exchange sites.**

> 🕒 **Last updated:** 2026-05-06 · **📊 22 fields** per record · **170+ sites** · **20M+ questions on Stack Overflow alone** · scores, tags, accepted answers, view counts

The **Stack Exchange Questions Scraper** searches across Stack Overflow, Server Fault, Super User, Mathematics, Cross Validated, Ask Ubuntu, Code Review, Game Development, and 170+ other Stack Exchange community sites. Output includes title, full body, tags, score, view count, answer count, accepted answer ID, asker information, creation and last-activity dates.

The full Stack Exchange network spans **170+ communities** and contains **20+ million questions on Stack Overflow alone**, plus millions more across the rest. Filters run server-side, so a single run can isolate the highest-voted Python questions, every async-await question with 5+ answers, or recent questions about a niche topic.

| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| Developer-marketing teams, NLP/ML pipelines, content marketers, technical writers, recruiter teams | Identify trending dev topics, generate developer content, train code-Q&A models, find user-pain-point articles, source FAQ content |

---

### 📋 What the Stack Exchange Questions Scraper does

Five filtering workflows in a single run:

- 🔍 **Title search.** Match keywords in question titles across the entire network.
- 🌐 **Site filter.** Pick from 70+ enumerated sites (stackoverflow, superuser, math, etc.).
- 🏷️ **Tag filter.** Filter by one or many tags (e.g. 'python;asyncio').
- 📊 **Sort options.** Activity, creation, votes, or relevance.
- ⭐ **Score threshold.** Filter to questions above a minimum score.

> 💡 **Why it matters:** clean, server-side filtering removes the parser-and-pagination work from your team and keeps your dataset fresh on every run.

---

### 🎬 Full Demo

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

---

### ⚙️ Input

<table>
<thead>
<tr><th>Input</th><th>Type</th><th>Default</th><th>Behavior</th></tr>
</thead>
<tbody>
<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 up to 1,000,000.</td></tr>
<tr><td><code>query</code></td><td>string</td><td><code>"python async"</code></td><td>Words that must appear in the question title.</td></tr>
<tr><td><code>site</code></td><td>string</td><td><code>"stackoverflow"</code></td><td>Stack Exchange site code.</td></tr>
<tr><td><code>tags</code></td><td>string</td><td><code>""</code></td><td>Tag filter, semicolon-separated.</td></tr>
<tr><td><code>sort</code></td><td>string</td><td><code>"activity"</code></td><td>`activity`, `creation`, `votes`, `relevance`.</td></tr>
<tr><td><code>minScore</code></td><td>integer</td><td><code>0</code></td><td>Minimum score (votes).</td></tr>
</tbody>
</table>

**Example: top 100 highest-voted Python questions.**

```json
{
    "maxItems": 100,
    "tags": "python",
    "site": "stackoverflow",
    "sort": "votes"
}
````

**Example: async questions with 10+ score.**

```json
{
    "maxItems": 200,
    "query": "async",
    "tags": "python;asyncio",
    "minScore": 10
}
```

***

### 📊 Output

Each record contains **22 fields**. Download the dataset as CSV, Excel, JSON, or XML.

#### 🧾 Schema

| Field | Type | Example |
|---|---|---|
| 👤 `ownerProfileImage` | string | `"https://www.gravatar.com/avatar/..."` |
| 🆔 `questionId` | number | `37278647` |
| 📛 `title` | string | `"\"Fire and forget\" python async/await"` |
| 📝 `bodyMarkdown` | string | `"\nIs there a way to..."` |
| ⭐ `score` | number | `212` |
| 👀 `viewCount` | number | `119759` |
| 💬 `answerCount` | number | `12` |
| ✅ `isAnswered` | boolean | `true` |
| ✅ `acceptedAnswerId` | number | `37345564` |
| 🏷️ `tags` | array | `["python","asynchronous","python-asyncio"]` |
| 📅 `creationDate` | ISO 8601 | `"2016-05-17T00:00:00Z"` |
| 👤 `ownerName` | string | `"user1234"` |
| 👤 `ownerReputation` | number | `8420` |
| 🔗 `url` | string | `"https://stackoverflow.com/questions/37278647/..."` |

#### 📦 Sample records

<details>
<summary><strong>🐍 Top Python Q</strong></summary>

```json
{"questionId":37278647,"title":"\"Fire and forget\" python async/await","score":212,"viewCount":119759,"answerCount":12,"isAnswered":true,"tags":["python","asynchronous","python-asyncio"],"ownerName":"user1234","ownerReputation":8420}
```

</details>

<details>
<summary><strong>🛠️ Server Fault Q</strong></summary>

```json
{"questionId":456789,"title":"How to configure nginx as reverse proxy","score":45,"viewCount":21000,"tags":["nginx","reverse-proxy"]}
```

</details>

***

### ✨ Why choose this Actor

| | Capability |
|---|---|
| 🌐 | **170+ sites in one Actor.** Stack Overflow, Super User, Server Fault, Mathematics, Code Review, plus niche communities. |
| 📊 | **Rich engagement metrics.** Score, view count, answer count, accepted answer, asker reputation. |
| 🏷️ | **Multi-tag filtering.** Combine tags for precise topical extraction. |
| ⚡ | **Fast.** 100 questions in under 30 seconds. |
| 🔄 | **Live per run.** Latest scores and answer counts on every fetch. |

***

### 📈 How it compares to alternatives

| Approach | Cost | Coverage | Refresh | Filters | Setup |
|---|---|---|---|---|---|
| **⭐ This Actor** | $5 free credit | **170+** sites | Live per run | query, site, tags, sort, score | ⚡ 2 min |
| Stack Exchange Data Explorer | Free | SQL on dump | Daily | SQL | 🐢 SQL knowledge |
| Manual SE search | Free | Manual | Live | Web filters | 🕒 Manual |
| Custom HTTP scraping | Free | All | Live | DIY | 🐢 Days |

Pick this Actor when you want broad coverage, server-side filtering, and no pipeline maintenance.

***

### 🚀 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 Stack Exchange Questions Scraper page on the Apify Store.
3. 🎯 **Set input.** Pick your filters and `maxItems`.
4. 🚀 **Run it.** Click **Start** and let the Actor collect your data.
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">

#### 📊 Developer Marketing

- Identify pain points by tag
- Build content from popular questions
- Track trending tags
- Sentiment analysis on dev topics

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

#### 🤖 ML & NLP

- Train code-Q\&A and chat models
- Build technical-help embedding indexes
- Code-classification training data
- Retrieval-augmented generation corpora

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

#### 📰 Tech Content

- Generate FAQs from real questions
- "Top X mistakes" article research
- Newsletter content on trending issues
- Curated learning paths

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

#### 🧑‍💻 DevRel & Hiring

- Find experts by tag and reputation
- Track community activity around your tools
- Source recruiting leads by skill
- Measure documentation gaps

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

***

### 🔌 Automating Stack Exchange Questions 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, daily, or weekly refreshes keep downstream databases in sync automatically.

***

### 🌟 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

- Software-engineering research
- Knowledge-graph construction
- Reproducible Q\&A snapshots
- Tag-evolution studies

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

#### 🎨 Personal and creative

- Personal Q\&A databases
- Side projects on trending tech
- Newsletter content
- Hobbyist learning trackers

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

#### 🤝 Non-profit and civic

- Educational outreach datasets
- Open-source community analysis
- Mentorship platform content
- Documentation improvement projects

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

#### 🧪 Experimentation

- Train retrieval-augmented agents
- Prototype dev-help chatbots
- Test answer-quality classifiers
- Build search experiments

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

***

### 🤖 Ask an AI assistant about this scraper

Open a ready-to-send prompt about this ParseForge actor in the AI of your choice:

- 💬 [**ChatGPT**](https://chat.openai.com/?q=How%20do%20I%20use%20the%20Stack%20Exchange%20Questions%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🧠 [**Claude**](https://claude.ai/new?q=How%20do%20I%20use%20the%20Stack%20Exchange%20Questions%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🔍 [**Perplexity**](https://perplexity.ai/search?q=How%20do%20I%20use%20the%20Stack%20Exchange%20Questions%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🅒 [**Copilot**](https://copilot.microsoft.com/?q=How%20do%20I%20use%20the%20Stack%20Exchange%20Questions%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)

***

### ❓ Frequently Asked Questions

#### 🧩 How does it work?

Provide a query and site (or tags only). The Actor queries the public Stack Exchange index and returns one record per question.

#### 🌐 How many sites are covered?

170+. Stack Overflow, Server Fault, Super User, Mathematics, Cross Validated, Ask Ubuntu, Code Review, Game Development, plus 60+ niche communities.

#### 📊 How many fields per record?

22, including title, full body markdown, score, view count, answer count, accepted answer, tags, asker reputation, and creation date.

#### 📝 Does it include answers?

No. The Actor returns question records. For per-question answers, contact us via the Tally form below.

#### 🏷️ Can I filter by multiple tags?

Yes. Pass tags semicolon-separated; results must match all of them.

#### 🔁 Can I schedule runs?

Yes. Use Apify Schedules to track tag activity, monitor brand mentions, or feed a content pipeline.

#### ⚖️ Is this data public?

Yes. Stack Exchange publishes content under a Creative Commons license. Only public posts are collected.

#### 💳 Do I need a paid Apify plan?

No. The free plan covers preview runs. A paid plan unlocks higher item counts and scheduling.

#### 🆘 What if a run fails?

Apify retries transient errors. Partial datasets are preserved.

#### ⏱️ Are there rate limits?

The Actor handles rate limiting transparently with backoff. Large runs auto-pace.

***

### 🔌 Integrate with any app

Stack Exchange Questions 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 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.

***

### 🔗 Recommended Actors

- [**📰 Hacker News Search**](https://apify.com/parseforge/hackernews-algolia-scraper) - Every HN story since 2007
- [**💻 VS Code Marketplace**](https://apify.com/parseforge/vs-code-marketplace-scraper) - VS Code extensions catalog
- [**🌐 Wikidata Entity Search**](https://apify.com/parseforge/wikidata-entity-search-scraper) - 100M+ open knowledge-graph entities
- [**📚 Open Library Books**](https://apify.com/parseforge/openlibrary-books-scraper) - 30M+ books and editions
- [**📖 arXiv Scraper**](https://apify.com/parseforge/arxiv-scraper) - Academic preprints

> 💡 **Pro Tip:** browse the complete [ParseForge collection](https://apify.com/parseforge) for more reference-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 Stack Exchange Inc., Stack Overflow, or any of the Stack Exchange network communities. All trademarks mentioned are the property of their respective owners. Only publicly available open data is collected.

# Actor input Schema

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

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

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

Words that must appear in the question title.

## `site` (type: `string`):

Which Stack Exchange site to search.

## `tags` (type: `string`):

Filter by tags. Multiple tags joined with semicolons (e.g. 'python;asyncio').

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

Order results by most recent activity, creation date, votes, or relevance.

## `minScore` (type: `integer`):

Filter to questions with at least this score (votes).

## Actor input object example

```json
{
  "maxItems": 10,
  "query": "python async",
  "site": "stackoverflow",
  "sort": "activity"
}
```

# Actor output Schema

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

No description

# 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 = {
    "maxItems": 10,
    "query": "python async",
    "site": "stackoverflow",
    "tags": "",
    "sort": "activity",
    "minScore": 0
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/stackexchange-questions-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 = {
    "maxItems": 10,
    "query": "python async",
    "site": "stackoverflow",
    "tags": "",
    "sort": "activity",
    "minScore": 0,
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/stackexchange-questions-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 '{
  "maxItems": 10,
  "query": "python async",
  "site": "stackoverflow",
  "tags": "",
  "sort": "activity",
  "minScore": 0
}' |
apify call parseforge/stackexchange-questions-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Stack Exchange Questions Search Scraper",
        "description": "Search questions across Stack Overflow, Server Fault, Super User, Mathematics, Cross Validated, Ask Ubuntu and 170+ other Stack Exchange sites. Returns title, full body, tags, score, view count, answer count, accepted answer, asker info, dates and direct URL. Filter by tag, score, sort or site.",
        "version": "1.0",
        "x-build-id": "ngjN3vSZorc0Fzocv"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/parseforge~stackexchange-questions-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-parseforge-stackexchange-questions-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~stackexchange-questions-scraper/runs": {
            "post": {
                "operationId": "runs-sync-parseforge-stackexchange-questions-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~stackexchange-questions-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-parseforge-stackexchange-questions-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": {
                    "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"
                    },
                    "query": {
                        "title": "Search query (intitle)",
                        "type": "string",
                        "description": "Words that must appear in the question title."
                    },
                    "site": {
                        "title": "Stack Exchange site",
                        "enum": [
                            "stackoverflow",
                            "superuser",
                            "serverfault",
                            "askubuntu",
                            "mathoverflow",
                            "math",
                            "unix",
                            "apple",
                            "stats",
                            "tex",
                            "webapps",
                            "gaming",
                            "cooking",
                            "photo",
                            "english",
                            "writers",
                            "movies",
                            "scifi",
                            "music",
                            "worldbuilding",
                            "politics",
                            "philosophy",
                            "biology",
                            "gis",
                            "electronics",
                            "ux",
                            "sound",
                            "crypto",
                            "webmasters",
                            "graphicdesign",
                            "gamedev",
                            "datascience",
                            "ai",
                            "quantumcomputing",
                            "softwareengineering",
                            "codereview",
                            "reverseengineering",
                            "security",
                            "dba",
                            "puzzling",
                            "money",
                            "travel",
                            "fitness",
                            "mechanics",
                            "sports",
                            "skeptics",
                            "christianity",
                            "judaism",
                            "islam",
                            "buddhism",
                            "hinduism",
                            "outdoors",
                            "diy",
                            "ham",
                            "raspberrypi",
                            "arduino",
                            "networkengineering",
                            "sharepoint",
                            "wordpress",
                            "drupal",
                            "magento",
                            "joomla",
                            "salesforce",
                            "craftcms",
                            "ja.stackoverflow",
                            "pt.stackoverflow",
                            "ru.stackoverflow",
                            "es.stackoverflow"
                        ],
                        "type": "string",
                        "description": "Which Stack Exchange site to search.",
                        "default": "stackoverflow"
                    },
                    "tags": {
                        "title": "Tags (semicolon separated)",
                        "type": "string",
                        "description": "Filter by tags. Multiple tags joined with semicolons (e.g. 'python;asyncio')."
                    },
                    "sort": {
                        "title": "Sort order",
                        "enum": [
                            "activity",
                            "creation",
                            "votes",
                            "relevance"
                        ],
                        "type": "string",
                        "description": "Order results by most recent activity, creation date, votes, or relevance.",
                        "default": "activity"
                    },
                    "minScore": {
                        "title": "Minimum score",
                        "type": "integer",
                        "description": "Filter to questions with at least this score (votes)."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
