# Reddit posts and comment trees without API approval

2026-08-08

> Posts, nested comments, subreddits, and users as JSON. No OAuth app. No approval queue.

- Index: https://fetcher.sh/blog.md
- This page (HTML): https://fetcher.sh/blog/reddit-posts-comment-trees-without-api-approval

![A 3D render of a chat-bubble app icon](https://images.unsplash.com/photo-1611224923853-80b023f02d71?auto=format&fit=crop&w=1600&q=80)

Photo by Alexander Shatov on [Unsplash](https://unsplash.com/?utm_source=fetcher_sh&utm_medium=referral).

The official Reddit Data API wants an OAuth app and, for anything serious, an approval process. That process exists because Reddit is tired of being treated as a free firehose. It is also slow if you only need public posts and a comment tree as JSON.

[reddit.fetcher.sh](https://reddit.fetcher.sh) returns public posts, comment trees, subreddits, and users without that. You do not register an app at Reddit.

This is not a Pushshift replica essay. [Using Reddit as a corpus](/blog/reddit-for-product-and-community-research) is the research job. Headlines live on [Google News](/blog/google-news-headlines-topics-language-editions). Nested comments are the distinctive shape; other networks’ threads are flatter.

## Posts, trees, subreddits

Search posts, subreddits, and users. Read hot, new, top, and best feeds. Fetch a post, its comment tree, and replies to a comment. Subreddit metadata and subreddit posts. User profiles, posts, and comments.

`curl -H 'Authorization: Bearer bby_live_…' 'https://reddit.fetcher.sh/api/search/post?keyword=ai+agents'`

Search can sort the way Reddit sorts: top, comments, new. Feeds on a subreddit (hot, new, top, best) are separate paths from a site-wide keyword search. Nested comments are why people come here. [Comment threads across networks](/blog/comment-threads-youtube-instagram-tiktok-reddit-x) treats Reddit as one of five hosts.

A title without the tree is a screenshot. Pull the tree before you trust the title. Sort by `comments` when the discussion is the product. Sort by `new` when you want the live argument. Sort by `top` when you want the consensus the subreddit already voted on.

## Official Data API vs this host

The official API is still the tool if you need OAuth identity, authenticated user context, or anything Reddit only gives approved apps. We return public posts and trees. We do not log you in. We do not vote. We do not moderate.

If you are building a client that acts as a user, apply. If you are reading public threads for research, news, or an agent, this host is the URL. Mixing those is how a homework assignment waits in an approval queue.

Pushshift nostalgia is a different essay. We are a priced GET against public Reddit objects, not an archive project.

## A case: reading a thread before you trust the screenshot

Someone drops a Reddit screenshot into Slack. The title is spicy. The comments, if you open them, are doing the actual work — caveats, a counterexample, a link.

You take the post id, fetch the tree, and read it as JSON so you can grep for the caveats instead of scrolling. You do not need OAuth for that. You do not need to be logged in. If the thread is gone, the envelope says so.

That is access. If you are doing this every morning for “habit tracker” across many subreddits, you have moved into the [research job](/blog/reddit-for-product-and-community-research).

## A case: a subreddit feed as a beat

A reporter covers a niche that lives in one subreddit. They pull hot and new on a schedule, store post ids, and only fetch trees on posts that match a keyword. They do not scrape old.reddit HTML. They do not apply for an app to *read*.

When a post is a screenshot of a tweet, they may hop to twitter.fetcher.sh for the tweet id in the comments. That is two hosts, same key, still public.

User pages exist when the person is the beat: profile, their posts, their comments. That is still public text. It is not an identity graph and it is not a way to deanonymize someone who used a throwaway. If the username is gone, the envelope says so. Do not then go shopping for a people-search vendor “to complete the record.”

Subreddit metadata is how you remember the rules and the subscriber count as they appeared in the catalog, not a moderator tool. You cannot ban users through this host. You cannot sticky a post. You can read.

A daily reader’s habit: hot and new on the one subreddit, trees only on posts that match a small keyword list, store ids. That is cheaper than “search the whole site for ai every five minutes.” Site-wide search is for a question. Feeds are for a beat. User pages are for a person you already identified. Pick one per cron.

Pushshift is still not this host. If you needed an academic dump of 2018, you are in archive land, not a priced GET.

## What Reddit’s own API still owns

The official API is still the tool if you need OAuth identity or anything Reddit only gives approved apps. We return public posts and trees. Docs: [reddit.fetcher.sh](https://reddit.fetcher.sh). Pay the GET, or send a key from [/topup](/topup). If you are building a client that votes, apply. If you are reading, fetch. Nested trees can be large; start with a single post id you care about before you search the whole site “for comments.” Search returns posts. Trees hang off posts. Two calls.
