ChatGPT-in-Slack icon indicating copy to clipboard operation
ChatGPT-in-Slack copied to clipboard

Implement Rate Limit Handling for Slack's New API Limits

Open PeterDaveHello opened this issue 4 months ago • 3 comments

With the new rate limit policies from Slack's May 2025 update (https://api.slack.com/changelog/2025-05-terms-rate-limit-update-and-faq), deployments of this application are susceptible to hitting API rate limits, resulting in HTTP 429 (Too Many Requests) errors.

Since Slack does not provide a way to adjust rate limit tiers, we may need to implement internal controls to ensure the app remains reliable and stable.

Problem

  • The app's usage pattern can easily trigger Slack's API rate limits.
  • This leads to service disruptions and a poor user experience.

Proposed Solutions

  1. Request Throttling:

    • Implement a queue system to manage the rate of outgoing API calls.
    • Introduce a configurable delay between requests.
  2. Retry Mechanism:

    • Implement a progressive backoff strategy for retries upon receiving a 429 error (e.g., waiting 1s, then 2s, 3s, 5s, etc.) to effectively manage request frequency.
  3. Basic Monitoring:

    • Add logging to track API usage and the frequency of rate limit events, helping administrators understand their instance's load.

Further discussion and suggestions on handling rate limiting are welcome.

PeterDaveHello avatar Jul 07 '25 17:07 PeterDaveHello