This is why apps like Boost, who never signed up for a subscription model are still functioning.
The Admin’s Reddit post from July 1st is as follows: (links edited in some areas as they didn’t transfer will to here)
Updated rate limits going into effect over the coming weeks
Hi Devs,
Over the last few months, we’ve shared updates on our Data API Terms and Developer Terms. Shortly, we will begin enforcing the previously announced updated API rate limits. Rate limits will go into effect for all apps with usage above the free limit in the coming weeks, and some changes will be noticeable over the next 24 hours.
As we have shared, this will not impact non-commercial bots operating within free rate limits or moderator tools.
Free API access rates are as follows:
- 100 queries per minute per OAuth client id if you are using OAuth authentication
- 10 queries per minute if you are not using OAuth authentication
The vast majority of third-party apps and bots fall into the free usage category and should not see any disruptions. Our free rates account for bursts in usage.
For apps that exceed these limits, we have exempted select clients (for example, accessibility-focused apps like RedReader, Luna, and Dystopia), mod bots, and mod tools. If your bot or tool is affected unexpectedly, please reach out https://reddithelp.com/hc/en-us/requests/new?ticket_form_id=14868593862164.
Can someone give me some perspective on the 100 API per minute versus 10 API per minute in terms of me - a dirty f’ing casual - trying to use reddit via a 3rd party app?
I get that API is when my 3PA is talking to the reddit server, but is that happening for, say, every post that loads up on my infinite scroll? Or every time I open a post to read comments?
In other words, would my usage need to be as slow as “don’t browse more than 10 posts per minute” to have stayed in the free lane?
My understanding is:
An app itself has a single OAuth client id. So rather than per user, it would seem to be per app.
This would kill third party apps used by a lot of users, but individually created tools that developers created using their own client IDs would be fine, so like if I spun up a bot on a user account and called into reddit, I’d be fine because I probably wouldn’t hit those limits. That’s what they mean by “The vast majority of third-party apps and bots fall into the free usage category and should not see any disruptions” - all these little individually run bots and such.
Bots good, third party apps that allow people to actually browse your website in any meaningful capacity bad, I guess?
Okay, this helps me a lot. In essence, as someone using a 3PA, I represent 1 API, so for wildly successful 3PAs like Apollo, we’re not talking 1000 API per minute, we’re talking like 500k API per minute.
This is interesting also as it pertains to what you said about bots. When I used reddit for knitting and crochet, there was a bot that a community member had created that would reference a website that we all got patterns from, and then would generate a comment with a direct link to that pattern’s page. In the lead up to the blackout, the bot’s maintainer (not creator) was still in the dark about whether that bot would be shut down or not because reddit provided very little clarity when asked specifically about that bot. That bot was probably called up just a few dozen times per hour, so I imagine it would have been allowed to continue operating, whereas bots for AutoMods in subs with millions of subscribers were probably pulling huge numbers of API.
Thanks for chipping in!
It depends on how it’s implemented and I’ve never used the reddit API, but I assume it’s just a single API call every time new posts are loaded. So it’ll load a batch of posts and then once you’ve scrolled down far enough it’ll make another call to load more. But basically everything you do in the app that interacts with reddit causes an API call, e.g. open a post/load comments, upvote, post or comment, view a profile or subscribe to a subreddit. Depending on how the API is designed, multiple calls may be needed.