Reddit Subreddits V2 — Info, Rules, Wiki, Leaderboard (16)
Pricing
from $1.99 / 1,000 results
Reddit Subreddits V2 — Info, Rules, Wiki, Leaderboard (16)
Full subreddit toolkit: ID, rules, access info, type, channels, flairs, emojis, style/widgets, highlights, status, wiki + 5 bearer ops (access eligibility, settings, post requirements, top posters, top commenters).
Pricing
from $1.99 / 1,000 results
Rating
5.0
(3)
Developer
Red Crawler
Maintained by CommunityActor stats
1
Bookmarked
8
Total users
1
Monthly active users
16 days ago
Last modified
Categories
Share
Reddit Subreddits V2
Sixteen self-contained subreddit lookups — ID, rules, access state, type / topic, chat channels, flairs, custom emojis, theme & widgets, highlighted posts, status, wiki, plus the 5 bearer-only endpoints that require a signed-in Reddit account (access eligibility, full mod-side settings, post requirements, top-poster leaderboard, top-commenter leaderboard).
The first 11 endpoints are anonymous — no Reddit account, no proxy required. The 5 bearer endpoints reuse a Reddit account you've already saved in the Reddit Vault actor (or you can paste a Token V2 + matching proxy directly).
Pick an endpoint, fill the matching section, hit Start.
What you can fetch
Every endpoint accepts a subreddit in any of these formats — paste whichever you have:
- bare name —
AskReddit - prefixed —
r/AskReddit - subreddit URL —
https://www.reddit.com/r/AskReddit - old-Reddit URL —
https://old.reddit.com/r/AskReddit
Public endpoints (no Reddit account needed)
1. ID — resolve subreddit name to its t5_ ID
The simplest endpoint. Takes a subreddit name and returns Reddit's internal t5_... ID.
Returns: id (t5_...), name, prefixedName (r/...).
Use it when: you need a subreddit ID to seed another endpoint that takes IDs (e.g., the Recommended Media feed in Reddit Feeds V2, or any of Reddit's bulk-by-ID lookups).
Example
Input
{ "endpoint": "id", "id_subreddit": "AskReddit" }
Output (one dataset record)
{"endpoint": "id","type": "id","subreddit": "AskReddit","success": true,"subredditInfoByName": { "id": "t5_2qh1i" },"rate_limit_used": 1,"rate_limit_remaining": 1799,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
2. Rules — community rules list
Returns the subreddit's published rules — the list shown in the sidebar / community page.
Returns: array of rules, each with priority, name (short name), description, violationReason, kind (link / comment / all), createdAt.
Use it when: moderation tooling, rule-based content classification, building a "before you post" UX, or compliance / content-policy auditing.
Example
Input
{ "endpoint": "rules", "rules_subreddit": "AskReddit" }
Output (truncated)
{"endpoint": "rules","type": "rules","subreddit": "AskReddit","success": true,"subredditInfoByName": {"siteRules": [{ "ruleText": "Spam" },{ "ruleText": "Personal and confidential information" },{ "ruleText": "Threatening, harassing, or inciting violence" }],"rules": [{"name": "Rule 1 - Questions must be clear and direct and may not use the body textbox","content": { "html": "<ul><li>All questions must be clear, written in English...</li></ul>" }}]},"rate_limit_used": 2,"rate_limit_remaining": 1798,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
3. Access Info — public / restricted / private + age gate
Tells you whether the subreddit is public, restricted, or private — and whether content is age-gated (NSFW).
Returns: isContributorRequired (restricted-mode flag), isNsfw (over-18 flag), isQuarantined, subscribersCount, permissions (what an anonymous viewer can do).
Use it when: filtering content collection (skip private / quarantined subs), bulk-checking accessibility before scraping, NSFW-policy enforcement.
Example
Input
{ "endpoint": "access_info", "access_info_subreddit": "AskReddit" }
Output
{"endpoint": "access_info","type": "access_info","subreddit": "AskReddit","success": true,"subredditInfoByName": {"id": "t5_2qh1i","type": "PUBLIC","name": "AskReddit","publicDescriptionText": "r/AskReddit is the place to ask and answer thought-provoking questions.","isContributor": false,"isCommentingRestricted": false,"isPostingRestricted": true,"styles": { "icon": "https://styles.redditmedia.com/t5_2qh1i/styles/communityIcon_p6kb2m6b185b1.png?..." }},"rate_limit_used": 3,"rate_limit_remaining": 1797,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
4. Type — community type & topic settings
Returns Reddit's type-classification settings for the subreddit — what kind of community it is, what posts it allows, what topic it's tagged under.
Returns: type (public / restricted / private / employees_only), topic (Reddit's interest-topic tag), allowedPostTypes (text / link / image / video / poll / gallery), language, country, originalContentTagEnabled.
Use it when: community taxonomy, building targeting rules ("only image-allowed gaming subs in EN"), audience research.
Example
Input
{ "endpoint": "type", "type_subreddit": "AskReddit" }
Output
{"endpoint": "type","type": "type","subreddit": "AskReddit","success": true,"subredditInfoByName": {"isNsfw": false,"type": "PUBLIC","isCommentingRestricted": false,"isPostingRestricted": true,"isContributorRequestsDisabled": false},"rate_limit_used": 4,"rate_limit_remaining": 1796,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
5. Channels — chat channels enabled flag
Returns whether the subreddit has Reddit chat channels enabled.
Returns: chatChannelsEnabled flag plus channel metadata if any.
Use it when: mapping which subreddits have an active Reddit Chat surface, community-engagement audits.
Example
Input
{ "endpoint": "channels", "channels_subreddit": "AskReddit" }
Output
{"endpoint": "channels","type": "channels","subreddit": "AskReddit","success": true,"subredditInfoByName": {"isSubredditChannelsEnabled": { "isChatEnabled": true, "isPostEnabled": false }},"rate_limit_used": 5,"rate_limit_remaining": 1795,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
6. Flairs — post flairs OR user flairs (you pick)
Returns the list of flair templates the subreddit has configured. Pick one of the two flair types using the Flair type dropdown:
Post flairs(default) — the tags applied to posts (e.g. "Serious Replies Only", "Mod Announcement"). Returned underpostFlairTemplates.User flairs— the tags shown next to each member's name in the subreddit. Returned underuserFlairTemplates.
Inputs
| Field | Notes |
|---|---|
Subreddit | Subreddit name, r/name, or URL. |
Flair type | Post flairs (default) or User flairs. |
Returns (Post flairs) — array of post-flair templates, each with id, type (richtext / text), text, textColor, backgroundColor, richtext (raw richtext JSON), isEditable, isModOnly, maxEmojis, allowableContent.
Returns (User flairs) — userFlairTemplates.edges[] — each node is a user-flair template with the same field shape as post flairs (id, text, textColor, backgroundColor, richtext, etc.) plus userFlairTemplates.pageInfo for cursor-paginated continuation. Also includes flairPromptSettings.
Use it when: flair-aware scraping (filter posts by flair), building a flair picker for a posting actor, content classification using subreddit-defined tags, mirroring a community's user-flair palette.
Example — Post flairs
Input
{ "endpoint": "flairs", "flairs_subreddit": "AskReddit", "flairs_type": "post_flairs" }
Output (truncated to first 1 template)
{"endpoint": "flairs","type": "flairs","subreddit": "AskReddit","success": true,"subredditInfoByName": {"postFlairTemplates": [{"id": "54ea6bda-dcf0-11e2-9548-12313b0c8c59","type": "richtext","text": "Serious Replies Only","textColor": "LIGHT","richtext": "[{\"e\":\"text\",\"t\":\"Serious Replies Only\"}]","backgroundColor": "#99C160","isEditable": false,"isModOnly": false,"maxEmojis": 10,"allowableContent": "ALL"}]},"rate_limit_used": 6,"rate_limit_remaining": 1794,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
Example — User flairs
Input
{ "endpoint": "flairs", "flairs_subreddit": "AskReddit", "flairs_type": "user_flairs" }
Output (subs without user-flair templates return an empty edges list; subs that have them populate it)
{"endpoint": "flairs","type": "flairs","subreddit": "AskReddit","success": true,"subredditInfoByName": {"userFlairTemplates": {"edges": [],"pageInfo": {"hasNextPage": false,"hasPreviousPage": false,"startCursor": null,"endCursor": null}},"flairPromptSettings": null},"rate_limit_used": 7,"rate_limit_remaining": 1793,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
7. Emojis — custom emoji list (snoomoji + community)
Returns the subreddit's custom emoji set — the community-uploaded emojis used in flairs and comments.
Returns: array of emojis, each with name, url (image URL), mod-only flag, userFlairAllowed flag, postFlairAllowed flag, createdAt.
Use it when: rendering subreddit content with proper emoji assets, building emoji catalogs for a UI, monitoring custom-emoji adoption.
Example
Input
{ "endpoint": "emojis", "emojis_subreddit": "AskReddit" }
Output (truncated to first 2 emojis)
{"endpoint": "emojis","type": "emojis","subreddit": "AskReddit","success": true,"subredditInfoByName": {"id": "t5_2qh1i","emojis": {"edges": [{"node": {"name": "Martha","url": "https://emoji.redditmedia.com/6ufqrbuw8m201_t5_2qh1i/Martha","flairPermission": "ALL","isModOnly": false,"createdByInfo": { "id": "t2_9yfak" }}},{"node": {"name": "Steve","url": "https://emoji.redditmedia.com/nszan0tz8m201_t5_2qh1i/Steve","flairPermission": "ALL","isModOnly": false,"createdByInfo": { "id": "t2_9yfak" }}}]}},"rate_limit_used": 7,"rate_limit_remaining": 1793,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
8. Style & Widgets — colors, banners, sidebar widgets
The full visual identity payload — theme colors, banner / icon imagery, and the sidebar widgets Reddit shows on the community page (rules block, mod list, custom widgets, calendar, button widgets, image widgets, etc.).
Returns: style (banner image, icon, mobile banner, primary color, banner background color), plus widgets (id-keyed map of every widget on the sidebar with its kind and content).
Use it when: asset extraction, building a community-aware UI, embedding subreddit branding in a downstream app, design-research / community-aesthetics analysis.
Example
Input
{ "endpoint": "style", "style_subreddit": "AskReddit" }
Output (truncated — full payload includes every sidebar widget)
{"endpoint": "style","type": "style","subreddit": "AskReddit","success": true,"subredditInfoByName": {"id": "t5_2qh1i","styles": {"primaryColor": "#646D73","bannerBackgroundImage": "https://styles.redditmedia.com/t5_2qh1i/styles/bannerBackgroundImage_fs33xogq946f1.png","icon": "https://styles.redditmedia.com/t5_2qh1i/styles/communityIcon_p6kb2m6b185b1.png?..."},"widgets": {"items": { "...id-keyed map of every sidebar widget...": "..." },"layout": { "sidebar": { "order": ["widget_id_1", "widget_id_2"] } }},"moderatorsInfo": { "...": "..." },"rules": [ "...": "..." ]},"rate_limit_used": 8,"rate_limit_remaining": 1792,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
9. Highlights — highlighted posts on community page
Returns the posts the subreddit's mods have highlighted / pinned to the community page (the "Pinned" section at the top).
Returns: array of post records — same field shape as Reddit Feeds V2 (id, postTitle, score, commentCount, createdAt, url, flair, etc.).
Note: Many subreddits have no highlighted posts. An empty list is the normal result when the mods haven't pinned anything.
Use it when: featured-content discovery, finding the rules / mod-announcement pinned posts, monitoring community campaigns.
Example
Input
{ "endpoint": "highlights", "highlights_subreddit": "Wordpress" }
Output (one record per call; highlightedPosts is an array, first entry shown)
{"endpoint": "highlights","type": "highlights","subreddit": "Wordpress","subreddit_id": "t5_2rcsg","success": true,"subredditInfoById": {"id": "t5_2rcsg","name": "Wordpress","highlightedPosts": [{"label": "ANNOUNCEMENT","expiresAt": null,"post": {"id": "t3_1r80vkz","title": "Monthly AMA - Suggestions wanted!","commentCount": 12,"createdAt": "2026-02-18T11:48:13.247000+0000","content": { "markdown": "We're launching a monthly AMA series featuring people from across the WordPress ecosystem..." }}}]},"rate_limit_used": 9,"rate_limit_remaining": 1791,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
10. Status — community status flags
Returns the lifecycle / visibility state of the subreddit — whether it is currently active, archived, locked, deleted, banned, or quarantined.
Returns: isActive, isArchived, isLocked, isDeleted, isBanned, isQuarantined, plus the human-readable reason / message Reddit displays for unavailable communities.
Use it when: screening dead / banned / archived subs out of a target list before launching a scrape, monitoring health of communities you depend on, dashboards that show which subs went down.
Example
Input
{ "endpoint": "status", "status_subreddit": "AskReddit" }
Output
{"endpoint": "status","type": "status","subreddit": "AskReddit","subreddit_id": "t5_2qh1i","success": true,"subredditInfoById": {"name": "AskReddit","communityStatus": {"description": { "markdown": "Credit" },"emoji": {"name": "donkey_right","url": "https://emoji.redditmedia.com/5atpv9pyenjf1_t5_2qh1i/donkey_right"}}},"rate_limit_used": 10,"rate_limit_remaining": 1790,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
11. Wiki — wiki page content
Reads the markdown content of any wiki page on the subreddit. Defaults to the wiki index, but you can pick from a dropdown of the most common pages.
Inputs:
- Subreddit — same input as everywhere else
- Wiki page — one of
index(default),config/sidebar,config/description,config/submit_text,faq,rules,wiki
Returns: content (the page's markdown body), revisionDate, revisionAuthor, mayRevise (whether the current viewer can edit — always false for anonymous reads), pageName.
Use it when: scraping FAQ / sidebar / rules-as-prose, archiving wiki history, building a chat-bot grounded on a community's wiki.
Note on wiki vs index: these are usually the same page. index is the canonical name; wiki is what some communities use as the entry point.
Example
Input
{ "endpoint": "wiki", "wiki_subreddit": "AskReddit", "wiki_page": "index" }
Output (truncated — pageTree lists every wiki page in the subreddit)
{"endpoint": "wiki","type": "wiki","subreddit": "AskReddit","page": "index","success": true,"subredditInfoByName": {"id": "t5_2qh1i","name": "AskReddit","isSubscribed": false,"wiki": {"index": {"status": "VALID","pageTree": [{ "name": "bestof", "path": "bestof", "depth": 0, "isPagePresent": true },{ "name": "commonquestions", "path": "commonquestions", "depth": 0, "isPagePresent": true },{ "name": "description", "path": "config/description", "depth": 1, "isPagePresent": true, "parent": "config" }]}},"styles": { "icon": "https://styles.redditmedia.com/t5_2qh1i/styles/communityIcon_p6kb2m6b185b1.png?..." }},"rate_limit_used": 11,"rate_limit_remaining": 1789,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
Bearer-required endpoints (need a Reddit account)
These five endpoints require authentication. Fill the Reddit credentials section at the bottom of the input form (see Credentials below).
12. Access Eligibility — gating + age / quarantine state
Reddit's per-user access-gate check: tells you, for the signed-in user, whether they can access this subreddit and what gate (age verification, quarantine ack, NSFW opt-in, contributor requirement) is currently blocking them.
Returns: eligibility (allowed / blocked), gate (e.g. age_verification, quarantined, nsfw_opt_in, contributors_only), acknowledgmentRequired, messageHtml (the modal text Reddit would show the user).
Use it when: building a sign-in / browse flow that has to handle the same gates Reddit applies to signed-in users; pre-checking before a scraper authenticated as a user tries to read content; dashboards that surface "this account can / can't reach sub X".
Example
Input (using a vault account)
{"endpoint": "access_eligibility","access_eligibility_subreddit": "AskReddit","credentialSource": "vault","accountName": "main"}
Output
{"endpoint": "access_eligibility","type": "access_eligibility","subreddit": "AskReddit","success": true,"subredditInfoByName": {"type": "PUBLIC","isContributor": false,"isCommentingRestricted": false,"isPostingRestricted": true,"lastContributorRequestTimeAt": null,"modPermissions": null},"rate_limit_used": 12,"rate_limit_remaining": 1788,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
13. Settings — full mod-side settings
Returns the full Settings payload Reddit returns to a user with mod permissions on the subreddit — the exact fields the mod tools page edits. Many fields are also visible to non-mods (read-only); a non-mod call still returns the public subset.
Returns: name, description, publicDescription, submitText, submitTextLabel, submitLinkLabel, language, country, subredditType, wikiEditMode, wikiEditAge, wikiEditKarma, spoilerEnabled, allOriginalContent, originalContentTagEnabled, welcomeMessageEnabled, welcomeMessageText, plus content-control flags (isCommentScoreHideMinsEnabled, commentScoreHideMins, suggestedCommentSort, etc.).
Use it when: building mod tooling, exporting / migrating a community config, snapshot-diffing your settings over time, auditing a subreddit you own.
Example
Input
{"endpoint": "settings","settings_subreddit": "AskReddit","credentialSource": "vault","accountName": "main"}
Output (public-visible subset shown — moderators of the sub see more fields)
{"endpoint": "settings","type": "settings","subreddit": "AskReddit","subreddit_id": "t5_2qh1i","success": true,"subredditInfoById": {"id": "t5_2qh1i","isTopListingAllowed": true,"isDiscoveryAllowed": true,"language": "es","allAllowedPostTypes": ["TEXT", "SPOILER"],"isArchivePostsEnabled": true,"postFlairSettings": { "isEnabled": true, "isSelfAssignable": false },"authorFlairSettings":{ "isEnabled": false, "isSelfAssignable": false },"isSubredditChannelsEnabled": { "isChatEnabled": true, "isPostEnabled": false },"amaSettings": { "postPermissions": "OFF" },"videoInCommentSettings": { "commentPermissions": "MODS" },"commentContributionSettings": { "allowedMediaTypes": ["VIDEO"] },"countrySiteSettings": {"countryCode": "","languageCode": "en","isCountrySiteEditable": true,"modMigrationAt": "2022-06-15T22:34:00.000000+0000"}},"rate_limit_used": 13,"rate_limit_remaining": 1787,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
14. Post Requirements — title / body rules + allowed types
Returns the per-subreddit posting rules Reddit enforces server-side — what title length is allowed, which body types (text / link / image / video) are accepted, whether flair is required, banned domains, banned words, repost windows.
Returns: titleRequired, titleBlacklistedRegex, titleRegex, bodyRequired, bodyBlacklistedRegex, bodyRegex, bodyRestrictionPolicy, bodyTextMinLength, bodyTextMaxLength, linkRequired, linkRestrictionPolicy, domainBlacklist, domainWhitelist, flairRequired, repostAge, linkRepostProtection, imageRepostProtection.
Use it when: validating user-supplied post content before you submit through any of the posting actors (saves you a failed submission), building a "post-prep" UI, audit-trailing why a community auto-removes posts.
Example
Input
{"endpoint": "post_requirements","post_requirements_subreddit": "AskReddit","credentialSource": "vault","accountName": "main"}
Output
{"endpoint": "post_requirements","type": "post_requirements","subreddit": "AskReddit","subreddit_id": "t5_2qh1i","success": true,"subredditInfoById": {"postRequirements": {"titleTextMinLength": 12,"titleTextMaxLength": null,"titleRequiredStrings": [],"titleBlacklistedStrings": [],"titleRegexes": [],"bodyRestrictionPolicy": "NOT_ALLOWED","bodyRequiredStrings": [],"bodyBlacklistedStrings": [],"bodyRegexes": [],"domainBlacklist": [],"domainWhitelist": [],"isFlairRequired": false,"galleryCaptionsRequirement": "NONE","galleryUrlsRequirement": "NONE","galleryMinItems": null,"galleryMaxItems": null,"guidelinesText": "Welcome to r/AskReddit! This subreddit is for open-ended, discussion based questions..."}},"rate_limit_used": 14,"rate_limit_remaining": 1786,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
15. Top Posters — community leaderboard, top posters
Returns Reddit's official "Top Contributors → Posters" leaderboard for the community. Reddit splits these contributors into tiers (gold / silver / bronze plus an honorable-mentions tail).
Inputs (optional):
- Max users —
1to1000(default100). Higher values fetch more contributors and take proportionally longer to run.
Returns: tiers (top tier blocks with their slot caps and contributors), users (flat list of all returned contributors with username, avatar, score, rank, tierName), count, has_more.
Use it when: finding the most active posters in a community, sourcing power-users for outreach, ranking communities by contributor concentration.
Example
Input
{"endpoint": "leaderboard_posters","leaderboard_posters_subreddit": "wallstreetbets","leaderboard_posters_max_users": 5,"credentialSource": "vault","accountName": "main"}
Output (one record per call; users is the full ranked list)
{"endpoint": "leaderboard_posters","type": "leaderboard_posters","subreddit": "wallstreetbets","category_id": "top_posters","categoryId": "top_posters","success": true,"category": {"id": "top_posters","name": "Top Posters","description": "Based on votes counted for the month.","updateInterval": "Rankings updated daily","lastUpdated": "Last updated: 3 hours ago"},"tiers": [{ "title": "Top 1% Poster", "icon": "https://i.redd.it/gqujlodqi3yd1.png", "scoreLabel": "Upvotes" }],"users": [{ "rank": "1", "username": "u/[deleted]", "userId": null, "isDeleted": true, "score": "38,882", "scoreChange": "+5,279", "tier": "Top 1% Poster", "icon": "https://i.redd.it/3eg7kwpjdtae1.png" },{ "rank": "2", "username": "Front-Ad3508", "userId": "t2_85ob0rev", "isDeleted": false, "score": "17,225", "scoreChange": "+142", "tier": "Top 1% Poster", "icon": "https://styles.redditmedia.com/t5_407t9d/styles/profileIcon_snoo...png" },{ "rank": "3", "username": "Anonymous", "userId": "t2_2ae29cdzxq", "isDeleted": false, "score": "16,660", "scoreChange": "+11", "tier": "Top 1% Poster", "icon": null },{ "rank": "4", "username": "fack-the-suits", "userId": "t2_2ba50etna8", "isDeleted": false, "score": "12,162", "scoreChange": "+1", "tier": "Top 1% Poster", "icon": "https://www.redditstatic.com/avatars/defaults/v2/avatar_default_0.png" },{ "rank": "5", "username": "uncle-ice493", "userId": "t2_26qjuvtvt9", "isDeleted": false, "score": "11,583", "scoreChange": null, "tier": "Top 1% Poster", "icon": "https://www.redditstatic.com/avatars/defaults/v2/avatar_default_2.png" }],"count": 5,"rate_limit_used": 15,"rate_limit_remaining": 1785,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
16. Top Commenters — community leaderboard, top commenters
Same payload shape as Top Posters but for the commenters leaderboard.
Inputs (optional):
- Max users —
1to1000(default100).
Returns: identical to Top Posters but ranking is by comment activity.
Use it when: finding most active commenters for engagement / community-management work, analyzing whether a sub's culture is post-driven or discussion-driven.
Example
Input
{"endpoint": "leaderboard_commenters","leaderboard_commenters_subreddit": "wallstreetbets","leaderboard_commenters_max_users": 5,"credentialSource": "vault","accountName": "main"}
Output (one record per call)
{"endpoint": "leaderboard_commenters","type": "leaderboard_commenters","subreddit": "wallstreetbets","category_id": "top_commenters","categoryId": "top_commenters","success": true,"category": {"id": "top_commenters","name": "Top Commenters","description": "Based on votes counted for the month.","updateInterval": "Rankings updated daily","lastUpdated": "Last updated: 3 hours ago"},"tiers": [{ "title": "Top 1% Commenter", "icon": "https://i.redd.it/qwkcwa2zi3yd1.png", "scoreLabel": "Upvotes" }],"users": [{ "rank": "1", "username": "CommentBig3066", "userId": "t2_acgxqmdk0", "isDeleted": false, "score": "12,301", "scoreChange": "+31", "tier": "Top 1% Commenter" },{ "rank": "2", "username": "Top_Category_2526", "userId": "t2_7p5ja9v4", "isDeleted": false, "score": "12,129", "scoreChange": "+1,424", "tier": "Top 1% Commenter" },{ "rank": "3", "username": "chuggin_ballz", "userId": "t2_23n9kn2qfp","isDeleted": false, "score": "9,415", "scoreChange": "+127", "tier": "Top 1% Commenter" },{ "rank": "4", "username": "Totallycomputername", "userId": "t2_nwes3tft8", "isDeleted": false, "score": "6,261", "scoreChange": "+1,413", "tier": "Top 1% Commenter" },{ "rank": "5", "username": "...", "userId": "...", "isDeleted": false, "score": "...", "scoreChange": "...", "tier": "Top 1% Commenter" }],"count": 5,"rate_limit_used": 16,"rate_limit_remaining": 1784,"rate_limit_reset_at": "2026-05-13T16:50:00Z"}
Credentials
The 5 bearer-required endpoints (Access Eligibility, Settings, Post Requirements, Top Posters, Top Commenters) need a Reddit Token V2 cookie + the proxy that minted it. The first 11 endpoints ignore credentials entirely — leave the section blank for those.
Credential lifetime
| Credential | Lifetime | When to refresh |
|---|---|---|
Token V2 (token_v2 cookie) | ~24 hours | Daily — or save it once in the Reddit Vault and let the vault auto-refresh. |
How to extract Token V2 from your browser: open Reddit in Chrome / Brave / Edge / Firefox, then DevTools → Application → Cookies →
https://www.reddit.com. Filter bytoken_v2and copy the Value column.
You have two options:
Option A — Use a saved account (recommended)
- Run the Reddit Vault actor once to store a Reddit account under a name you choose (e.g.
main,mod-account,burner1). The vault encrypts the Token V2 + matching proxy and stores them keyed by name. - In this actor, set Credential source = Use saved account (vault) and put the same name in Saved account name.
- Done — Token V2 + proxy load automatically. Refresh the vault entry whenever the Token V2 expires (~24 h lifetime).
Option B — Paste Token V2 + proxy directly
For one-off runs without setting up the vault:
- Set Credential source = Paste Token V2 + proxy.
- Paste your Reddit
token_v2cookie value (eyJ...) into Token V2. - Paste the matching proxy in
ip:port:user:passformat into Proxy.
Critical: Reddit IP-binds Token V2 cookies. The proxy MUST be the exact same IP that originally minted the Token V2 — otherwise Reddit returns 401 on every bearer call. Both fields are stored encrypted by Apify.
How to run
- Pick an endpoint in the "What to fetch" dropdown at the top.
- Open the matching section below it and fill the subreddit (and any extra fields, like Wiki page name or leaderboard Max users).
- If your endpoint is bearer-required (12–16), fill the Reddit credentials section at the bottom.
- Click Start.
Each endpoint section is independent — fields outside your chosen section are ignored, so you can leave them as-is between runs. Default subreddit is AskReddit and the default endpoint is Rules, so the actor runs out of the box.
Output
Results are pushed to the actor's default dataset. View them as a table or download as JSON / CSV / Excel / XML.
- ID / Access Info / Type / Channels / Style & Widgets / Status / Wiki / Access Eligibility / Settings / Post Requirements push one record per run.
- Rules / Flairs / Emojis push one record per item (one row per rule, flair, emoji).
- Highlights pushes one record per highlighted post.
- Top Posters / Top Commenters push one record containing the full leaderboard payload (
tiers,users,count,has_more).
The most useful columns are placed first (endpoint, subreddit, subreddit_id, id, name, etc.) so the dataset Table view is readable without horizontal scrolling.
Common edge cases
- Subreddit doesn't exist / banned — Reddit returns no data; the actor pushes an error record. The Status endpoint surfaces the
isBanned/isDeletedflags explicitly. - Private subreddits — anonymous lookups can't see content of private subs. Access Info will tell you
isContributorRequired = true; most other public endpoints will be empty. Bearer endpoints work if your account is an approved contributor. - Quarantined subreddits — usually accessible read-only; Access Info / Status surface the
isQuarantinedflag, and Access Eligibility (bearer) tells you if your account has acknowledged the quarantine. - Empty wiki pages — many subreddits have no wiki; the call returns empty content. This is normal.
- No flairs / emojis / highlights — some subreddits configure none of these. An empty list is the expected response, not a failure.
- Bearer expired — Reddit Token V2 cookies live ~24 h. If you get an
error_kind: bearer_expiredresponse, refresh the Token V2 in your vault entry (or paste a fresh one in manual mode) and re-run. - Settings on a sub you don't moderate — call still succeeds but returns only the public-visible subset (name, description, language, country, etc.); mod-only fields are absent.
- Subreddit name with mixed case — Reddit is case-insensitive on subreddit names, but for cleanliness the actor uses whatever you paste. Both
AskRedditandaskredditwork.
Why this actor is fast
- Speed — 1–3 seconds per call, end-to-end (single-page leaderboards 2–4 s; full 1000-user leaderboards 10–20 s for the largest communities). 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. Just paste your inputs and run — sign-in (where needed) and run reliability are handled for you behind the scenes.
Status & error reference
Run status (Apify-side, shown on the run page)
| Status | Apify message | Meaning | What to do |
|---|---|---|---|
| "Actor succeeded with N results in the dataset" | Run finished. Some or zero records pushed. | Open the dataset to view results. | |
| "The Actor process failed…" | Validation error or upstream Reddit fault. | Check the run log. You are NOT charged for failed runs. | |
| "The Actor timed out. You can resurrect it with a longer timeout to continue where you left off." | Run exceeded its timeout. | Re-run with a smaller limit or fewer inputs. | |
| "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 | Subreddit has no matching data for the chosen endpoint. | Run SUCCEEDED, 0 records, no charge. |
| Private / quarantined subreddit | Reddit hides these from anonymous reads. | Run SUCCEEDED, those rows skipped. |
| Banned subreddit | Subreddit has been banned by Reddit. | Run SUCCEEDED, 0 records for that input. |
Validation error: missing subreddit | Required input not provided. | Run FAILED immediately, no charge. |
Pricing
Pay-per-result. You're only charged for records actually pushed to the dataset — failed runs cost nothing.
| Event | Trigger | Price (per 1,000) |
|---|---|---|
result | Each subreddit / rule / flair / emoji / widget / leaderboard record pushed to the dataset | $1.99 |
Need a different shape of data?
- Reddit Feeds V2 — subreddit feeds (the actual posts, not the metadata)
- Reddit Search V2 — search Reddit by query (posts, comments, communities, users)
- Reddit Scraper V2 — single-post + comments and 10 other single-record lookups
- Reddit Users V2 — single-user lookups (profile, trophies, posts, comments)
- Reddit Bulk Scrape V2 — bulk subreddit lookups (up to 1500 subreddit IDs per run via
subreddit_info_by_idsmode) - Reddit Vault — store a Reddit account once and reuse it across actors
- Reddit Subreddits — moderation-side V1 companion: create, join / leave, post requirements, list your subscriptions
Support and feedback
Found a bug, want a feature, or hit a Reddit error code we don't translate clearly? Open an issue via the actor's Apify Console feedback link, or reach out at the RedCrawler support channel.
Reddit Subreddits V2 is part of the RedCrawler family of Reddit actors. RedCrawler is independent — not affiliated with, endorsed by, or sponsored by Reddit, Inc. Use it within Reddit's API terms.
