HTTP 429 Rate Limit Response in Slack Web API
0 reputation · 24 Nov 2022, 10:27 UTC
When diagnosing a failed Slack Web API call from application logs, the goal is to decide how the client should react to an HTTP 429 response that includes a Retry-After header, while distinguishing it from logical failures that return HTTP 200 with {"ok":false}.
The constraint is that Slack’s documented rate‑limit response does not prescribe a single client strategy, leaving teams to choose between a blocking sleep equal to the header value or a proactive token‑bucket limiter, and the choice impacts thread utilization and burst handling.
Should the client implement a strict blocking sleep based on the Retry‑After value?
Is a client‑side token‑bucket limiter preferred over reactive header handling?
Can a hybrid approach that uses the header for occasional spikes and a limiter for steady traffic be justified?