Skip to main content
SmartRetry applies rate limits to ensure fair usage and protect the platform from abuse. This page explains the limits and how to handle them gracefully.

Rate limits

Limits are applied per API key. Contact support@smartretry.com if you need higher limits.

Rate limit headers

Every response includes headers showing your current usage:

Handling rate limits

When you exceed the rate limit, SmartRetry returns a 429 Too Many Requests response:
The response includes a Retry-After header indicating how long to wait:

Exponential backoff

Implement exponential backoff to handle rate limits and transient errors gracefully. This strategy progressively increases wait times between retries to avoid overwhelming the API.

Best practices

Use idempotency keys

Always include an Idempotency-Key header on POST requests. This ensures retried requests don’t create duplicate transactions.

Add jitter

Add random jitter to retry delays to prevent thundering herd problems when multiple clients retry simultaneously.

Monitor remaining quota

Check X-RateLimit-Remaining headers and throttle proactively before hitting limits.

Batch when possible

For high-volume operations, use bulk endpoints (coming soon) instead of individual requests.

Retry decision matrix

Never retry 400 Bad Request errors automatically. These indicate a problem with your request that must be fixed before resubmitting.
For payment operations, a 409 Conflict with an idempotency key often means the original request succeeded. Check the response body for the transaction ID before retrying.