To ensure continued availability of system resources for all users in a TeamDynamix environment, rate-limiting restrictions are enforced on many methods in the Web API. This rate-limiting framework enforces a maximum number of calls against an endpoint over a particular period of time.
For each method, the period starts with the first request made and resets a specified number of seconds after that point. A rate limit on one method does not affect any other method — if two actions both have a limit of 60 calls every 60 seconds, calling the first does not affect the availability of the second.
When a method is rate-limited, the limit is shown in its description in the API reference.
There are three types of rate-limiting:
When a request has been rate-limited, the Web API returns 429 Too Many Requests.
In addition, in the response for every rate-limited call (regardless of whether it was successful or not), there are three headers that provide useful metadata about the current limits in place:
X-RateLimit-Limit — the maximum number of calls allowed in the current measuring period.X-RateLimit-Remaining — the number of calls remaining in the current measuring period.X-RateLimit-Reset — the date and time when the current measuring period ends, in
RFC 1123 format.
For example:
HTTP/1.1 200 OK X-RateLimit-Limit: 60 X-RateLimit-Remaining: 59 X-RateLimit-Reset: Wed, 28 Mar 2018 16:08:14 GMT
If your integration encounters 429 Too Many Requests errors, we recommend parsing
the X-RateLimit-Reset header and waiting until that date/time before retrying. We further
recommend that you enforce a minimum waiting period of 5 seconds to mitigate both any potential clock skew
and time-zone discrepancies.