Appearance
Transaction throttling
Transaction Throttling is a process that limits the number of transaction requests via our API over a given period. We limit requests to protect our API and our gift card processors from being overloaded. If this were to occur, it could have a negative impact on our systems performance, which can lead to failed orders.
To keep everything running smoothly for all of our clients and their users, we have rate limits in place for certain endpoints as outlined in the tables below. These limits are per minute, meaning that from the time of your first request being made you will only be able to make as many requests as the rate limit specifies. Once a minute has elapsed from the first request the limit will reset.
V1
Method | Endpoint | Rate Limit |
---|---|---|
POST | /createGC | 600 |
POST | /getBalanceGC | 50 |
POST | /cancelGC | 50 |
V2
Method | Endpoint | Rate Limit |
---|---|---|
POST | /digital/issue | 900 |
DELETE | /digital/issue | 50 |
POST | /digital/check-balance | 50 |
GET | /digital/order-status | 5000 |
If you trigger any of these limits, we will return an HTTP status 429 response with this body:
json
{
"code": "211",
"status": "error",
"message": "Too many attempts for the API rate limit"
}
{
"code": "211",
"status": "error",
"message": "Too many attempts for the API rate limit"
}
Additionally you can check your current limit and when it resets by checking these HTTP headers:
X-RateLimit-Limit: 600
X-RateLimit-Remaining: 580
X-RateLimit-Reset: 1586438428
X-RateLimit-Limit: 600
X-RateLimit-Remaining: 580
X-RateLimit-Reset: 1586438428