Rate Limits
Overview
TestGorilla’s API implements rate limiting to ensure stability and fair usage for all users. Rate limits are determined by the number of requests allowed per minute from a single API token or IP address. When a rate limit is exceeded, the API will return a 429 Too Many Requests
response until the limit period has elapsed.
Important: Exceeding the rate limits consistently may result in temporary or permanent blocking of your API token. Monitor your request patterns and implement proper error handling to manage rate limits effectively.
Rate Limit Headers
When making API requests, the following headers are returned to help you monitor your rate limit usage:
X-RateLimit-Limit
: The maximum number of requests allowed in the current time window.X-RateLimit-Remaining
: The number of requests remaining in the current time window.X-RateLimit-Reset
: The time in seconds until the rate limit resets.
API Endpoints Rate Limits
The table below outlines the rate limits for each TestGorilla API endpoint based on the latest specifications. Note that rates are specified in requests per minute.
Endpoint | Method | Rate Limit * |
---|---|---|
/api/assessments/ | GET | 20 |
/api/assessments/<ASSESSMENT_ID> | GET | 20 |
/api/assessments/candidates/<TEST_TAKER_ID>/?candidature=<CANDIDATURE_ID> | GET | 100 |
/api/assessments/candidates/<TESTTAKER_ID>/ | GET | 100 |
/api/assessments/<ASSESSMENT_ID>/invite_candidate/ | POST | 60 |
/api/assessments/public_links/<PUBLIC_LINK_UUID> | PUT | 10 |
/api/assessments/candidature/<ID>/send-invitation/ | POST | 60 |
/api/assessments/candidature?assessment=<ASSESSMENT_ID> | GET | 100 |
/api/assessments/candidature/<CANDIDATURE_ID>/ | DELETE | 20 |
/api/assessments/candidature/<CANDIDATURE_ID>/change_stage/ | PATCH | 60 |
/api/assessments/candidature/<CANDIDATURE_ID>/send-reminder/ | POST | 30 |
/api/assessments/results/?candidature_assessment=<ASSESSMENT_ID>&candidature_test_taker=<TESTTAKER_ID> | GET | 60 |
/api/assessments/results/<TEST_RESULT_ID>/ | GET | 60 |
/api/assessments/candidates/<TEST_TAKER_ID>/render_pdf/?candidature=<CANDIDATURE_ID> | GET | 10 |
/api/assessments/code_questions/<TEST_RESULT_ID>/invitation_token/ | GET | 12 |
Handling Rate Limiting
When you exceed the rate limit, you’ll receive a 429 Too Many Requests
response. We recommend implementing strategies like exponential backoff in your applications to handle these situations gracefully and retry requests after the X-RateLimit-Reset
period.
Tip: If you have any questions about rate limits, please contact our support team.