Rate limiting
Rate limiting is the act of limiting how many API calls can be made in a given period to a server. This helps to protect against attacks as well as ensure that a single customer cannot monopolize all of the bandwidth.
Rate limit is set to
6000 API calls every 300 seconds
If you perform more than 6000 API calls per 300 seconds, it will return the error code 429 Too Many Requests
and you will be blocked from using ALL endpoints for 10 seconds.
When configuring your retry logic, we recommend that you implement it with a rate limit + backoff. i.e. If a call to Notabene does not return the expected response then retry, but retry steadily over time with exponential backoff.
For example:
import requests
from urllib3.util.retry import Retry
retry_strategy = Retry(
total=3,
backoff_factor=1,
status_forcelist=[
429,
500,
502,
503,
504,
],
allowed_methods=[
"POST",
"GET",
"DELETE",
],
)
requests_session = requests.Session()
requests_http_adapter = requests.adapters.HTTPAdapter(max_retries=retry_strategy)
requests_session.mount(prefix="https://", adapter=requests_http_adapter)
Updated about 2 months ago