6

I'm not sure on the ins and outs of hosting/running a 3rd part reddit app, but since reddit is claiming these API charges are only for apps that pull in big numbers, couldn't the app creators just make a bunch of versions of the app with a limit to how many users can access it?

I'm not sure what reddit's threshold is for when they start charging for API usage, but do any of you see this happening? Would it be possible for the 3rd party creators to release personal instances of their apps that are technically separate entities that could stay in the free APL limit?

Again, I have no idea on how 3rd party apps are run or how they access the API. I was just curious if there was a way to keep an app under the limit.

you are viewing a single comment's thread
view the rest of the comments
[-] Da_Boom@iusearchlinux.fyi 2 points 1 year ago

OK so the way the API is structured, a single user makes upwards of 100+ API calls a day - there's a single call to do everything - even things that would make more sense being grouped together into a single call.

The API was poorly optimized from the start, and as a result apps had no choice to basically spam calls in order to get the job done. Certain calls are also made over and over - like checking your inbox for new messages, refreshing, loading more comments and so many more - the more often you do it, the faster you get your inbox in, and the more responsive the app feels. if you don't do it often enough,, the app will feel like its clunky, chugging and taking forever to load. Some calls are pre-made when there's a high likelihood of clicking something for faster load time when it is clicked - now this could probably be stopped..

Now some apps also host their own data servers in order to provide more efficient running as well - this server does a number of different things, but one of the things it can do is create a second API for efficiencies' sake- essentially the server makes numerous reddit API calls, so that the app only has to make one. Its also a good way to help stagger calls to get past rate-limiting, which is where the server essentially tells you off for making too many requests to the API too quickly, and stops responding to you for a small amount of time. Another thing it can do is cache data - if its a generic (doesn't require authentication) call to a resource that went viral, it can cache that data so that people can get it without making additional calls - now this doesn't work for things like comments and vote counts.. but post titles and links? you bet that's a great thing to do. The problem: these servers cost money - not any where near as much as what they're asking for with the API changes, which is why most devs only asked for a small one off payment for server costs, which is way less than a large monthly payment.

Once you take all the requests that flow directly from the app and server, and multiply them by your user-base.. you've got a problem on your hands when it comes to the new API pricing - while it is certainly possible to charge a monthly payment (perhaps about $15 a month).. they need more than thirty days to set this app - most app stores don't allow pricing changes and subscription requirements to be set up instantly - they usually have some form of contract that will need to end so a renegotiation can take place. This means some apps might even need an entire year before they can even try to set this up.

The only other option is in the API keys. These monolithic apps use one single API key in order to make requests - the Key securely identifies who is making the request - similar to how stream keys work on streaming sites like Twitch and YouTube. You get the key, you can make a request. To get a key, you need to register with reddit as a developer, and they generate your key and give it to you. I can imagine there's a few hoops to jump through for it. (like verification - twitter had a "why do you need this" questionnaire before they started charging for their API Keys) Its impractical for a Developer to make however many thousand of fake emails and identities in order to get enough keys on the volume needed to keep app like Apollo or RIF free. The only other option would be to ask all their users to register as a developer and get their own keys, and provide a mechanism for the installation of said keys. While this is possible. its impractical and/or impossible for the people who don't understand how this works, and the hoops they may have to jump through to do this - many would likely get frustrated and give up, either going elsewhere, or worse: using the official ~~dumpster fire~~ app.

Also i wouldn't be surprised if reddit tried to close the API key loophole if too many third party apps went that direction, especially if the app's user-base decided to jump on board with it - financially it would be just as bad as having a third party app with a single API key, and they're hemorrhaging money like its going outta style right now, enough that they probably are trying to find ways to downscale, and removing the traffic from third party apps seems like a pretty understandable way to enable down-scaling - processing, data storage and bandwidth costs money after all, and on the huge user-base reddit has, its gotta be costing an arm, a leg and a kidney, probably more. - It doesn't excuse them for being this shitty, but i do understand where they're coming from, most of these large scale corporate social media sites aren't profitable or sustainable anyway, and with the economy going the way it is, the venture capitalists keeping things afloat must be tightening their purse strings, the time is running out and they're starting to want returns on their investments - free money is free no longer, and as a result the corporations get greedy, its almost like the only thing that is actually trickle down in a trickle down economy is greed.

this post was submitted on 18 Jun 2023
6 points (100.0% liked)

No Stupid Questions

35764 readers
306 users here now

No such thing. Ask away!

!nostupidquestions is a community dedicated to being helpful and answering each others' questions on various topics.

The rules for posting and commenting, besides the rules defined here for lemmy.world, are as follows:

Rules (interactive)


Rule 1- All posts must be legitimate questions. All post titles must include a question.

All posts must be legitimate questions, and all post titles must include a question. Questions that are joke or trolling questions, memes, song lyrics as title, etc. are not allowed here. See Rule 6 for all exceptions.



Rule 2- Your question subject cannot be illegal or NSFW material.

Your question subject cannot be illegal or NSFW material. You will be warned first, banned second.



Rule 3- Do not seek mental, medical and professional help here.

Do not seek mental, medical and professional help here. Breaking this rule will not get you or your post removed, but it will put you at risk, and possibly in danger.



Rule 4- No self promotion or upvote-farming of any kind.

That's it.



Rule 5- No baiting or sealioning or promoting an agenda.

Questions which, instead of being of an innocuous nature, are specifically intended (based on reports and in the opinion of our crack moderation team) to bait users into ideological wars on charged political topics will be removed and the authors warned - or banned - depending on severity.



Rule 6- Regarding META posts and joke questions.

Provided it is about the community itself, you may post non-question posts using the [META] tag on your post title.

On fridays, you are allowed to post meme and troll questions, on the condition that it's in text format only, and conforms with our other rules. These posts MUST include the [NSQ Friday] tag in their title.

If you post a serious question on friday and are looking only for legitimate answers, then please include the [Serious] tag on your post. Irrelevant replies will then be removed by moderators.



Rule 7- You can't intentionally annoy, mock, or harass other members.

If you intentionally annoy, mock, harass, or discriminate against any individual member, you will be removed.

Likewise, if you are a member, sympathiser or a resemblant of a movement that is known to largely hate, mock, discriminate against, and/or want to take lives of a group of people, and you were provably vocal about your hate, then you will be banned on sight.



Rule 8- All comments should try to stay relevant to their parent content.



Rule 9- Reposts from other platforms are not allowed.

Let everyone have their own content.



Rule 10- Majority of bots aren't allowed to participate here.



Credits

Our breathtaking icon was bestowed upon us by @Cevilia!

The greatest banner of all time: by @TheOneWithTheHair!

founded 1 year ago
MODERATORS