429 Rate Limit Exceeded error gracefully, and how to structure your integration to get the most throughput out of your plan.
Rate Limit Tiers
Rate limits vary by plan. Your exact limits depend on the tier associated with your API key — contact the FraudTrace AI team or check your dashboard to confirm the specific values for your account.If you need higher throughput than your current plan provides — for example, during a bulk screening project or a production traffic spike — reach out to the FraudTrace AI team to discuss a limit increase.
Rate Limit Response Headers
Every API response includes the following headers so you can monitor your quota in real time and take action before you hit the limit.Example Response Headers
The response below shows a key that has consumed 153 of its 1,000 requests in the current window, with the window resetting at Unix timestamp1712345678.
curl -i, which prints response headers before the body:
When You Exceed the Limit
When your request count exceeds the allowed limit, the API returns an HTTP429 Too Many Requests response. The response body follows the standard error format and includes a retry_after field, and the response headers include Retry-After, both indicating how many seconds to wait before sending another request.
Handling 429 in Python
The function below reads theRetry-After header on a 429 response and waits the appropriate amount of time before retrying. It falls back to an exponential delay if the header is absent.
Burst vs. Sustained Throughput
Most plans distinguish between burst throughput — the number of requests you can fire in a short spike — and sustained throughput — the average rate you can maintain over a longer window (e.g. per minute or per hour).- Burst headroom is useful for handling sudden spikes in transaction volume, such as a merchant onboarding batch or a real-time payment flow.
- Sustained limits govern how much throughput you can maintain continuously. Exceeding the sustained limit — even if each individual burst stays within burst limits — will trigger
429responses.
Maximizing Throughput with the Batch Endpoint
The single-VPA endpoint (GET /v1/verify/upi) counts as one request per call. If you need to screen many VPAs — for example during a nightly batch reconciliation or a bulk merchant onboarding — use the batch endpoint instead:
Batch Request Example
Requesting a Limit Increase
If your integration regularly approaches or exceeds its rate limit — for example, you’re operating at scale or handling peak-time payment flows — contact the FraudTrace AI team to discuss a higher-throughput plan. Include the following information to speed up the review:- Your current API key identifier (not the secret value)
- Your expected average and peak requests per minute
- A brief description of your use case