API rate limits control how many requests a service accepts during a defined period. For gift card and rewards workflows, staying within those limits means pacing requests, handling 429 responses, and separating new sends from retries and status checks.
What are API rate limits?
API rate limits are rules that restrict how many requests a client can make within a specified scope and period. A limit might apply to an account, API key, IP address, endpoint, or combination of these, depending on the provider. The MDN HTTP 429 reference, checked October 23, 2026, describes these varying scopes. It does not prescribe a rate for any particular rewards service.

Rate limits are not the same as business limits
An API rate limit concerns request frequency. It does not necessarily describe how many rewards you may send, the maximum reward value, or which countries and currencies are supported.
A simple way to model a limit
Use four fields when documenting a limit:
| Field | What to record |
|---|---|
| Scope | The account, key, endpoint, IP, or other unit being limited |
| Window | The period used to measure requests |
| Capacity | The number of requests allowed in that period |
| Response | The status, headers, or body returned when the limit is reached |
How rate limits work for gift card and rewards APIs
Gift card and rewards workflows usually involve more than one request type. A typical integration may read available products, create a reward, check a transaction, and reconcile results. The important question is not only how fast you send rewards. It is how all request types share capacity.
Separate work by purpose
Create distinct work categories in your integration:
- Preparation: product, country, currency, or recipient data needed before sending
- Submission: the request that creates or sends the reward
- Follow-up: status checks, reconciliation, and exception handling
Treat endpoint limits as separate until documentation says otherwise
Do not assume that a catalog request and a reward submission share one pool. Do not assume that they use separate pools either.
Document the provider’s stated behavior for each endpoint. If the documentation describes one shared limit, use one shared limiter. If it describes separate limits, configure separate controls. If the documentation is unclear, start with one conservative control for the relevant workflow and verify behavior through approved testing.
Plan for the response, not only the request
A request can fail in several ways. A validation error may indicate that the payload needs correction. An authentication error may require credentials or permission changes. A timeout may leave the result uncertain. A 429 response indicates that the client needs to reduce or delay traffic.
What happens when you hit a rate limit?
HTTP 429 means the client sent too many requests in a given period. A response may include Retry-After, as described in the HTTP status reference. Follow the provider’s documented response rather than inventing a reset time.
Handle a 429 response in a controlled sequence
- Identify the affected scope. Determine which endpoint, account, key, or worker received the response.
- Pause new attempts for that scope. Do not let other workers continue submitting at the same pace.
- Read provider instructions. Use a documented retry or reset signal when one is returned.
- Reschedule eligible work. Put the request into a retry queue rather than looping immediately.
- Record the event. Capture the endpoint, time, request reference, and response details without storing sensitive data unnecessarily.
- Resume gradually. Restore traffic at a controlled pace instead of releasing the entire backlog at once.
Backoff means increasing the delay between attempts after a temporary failure. Exponential backoff increases that delay across successive attempts.
Use a maximum delay and maximum attempt count. Without those boundaries, a request can remain in a retry cycle indefinitely.
Resolve uncertain submissions before resending
The outcome can be clear when the provider rejects a request before processing it. It can be uncertain when a timeout or connection failure occurs after submission.
Do not automatically submit the same reward again after an uncertain response. First check the transaction status using the provider’s documented method. Where supported, send a stable idempotency key or equivalent request reference so the provider can recognize repeated submissions.
Best practices for staying under limits
Staying under a limit is a scheduling problem as much as a coding problem. The goal is to control total traffic across preparation, submission, follow-up, and recovery tasks.

Use a queue as the traffic control point
A queue lets you accept work without sending every request immediately. Workers take jobs from the queue according to the configured rate and concurrency. As one documented example, GitHub’s REST guidance recommends serial requests or a queue and respecting retry signals. Treat that as an example, not Giftronaut’s rate-limit contract.
Limit concurrency
Concurrency is the number of requests your system allows to run at the same time. More workers do not automatically mean faster completion. They can create bursts, especially when each worker starts its own retry behavior.
Batch only when the API supports it
Batching combines multiple logical items into one request or one processing unit. It can reduce request overhead when the provider explicitly supports batch operations.
Do not create your own “batch” by placing many rewards into one payload unless the API documentation defines that format. A larger payload may fail validation, complicate error handling, or make it difficult to identify which item succeeded.
Make jobs idempotent
Assign each logical reward operation an internal reference. Keep that reference consistent through the initial request, timeout handling, retry, and reconciliation process.
Monitor signals that show pressure
At minimum, track:
- Request counts by endpoint and response status
- 429 responses and the affected scope
- Queue depth and oldest queued job
- Retry counts and maximum attempts
- Request latency and unresolved operations
Test with a small controlled workload
Start with a small test set and observe the provider’s documented response behavior. Test success, validation failure, timeout handling, retry scheduling, and status reconciliation.
Do not use production recipients for experiments. Keep the test configuration separate from the production queue, credentials, and reward records.
How to plan for high-volume sends
High-volume sends need a capacity plan before the campaign begins. Start with the number of logical rewards, then map every request each reward may create.
For each workflow, record:
| Planning question | Why it matters |
|---|---|
| How many rewards must be submitted? | Establishes the core workload |
| Which preparation calls are required? | Adds requests before submission |
| Which status checks are required? | Adds follow-up traffic |
| What happens after a timeout or 429? | Determines retry workload |
| How are unresolved items reconciled? | Prevents duplicate submissions |
Schedule the work in controlled waves
A wave is a defined group of jobs released under the same operating rules. Each wave gives you a point to review errors, queue depth, and unresolved results before continuing.
The wave size should come from the provider’s documented limits and your own test results. If those values are not available, begin conservatively and avoid promising a completion time based on an unverified rate.
Leave capacity for recovery
A plan that uses every available request slot for new sends has no room for status checks or retries. Reserve part of your operating capacity for reconciliation and exceptions.
Confirm reward-specific details separately
Reward availability is a separate check from API capacity. Giftronaut’s official catalog, checked October 23, 2026, lists 4,300+ options in 225 countries. Check individual product eligibility; these figures say nothing about requests per second.
Document unknowns before launch
Your launch checklist should identify any unanswered technical questions:
- Which requests count toward the limit?
- What is the limit’s scope?
- Is the window fixed or rolling?
- Does the response include reset information?
- Can the operation be retried safely?
- How can you check an uncertain transaction?
- Are batch requests supported?
A safer operating model for reward sends
A dependable reward sender separates preparation, submission, follow-up, and recovery. It applies a documented limit at the correct scope, controls concurrency, and moves temporary failures into a bounded retry process.
Confirm technical limits from the current provider documentation, then verify the recipient’s product eligibility. Keep unknown limits in a launch checklist and obtain an answer before committing to a delivery time.
Frequently Asked Questions
What are API rate limits, and why do APIs use them?
API rate limits restrict request volume during a defined period. They help services manage traffic and give clients a basis for scheduling requests.
How should I handle a 429 response from a gift card API rate limit?
Pause the affected request flow and follow the provider’s retry or reset instruction. Use capped bounded backoff instead of an immediate retry loop.
How should I plan around API rate limits for bulk reward sends?
Use a queue, controlled concurrency, batching only when supported, idempotency, and monitoring. Plan from documented endpoint rules and reserve capacity for recovery.
Can retries make problems with API rate limits worse?
Yes, immediate or synchronized retries can create another traffic spike. Use backoff, maximum attempts, and a separate retry queue.
How do I avoid duplicate rewards when an API request times out?
Check the transaction status before submitting again. Use a stable idempotency key and internal reward reference when the provider supports them.
Do API rate limits apply equally to every endpoint?
No. Providers may apply different rules to catalog, send, status, and authentication requests. Confirm each endpoint’s scope and response behavior in current documentation.
Christie works across marketing and sales at Giftronaut, helping companies find simpler, more effective ways to engage employees, customers, and partners through gifting and rewards.
