Skip to content

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

MethodEndpointRate Limit
POST/createGC600
POST/getBalanceGC50
POST/cancelGC50

V2

MethodEndpointRate Limit
POST/digital/issue900
DELETE/digital/issue50
POST/digital/check-balance50
GET/digital/order-status5000

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