After a client exceeds a request rate limit and gets 429 , even after waiting 1 minute (enough for the rate limit to reset) the status code of the next one or two requests can still be 429 .
Explanation: This odd behavior originates from GCP built-in functionality and it’s out of our reach at the moment since it would require making major changes to our current architecture.
Workaround: After waiting 1 minute, if the client still gets 429 , wait 1 second before trying again, and wait 1 more second if still getting 429 . After that requests should continue to be allowed while not exceeding the rate limit again.
Recommendation: Check the “Request rate” section under “Limits” in the API documentation and implement the client in a way it never exceeds the limits.
Otherwise implement handling the 429 status responses taking into account this bug.