Get a subreddit's posts by name or URL. Sort by hot, new, top, rising or controversial, with a time window (past hour to all time) for top and controversial, and optionally only posts with one flair. Returns title, text, author, date, score, upvote ratio, comment count, flair, shared link, video and gallery links and NSFW flags for each post, 25 per page, up to about 1,000 posts. Works for NSFW subreddits.
curl "https://apidirect.io/v1/reddit/subreddit/posts?subreddit=AskReddit&sort_by=top&posted_ago=7d&pages=2" \
-H "X-API-Key: YOUR_API_KEY"
{
"posts": [
{
"post_id": "1x3uinu",
"title": "What previously glorified careers are struggling now?",
"url": "https://www.reddit.com/r/AskReddit/comments/1x3uinu/what_previously_glorified_careers_are_struggling/",
"date": "2026-10-12 06:28:49",
"author": "JAMIEISSLEEPWOKEN",
"author_url": "https://www.reddit.com/user/JAMIEISSLEEPWOKEN",
"source": "Reddit",
"domain": "reddit.com",
"snippet": "What previously glorified careers are struggling now?",
"subreddit": "AskReddit",
"upvotes": 10146,
"upvote_ratio": 0.96,
"comments": 5366,
"crossposts": 6,
"flair": "",
"link_url": "",
"thumbnail": "",
"is_video": false,
"nsfw": false,
"spoiler": false,
"locked": false,
"stickied": false,
"video_url": "",
"video_hls_url": "",
"images": [],
"sentiment": {
"emotions": {
"joy": 40,
"trust": 55,
"fear": 0,
"surprise": 10,
"sadness": 0,
"disgust": 0,
"anger": 0,
"anticipation": 30
},
"dominant_emotion": "trust",
"emotional_intensity": 5,
"polarity": "positive"
}
}
],
"subreddit": "AskReddit",
"sort_by": "top",
"pages": 2,
"count": 50
}
Reddit lists up to about 1,000 posts per sort, so 40 pages of 25 is the deepest. Very long text posts can end a request earlier (responses are capped at about 3.5MB); you're billed only for the pages returned.
Use sort_by=top&posted_ago=7d, or posted_ago=all for all time. Without posted_ago, top and controversial cover the past 24 hours, Reddit's own default.
Add flair, e.g. flair=Hiring on r/forhire. The match is exact (Hiring doesn't match Hiring - Open) but not case-sensitive. Flair-filtered requests are slower: a few seconds per page, up to about 20 seconds for a rarely used flair.
Yes. Private and banned subreddits return 404 not_found.
You only pay for successful requests. The Reddit Subreddit Posts API costs $0.003 per page. There are no monthly fees or commitments. You get 50 free requests per endpoint every month.
No. You can sign up and use the free tier (50 requests/endpoint/month) without adding a payment method. You only need to add a card when you want to exceed the free tier.
Yes, there's a concurrency limit of 10 simultaneous requests per endpoint per user. If you need more, just get in touch.
Get your API key and start making requests in minutes. 50 requests/month free every month.
Get API Key