Reddit data API: the official API or an Apify Actor?
Reddit has an official API with limited access. 9 Apify Actors in this catalogue return Reddit data over HTTP too: send the input to Apify's run-sync endpoint with your token and get the records back as JSON, from $0.40 a run plus $0.99 per 1,000 results at Store prices (plus platform usage).
Side by side
| Reddit Data API | Apify Actors (9) | |
|---|---|---|
| Access | Limited access | Apify API token (any account) |
| What you get | Reddit is moving public data access to its Developer Platform. RSS support ends November 13, 2026; new public API access requests stopped October 31, 2026; access for unregistered apps starts closing January 12, 2027… | Rows defined by each Actor's published schema; up to 14 fields per record |
| Price | Commercial use requires a data agreement. Pricing is not published as a public rate card. | From $0.40 a run plus $0.99 per 1,000 results (Store price, Free plan), plus platform usage |
| Limits | Registration and migration are required for apps; no replacement is offered for RSS outside communities you moderate. | Synchronous calls wait up to 300 s; longer runs go asynchronous |
| Docs | Reddit Data API | Apify API: run-sync |
Official API facts checked 2026-11-09. Public community data only; respect privacy and Reddit's terms; not legal advice.
Which Actor for which job
All of them list $0.99 per 1,000 results on the Store, plus a start fee per run.
| Actor | Returns | Fields include | Call it |
|---|---|---|---|
| Reddit Subreddit Profile, Rules & Post Filter Scraper | Community profiles (with rules, wiki and weekly activity), filtered posts and capped comment trees from Reddit's public pages… | subreddit_prefixed, title, post_title | run-sync · Apify |
| Reddit Comment Thread Scraper with Score & Keyword Filters | Reddit comment threads, nested replies included, with author, score, depth, tree path, edited/deleted flags, and parent… | post_title, author, body | run-sync · Apify |
| Reddit Keyword Search with Advanced Filters | Reddit posts and optional keyword-matched comments with score, subreddit, author, timestamps, source provenance, and data… | title, author, subreddit_prefixed | run-sync · Apify |
| Reddit Multi-Mode Scraper for Posts, Comments & Profiles | Reddit posts, comments, profiles and community records with engagement metrics, derived activity and per-record source provenance. | subreddit_prefixed, title, author | run-sync · Apify |
| Reddit Multi-Mode Scraper with Advanced Pro Filters | One dataset row per Reddit post, comment, user profile or community, plus one run summary row. | subreddit_prefixed, title, author | run-sync · Apify |
| Reddit Post Comment Thread & Filter Extractor | Dataset of Reddit comment records (author, body, score, depth, parent/thread links, awards, timestamps) plus one parent-post… | author, text, score | run-sync · Apify |
| Reddit Subreddit Post & Comment Harvester | Reddit subreddit posts with score, flair, selftext, images, galleries, video, polls and crosspost context, plus optional nested… | subreddit_prefixed, title, author | run-sync · Apify |
| Reddit Subreddit Post Filter & Moderation Scraper | One record per post that passes your filters. Error and status records explain blocked, private, empty or no-match subreddits… | subreddit_prefixed, title, author | run-sync · Apify |
| Reddit User Profile & Post History Crawler Pro | Reddit user records with split karma, account age, badges, bio/avatar and filtered posts or comments (media, awards, upvote… | username, post_karma, comment_karma | run-sync · Apify |
Call Reddit Keyword Search with Advanced Filters
The call waits for the run and returns the records as JSON. Swap the Actor ID for any Actor in the table. Set APIFY_TOKEN first; runs bill to that account.
curl
curl -X POST "https://api.apify.com/v2/actors/nimbryxo-studio~reddit-keyword-search-with-advanced-filters/run-sync-get-dataset-items" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"keywords":["python programming"],"onlyNew":false,"searchComments":false,"excludeNsfw":false,"keywordRequireAll":false,"includeArchive":true,"resolveChallenges":true}' Install: pip install "apify-client>=3"
Python
import os
from apify_client import ApifyClient
client = ApifyClient(os.environ["APIFY_TOKEN"])
run_input = {
"keywords": [
"python programming",
],
"onlyNew": False,
"searchComments": False,
"excludeNsfw": False,
"keywordRequireAll": False,
"includeArchive": True,
"resolveChallenges": True,
}
run = client.actor("nimbryxo-studio/reddit-keyword-search-with-advanced-filters").call(run_input=run_input)
if run is None:
raise RuntimeError("The Actor run could not be started")
print(run.status, "dataset", run.default_dataset_id)
for item in client.dataset(run.default_dataset_id).iterate_items():
print(item) Install: npm install apify-client
JavaScript
import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const input = {
"keywords": [
"python programming"
],
"onlyNew": false,
"searchComments": false,
"excludeNsfw": false,
"keywordRequireAll": false,
"includeArchive": true,
"resolveChallenges": true
};
const run = await client.actor("nimbryxo-studio/reddit-keyword-search-with-advanced-filters").call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items.length, items[0]); Generated from the Actor's published schema and checked, not executed.
Same data, other routes
- Reddit MCP server: these Actors as tools in Claude, Cursor, ChatGPT, VS Code and Codex.
- Reddit mentions to Slack: an n8n workflow you can import.
- Reddit posts to Google Sheets: an n8n workflow you can import.
- Reddit keyword monitor to Discord: an n8n workflow you can import.
- Reddit weekly digest to email: an n8n workflow you can import.
- Every Actor with a one-request API
When a call fails
Why does the workflow or script stop with HTTP 408?
The synchronous endpoint waits at most 300 seconds. After that it answers 408 while the run keeps going in Apify. Lower the result limit, or start the run asynchronously, wait for it to finish and then read its dataset.
Source: Apify API: run Actor synchronously and get dataset items
What do 400, 401, 402 and 403 from the Apify API mean?
Read error.type in the response body. 400 is invalid Actor input. 401 (user-or-token-not-found) means a token reached Apify but it is wrong or revoked. 402 with x402-payment-required means no token reached Apify at all: the n8n credential or the Authorization: Bearer header is missing, and Apify is offering its pay-per-run x402 route for agents instead; any other 402 is an exhausted usage limit on the account that pays for the run. 403 is a token without permission for that Actor or storage.
Source: Apify API: authentication; Apify documentation: agentic payments with x402; Apify API: run Actor synchronously and get dataset items
Why does starting an Actor through the API return run information instead of scraped results?
The Run Actor endpoint starts the Actor and immediately returns a Run object without waiting for completion. For results stored in the default dataset, pass the response's defaultDatasetId to Get dataset items; to wait and receive output directly, use the synchronous endpoint for dataset items or a key-value store record.
Source: Apify Run Actor API
Why are rows and hidden fields missing from my Apify dataset export?
The clean parameter enables both skipEmpty and skipHidden, removing empty items and fields whose names begin with #. This can produce fewer items than the requested limit; to retain those rows and fields, disable clean and ensure skipEmpty and skipHidden are also disabled.
Source: Apify Get dataset items API
Questions
Is there an official Reddit API?
Reddit is moving public data access to its Developer Platform. RSS support ends November 13, 2026; new public API access requests stopped October 31, 2026; access for unregistered apps starts closing January 12, 2027; remaining public API access ends in March 2027. Commercial use requires a data agreement. Pricing is not published as a public rate card.
How much does Reddit data cost through an Apify Actor?
The Actors listed here charge from $0.40 a run plus $0.99 per 1,000 results on the Apify Store (Free plan), checked 2026-11-12, billed to the Apify account whose token makes the call. Actor start events and platform usage can add to that.
Can I get Reddit data as JSON in one HTTP request?
Yes, through Apify's run-sync-get-dataset-items endpoint: POST the Actor input with your token and the response is the dataset as JSON. It waits up to 300 seconds; longer runs need the asynchronous run endpoint.
Can an AI agent use the same Reddit data?
Yes. The Reddit MCP page bundles these Actors into one Apify MCP URL for Claude, Cursor, ChatGPT, VS Code and Codex.
Is it allowed to collect Reddit data?
Public community data only; respect privacy and Reddit's terms; not legal advice. Read Reddit's terms before you build on the data.
Sources
- Reddit Data API documentation, checked 2026-11-09
- Reddit Data API pricing
- Apify API: run Actor synchronously, checked 2026-11-11
- reddit.com/r/modnews/comments/1wubgvt/continuing_our_infrastructure_updates_whats, checked 2026-11-09
- support.reddithelp.com/hc/articles/54058188280852, checked 2026-11-09
- Reddit terms