Is there some undocumented limit on the total number of requests over a very long amount of time other than the 800 requests/min limit?
Making requests with a delay of about 100ms kept the “ratelimit-remaining” header at 799 pretty much the whole time while I was testing, so surely this means that it’s fine?
No, although some endpoints such as Create Clip have their own individual rate limit that’s separate from the 800/min
The ratelimit bucket refills at a consistent rate, so 800 requests per 60 seconds means it’s roughly refilling your ratelimit bucket 1 every 75ms. Make requests faster than every 75ms and the 799 will progressively go down, make requests slower than every 75ms and it’ll refill back to ~800.
One thing to keep in mind though is that the API does use caching, so while making requests every 100ms is fine in terms of rate limit, if it’s every 100ms for the exact same data (for example, checking if a streamer is live) then you’ll be getting the same cached data back (and in some cases erroneous data from hitting different cache servers that may be in different states), so it’s not recommended to request the same data more than once per minute. But other than that if you’re within your rate limit then all should be fine.