Rate limits for daily jobs

Continuing the discussion from Important Announcement: Rate Limits:

I have just been auditing our scripts that access the API. Our worst script currently makes 250 calls in ~80 seconds but only runs once per day. While this is well within the daily quota I am unsure if it would hit the per minute quota as that is only burst!?

Can you elaborate on when burst is used please? :slight_smile:

Thank you

Dan

Hi Dan,

Burst limits are simply lower limits which are monitored over a shorter period of time. This is in place to prevent integrations from firing all their 3600 hourly requests in one go, effectively hitting the FreeAgent platform with a shotgun blast.

From what you’re saying it does sound like your daily job would trigger that limit, so if you could make changes to either splay your requests over a longer period (e.g. introduce a short sleep call between each request), or to backoff when a 429 response is received that will prevent your integration from problems when the limits are introduced.

Hope that’s not too painful a proposition for you. If there’s anything we can do to help just let us know.

Kind Regards,
Paul.

Hi Paul,

That is absolutely fine and I will update our app, I think the number of calls grew as we did so apologies for that :slight_smile:

May I suggest removing the word “burst” from your docs as I think it is clearer without.

You also don’t specify if this is a rolling hour/minute or reset at the top of each hour/minute?

Not trying to find ways around the rules, just want to make sure it’s clear :slight_smile:

Thank you

Dan

Hi Dan,

Not a problem.

I’ll update the announcement with your suggestion, and to clarify - the rate limits are reset at the “top” of the hour/minute.

Cheers,
Paul.

Hi, I run query to get ALL explained bank transactions in the cycle. So that was 6 times in a minute and I got 429 error. This is much less than 3600 requests per hour! When I run just 5 queries per minute it works fine also if I run query every 30 seconds it’s OK.

sample GET query: https://api.freeagent.com/v2/bank_transaction_explanations?bank_account=https://api.freeagent.com/v2/bank_accounts/XXXXXXXX&per_page=100&page=0

How do you calculate limits? Please provide a sample.

Thanks
Jozef

1 Like

Thank you Paul. Please mind that when I run 5 queries per minute for 10 minutes in one go, it works fine. So in 10 minutes I run 50 queries - no problem. Therefore it indicates that system allows only 300 queries per hour (5 queries per minute multiplied 60). However, I assume that if you allow 3600 queries per hour than system should allow 60 queries per minute.

Looking forward reading your post :slight_smile:
Jozef