# Reddit Scraper Fast — Latest Posts & Search (No API Key) (`cryptosignals/reddit-scraper-fast`) Actor

Scrape Reddit posts from subreddits or search by keyword. Uses RSS feeds — no API key required. Get titles, authors, timestamps, and permalinks. Ideal for social listening, trend monitoring, and research. PPE pricing — pay only for results.

- **URL**: https://apify.com/cryptosignals/reddit-scraper-fast.md
- **Developed by:** [Web Data Labs](https://apify.com/cryptosignals) (community)
- **Categories:** Social media, News, AI
- **Stats:** 41 total users, 4 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$5.00 / 1,000 result scrapeds

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — 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

## Reddit Scraper Fast — Newest Posts & Search

Grab the **newest posts** from any public subreddit, or **search Reddit by keyword** — no login, no API key, no OAuth. Clean JSON output, ready for data pipelines, dashboards, or research.

### Why This Actor?

- **No Reddit API key needed** — works against public Reddit, no app registration
- **No login, no OAuth** — just point it at a subreddit or a search term
- **Pay-per-result** — only pay for the posts you get back
- **Lightweight & fast** — pure HTTP, runs comfortably in minimal memory

### What It Does

- **Newest posts** — the most recent posts from any public subreddit
- **Keyword search** — search across all of Reddit, or scope the search to one subreddit
- Each post comes back with title, author, subreddit, body text, timestamp, and a direct link

### Scope & Limits (please read)

This actor focuses on doing two things reliably:

1. **Newest posts per subreddit** (up to **25** most recent)
2. **Keyword search**, sorted newest first (up to **25** results)

It does **not** scrape comment threads, user/profile histories, or sort modes
beyond "newest". Reddit's public feed returns at most **25** items per
subreddit or query, so `maxItems` is capped at 25.

### Input

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `subreddit` | string | | Subreddit to fetch newest posts from (without r/) |
| `searchQuery` | string | | Keyword to search. Combine with `subreddit` to search within it, or leave `subreddit` empty to search all of Reddit |
| `maxItems` | number | 25 | Posts to return (1–25) |

**Examples**

Newest posts from r/wordpress:

```json
{ "subreddit": "wordpress", "maxItems": 10 }
```

Search r/python for "async":

```json
{ "subreddit": "python", "searchQuery": "async" }
```

Search all of Reddit for "self-hosting":

```json
{ "searchQuery": "self-hosting" }
```

### Output Example

```json
{
  "id": "1ttog80",
  "title": "Text align options gone after updating",
  "author": "example_user",
  "subreddit": "Wordpress",
  "selftext": "I updated my site and suddenly the text align options on built-in blocks are gone...",
  "createdUtc": 1780310800.0,
  "createdAt": "2026-06-01T18:46:40+00:00",
  "permalink": "https://www.reddit.com/r/Wordpress/comments/1ttog80/text_align_options_gone/",
  "url": "https://www.reddit.com/r/Wordpress/comments/1ttog80/text_align_options_gone/"
}
```

### Use Cases

- **Market research** — track brand and product mentions on Reddit
- **Content discovery** — find fresh discussions in any niche
- **Lead/question finding** — surface people asking about a topic you cover
- **SEO research** — see what questions come up around your keywords
- **Trend monitoring** — watch the newest posts in a community

### Run timeout (important for automation)

A typical run finishes in **under 10 seconds**. If you drive this actor from the
API or a schedule, **do not set the run `timeoutSecs` below 60s.** Cold start
(container boot + image pull) plus a single slow network hop to Reddit can
briefly exceed a very short cap and abort an otherwise-healthy run as
TIMED-OUT. The actor's own default (120s) is safe — only override it upward.
Internally the actor enforces a hard fetch deadline and, if Reddit is slow or
throttling, exits cleanly with an explanatory status message instead of hanging.

### Notes

- Works only with **public** subreddits. Private, banned, or quarantined
  communities (and queries with no matches) simply return no posts.
- Subreddit and search terms are case-insensitive.

# Actor input Schema

## `subreddit` (type: `string`):

Subreddit to fetch newest posts from (without r/ prefix). Example: wordpress, python, dataisbeautiful. Returns up to 25 most recent posts.

## `searchQuery` (type: `string`):

Search Reddit for this keyword, sorted newest first. Leave 'subreddit' empty to search all of Reddit, or set it to search within that subreddit. Returns up to 25 results.

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

Maximum number of posts to return (1-25). Reddit's public feed returns at most 25 newest items per subreddit or query.

## Actor input object example

```json
{
  "subreddit": "wordpress",
  "maxItems": 25
}
```

# Actor output Schema

## `dataset` (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 = {
    "subreddit": "wordpress",
    "maxItems": 25
};

// Run the Actor and wait for it to finish
const run = await client.actor("cryptosignals/reddit-scraper-fast").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 = {
    "subreddit": "wordpress",
    "maxItems": 25,
}

# Run the Actor and wait for it to finish
run = client.actor("cryptosignals/reddit-scraper-fast").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 '{
  "subreddit": "wordpress",
  "maxItems": 25
}' |
apify call cryptosignals/reddit-scraper-fast --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/acts/0m5eePWygpK4CSKXJ/builds/txt3gYCu6w8TSVwYV/openapi.json
