Community trend research
Use Reddit endpoints to turn community trend research into repeatable API requests with documented inputs and JSON responses.
Turn public Reddit discussions into structured inputs for community research, brand monitoring, product intelligence, and AI-agent context.
Search public Reddit posts, inspect subreddit feeds, and fetch public post and comment data through documented Crawlora API endpoints.
Endpoint families
6
Documented params
62
Examples
12
Live catalog snapshot
Active endpoints
12
Methods
GET
Required params
23
Schema refs
12
{
"platform": "Reddit",
"endpoint": "reddit-search",
"method": "GET",
"path": "/reddit/search",
"auth": "apiKey"
}Related use cases
Free tools
Use cases
Search public Reddit posts, inspect subreddit feeds, and fetch public post and comment data through documented Crawlora API endpoints.
Use Reddit endpoints to turn community trend research into repeatable API requests with documented inputs and JSON responses.
Use Reddit endpoints to turn brand and product monitoring into repeatable API requests with documented inputs and JSON responses.
Use Reddit endpoints to turn public discussion analysis into repeatable API requests with documented inputs and JSON responses.
Managed execution
Every figure below is read from the live Reddit endpoint catalog — 12 endpoints, 62 documented request parameters, and 12 published response schemas — the same catalog Docs and Playground run against.
12 documented Reddit endpoints, grouped into 9 request families — Subreddit, User and Comments, plus 6 more.
62 request parameters are documented across those Reddit endpoints, 23 of them required — the full input contract is public before you write any integration code.
12 of the 12 Reddit endpoints ship a recorded example response, and 12 carry a documented response schema — you can code against the real JSON before the first request.
Reddit endpoints document their error responses (400, 404, 429 and 503) alongside the success schema, so a block, a rate limit, or a missing record comes back as a typed error rather than silently empty data.
12 hosted MCP tools back the Reddit endpoints, so an agent can call the same routes with the same parameters and the same JSON contract, with no custom glue.
Coverage map
These cards are generated from the active endpoint catalog, so the landing page reflects the same API surface used by Docs and Playground.
/reddit/subreddit/{subreddit}/posts
/reddit/user/{username}/comments
/reddit/comments/{id}
/reddit/domain/{domain}/posts
/reddit/leads
/reddit/post/{id}
Endpoint catalog
/reddit/searchSearches public Reddit content and returns normalized public post entries. A `503` with a `Retry-After` header means Reddit is temporarily throttling the request; wait that many seconds and retry.
Response notes
Example response: ```json {"code":200,"msg":"OK","data":{"query":"gpt","subreddit":"OpenAI","sort":"relevance","posts":[{"id":"1abcxyz","name":"t3_1abcxyz","subreddit":"OpenAI","title":"OpenAI discussion thread","url":"https://www.reddit.com/r/OpenAI/comments/1abcxyz/openai_discussion_thread/","author":{"name":"sample_user","profile_url":"https://www.reddit.com/user/sample_user/"},"created":"2024-04-19T00:00:00Z","selftext":"Discussion body","source_feed_url":"https://www.reddit.com/r/OpenAI/search?q=gpt&restrict_sr=on&sort=relevance"}],"pagination":{"limit":25,"after":"t3_1abcxyz"},"source":{"type":"feed","url":"https://www.reddit.com/r/OpenAI/search?q=gpt&restrict_sr=on&sort=relevance"}}} ```
MCP tool reddit_search
/reddit/subreddit/{subreddit}/postsReturns normalized public posts from a subreddit. A `503` with a `Retry-After` header means Reddit is temporarily throttling the request; wait that many seconds and retry.
Response notes
Example response: ```json {"code":200,"msg":"OK","data":{"subreddit":"OpenAI","sort":"hot","posts":[{"id":"1abcxyz","name":"t3_1abcxyz","subreddit":"OpenAI","title":"OpenAI discussion thread","url":"https://www.reddit.com/r/OpenAI/comments/1abcxyz/openai_discussion_thread/","author":{"name":"sample_user","profile_url":"https://www.reddit.com/user/sample_user/"},"created":"2024-04-19T00:00:00Z","selftext":"Discussion body","source_feed_url":"https://www.reddit.com/r/OpenAI?limit=25"}],"pagination":{"limit":25,"after":"t3_1abcxyz"},"source":{"type":"feed","url":"https://www.reddit.com/r/OpenAI?limit=25"}}} ```
MCP tool reddit_subreddit_posts
/reddit/post/{id}Returns a normalized public Reddit post. The default 1-credit mode uses RSS. Set `include_metrics=true` to use the anonymous HTML post page as the sole content request and return public net score, upvote ratio, comment count, award count, and estimated upvote/downvote totals for 3 credits. Reddit fuzzes voting data, so estimates are approximate; share, repost/crosspost, and view counts are not exposed anonymously.
Response notes
Example response: ```json {"code":200,"msg":"OK","data":{"post":{"id":"1v8hy3q","name":"t3_1v8hy3q","subreddit":"AmIOverreacting","title":"Book club discussion","url":"https://www.reddit.com/r/AmIOverreacting/comments/1v8hy3q/","score":7130,"upvote_ratio":0.9376,"estimated_upvotes":7630,"estimated_downvotes":500,"vote_counts_estimated":true,"comment_count":1031,"award_count":0},"source":{"type":"html","url":"https://www.reddit.com/comments/1v8hy3q/"},"metrics_source":{"type":"html","url":"https://www.reddit.com/comments/1v8hy3q/"}}} ```
MCP tool reddit_post
/reddit/comments/{id}Returns a Reddit post with its public comments. The default 1-credit mode uses RSS. Set `include_metrics=true` to use the anonymous HTML post page as the sole content request and return the server-rendered comments with public net score and award count plus post engagement metrics for 3 credits. Large threads may expose only an initial comment subset in anonymous HTML. Reddit does not expose per-comment upvote ratios or exact upvote/downvote totals anonymously. A post that exists but has no comments yet returns a 200 response with an empty comments list; a post that does not exist returns 404, and a temporary block or upstream failure returns 503 (retryable) rather than 404.
Response notes
Example response: ```json {"code":200,"msg":"OK","data":{"post":{"id":"1tka90t","name":"t3_1tka90t","score":78,"upvote_ratio":1,"comment_count":15},"comments":[{"id":"on8jv87","name":"t1_on8jv87","parent_id":"t3_1tka90t","body":"well done! I am working on reversing Turnstile as well.","score":7,"award_count":0}],"source":{"type":"html","url":"https://www.reddit.com/comments/1tka90t/"},"metrics_source":{"type":"html","url":"https://www.reddit.com/comments/1tka90t/"}}} ```
MCP tool reddit_comments
/reddit/domain/{domain}/postsReturns normalized public posts submitted from a linked domain. A `503` with a `Retry-After` header means Reddit is temporarily throttling the request; wait that many seconds and retry.
Response notes
Example response: ```json {"code":200,"msg":"OK","data":{"domain":"openai.com","sort":"hot","posts":[{"id":"1abcxyz","name":"t3_1abcxyz","subreddit":"OpenAI","title":"OpenAI discussion thread","url":"https://www.reddit.com/r/OpenAI/comments/1abcxyz/openai_discussion_thread/","author":{"name":"sample_user","profile_url":"https://www.reddit.com/user/sample_user/"},"created":"2024-04-19T00:00:00Z","selftext":"Discussion body","source_feed_url":"https://www.reddit.com/domain/openai.com?limit=25"}],"pagination":{"limit":25,"after":"t3_1abcxyz"},"source":{"type":"feed","url":"https://www.reddit.com/domain/openai.com?limit=25"}}} ```
MCP tool reddit_domain_posts
/reddit/leadsScans a Reddit search page for people actively asking for a product or service, scores each post 0-10 for buying intent, and returns them ranked highest-first with the signals that fired. Self-promotion, hiring posts, freelancer service adverts, revenue-milestone posts, duplicate reposts, and Title Case article headlines are filtered out before scoring. A deterministic prefilter always runs; when `classifier` resolves to `llm` the surviving candidates are additionally refined in one batched model call. A `503` with a `Retry-After` header means Reddit is temporarily throttling the request; wait that many seconds and retry.
Response notes
Provider configuration: the model pass resolves its base URL from `REDDIT_LEADS_LLM_BASE`, then the shared `OPENAI_API_BASE`, `OPENAI_BASE_URL`, or `OPENAI_API_BASE_URL`, then `https://api.openai.com/v1`. It also reads `REDDIT_LEADS_LLM_MODEL` (defaults to `gpt-5.4`) and `REDDIT_LEADS_LLM_KEY` (falls back to `OPENAI_API_KEY`). Set `REDDIT_LEADS_LLM_BASE` to route this endpoint to a different provider than the rest of the deployment. Example response: ```json {"code":200,"msg":"OK","data":{"query":"crm for small teams","subreddit":"smallbusiness","classifier":"llm","model":"gpt-5.4","min_score":4,"leads":[{"score":9,"signals":[{"id":"explicit-ask","label":"asking for a tool"},{"id":"budget","label":"budget or paying"}],"reason":"states a budget and asks for options","title":"Looking for a CRM for a 3-person team, budget ~$50/mo","subreddit":"smallbusiness","author":"someuser","permalink":"https://www.reddit.com/r/smallbusiness/comments/1abcxyz/","comment_count":12,"post_score":20,"created":"2026-08-01T00:00:00Z"}],"stats":{"scanned":100,"prefiltered":88,"classified":12,"returned":9}}} ```
MCP tool reddit_leads
/reddit/subreddit/{subreddit}/aboutReturns public metadata and sample posts for a subreddit. Subscriber counts, icons, and banners are omitted because they are not available on anonymous Reddit pages. A `503` with a `Retry-After` header means Reddit is temporarily throttling the request; wait that many seconds and retry.
Response notes
Example response: ```json {"code":200,"msg":"OK","data":{"subreddit":"OpenAI","display_name":"r/OpenAI","title":"OpenAI","public_url":"https://www.reddit.com/r/OpenAI/","feed_url":"https://www.reddit.com/r/OpenAI?limit=5","recent_post_count":5,"latest_post_created":"2024-04-19T00:00:00Z","latest_post_created_utc":1713484800,"sample_posts":[{"id":"1abcxyz","name":"t3_1abcxyz","subreddit":"OpenAI","title":"OpenAI discussion thread","url":"https://www.reddit.com/r/OpenAI/comments/1abcxyz/openai_discussion_thread/","author":{"name":"sample_user","profile_url":"https://www.reddit.com/user/sample_user/"},"created":"2024-04-19T00:00:00Z","selftext":"Discussion body","source_feed_url":"https://www.reddit.com/r/OpenAI?limit=5"}],"source":{"type":"feed","url":"https://www.reddit.com/r/OpenAI?limit=5"}}} ```
MCP tool reddit_subreddit_about
/reddit/subreddit/{subreddit}/commentsReturns flat public comment entries from a subreddit latest-comments feed. A `503` with a `Retry-After` header means Reddit is temporarily throttling the request; wait that many seconds and retry.
Response notes
Example response: ```json {"code":200,"msg":"OK","data":{"subreddit":"OpenAI","comments":[{"id":"kabc123","name":"t1_kabc123","parent_id":"t3_1abcxyz","author":{"name":"commenter_one","profile_url":"https://www.reddit.com/user/commenter_one/"},"body":"I agree with this post.","permalink":"https://www.reddit.com/r/OpenAI/comments/1abcxyz/openai_discussion_thread/kabc123/","created":"2024-04-19T00:05:00Z"}],"pagination":{"limit":25,"after":"t1_kabc123"},"source":{"type":"feed","url":"https://www.reddit.com/r/OpenAI/comments/?limit=25"}}} ```
MCP tool reddit_subreddit_comments
/reddit/subreddits/postsReturns normalized public posts from a combined multi-subreddit feed. A `503` with a `Retry-After` header means Reddit is temporarily throttling the request; wait that many seconds and retry.
Response notes
Example response: ```json {"code":200,"msg":"OK","data":{"subreddits":["OpenAI","MachineLearning"],"sort":"hot","posts":[{"id":"1abcxyz","name":"t3_1abcxyz","subreddit":"OpenAI","title":"OpenAI discussion thread","url":"https://www.reddit.com/r/OpenAI/comments/1abcxyz/openai_discussion_thread/","author":{"name":"sample_user","profile_url":"https://www.reddit.com/user/sample_user/"},"created":"2024-04-19T00:00:00Z","selftext":"Discussion body","source_feed_url":"https://www.reddit.com/r/OpenAI+MachineLearning/?limit=25"}],"pagination":{"limit":25,"after":"t3_1abcxyz"},"source":{"type":"feed","url":"https://www.reddit.com/r/OpenAI+MachineLearning/?limit=25"}}} ```
MCP tool reddit_subreddits_posts
/reddit/trendsReturns normalized public posts from broad Reddit hot, new, rising, or top feeds. For subreddit-specific trends, use `/reddit/subreddit/{subreddit}/posts` with `sort=hot`, `sort=new`, `sort=rising`, or `sort=top`. A `503` with a `Retry-After` header means Reddit is temporarily throttling the request; wait that many seconds and retry.
Response notes
Example response: ```json {"code":200,"msg":"OK","data":{"sort":"hot","posts":[{"id":"1abcxyz","name":"t3_1abcxyz","subreddit":"OpenAI","title":"OpenAI discussion thread","url":"https://www.reddit.com/r/OpenAI/comments/1abcxyz/openai_discussion_thread/","author":{"name":"sample_user","profile_url":"https://www.reddit.com/user/sample_user/"},"created":"2024-04-19T00:00:00Z","selftext":"Discussion body","source_feed_url":"https://www.reddit.com/?limit=25"}],"pagination":{"limit":25,"after":"t3_1abcxyz"},"source":{"type":"feed","url":"https://www.reddit.com/?limit=25"}}} ```
MCP tool reddit_trends
/reddit/user/{username}/commentsReturns flat public comment entries from a public Reddit user's comments feed. A `503` with a `Retry-After` header means Reddit is temporarily throttling the request; wait that many seconds and retry.
Response notes
Example response: ```json {"code":200,"msg":"OK","data":{"username":"reddit","comments":[{"id":"kabc123","name":"t1_kabc123","parent_id":"t3_1abcxyz","author":{"name":"reddit","profile_url":"https://www.reddit.com/user/reddit/"},"body":"Sample public comment.","permalink":"https://www.reddit.com/r/announcements/comments/1abcxyz/reddit_announcement/kabc123/","created":"2024-04-19T00:05:00Z"}],"pagination":{"limit":25,"after":"t1_kabc123"},"source":{"type":"feed","url":"https://www.reddit.com/user/reddit/comments?limit=25"}}} ```
MCP tool reddit_user_comments
/reddit/user/{username}/postsReturns normalized public posts from a public Reddit user's submitted feed. A `503` with a `Retry-After` header means Reddit is temporarily throttling the request; wait that many seconds and retry.
Response notes
Example response: ```json {"code":200,"msg":"OK","data":{"username":"reddit","posts":[{"id":"1abcxyz","name":"t3_1abcxyz","subreddit":"announcements","title":"Reddit announcement","url":"https://www.reddit.com/r/announcements/comments/1abcxyz/reddit_announcement/","author":{"name":"reddit","profile_url":"https://www.reddit.com/user/reddit/"},"created":"2024-04-19T00:00:00Z","selftext":"Announcement body","source_feed_url":"https://www.reddit.com/user/reddit/submitted?limit=25"}],"pagination":{"limit":25,"after":"t3_1abcxyz"},"source":{"type":"feed","url":"https://www.reddit.com/user/reddit/submitted?limit=25"}}} ```
MCP tool reddit_user_posts
Related APIs
Social & Creator Platforms
Build creator intelligence, video research, transcript, and audience-comment workflows without maintaining YouTube scrapers.
Social & Creator Platforms
Turn Twitch's public channel, stream, clip, and team data into structured JSON — live status and viewer counts, top games, clips, VODs, and team rosters — as normalized JSON. Credential-free.
Social & Creator Platforms
Track creator, content, hashtag, music, trend, and public ad creative signals from TikTok with production-ready API routes.
Company coverage
Reddit, Inc. · RDDT
Reddit is operated by Reddit, Inc. (RDDT). Crawlora's SEC endpoints take the same company's CIK, so filings, financials, insider transactions and 13F holdings come from the same API key as the Reddit endpoints above.
SEC filings & financials API →How to scrape Reddit
Reddit throws a bot-verification wall at naive scrapers. Crawlora's Reddit endpoints return public subreddit, post, comment, and search data as structured JSON.
A subreddit feed, a single post, a post's comment tree, or a keyword search across Reddit.
Pass the subreddit, post URL, or query to Crawlora's Reddit endpoint — no OAuth app to register.
Receive post title, score, author, flair, and comment threads, plus subreddit about data, as clean JSON.
Re-run on a schedule to track brand mentions, sentiment, and trending discussions.
FAQ
Send a subreddit, post URL, or search query to Crawlora's Reddit endpoint and get structured JSON — titles, scores, authors, comment threads, subreddit metadata — without registering an OAuth app or hitting rate caps. Collect public data and respect Reddit's terms.
Reddit shows a bot-verification wall to unauthenticated requests. Crawlora's managed execution returns public posts and comments instead of the challenge, without accessing private subreddits or any logged-in data.
Collecting publicly accessible posts and comments is generally permissible if you respect Reddit's terms of use, robots directives, rate limits, and applicable law. This is for public data you're authorized to collect.
Reddit's commercial API costs $0.24 per 1,000 calls with a $12,000/year minimum commitment, and free-tier self-serve registration is closed — new OAuth apps need manual approval that can take 2-4 weeks. Crawlora returns the same public posts, comments, and subreddit data with one API key and no approval wait.