Page MenuHomePhabricator

Client Developer gets informative error when going over rate limit
Open, HighPublic

Description

"As a Client Developer, if I go over my API rate limit, I want an informative error response that tells me why my request failed and what my rate limit is, so I can correct my program's behaviour."

We should return a 429 Too Many Requests status when a developer has gone over their limit, preferably with rate-limit headers.

Event Timeline

eprodromou triaged this task as High priority.Fri, Jun 19, 4:21 PM
eprodromou added subscribers: hnowlan, Pchelolo.

@hnowlan or @Pchelolo, can you confirm that there is an informative error response from Envoy's rate-limiting implementation? At a minimum we want a 429 status code, and really we need to have rate-limiting headers as in T246278.

With the Envoy rate limiter, hitting a rate limit will return a 429 and the header x-envoy-ratelimited will be set. Whether we want to pass a different header to clients is up to us.