Skip to main content
The TalkPilot API enforces per-key rate limits to ensure fair usage and system stability.

Default limits

These defaults can be customized per API key when creating the key in the Dashboard.

Rate limit headers

Every API response includes these headers: Example response headers:

When you hit the limit

When rate limited, the API returns 429 Too Many Requests with a Retry-After header:

Handling rate limits

Proactive: Check headers before hitting the limit

Reactive: Retry on 429

Tips for staying within limits

  • Batch reads with pagination — Use limit=100 to fetch more data per request
  • Use PUT /forwarding-slots to replace all slots in one request instead of multiple creates/deletes
  • Cache responses when possible — Agent configurations change infrequently
  • Use the status endpoint (GET /agents/{id}/status) instead of the full agent endpoint when you only need active/schedule status
  • Spread requests over time — Avoid burst patterns; space requests evenly across the minute window
  • Request higher limits — If your integration needs more throughput, set custom rate limits when creating the API key in the Dashboard

Rate limit scoping

Rate limits are tracked per API key, not per IP address. If you have multiple integrations, create separate API keys so they each get their own quota.