Performance throttling and limits with Aconex APIs
There are reasonable limits that apply to both volume and frequency of requests an API caller can make using Aconex web services. These limits have been put in place to ensure the quality of service is maintained for all, especially users of the Aconex web interface. The limits applied by the web services API are based on the following conditions:
If these limits are exceeded, the system may return error responses with the following statuses:
Error Code: CONCURRENCY_THROTTLE_LIMIT_REACHED
Description: The maximum number of concurrent requests the user can perform has been reached.
HTTP Status Code: 503
Error Code: MAX_FREQUENCY_THROTTLE_LIMIT_REACHED
Description: The frequency at which you are making requests to the web services API has exceeded the limit imposed by the server. You should make requests less frequently.
HTTP Status Code: 503
Aconex Web Services has implemented a limit of maximum 5 requests per second. This limitation is applied per organization the used account belongs to. If this limit is passed, instead of getting the requested data, an error message is returned with the status code “MAX_FREQUENCY_ THROTTLE_LIMIT_REACHED”.
Any application developed using Aconex API Services should have an exception handling that can overcome this error, by simple make a delay and then make same request again.
To avoid getting this error at all, it is suggested to add a small delay in all code segments making Aconex Web requests. The delay should be at minimum 200 ms.
Aconex Web Services has implemented a limit of maximum 10 concurrent active requests. This limitation is applied per organization the used account belongs to. If this limit is passed, instead of getting the requested data, an error message is returned with the status code “CONCURRENCY_ THROTTLE_LIMIT_REACHED”.
To avoid getting this error at all, it is suggested to keep a count of requests made where a response is still pending and avoid passing the limit.
This information is only provided to exemplify how certain requests can be made using the Aconex API Web Services and should be treated as such. This should not be considered best practice or an Aconex recommended implementation, as each integration project has its own unique challenges and need to be adopted thereafter.