Computing capacity has limits, and as those limits are approached users will see the performance of the application begin to degrade. It is our responsibility to protect our customers from anyone who, deliberately or otherwise, tries to flood the CheckMarket API with so many requests that performance suffers.
To encourage good coding practice, we use throttling per day and per minute. This is based on your entire account, not API key or IP address.
Each CheckMarket account can have multiple API keys, with their own limitations and rights. All requests from the different API keys are bundled for your account. We have implemented throttling per account. Each account can execute a limited number of API request per day and per minute.
If your account generates more then these limits you will get a 429 response.
We discard all requests that are throttled. Only the first request which violated the throttling rules for your account will be logged, all subsequent request won't be available in the API log. It will be safe to re-send your request once you are out of the current day or minute.
When using our API, you should consider which data you actually need to retrieve or push and which method suits your requirements the best.
For instance, we have a method to create one contact, but we also have a method to import contacts in bulk.
To avoid the request limit per minute, you can
When requests are throttled, make sure to handle the throttleexception. We give you as much information as possible: which limit is reached and how long you should wait before retrying. You can also use the test method, to test how your application behaves when being throttled.
If the default limits aren't suitable for your application purposes, we can configure custom throttling limits for you.
You can check your current throttling limits in the API Log and request an increased limit if necessary.