Reddit Search V2 — Posts, Communities, People & Topics
Pricing
from $1.99 / 1,000 results
Reddit Search V2 — Posts, Communities, People & Topics
Search Reddit at scale: posts, comments, media, communities, people, and interest topics. 3 self-contained endpoints, no Reddit account or proxy required.
Pricing
from $1.99 / 1,000 results
Rating
0.0
(0)
Developer
Red Crawler
Actor stats
0
Bookmarked
3
Total users
2
Monthly active users
2 days ago
Last modified
Categories
Share
Reddit Search V2
Search Reddit at scale across posts, comments, media, communities, people, and Reddit's interest-topic taxonomy. Three self-contained endpoints. No Reddit account, OAuth, or proxy required.
Pick the endpoint, fill the matching section, hit Start.
Endpoints at a glance
| # | Endpoint | What it returns | Best for |
|---|---|---|---|
| 1 | Search | posts / comments / media / communities / people | trend research, brand monitoring, lead gen, audits |
| 2 | Community Picker Search | autocomplete-style subreddit list | pickers, dropdowns, "did you mean…" |
| 3 | Interest Topics Search | Reddit's official topic taxonomy | recommendations, tag clouds, categorization |
What you can fetch
1. Search — posts, comments, media, communities, people
The main search endpoint. One query, one type, one set of filters.
Inputs
| Field | Type | Default | Notes |
|---|---|---|---|
query | string | (required) | Search string. Required for every type. |
type | enum | posts | One of posts, comments, media, communities, people. |
sort | enum | relevance | relevance / hot / top / new / comments. See sort matrix below. |
time | enum | all | hour / day / week / month / year / all. Posts/comments/media only. |
safe_search | bool | false | true hides NSFW results. |
subreddit | string | (blank) | Optional. Restrict to one subreddit (without r/). Posts/comments/media only. |
limit | int | 50 | 1 – 250. |
Sort & filter matrix
| Type | Supports sort | Supports time | Supports subreddit |
|---|---|---|---|
| posts | ✅ all 5 | ✅ | ✅ |
| comments | ✅ relevance / top / new only | ✅ | ✅ |
| media | ✅ all 5 | ✅ | ✅ |
| communities | ❌ ignored | ❌ ignored | ❌ ignored |
| people | ❌ ignored | ❌ ignored | ❌ ignored |
Returns — one record per result, with endpoint and result type tagged on every row:
| Type | Headline columns |
|---|---|
| posts | id, title, body / selftext, author, subreddit, score, comment count, created, permalink, URL, all post flags, flair, media, awards |
| comments | id, body, author, subreddit, score, parent post info, created, OP flag |
| media | same as posts, pre-filtered to image / video / gallery |
| communities | id, name, prefixed name, title, subscribers, public description, NSFW flag, theme |
| people | id, name, username, karma, profile icon, NSFW flag, accepts-followers flag |
Use it when — trend research, brand monitoring across all types, lead generation (people), content audits (comment search inside a subreddit), media discovery.
2. Community Picker Search
Real-time-style subreddit search optimized for picker / autocomplete UIs.
Inputs
| Field | Type | Default | Notes |
|---|---|---|---|
query | string | (required) | Search string. |
include_nsfw | bool | true | Set false to exclude NSFW subreddits. |
Returns per result — subreddit name, prefixed name, title, icon, subscribers, NSFW flag.
Use it when — building a subreddit picker, validating a community exists, "did you mean…" suggestions, dropdown autocomplete, niche directory creation.
3. Interest Topics Search
Search Reddit's official interest-topic taxonomy (the topics Reddit uses for onboarding, recommendations, and feed seeding).
Inputs
| Field | Type | Default | Notes |
|---|---|---|---|
query | string | (required) | Topic search string. |
Returns per topic — topic ID, name, display name, title, description.
Use it when — mapping content to Reddit's official taxonomy, recommendation systems, topic-based feeds, content categorization, building topic chips / tag clouds.
How to run
- Pick an endpoint in the "What to fetch" dropdown.
- Open the matching section and fill its fields. Each section is independent — fields outside your chosen section are ignored.
- Click Start.
Output
Results are pushed to the actor's default dataset, one record per result. View as a table or download as JSON / CSV / Excel / XML.
| Behavior | Detail |
|---|---|
| Record granularity | One dataset row per Reddit result. |
| Endpoint tag | Every record carries an endpoint field so rows from different endpoints are distinguishable. |
| Type tag (Search) | Every Search row also carries a type field (posts / comments / media / communities / people). |
| Column order | The most useful columns (title, score, author, subreddit, …) are placed first so the Table view is readable without expanding. |
| Flattening | Nested Reddit structures are flattened — no deeply-nested blobs in the Table view. |
| Empty queries | Zero records pushed; the run still finishes SUCCEEDED. |
Status & error reference
Run status (Apify-side, shown on the run page)
| Apify UI cue | Status | Apify message | Meaning | What to do |
|---|---|---|---|---|
| green check | SUCCEEDED | "Actor succeeded with N results in the dataset" | Run finished. Some or zero results pushed. | Open the dataset to view results. |
| red exclamation | FAILED | "The Actor process failed…" | Validation error or upstream Reddit fault. | Check the run log. You are NOT charged for failed runs. |
| red clock | TIMED-OUT | "The Actor timed out. You can resurrect it with a longer timeout to continue where you left off." | Run exceeded its timeout. Rare for this actor at default 300 s. | Re-run; consider narrowing query or lowering limit. |
| red square outline | ABORTED | "The Actor process was aborted. You can resurrect it to continue where you left off." | You stopped the run manually. | No charge for unpushed results. |
Common in-run conditions (visible in run log)
| Condition | Cause | Result |
|---|---|---|
| Empty result set | Query matched nothing on Reddit. | Run SUCCEEDED, 0 records, no charge. |
| NSFW filtered | safe_search=true and matches were NSFW only. | Run SUCCEEDED, fewer/zero records. |
Sort fallback to relevance | Asked for hot / comments on comments type. | Run SUCCEEDED, results sorted by relevance. |
| Sort/time/subreddit ignored | Used those on communities / people. | Run SUCCEEDED, those filters are skipped silently. |
| Hard cap reached | More than ~250 unique results exist. | Run SUCCEEDED, capped at ~250 records (Reddit limit). |
Validation error: query is required | Missing query. | Run FAILED immediately, no charge. |
Validation error: limit out of range | limit outside 1 – 250. | Run FAILED immediately, no charge. |
Common edge cases
- NSFW handling — Search has a
safe_searchtoggle (off by default). Community Picker has its ownInclude NSFWcheckbox. Interest Topics doesn't return NSFW content by nature. - Sort / time filter on Communities & People — silently ignored; Reddit ranks those by relevance only.
- Subreddit scope on Communities & People — silently ignored; those types always run globally.
- Comments sort — only
relevance/top/newsupported. Other values fall back torelevance. - Hard cap of ~250 results per query. Reddit's search index returns at most ~250 unique items per call.
- Empty results — zero records, run still
SUCCEEDED. No charge. - Removed / banned content — filtered out by Reddit at search time.
Why this actor is fast
- Speed — 1–3 seconds per call, end-to-end. Pure HTTP to Reddit's API. No browser to boot, no Playwright / Selenium / Puppeteer overhead. Competing browser-based scrapers typically take 15–60 seconds per call.
- Reliability — zero browser flakiness. No headless-Chromium crashes. No JS-render timeouts. No captcha pages. No surprise mid-run failures from a browser quirk.
- Footprint — under 100 MB RAM per run. Most browser-based scrapers need 1–4 GB. We're a thin async dispatcher — Reddit auth, proxy rotation, retry, and GraphQL handling all happen off-actor on our backend.
Pricing
Pay-per-result. You're only charged for records actually pushed to the dataset.
| Outcome | Charged? |
|---|---|
SUCCEEDED with results | Yes — per record pushed. |
SUCCEEDED with zero records | No. |
FAILED (validation / upstream) | No. |
ABORTED | Only for records already pushed before you stopped. |
See the actor's Pricing tab for the current per-result rate.