Since today, around 18:14 UTC, Roblox api (specifically groups one - https://groups.roblox.com/ ) started throwing rate limits.
For me it starts after around 5 requests, but it’s pretty random (I’ve messaged @grilme99 to ask if he can reproduce this issue, and he was rate limitted on first try).
I’ve observed that limitation seems to be per IP. Sometimes a 200 code appears after 429, then another is again rate limitted.
Is this a new feature released to Roblox API? If so, that limit seems to be really low (is it documented anywhere? I don’t recall seeing any announcement regarding such change) and it would be extremely easier if headers letting us know about restrictions were shown (for example just like Discord does - Discord Developer Portal )
We are temporarily rate-limiting the Groups API to avoid the 500 Internal Server Errors seen in previous threads. We plan to remove this rate limit later this week once we have made some scaling improvements.
For now, we have loosened the rate limiting a little bit.
I would recommend wrapping your API calls in a way such that they can be retried after waiting a few seconds when you get a 429 error.
Would be cool if the API spit back the expected back-off time before the next request should be retried. It’s hard to design back-off mechanisms otherwise since the limits are not transparent.
Good thought. We will consider supporting Retry-After or a similar mechanism for exposing this sort of information. For now, a linear or exponential backoff should work for most scenarios.
For cases where these APIs are being accessed very frequently for large groups, this change has completely broken applications. In the future it would be awesome if we got a heads up before a change like this goes live because, like in @Etheroit’s case, it has broken his entire auto role system.
A Retry-After mechanism is absolutely essential for applications at scale which need to be as efficient as possible.