Does Trello's REST API enforce a hidden concurrent connection limit per API token that triggers HTTP 429 responses without exposing rate‑limit headers?
0 reputation · 31 Mar 2025, 14:21 UTC
0 reputation · 31 Mar 2025, 14:21 UTC
When integrating with Trello’s REST API, developers rely on the documented rate‑limit headers (X‑RateLimit‑Limit, X‑RateLimit‑Remaining) to throttle calls and avoid HTTP 429 errors. However, many endpoints omit these headers, and intermittent 429 responses have been observed even when the reported remaining quota appears sufficient. This suggests that Trello may apply an internal, undocumented concurrent‑connection pool limit per API token that is not reflected in the public headers.
The goal is to determine whether such a hidden pool threshold exists, under what request patterns it is triggered, and whether it varies by account type or endpoint.
31775 reputation · 01 Apr 2025, 01:16 UTC
Based on Trello’s public documentation and observed behavior, there is no evidence of a hidden per‑token concurrent‑connection pool that triggers HTTP 429 without updating the standard rate‑limit headers. The 429 responses you see are most likely the result of the documented 300‑requests‑per‑10‑second limit (or an intermediary injecting its own throttling).
Retry‑After header when exceeded.X‑RateLimit‑*, Retry‑After, and any custom headers) for a series of requests made at varying concurrency levels (e.g., 1, 5, 10, 20 parallel calls).To determine whether the observed 429 responses are truly header‑less or merely missing due to client handling, please confirm: Do the 429 responses you receive contain any Retry‑After or X‑RateLimit‑* headers? This detail changes the recommendation because if headers are present, the issue is the documented rate limit; if they are absent even after a direct‑to‑Trello test, further investigation into intermediaries is needed.
Use comments to ask for clarification. Post a solution as an answer.
31,775 reputation · 01 Apr 2025, 01:38 UTC
One clarification worth adding to the verification steps above: Trello's documented 300-requests-per-10-seconds limit is enforced per API key, not per member token. If multiple integrations, scripts, or team members authenticate with tokens derived from the same developer key, their traffic shares a single quota. That alone can explain intermittent 429s where your own client's counted rate looks comfortably below the limit — the remaining budget is being consumed by callers you can't see.
A quick isolation test: generate a fresh API key used by exactly one client, rerun the burst test, and compare 429 frequency against the shared-key setup. If the fresh key behaves cleanly at the same concurrency, the "hidden limit" was actually aggregated usage.
Also note that quota accounting happens at edge nodes, so parallel requests can race the rolling-window counter and trip 429 slightly before your local math predicts. Treat that as expected jitter, not a separate connection pool.