Frequency of API requests

So, I’m accessing the top 100 streamers for each of the top 100 streamed categories - I’m just wondering what the limit is for how quickly I could be reasonably expected to access this information? The developer agreement says the following:

"
C. Rate Limits. You will not attempt to exceed or circumvent limitations on access to and use of the Program Materials, exceed or circumvent any limitations on the API calls you may make, or otherwise use the Program Materials in a manner that exceeds reasonable request volume, or constitutes excessive or abusive usage (“Rate Limits”). If Twitch, at its sole discretion, determines that you have attempted to exceed or circumvent Rate Limits, or other controls that limit use of the Program Materials, then your ability to use the Program Materials may be temporarily suspended or permanently blocked.
"

What do we thing “reasonable request volume is”?

Within the rate limit

Generally you would also not call the same “resource” more than once per minute

A resource being the endpoint and the params.

So if you are loading the top 100 categories (1 request), then don’t load “top games” again for another minute, since it won’t have changed due to server caching for example

1 Like

Cheers for the link - it states 30 requests per minute? I’ve been calling the “streams” endpoint roughly every 5 seconds, once for each of the games in the top 100.

This would suggest I’m not even close to the limit?

Sorry if I’ve misunderstood something - I’m relatively new to using APIs and such.

edit: missed words, it’s late here and I should go to bed

err, where? Theres no “30” on that page

The helix rate limit is 800 (refer to the Ratelimit-Limit header when you make a request)

If you call “Get Top games” once per minute

Then you can hammer out the 100 get stream requests as quick as you like as each request has a different game ID. So thats 100 different requests.

So then you don’t call the same game ID for another minute.

A “repeat request” is when the URL/params is the same.

So here you make 101 requests.

Wait a minute, then go again. Personally for something like this I’d probably fire every 5 minutes since theres unlikely to be significant changes one a per minute basis.

1 Like

Thanks for these speedy responses, really appreciated.

I followed the “Extension rate limits” link - Using the Twitch API in an Extension Front End | Twitch Developers

Perhaps that doesn’t apply to my situation.

Okay brilliant, I wouldn’t run this code more than a few times a day so, I shouldn’t need to put any time delay between stream calls… saves me some time. Thanks for clearing that up for me, appreciated.

Thats the guide for the limits when you are using the helixToken provide by extensions for use inside a Twitch Extension, not general API calls.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.