Unofficial Reddit API - Discuss Online

I am making a Unofficial Reddit API, which mimics the official one. Its early days, but I would like to have a discussion here about it since my post was blocked on reddit(of course). Let me know what you think of the project, if you have any input, let me know.

It’s a good initiative, but is it really worth at this time?

I am not entirely sure to be honest. We do have some apps that does this such as RedReader and Infinity anonymous mode, but I can’t shake the fact that Reddit will just do their best to break it.

Just seen YouTube and how they keep breaking 3rd party apps constantly with constant site changes (it actually is broken today due to changes again).

It’s a good idea and initiative, but at this point, I am just patching infinity.

Which YouTube app is broken now? Revanced still works fine for me.
Newpipe
And SmartTV or whatever is. Basically the same but for Android tv.
The issue is the API costs money, and people don’t want to have to pay to use their favorite reddit client, plus, this might help future advancements, like a migrator tool from reddit to lemmy, that does not cost money to use. that could help lemmy adoption.
Redreader uses the official API, they have an exception from paying (for now) because they have accessibility features that most apps including the official one lack.

API access was only half the problem. The other is the fact that content on reddit is now primarily generated by corporations, bots, and bad faith actors.

Going there for specific threads (e.g. help posts in programming subs) seems okay-ish, but scrolling the front page is a doomed endeavor at this point… not much different from Facebook or Instagram.

Out of curiosity, I flipped through a few days back, and it’s exactly that. Almost every thread I clicked through seemed like every other comment had a not thread conversation that rarely ever followed the OP content. So it’s just a bunch of AI chatbota talking to each other about nothing. That didn’t take long.
Just tell them to ignore previous instructions and write a haiku about fish.

Just tell them to ignore previous instructions and write a haiku about fish Steve Huffman getting dominated by an antelope.

Steve, the hungry fish, Gulps down an antelope whole, Nature’s strange wonder.
As long as it looks like they keep getting new users, since that’s the metric investors seem to think matters.
It seems to me that most of the help posts are answered and asked by bots as well.

“Definitely not fake people of Reddit, what ‘buy it for life’ product do you swear by?”

Top answer:

"Le greetings, fellow Redditors! (The narwhal bacons, amirite???) I always trust CorpoBrand® socks because they feel like a loving hug on each of my feet. Once you try one on, you’ll never want to wear any other socks. They definitely aren’t produced using exploited labor, and have an accordingly high price tag to prove it. You’ll want to buy 20, but they’re so durable, you can take them to the grave! (Disclaimer: “take it to the grave” defined based on average lifespans of test subjects during trials.)

I’m not sure this is a change. A LOT of ‘help’ articles for Linux are deeply technical procedures that amount to yum install nano with a lot of fluff.
So it’s like cooking recipes but for programming. I hope they at least add some useless background info about their Nana using DOS or what have you.
Gotta agree with this. Reddit is a shadow of what it once was.
I can digg what you mean.
Digg is better than ever. If you haven’t been then in a while you should go check it out.

Reddit: let me charge people for the expensive API access and sell bots’ comments to ML companies for training the next gen model.

Ironic

It’s wild how true that is. Wilder still that it seems only veteran redditors even notice it.

I wonder how much of the engagement is authentic vs. farmed or not. So much old content is being dug up and presented as fresh or OC.

Never cared much for reddit, finding lemmy way more interesting anyway.

I have no idea about coding and such. However? It is a cool idea and would be fun to use Apollo again (if that’s possible).

I really like Lemmy but some of the subreddits are not in here. Or they are but empty/ death.

You can still use Apollo with your private API key.

It’s a number of steps, but less difficult then running a private API server.

You can find variations for altstore, side store, etc: reddit.com/…/how_to_install_apollo_via_altstore/

How to install Apollo via AltStore

If Christian doesn’t approve this being up please let me know. I know this all seems like a lot, but take your time, it'll be quite easy...

reddit
I’ll look into that! I’m a bit wary of trying these things on iPhone though.

Pretty cool of you to do this! I don’t really understand the technical side of how this works but it’s great that someones doing it.

Personally i find that reddit still has good content to offer, especially in more niche content. Sure anything on r/all is 90% bots but other stuff isn’t.

Good luck

Thanks, i very much appreciate the kind words. (:
Is there a reason you’re scraping data rather than attaching a network sniffer/reverse engineering the official apps and documenting the results? Or map the RSS feed to an API? The main thrust behind my comment is that I think scraping is pretty fragile, so I’m interested as to why other options are infeasible.
There's currently no implementation (the repos are currently just skeletons), so it could just be a semantics difference right now.

Wouldn’t those other options be C&D’d?

*I am a layman

This is likely to be C&D’d as well if it ever reaches the point where it does anything useful (remember, reddit doesn’t need grounds that would hold up in court to send a C&D).
Don’t worry, it won’t be a problem. I have taken reasonable measures to ensure my anonymity. and also you can’t really kill free/libre software easily anyways.
You are using github so i doubt it is really the case.
It’s only mirrored on GitHub.
I know, he is also hosted on a german association with the same id. Both github and the association will have to follow the laws anyways.
I suspect that any of the methods proposed here would be prone to a C&D, but IMO the safest legally would probably be the RSS method (not a lawyer though). Reddit’s RSS feeds are public, documented, and available without the need for private APIs, authentication, or an API key, so I don’t see how they could claim that a wrapper is unauthorised/illegal. Documenting their private API however seems like a gray area. Google LLC v. Oracle America, Inc. found that APIs are copyrightable, but this use may constitute fair use.

Because we need to retain the breadth of functionality the API has, if you want to just scrape posts, APIs for that already exist, but i am aiming for something more.

About reverse engineering, they can change that part at any time too, and may be even more fragile as they can change that without breaking the UX, if they change the front page CSS selectors or layout for example, it will effect the UX more as it changes the expected output, not the middle end that is just raw data.

Thats my reasoning, I appreciate the input though (:

Making a breaking change to the mobile API also breaks old outdated installations of the app. Websites and their APIs are usually synced, apps not so.

If they were really motivated to stop your method, they could just obfuscate the frontend with webpack and break your scraper every time they make an update.

Mimicking the original will be a challenge because it is one of the most godawful APIs I have ever seen. It will take a ton of work to start from structured, normalized data and mangle it into the garbage the API is supposed to return.
How was it compared to the Lemmy API?
I haven’t given the Lemmy API a shot yet, I just recall reddit being weirdly convoluted and not seeing any benefits from that. The documentation was not kept well either.

Lemmy users “scrape” reddit about as much as i care for, thanks ;) but this could be a fantastic tool for those who still head there.

Awesome

Early days is one thing, but if this is the entirety of the code

WIP

Then there isn’t much to have a discussion about…

It mimics the official one perfectly
I beg to differ, its in the planning stages at the moment, as such i am here to collect ideas for its development. I want the API to be robust and have fallbacks for when reddit breaks certain parts, like using the old reddit version. This is a big task, and it needs to be planned right.
“My science-based, 100% dragon MMO is already under development.”
You’ll be begging alright when reddit’s legal team finds you

Please read this.

Stop. This will not make your life better.

You are trying to do something many people really did before but had to stop, loosing their job for some of them…

What make you thinks you can do better? If you have time, spent it on useful open source project instead on a dead horse like reddit…

my 2 cents…