01 · Reddit API for agents

Every reply in a Reddit thread, in one call.

Reddit hides most of a long thread behind "load more" links. threadapi follows every one and returns the whole tree as JSON or Markdown your model can read.

No card. Credits never expire.

Request REST · MCP
$ curl api.threadapi.dev/v1/reddit/post?url=…&format=md
Expand threadapi

1,204 comments, 9 levels deep

38 "load more" links followed · 9 credits

Return text/markdown
# What's your backup strategy for a home server?
r/selfhosted · 1,204 comments
- **u/restic_fan** (512): Restic to B2, nightly…
  - **u/quietbuilder** [OP] (88): Stealing that.

All the replies

We open every “load more comments”, 100 comments a request, and put each reply back under its parent.

Text a model can read

Markdown that keeps nesting, scores and who the poster is, with a digest of the comments worth reading first. Or JSON with every field.

Hear about new mentions

Every new post and comment on Reddit, checked against your keywords and sent to your webhook, Slack or Discord.

Plug into your agent

One MCP URL for Claude, Cursor, VS Code and Codex. They open a sign-in page the first time, so there's no key to paste.

Try it

Paste a thread. See what comes back.

This runs the real API on the first 60 comments, no account needed. The comments the digest picks out are highlighted.
Examples:
r/programming · u/fagnerbrack · 88 points

How big is a Git commit?

Looking at git commit history across 40k repos. What's the average object size and commit depth in modern monorepos?

u/Bpofficialtop▲ 157

At least 3

u/shiny0metal0ass▲ 13

A commit of three gits.

u/fagnerbrackOP▲ 24

Specifically measuring the sha1 tree representation vs uncompressed blob references.

u/git_wizardtop▲ 42

Commit objects themselves are very small (usually ~200-500 bytes), just author, committer, gpg sig, tree sha, parent shas and message.

u/hot_take_dancontroversial▲ -4

SVN was simpler and never had this question.

29 of 29 comments312 msFrom cache (L2_FILE)1 credit with an API key
How a thread is read

Reddit shows a page. You get the whole tree.

A busy thread loads a few hundred comments and collapses the rest. We open each collapsed branch, keep the order and depth, and cache the result so the next read is instant.

reddit.com

What Reddit serves

post · 2,435 comments
u/restic_fan 512
u/quietbuilder · OP 88
14 more replies
u/zfs_or_bust 301
continue this thread
1,612 more comments

threadapi

Our side

  • Guest sessions swapped before the limit
  • Load more 100 comments a request
  • Cache same thread, < 1 ms
  • Refused? retried, never billed

your agent

JSON every field, nested
Markdown one document
Digest OP replies, top, controversial

0.3–0.6 s

a post and its first page, not cached

5.9 s

800 comments of a 2,435-comment thread

< 1 ms

the same thread again, from cache

Timed on 9 October 2026 from a server in California, through the same egress production uses.

Keyword monitors

Hear about a mention seconds after it's posted.

A monitor reads every new post and comment on Reddit and sends the ones with your keywords to a webhook, Slack or Discord. Or leave the webhook out and poll for matches.
Posted to matched
~11 s median
Matched to your webhook
~1.5 s median
Signed deliveries
HMAC-SHA256
Retries
30 s to 2 h, 5 tries
Cost
10 credits / monitor / day

Medians from a 6-hour test in October 2026.

Webhook · "self-hosted backup" Delivered
post Best self-hosted backup for a small office? r/sysadmin · delivered
comment We moved our self-hosted backup to restic last year… r/homelab · delivered
comment Any self-hosted backup that handles Postgres well? r/selfhosted · delivered
MCP and REST

Give your agent Reddit in one line.

Add the MCP server to Claude, Cursor, VS Code or Codex. Your client opens a sign-in page the first time, so there's no key to paste. Code that calls the REST API uses a key from the dashboard.

Tools billed like the REST routes they call

  • get_reddit_post A post, its comment tree and the digest.
  • get_reddit_posts_batch Up to 100 posts by ID or URL in one call.
  • list_subreddit_posts Hot, new, top, rising or controversial posts.
  • get_subreddit Description, subscribers and rules.
  • get_reddit_user Profile and karma, with posts or comments.
  • search_reddit Posts, comments, subreddits or users matching a query.
  • create_monitor Creates a new keyword monitor on public Reddit.
  • get_monitor_matches The latest matches of a keyword monitor.
Claude Code in Terminal
claude mcp add --transport http threadapi https://api.threadapi.dev/mcp

# Then ask:
# "Read the top posts in r/selfhosted this week and
#  tell me which backup tools people trust."
Pricing

Credit packs. No subscription.

Packs add to one balance and never expire. New accounts start with 100 credits, no card needed.

2,000 credits

$9

Try it on a project or run a monitor.

  • Per 1,000 credits $4.50
  • Up to 5 keyword monitors
  • 300 requests per minute
  • All REST endpoints & MCP tools
  • Credits never expire
Buy 2,000 credits

10,000 credits Most popular

$29

For daily research, monitoring, and agents in production.

  • Per 1,000 credits $2.90
  • Up to 20 keyword monitors
  • 600 requests per minute
  • All REST endpoints & MCP tools
  • Credits never expire
Buy 10,000 credits

50,000 credits

$79

Best rate for high-volume pipelines and automated agents.

  • Per 1,000 credits $1.58
  • Up to 50 keyword monitors
  • 1,000 requests per minute
  • All REST endpoints & MCP tools
  • Credits never expire
Buy 50,000 credits

What a request costs

A post with up to 500 comments 1
Each further 100 comments +1
A listing, search or lookup, up to 100 items 1
A running monitor, per day (up to 20 keywords) 10
A failed request 0

Requests ask for 200 comments unless you set max_comments, so most cost 1 credit. Free keys make up to 100 requests a day until a first pack.

More than 50,000 a month?

Volume pricing, custom rate limits, and invoice billing available.

Talk to us
FAQ

Questions

Something else? Write to us . A person reads every message.

Where does the data come from?

From Reddit's public pages, read the way a logged-out browser reads them. threadapi doesn't use anyone's Reddit account, and it can't see private, quarantined or age-gated content. Those requests return an error and cost nothing. How you use what you fetch has to follow the laws and terms that apply to you.

Why not use Reddit's own API?

Reddit's Data API needs a registered app and OAuth, caps each app's request rate, and needs a separate agreement for commercial use. You'd also write the paging for hidden comments yourself. threadapi needs one key.

How fresh is a thread?

A thread under six hours old is never more than five minutes stale. One under two days old is refreshed at most hourly, and older threads, which rarely change, are kept for up to a week.

What exactly does a credit buy?

One Reddit page. A post request returns up to 500 comments on its first page for 1 credit, and each further page of up to 100 comments costs 1 more. You're charged for the comments you get back, not for the requests we make, so our retries are never on your bill. Listings and searches are 1 credit for up to 100 posts.

What if my balance runs out halfway through a big thread?

You get the comments your balance covers, the response says limited_by_balance, and the balance never goes below zero. Top up and ask again: the comments already fetched come from our cache, so the second request is quick.

Do failed requests cost anything?

No. A deleted post, a private subreddit, a rate limit or a problem on our side costs nothing. Every successful response says what it cost in the X-Credits-Used header.

Can I get a refund?

Yes, within 14 days of buying a pack if none of its credits were used. Email hello@threadapi.dev.

Start reading

Read your first thread in a minute.

100 free credits. Sign in with Google, GitHub or an email code.