Rate limits and response headers
Read per-token rate-limit headers, pace requests, use bounded retries for 429 responses, and select an appropriate requests-per-minute setting when a private integration is created.
How this fits into Lead360Explore the Lead360 platformConnect API and MCP access with the agency, tenant, scope, and risk model.- 01
Per-token request limits
- 02
Response headers
- 03
Retry strategy
- 04
Reduce unnecessary traffic
Per-token request limits
Each private integration has a requests-per-minute limit selected when the credential is created. The counter belongs to that key, which lets separate integrations have different traffic policies and prevents one client from silently consuming another client allocation.
Choose a limit that supports normal work with room for short bursts. A higher number is not a substitute for batching, caching stable metadata, filtering searches, limiting results, or avoiding duplicate calls.
Response headers
| Header | Meaning | Recommended use |
|---|---|---|
| X-RateLimit-Limit | Configured requests per minute for the key | Record as connection metadata and alert on unexpected changes |
| X-RateLimit-Remaining | Requests remaining in the current window | Slow or pause optional work before exhaustion |
| X-RateLimit-Reset | Seconds until the rate state resets | Schedule the next permitted attempt |
| Retry-After | Seconds to wait after a 429 response | Use as the minimum delay before a bounded retry |
| Cache-Control | no-store, max-age=0 | Do not let shared caches retain authenticated responses |
Retry strategy
- Set a finite connection and response timeout.
- Retry only temporary network failures, selected 5xx responses, and 429 responses.
- Honor Retry-After and add bounded jitter to prevent synchronized retries.
- Set a small maximum attempt count and a total time budget.
- Do not retry invalid credentials, insufficient scopes, invalid arguments, unavailable operations, or approval-required responses.
- Use idempotency protections before retrying any future supported mutation workflow.
- Alert the integration owner when failures persist beyond the retry budget.
Reduce unnecessary traffic
- Use the operation query and limit parameters instead of downloading every contract repeatedly.
- Cache public operation display metadata briefly but refresh after scope, service, token, or registry changes.
- Request only the records and time range required for the integration purpose.
- Debounce interactive searches and cancel requests that are no longer needed.
- Separate background synchronization from user-facing traffic with different credentials and limits.
- Avoid health checks more frequent than the operational need.
Control concurrency with a work queue
A worker queue should cap concurrent Lead360 requests for each token and stop optional jobs as X-RateLimit-Remaining approaches zero. Prioritize interactive customer support reads over background refresh work, and spread recurring jobs across the minute instead of starting every synchronization at the same second.
When several processes share one token, use a shared limiter so each process sees the same remaining budget. A safer design gives independent workloads separate least-privilege credentials and limits, making ownership, alerts, rotation, and traffic investigation easier. Do not create extra keys merely to bypass a reasonable platform limit.
Measure request volume by operation key, response status, and latency without recording full customer responses. Use those measurements to remove duplicate reads, improve filters, and set the next credential limit based on observed production demand.
Frequently asked questions
What is the default rate limit?
Developer Settings starts a new integration form at 60 requests per minute, but the administrator can choose another permitted value based on the integration need.
Do REST and MCP share the token rate limit?
Yes. Authentication and throttling are tied to the private integration key, so traffic through both surfaces consumes that key policy.
Should I immediately retry a 429 response?
No. Wait at least the Retry-After interval, add bounded jitter, and reduce request volume or concurrency.
Continue with Lead360
Use this workflow in Lead360
Put this guide into practice with a 14-day free trial of Lead360 Pro early access, or continue learning through the related collection.
Support