Skip to Content
API ReferenceRate Limits

Rate Limits

Rate limits protect the API from abuse and ensure fair usage across all accounts.

Limits by plan

PlanRequests per minuteRequests per day
Free601,000
Starter601,000
Pro30010,000

Limits apply per API key. Form submission endpoints (/f/{formId}) have separate limits.

Rate limit headers

Every API response includes headers showing your current usage:

HeaderDescription
X-RateLimit-LimitMaximum requests allowed in the current window
X-RateLimit-RemainingRequests remaining in the current window
X-RateLimit-ResetUnix timestamp when the window resets

Example:

X-RateLimit-Limit: 300 X-RateLimit-Remaining: 287 X-RateLimit-Reset: 1710512400

Handling 429 responses

When you exceed the limit, the API returns 429 Too Many Requests with a Retry-After header indicating how many seconds to wait:

HTTP/1.1 429 Too Many Requests Retry-After: 12 X-RateLimit-Reset: 1710512400
const res = await fetch("https://api.formtorch.com/v1/forms", { headers: { Authorization: `Bearer ${process.env.FORMTORCH_API_KEY}` }, }); if (res.status === 429) { const retryAfter = parseInt(res.headers.get("Retry-After") ?? "60", 10); console.warn(`Rate limited. Retry after ${retryAfter}s`); // Queue the request or surface an error to the user }

If you need higher limits for a batch migration or data export, use the CSV export feature in the dashboard or contact support to discuss a custom arrangement.

Last updated on