Is there a rate limit of API requests?
- License-based accounts (accounts created on or after 01/17/2017) - 240 requests per minute
- Legacy Basic accounts - 30 requests per minute
- Legacy Professional - 60 requests per minute
- Legacy Team & Enterprise - 120 requests per minute
Note: These limits are Account limits, not user limits.
As you are approaching your request limit (<10% of your calls per minute remaining), you will see the following return within the headers:
What will I see if I reach the Request Limit?
Should you reach API Request Limit, you will see the following message with the status code of 429:
"You have exceeded your requests per minute, see http://apihelp.surveygizmo.com/help/article/link/api-request-limits for more details"
What can I expect as far as API response time?
The time it takes for an API response is dependent on a number of factors including:
- The call you are making.
- The amount of data that is being returned.
- The amount of data you have.
- Server load.
Responses from the API can take anywhere from <1 second to 30 seconds. Requests will time out after 30 seconds returning a 500 error. After a call times out subsequent calls will return a 400 error for 1 minute while the throttling resets.
What does a 429 status code mean?
This status code is returned when too many requests are made per minute (see request limits). The status code will return for up to a minute after you have met your limit while throttling resets.
Do API returns cache?
Yes, get requests will cache for 60 seconds. If you make repeated API GET requests that are identical, the return will be cached and will thus return identical results. You will also see the following return within the headers:
What you should know about the SurveyResponse object.
Response data is subject to response processing, which can vary based on server load. If you are looking to access response data, the time between when a response is submitted (even those submitted via the API) and when the data is available via the API can be upwards of 5 minutes.
Your code should account for these delays, as well as the request limits on your account.
Is there a limit to the size of an individual request?
Our web servers have a request-line limit of 8000 bytes (characters). We recommend imposing a tighter limit of perhaps 4000 characters to ensure that response timeouts (presently 20 seconds) are less likely to occur during high traffic time. It is important to note that for tests in browsers, each has their own limits (IE is notoriously short for some versions).
Is there a specific format for API requests?
Requests should be formatted as URL parameters or HTTP Headers.