As your application grows and begins to rely more heavily on Autodesk Platform Services (APS) APIs, you may encounter rate limiting, especially when handling high volumes of requests.
While it's possible to request a rate limit increase, many of these issues can be avoided by implementing good development practices. Below, we outline the key strategies every developer should apply before reaching out for support. These steps not only improve your application’s performance but also ensure smoother, more scalable, and cost-effective integration with APS APIs.
Understanding Rate Limiting
To ensure fair and stable access to shared resources, APS APIs enforce rate limits. When these limits are exceeded, you will receive a 429 response with a retry-after in your headers:
This indicates that your application is making requests too frequently and needs to slow down or improve how it interacts with the platform.
Best Practices to Prevent Rate Limit Issues
1. Implement Caching Where Possible
Before making an API call, ask yourself:
“How often does this data change?”
“Could I use a webhook to get notified of changes instead?”
If the data doesn’t change frequently (e.g., folder contents, project metadata), you could implement a cache which will significantly reduce unnecessary API calls. You can also use webhooks API in some instance to get changes on a particular event. This is particularly useful when using the Data Management API.
2. Optimize API Request Limits
Many APS API endpoints return paginated results with a default limit, which can — and should — be increased where supported.
For example:
-
The
accounts/{accountId}/projects
endpoint defaults to 20 items, but supports up to 200 per call.
By increasing the limit
parameter, you can retrieve more data in fewer calls, helping you stay within rate limits.
3. Respect the Retry-After
Header
When a rate limit is hit, the APS API will return a Retry-After
header indicating how many seconds to wait before retrying.
Make sure your application:
-
Detects 429 errors
-
Reads the
Retry-After
header -
Implements exponential backoff and retry logic
This ensures you're not repeatedly triggering the same limit and that your retries happen in a controlled, API-friendly manner.
Still Need More Capacity?
If you've implemented the above recommendations and still require a higher rate limit due to legitimate scaling needs, you can request an increase by submitting a request here: https://aps.autodesk.com/get-help
Note: Requests for rate increases are reviewed on a case-by-case basis to determine the validity of the request.