Automatic retry
It is considered good practice to implement retry logic when encountering specific error codes and this is especially true for error code 429: Too many requests. This error code indicates that the API is receiving requests at a higher rate than it can handle and unless a retry mecahnism is implemented, the requests will be lost. The best practice for implementing retry logic is called “expontential backoff”. We recommend to retry the request after an initial one-minute delay and increasing the delay exponentially with each additional retry. I.e. if a request fails due toe a 429 error, the first retry is made after one minute, the next after two minutes, then 4 minutes, etc. For more information about handling various response codes and automatic retries, see our error handling guide.Target system rate limits
abacus
For the abacus API, the following rate limits apply:- 200 calls per minute
- 12’000 calls per hour
- 30’000 calls per day
bexio
The bexio API enforces a rate limit, that limits the number of requests per minute a client can make. Currently, the limit is not published. Source: bexio Developer PortalBuchhaltungsButler
For the BuchhaltungsButler API, the following rate limits apply:- 100 requests per customer per minute
DATEV Rechnungswesen
For the Rechnungswesen API, the following rate limits apply:- up to 100 requests every 5 seconds.
DATEV Unternehmen Online
No rate-limits are known for the DATEV Online APIs at the time of writing.Exact Online
For the Exact Online REST API, the following rate limits apply:- Minutely limit - your app can make 60 API calls, per company, per minute.
- Daily limit - your app can make 5,000 API calls, per company, per day.
- You must not request new access token more than once every 10 minutes. You can only request for a new access token after 570 seconds from the time you successfully received the previous access token.
- No more than 10 errors per API key, per user, per company, per endpoint, and per hour. When you exceed this limit, your API key will be temporarily blocked from making further requests. The block will automatically be lifted after one hour and will gradually increase when you continue making these errors. Response code 400, 401, 403, and 404 are counted as errors.
- Mandatory filtering on single and bulk endpoints where sync APIs are available.
fortnox
For the fortnox REST API, the following rate limit apply:- The limit per access-token is 25 requests per 5 seconds. This equals to 300 requests per minute.
FreeAgent
For FreeAgent API, the following rate limits apply:- 120 user requests per minute
- 3600 user requests per hour
- 15 token refreshes per minute
FreshBooks
There is no published limit on the number of API requests for FreshBooks. However, they state that requests will be rate-limited if too many calls are made within a short period of time. Additionally, a maximum of 100 results will be returned for list methods, regardless of the value sent with the per_page parameter. Source: FreshBooks API documentationHolded
The holded API has a rate-limit of 1500 requests per 60 seconds.Lexware Office
For the Lexware Office Partner API, the following rate limits apply:- 2 requests per second, connection and endpoint (burst size: 5)
- 5 requests per second, API client and endpoint (burst size: 5)
Microsoft Business Central
Business Central imposes a range of strict and well-defined limits both per environment and user. Some examples:- Per environment:
- 5 concurrent requests
- 100 concurrent connections
- 300/600 requests per minute in the sandbox/production environment
- Per user:
- 5 concurrent requests
- 100 concurrent connections
- 6000 requests within a 5-minute sliding window
Moneybird
The Moneybird API has a rate-limit of 150 requests per 5 minutes.Odoo
1 call/sec is the official rate limit for Odoo.Pennylane
The Pennylane API has a rate-limit of 5 requests per second.QuickBooks
QuickBooks implement the following rate limits and throttles:- For Online API endpoints:
- 500 requests per minute per realm ID
- 10 concurrent requests per realm ID and app
- For Batch endpoints:
- Recommended maximum number of payloads in a single batch request is 30
- Throttled at 40 requests per minute, per realm ID
Sage Active
To ensure the availability and integrity of Sage Active Public API V2, a rate limit of 3000 requests per application per minute has been set. The rate limit is set for each unique client application. Source: Sage Active Developer Portalsevdesk
The sevdesk API enforces a rate limit, that limits the number of requests per minute a client can make. Currently, the limit is not published.Twinfield
Twinfield uses a system of “API credits”. Query requests as defined below will cost 1 API credit, and ‘Other requests’ will cost 3 API credits. All GET requests in the Maesn API fall under the ‘query requests‘ category with a cost of 1 API credit and all POST request fall under ‘Other requests’ with a cost of 3 API credits.- Per IP Address
- 1000 API credits per minute
- Per ClientId
- 1000 API credits per minute
- Per OrganisationId
- 1000 API credits per minute
- Per ClientId and OrganisationId combination
- 500 API credits per minute
Visma eAccounting
Visma eAccounting implements the following rate limits:- 600 requests per minute
- Limit is registered per client and endpoint/URL
Visma e-conomic
Visma e-conomic implements the following rate limits:- 50.000 requests per 24 hours
weclapp
The weclapp API enforces a rate limit, that limits the number of requests per minute a client can make. Currently, the limit is not published.Xentral
The Xentral API is currently rate limited independent of the plan to 100 requests/minute (one request per 600ms). Bursts of up to 300 simultaneous requests are accepted and processed as follows:- the first two requests are processed immediately
- the following requests (up to 300 requests) will be queued and processed with a fixed rate of one request per 600ms (300 requests in a burst will take up to three minutes to get processed).
- the response for the requests in a burst will be delayed until the request is processed.
The limits mentioned above are flagged as due to change. Please check the Xentral developer portal regularly for the latest values
Xero
Xero implements three types of rate limiting against the respective tenant:- Concurrent calls: 5 calls in progress at one time
- Minute Limit: 60 calls in a rolling 60-second window
- Daily Limit: 5000 calls in a rolling 24-hour window