Integration rate limits

Measure useful completions under the provider limit

Request throughput can rise while the integration makes less progress. Track completed business operations, retry amplification and backlog age together.

In this article

Separate operations from attempts

Count one business operation independently of its transport attempts. Report attempts per completion so repeated throttling remains visible.

A worker fleet sending 1,000 requests per minute is not productive if most are rejected and only a few operations finish.

Keep permanent validation failures and unknown mutation outcomes separate from rate-limited waiting work.

Observe each meaningful scope

Group metrics by the provider's relevant budget and a bounded local workload category. Avoid high-cardinality customer identifiers in general metrics when a controlled diagnostic view is more suitable.

Track the oldest waiting operation and its next eligible time. An average backlog age can hide a small group that never receives a slot.

Check fairness across scopes and priorities. Important current work and historical reconciliation may need different service expectations.

Calculate net recovery progress

Measure incoming operations and successful completions during catch-up. The difference determines whether the backlog is shrinking.

For an illustrative backlog of 12,000 operations, 80 new operations per minute and 120 completions per minute produce a net drain of 40 per minute. Recovery takes about five hours before other interruptions. Dividing by 120 would understate the delay.

Use the actual workload cost where operations consume different provider points or several API calls.

Check policy compliance

Verify that requests respect documented retry timing and the application's attempt limits. Count premature retries and uncoordinated worker bursts as defects to investigate.

Monitor the age of provider-limit documentation and configuration, especially when the provider changes tiers or endpoint rules. Do not assume the initial quota remains current indefinitely.

Accept the integration when it makes predictable progress, preserves fairness and exposes work it cannot complete. A lower request rate can be an improvement if more business operations finish with fewer rejected attempts.

Primary sources

GitHub: REST API rate limits

References checked 11 September 2026.