Rate limits
⚠️Attention: In order to prevent problems arising from brute force attacks or even an overload of requests from integrations, we have implemented a mechanism that limits the number of requests processed in parallel.
If the integration layer reaches its capacity limit, subsequent requests will
start to receive a "429 - Too Many Requests"
status response. This measure
aims to ensure the stability and efficient functioning of the system.
What is rate limit?
Rate limit is a measure adopted to prevent excessive requests to the SoftExpert
Suite API in a short period of time. If your application makes a large number of
requests in a small interval, it is possible that it will receive the 429
HTTP
status code as a response. This error indicates that your application has
exceeded our web API rate limit.
The main objective of implementing these limits through the SoftExpert Suite API is to guarantee the reliability of our service. Additionally, the rate limit helps third-party developers use our API in a responsible and sustainable way.
SoftExpert Suite rate limit
The API rate limit for SoftExpert Suite is based on the number of requests your
application sends to SoftExpert Suite in a 1-second time window. Within this
interval, only 10 requests are allowed. If your application exceeds this rate
limit, the SoftExpert Suite web API will start to return the 429
HTTP status
code as a response. As a result, you may receive reports from users about
anomalous behaviors they have experienced when using your application.
Exceptions
Be aware that SoftExpert sometimes implements other limits outside of the default rate limit. That is, some APIs or web services may have exclusive limits, due to high consumption demand or expressive use.
Implement a backoff-retry strategy
If your application exceeds the request limit, it will receive a response with
the 429
error code from SoftExpert Suite. This information can be used by your
application as an indication to reduce the number of API requests it is making
to the web API. An effective approach to managing this situation is to develop a
backoff-retry strategy, which will allow your application to dynamically adjust
to the imposed rate limit.
Study the request patterns of your application
When accessing SoftExpert Suite's API Manager widgets, you will find charts and information that illustrate the volume of API requests over time. Understanding the anomalies in these requests – as well as their causes – can provide valuable insights to prevent rate limits from being reached. For example, if you notice a spike in traffic on your website after sending your weekly newsletter, you may want to stagger the distribution of these emails throughout the day.
For a deeper analysis of your application's request patterns, we recommend tracing your application's API calls to SoftExpert Suite using your own logging tools. This way, you will be able to collect more accurate and customized data, further optimizing the efficiency and performance of your application.
Consider implementing “lazy loading” features
Users oftentimes do not want to try all the features that are available to them on a web page or mobile app view. You can prevent API requests from being sent by making API calls conditioned to user interaction, such as clicking a 'Learn more' link or scrolling to a defined area of a web page.