Reddit Users V1 — Profile, Lookup, Follow, Block, Friend (13)
Pricing
from $1.99 / 1,000 results
Reddit Users V1 — Profile, Lookup, Follow, Block, Friend (13)
Full Reddit user toolkit — 8 anonymous lookups (profile, trophies, posts, comments, overview, browse, bulk-by-IDs, username) + 5 auth ops (my content, user actions, add/remove friend, friends list, show-my-flair). Use Reddit Vault or paste Token V2 + proxy.
Pricing
from $1.99 / 1,000 results
Rating
5.0
(2)
Developer
Red Crawler
Maintained by CommunityActor stats
1
Bookmarked
4
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Reddit Users V1
Full Reddit user toolkit in one actor — 8 anonymous lookups (profile, trophies, posts, comments, overview, browse, bulk-by-IDs, username availability) plus 5 auth-required actions (your own content, follow / unfollow / block / unblock / report, add / remove friend, friends list, show / hide your flair). Pick the endpoint, fill the matching section, hit Start.
Anonymous endpoints need no credentials. Auth-required endpoints reuse a saved account from the Reddit Vault, or accept a Token V2 + matching proxy pasted inline.
What you can do
Each username field accepts a raw username (spez), a u/-prefixed handle (u/spez), or a full profile URL (https://www.reddit.com/user/spez/). Bulk lookup accepts raw IDs (abcd12) and t2_-prefixed (t2_abcd12) — comma list or one per row.
Anonymous endpoints (no credentials needed)
1. About — public profile
Returns a Reddit user's full public profile in one call.
Returns: numeric IDs (id, name), karma breakdown (total_karma, link_karma, comment_karma, awardee_karma, awarder_karma), badges (is_employee, is_mod, is_gold, verified, has_verified_email), created_utc, snoo / icon URLs, plus the embedded profile-subreddit object (u_<name>).
Use it when: profile QA, mod queues, lead enrichment, "is this user real / vetted / verified" checks, building dashboards of influencer / employee / mod activity.
Example
Input
{"endpoint": "about","about_username": "spez"}
Output (one dataset record)
{"endpoint": "about","id": "1w72","name": "spez","total_karma": 937988,"link_karma": 182650,"comment_karma": 755338,"awardee_karma": 25000,"awarder_karma": 75000,"created_utc": 1118030400.0,"is_employee": true,"is_mod": true,"is_gold": true,"verified": true,"has_verified_email": true,"icon_img": "https://styles.redditmedia.com/t5_3k30p/styles/profileIcon_uj015iwx9s7g1.png","snoovatar_img": "https://i.redd.it/snoovatar/avatars/...png","subreddit": {"display_name_prefixed": "u/spez","title": "spez","public_description": "Reddit CEO","subscribers": 0,"accept_followers": true},"accept_followers": true,"hide_from_robots": false,"pref_show_snoovatar": true}
2. Trophies — earned badges
Returns the user's earned Reddit trophies / awards (year-club badges, AMA, gilded, etc.).
Returns: array of {kind: "t6", data: {name, icon_70, icon_40, granted_at, url, description, award_id, id}} records.
Use it when: scoring account age & seniority, filtering "real" users vs. fresh throwaways, building reputation overlays.
Example
Input
{"endpoint": "trophies","trophies_username": "spez"}
Output (one dataset record per trophy)
{"endpoint": "trophies","kind": "t6","data": {"name": "15-Year Club","icon_70": "https://www.redditstatic.com/awards2/15_year_club-70.png","icon_40": "https://www.redditstatic.com/awards2/15_year_club-40.png","granted_at": 1749182400,"url": null,"description": null,"award_id": null,"id": null}}
3. Overview — posts + comments combined
Returns a user's posts and comments interleaved in one feed (Reddit's default profile view).
Returns: array of items — each is either a post (kind: t3) or a comment (kind: t1) with the full Reddit listing payload. Posts get post-shaped columns front-loaded, comments get comment-shaped columns.
Use it when: profiling an account's activity, summarising recent contributions, training data for "is this user spammy / on-topic / mod-worthy" classifiers.
Optional fields: overview_sort (new / hot / top / controversial), overview_time_filter (hour / day / week / month / year / all — only for top / controversial), overview_limit (1–100).
Example
Input
{"endpoint": "overview","overview_username": "spez","overview_sort": "new","overview_limit": 25}
Output (one dataset record per item — comment shape shown)
{"endpoint": "overview","id": "okpklb6","name": "t1_okpklb6","parent_id": "t1_okoapl8","link_id": "t3_1t7d1gy","author": "spez","author_fullname": "t2_1w72","body": "Ding ding ding","score": 24,"ups": 24,"downs": 0,"created_utc": 1778273310.0,"permalink": "https://reddit.com/r/redditstock/comments/1t7d1gy/please_fire_vollero_for_buyback_mismanagement/okpklb6/","is_submitter": false,"distinguished": "admin","subreddit": "redditstock","subreddit_name_prefixed": "r/redditstock","subreddit_id": "t5_4x7l6b","total_awards_received": 0}
4. Posts — submissions only
Returns only the user's submitted posts (links + self-posts), no comments.
Returns: array of post records with t3_* fullnames, post-shaped columns front-loaded.
Use it when: finding what an account posts about, OP profile checks, monitoring competitor / influencer posting cadence.
Optional fields: posts_sort, posts_time_filter, posts_limit (1–100).
Example
Input
{"endpoint": "posts","posts_username": "spez","posts_sort": "top","posts_time_filter": "year","posts_limit": 10}
Output (one record per post)
{"endpoint": "posts","id": "1tc6ncq","name": "t3_1tc6ncq","title": "Which language should I learn next?","author": "spez","author_fullname": "t2_1w72","subreddit": "test","subreddit_name_prefixed": "r/test","subreddit_id": "t5_2qh23","score": 1,"ups": 1,"downs": 0,"upvote_ratio": 1.0,"num_comments": 0,"created_utc": 1779421200.0,"permalink": "/r/test/comments/1tc6ncq/which_language_should_i_learn_next/","url": "https://www.reddit.com/r/test/comments/1tc6ncq/which_language_should_i_learn_next/","is_self": true,"over_18": false,"spoiler": false,"locked": false,"selftext": "Currently writing Python full-time...","thumbnail": "self"}
5. Comments — comments only
Returns only the user's authored comments, no posts.
Returns: array of comment records with t1_* fullnames, comment-shaped columns front-loaded.
Use it when: sentiment analysis on a user, finding their take on a topic, "comments on which subs lately" audits.
Optional fields: comments_sort, comments_time_filter, comments_limit (1–100).
Example
Input
{"endpoint": "comments","comments_username": "spez","comments_sort": "new","comments_limit": 25}
Output (one record per comment — same shape as Overview's comment example)
{"endpoint": "comments","id": "okpklb6","name": "t1_okpklb6","parent_id": "t1_okoapl8","link_id": "t3_1t7d1gy","author": "spez","body": "Ding ding ding","score": 24,"created_utc": 1778273310.0,"permalink": "https://reddit.com/r/redditstock/comments/1t7d1gy/please_fire_vollero_for_buyback_mismanagement/okpklb6/","subreddit": "redditstock"}
6. Browse Users — popular / new directory
Returns Reddit's directory listing of users — either the popular profile-subreddits feed or the new feed.
Returns: array of profile-subreddit records (t5_* names with u_<handle> display names) — same shape as About's subreddit field.
Use it when: discovering trending / newly active accounts, sampling for outreach, building "rising users" lists.
Optional fields: browse_directory (popular / new), browse_limit (1–100).
Example
Input
{"endpoint": "browse_users","browse_directory": "popular","browse_limit": 10}
Output (one record per user)
{"endpoint": "browse_users","name": "t5_3oy63","display_name": "u_thisisinsider","display_name_prefixed": "u/thisisinsider","title": "Business Insider","public_description": "What you want to know about business...","subscribers": 0,"created": 1507123989.0,"icon_img": "https://styles.redditmedia.com/t5_3oy63/styles/profileIcon_jah6n47yjv041.png","primary_color": "","key_color": "","accept_followers": true,"quarantine": false,"over_18": false}
7. Users by IDs — bulk lookup by t2_ IDs
Bulk-resolve many Reddit user IDs to compact profile records in one call. Up to 500 IDs per call — paste them as a list or comma-separated string.
Returns: array — one record per resolved user with {endpoint, name, id, created_utc, link_karma, comment_karma, profile_img, profile_color, profile_over_18}.
Use it when: hydrating IDs harvested from comments / mod logs / submissions, batch enrichment of large user lists, bulk audience research.
Example
Input
{"endpoint": "lookup","lookup_ids": ["t2_1w72", "t2_29onm7dc32"]}
Output (one record per user)
{"endpoint": "lookup","name": "spez","id": "1w72","created_utc": 1118030400.0,"link_karma": 182650,"comment_karma": 755338,"profile_img": "https://styles.redditmedia.com/t5_3k30p/styles/profileIcon_uj015iwx9s7g1.png","profile_color": "","profile_over_18": false}
8. Username Available — check if a name is free
Tells you whether a username is still claimable on Reddit.
Returns: {endpoint, username, available} — available: true means free, false means taken or reserved.
Use it when: picking new account names in bulk, brand-protection sweeps, finding free handles.
Example
Input
{"endpoint": "username_available","available_username": "my_new_reddit_handle"}
Output (one dataset record)
{"endpoint": "username_available","username": "my_new_reddit_handle","available": false}
Auth-required endpoints (Reddit account needed)
These five endpoints sign in as your account and act on its behalf. Save credentials once in Reddit Vault and reuse them by name, or paste Token V2 + matching proxy inline.
9. My Content — your own listings
Returns one of your private listings (overview / submitted / comments / upvoted / downvoted / hidden / saved / gilded).
Returns: array of post / comment items with the same shape as the public overview / posts / comments endpoints — but pulled from your own account's view so it includes hidden / saved / upvoted items only you can see.
Use it when: archiving your account's history, building a personal dashboard, exporting saved / upvoted items for a research corpus.
Optional fields: my_content_sort, my_content_time_filter, my_content_limit (1–100).
Example
Input
{"endpoint": "my_content","my_content_type": "overview","my_content_sort": "new","my_content_limit": 25,"credentialSource": "vault","accountName": "motor_tip8865"}
Output (one record per item — post shape shown)
{"endpoint": "my_content","id": "1tc6ncq","name": "t3_1tc6ncq","title": "Which language should I learn next?","author": "motor_tip8865","author_fullname": "t2_29onm7dc32","subreddit": "test","subreddit_name_prefixed": "r/test","score": 1,"ups": 1,"upvote_ratio": 1.0,"num_comments": 0,"created_utc": 1779421200.0,"permalink": "/r/test/comments/1tc6ncq/which_language_should_i_learn_next/","url": "https://www.reddit.com/r/test/comments/1tc6ncq/which_language_should_i_learn_next/","is_self": true,"selftext": "Currently writing Python full-time..."}
10. User Action — follow / unfollow / block / unblock / report
One endpoint, five actions. Picks the action from a dropdown.
Returns: {endpoint, action, target, success, data} — data is the backend response (Reddit's raw acknowledgement, or {} on a clean success).
Use it when: silently following a competitor / influencer, blocking known spammers in bulk, reporting harassment, programmatic relationship management.
Report also accepts an optional
user_action_site_rule(e.g.harassment,spam). Unblock auto-resolves your own t2_ ID from your bearer; only filluser_action_my_account_idif auto-resolve fails.
Example
Input
{"endpoint": "user_action","user_action": "follow","user_action_target": "spez","credentialSource": "vault","accountName": "motor_tip8865"}
Output (one dataset record)
{"endpoint": "user_action","action": "follow","target": "spez","success": true,"data": {}}
11. Add / Remove Friend — manage your friends list
Adds or removes a user from your Reddit friends list.
Returns: {endpoint, action, username, success, data} — data echoes Reddit's response (the friend record on add, an empty body on remove).
Use it when: building a curated follow list of users you want to monitor (Reddit pushes their new posts/comments into your friends feed).
Example
Input
{"endpoint": "friend_action","friend_action": "add","friend_username": "spez","credentialSource": "vault","accountName": "motor_tip8865"}
Output (one dataset record)
{"endpoint": "friend_action","action": "add","username": "spez","success": true,"data": {"date": 1779421200.0,"name": "spez","id": "t2_1w72","rel_id": "r9_2lkj8"}}
12. Friends List — list your friends
Lists every account you've friended. No filter fields needed.
Returns: array of {endpoint, name, id, date, rel_id} per friend (front-loaded order). Empty list → one row: {endpoint, friends: [], count: 0}.
Use it when: auditing who's on your friends list, exporting your friend roster, syncing with an external CRM.
Optional fields: friends_list_max — cap how many friends to return (0 = all).
Example
Input
{"endpoint": "friends_list","friends_list_max": 0,"credentialSource": "vault","accountName": "motor_tip8865"}
Output (one record per friend — example shows non-empty case)
{"endpoint": "friends_list","name": "spez","id": "t2_1w72","date": 1779421200.0,"rel_id": "r9_2lkj8"}
13. Show My Flair — toggle your flair visibility on a subreddit
Toggles whether your flair on a given subreddit is visible to other users.
Returns: {endpoint, subreddit, flair_enabled, success, data} — data is the backend acknowledgement.
Use it when: revealing / hiding your flair in a community as part of profile cleanup, branding swaps, or compliance with subreddit norms.
Example
Input
{"endpoint": "show_my_flair","show_my_flair_subreddit": "AskReddit","show_my_flair_enabled": true,"credentialSource": "vault","accountName": "motor_tip8865"}
Output (one dataset record)
{"endpoint": "show_my_flair","subreddit": "AskReddit","flair_enabled": true,"success": true,"data": {}}
Credentials
The 8 anonymous endpoints (About, Trophies, Overview, Posts, Comments, Browse Users, Users by IDs, Username Available) need no credentials at all — leave the Reddit credentials section blank.
The 5 auth-required endpoints (My Content, User Action, Add / Remove Friend, Friends List, Show My Flair) need a signed-in Reddit account. Save it once in Reddit Vault and reuse the name forever, or paste a Token V2 + matching proxy inline for one-off runs.
Credential lifetimes
| Credential | Lifetime | When to refresh |
|---|---|---|
Token V2 (token_v2 cookie) | ~24 hours | Daily — or save a Reddit Session in the vault and let it auto-refresh |
Reddit Session (reddit_session cookie) | ~180 days | Roughly twice a year, or when a run reports unauthorized |
How to extract these from your browser: open Reddit in Chrome / Brave / Edge / Firefox, then DevTools → Application → Cookies →
https://www.reddit.com. Filter bytoken_v2orreddit_sessionand copy the Value column.
Option A — Use saved account (vault) (recommended)
- Run the Reddit Vault actor once with mode
STORE, an account name (e.g.motor_tip8865), your Token V2 (or Reddit Session for auto-refresh), and the matching proxy. - In this actor, set Credential source =
Use saved account (vault)and Saved account name =motor_tip8865. - Token V2 + proxy are pulled from the vault on every run. If you saved a Reddit Session, the Token V2 auto-refreshes whenever it expires.
Option B — Paste Token V2 + proxy inline
- Set Credential source =
Paste Token V2 + proxy. - Paste the
eyJ…Token V2 cookie value (encrypted by Apify at rest). - Paste the Proxy as
ip:port:user:pass— must be the same IP that minted the Token V2 (Reddit IP-binds these cookies).
How to run
- What to fetch → pick one of the 13 endpoints from the dropdown.
- Scroll to the section that matches your endpoint and fill in its fields. Only that section's fields are used — other sections are ignored.
- If your endpoint is auth-required (My Content, User Action, Add / Remove Friend, Friends List, Show My Flair), scroll to Reddit credentials and pick a source — vault (name only) or manual (Token V2 + proxy).
- Hit Start. Each run produces one or more dataset rows — exactly one per item returned (e.g. 25 posts → 25 rows; 1 follow → 1 row).
Output
Records are pushed to the run's default dataset. The shape depends on the endpoint:
| Endpoint | Pushed shape | Front-loaded columns |
|---|---|---|
about | one user record | endpoint, id, name, total_karma, link_karma, comment_karma, … |
trophies | array of {kind:"t6", data:{…}} | endpoint, kind, data |
overview / posts / comments / my_content | array of post (t3) + comment (t1) items | post-shaped or comment-shaped based on kind |
browse_users | array of user-subreddits | endpoint, id, name, total_karma, … |
lookup | array of compact user records | endpoint, id, name, total_karma, … |
username_available | {endpoint, username, available} | as listed |
friends_list | array of friend records | endpoint, name, id, date, rel_id |
user_action / friend_action / show_my_flair | one acknowledgement record | endpoint, action, target / username / subreddit, success, data |
Empty results push one summary row instead of zero rows (e.g. an empty friends list =
{endpoint: "friends_list", friends: [], count: 0}), so a successful run with no items still produces a visible record.
Common edge cases
| Edge case | Cause | How it surfaces |
|---|---|---|
| Suspended user | Account banned by Reddit admins | about returns sparse profile, posts / comments empty. Some fields may be missing. |
| Shadowbanned user | Account silently suppressed | All anonymous lookups return "User not found" (Reddit hides shadowbanned accounts from outsiders). |
| Private profile | User toggled "Show my profile to logged-out users = off" | Anonymous lookups fail with forbidden. Use an auth-required endpoint on YOUR account with their consent, or skip. |
Mixed valid + invalid IDs in lookup | One or more t2_ IDs are wrong / deleted | Resolved users come back; missing IDs are absent. No error — just fewer rows than IDs supplied. |
| Bearer expired | Saved Token V2 past ~24 h, no vault session for auto-refresh | Run still completes but auth-required endpoints fail. Re-save the account in Reddit Vault with a Reddit Session for auto-refresh. |
| Bearer minted on a different IP | Token V2 minted on a different proxy than the one paired with it | Auth-required endpoints fail with unauthorized. Re-mint the Token V2 on the proxy you'll use, save them as a pair. |
Username with ? / trailing slash / URL | User pasted a full URL or messy handle | Actor strips it cleanly — https://reddit.com/user/spez/, u/spez, spez all work. |
unblock auto-resolve failed | Bearer doesn't expose your own t2_ID | Fill user_action_my_account_id manually (you can fetch your own ID via about on your own username). |
| Empty friends list | You haven't friended anyone | One row pushed: {endpoint: "friends_list", friends: [], count: 0}. |
| Friend already added | Re-running friend_action: add on someone already friended | Reddit returns the existing relationship — success: true, no duplicate created. |
Why this actor is fast
- Speed — under 1 second per anonymous lookup, 2–4 seconds per auth-required call. Pure HTTP to Reddit's mobile API. No browser to boot, no Playwright / Selenium / Puppeteer overhead. Competing browser-based actors typically take 15–60 seconds per call.
- Reliability — zero browser flakiness. No headless-Chromium crashes. No JS-render timeouts. No captcha pages.
- Footprint — under 100 MB RAM per run. Most browser-based actors need 1–4 GB.
- Proxy management handled for you on anonymous endpoints. No proxy to configure for the 8 read-only endpoints — the backend rotates infrastructure 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, records pushed. | Open the dataset to view the result. | |
| "The Actor process failed…" | Validation error or missing required input. | 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 timeout (rare — lookups are fast). | Re-run; check Reddit / proxy is reachable. | |
| "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 and output record)
| Condition | Cause | Result |
|---|---|---|
| User not found | Username doesn't exist, is suspended, or is shadowbanned | Run SUCCEEDED, single row with error: "User not found". |
| Private profile | User has logged-out viewing disabled | Run SUCCEEDED, row with error_kind: FORBIDDEN. |
| Bearer expired / invalid | Token V2 past ~24 h, no vault session for auto-refresh | Run SUCCEEDED, row with error_kind: UNAUTHORIZED. |
| Validation error: missing endpoint / username / IDs | Required input not provided | Run FAILED immediately, no charge. |
| Reddit rate-limit | Per-IP throttle hit (very rare on shared infra) | Run SUCCEEDED, row with error_kind: RATELIMIT. |
Pricing
Pay-per-result. You're only charged for records actually pushed to the dataset — failed runs, validation errors, and credential errors that never reach Reddit cost nothing.
| Event | Trigger | Price (per 1,000) |
|---|---|---|
result | Each row pushed to the dataset (success or failure) | $0.99 |
A 25-post overview is 25 rows. A single follow / unfollow / block is 1 row. A lookup of 100 IDs is up to 100 rows.
Need a different shape of data?
- Reddit Vault — save Reddit accounts once, call them by name from this actor (free)
- Reddit Users V2 — focused profile + your-account + followers + follow/unfollow flow
- Reddit Subreddits — info, browse, join / leave, create
- Reddit Posts & Feeds V2 — home feed + post state controls
- Reddit Commenting V2 — post a top-level comment or reply
- Reddit Voting V2 — upvote / downvote / clear your vote
- Reddit Posting V2 — create text / link / image / gallery / video / GIF / crosspost / poll posts
- Reddit Bulk Scrape V2 — bulk lookups by ID (up to 1500 per run)
All of them accept the same accountName field, so saving credentials in Reddit Vault unlocks them all.
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 Users V1 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.


