# API Throttling & You

**URL:** <https://integration.keap.com/t/api-throttling-you/61>\
**Category:** API Q&A\
**Created:** [March 2, 2017, 4:37pm UTC](https://integration.keap.com/t/api-throttling-you/61 "2017-03-02T16:37:35Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![martinc](https://sea1.discourse-cdn.com/flex019/user_avatar/integration.keap.com/martinc/32/14_2.png) [@martinc](https://integration.keap.com/u/martinc)\
**Post date:** [March 2, 2017, 4:37pm UTC](https://integration.keap.com/t/api-throttling-you/61/1 "2017-03-02T16:37:35Z")

</div>

Recently I’ve had a lot of questions surrounding how API throttle works. My attempt in this post is to clarify exactly how it woks for both oAuth and the Legacy Authentication Method.

**Starting with oAuth**  
You are limited to a total of 125,000 api calls per day (25 calls per second max) across all Infusionsoft applications you are sending data to.

**For the Legacy Authentication Method**

Our throttling system is setup like a bank account. You have so many dollars (will be called tokens) in that account you can use. Every Infusionsoft Application has a bank of 10,000 tokens. For every API call that is made, 1 token gets removed from that bank. However, for every 500ms that there is not an API call, you get one token back in the bank, up to the max of 10,000 tokens.

When you run out of tokens, your API call gets delayed 500ms until you get a new token. For instance, you are out of tokens and you have 4 API calls come in at the same time. The first one will be delayed 500ms, the next one 1 second then 1.5 seconds and finally 2 seconds.

Once you hit 4 threads being throttled, you will then start to receive an error stating you have been throttled. The only way to become un-throttled is to cease all API calls. It takes approximately 1.5 hours of no API calls to regenerate all 10,000 tokens. You will receive the following error:

```
Server returned a fault exception: [500] Server encountered exception: com.infusionsoft.throttle.ThrottlingException: Maximum number of threads throttled

```

* * *

**FAQ**

_When does a notification about being throttled happen?_  
**Legacy Authentication Method** Currently, we do not send out a notification when you get throttled for the Legacy Authentication Method.  
**oAuth** The response of each post in the header will have the per second limit as well as the daily limit. An Email is also sent at 65% and 100% of the daily usage. An Email is also sent at 100% of the per second usage. The usage can also be found in the developer center under the developer application and reports (This is updated periodically but can be downloaded as a CSV)

_Are bulk extra tokens available for specific and infrequent times?_  
**Legacy & oAuth** Bulk extra tokens are not available.

_Is it possible to up the 10k token limit?_  
**Legacy** No. it cannot be increased.  
**oAuth** The limit is implemented to maintain stability for an Infusionsoft application. If the developer application is being used by multiple Infusionsoft applications then the limit can be increased after an approval process where best practices are shown.

_Is there a place to see the current amount available?_  
**Legacy** We do not currently have a place for this.  
**oAuth** In the response headers of each API call using oAuth the used and limit can be seen. Subtracting these amount will give you the current amount available.

_Is it possible to track how much or test to see how much is being used in each instance? (A report of tokens used over a specific time or log of them available to us?)_  
**Legacy** A one-time report of API calls made during a specific time period if requested in a developer ticket can be done. We ask that you move to oAuth if you a second report is needed  
**oAuth** Logging into the developer center will allow you to view a report of different statistics as well as download the report in a csv format.

---

<div class="post-metadata">

**Author:** ![John\_Borelli](https://sea1.discourse-cdn.com/flex019/user_avatar/integration.keap.com/john_borelli/32/11880_2.png) [@John\_Borelli](https://integration.keap.com/u/John_Borelli)\
**Post date:** [March 12, 2017, 3:11pm UTC](https://integration.keap.com/t/api-throttling-you/61/2 "2017-03-12T15:11:05Z")

</div>

@martinc, As I understand it (I could be wrong so I’m asking) this throttle model applied to the SDK not the new api or REST as there are different levels for tokens available and a method for getting throttling status’ in the latter? Is this understanding correct?

---

<div class="post-metadata">

**Author:** ![MichaelFairchild](https://sea1.discourse-cdn.com/flex019/user_avatar/integration.keap.com/michaelfairchild/32/111_2.png) [@MichaelFairchild](https://integration.keap.com/u/MichaelFairchild)\
**Post date:** [March 12, 2017, 4:09pm UTC](https://integration.keap.com/t/api-throttling-you/61/3 "2017-03-12T16:09:33Z")

</div>

@John_Borelli, you are correct that this post currently only applies to the legacy api encryption key. The post will be updated soon to reflect both throttling methods.

---

<div class="post-metadata">

**Author:** ![JonSmith](https://sea1.discourse-cdn.com/flex019/user_avatar/integration.keap.com/jonsmith/32/44_2.png) [@JonSmith](https://integration.keap.com/u/JonSmith)\
**Post date:** [March 13, 2017, 6:49pm UTC](https://integration.keap.com/t/api-throttling-you/61/4 "2017-03-13T18:49:59Z")

</div>

@John_Borelli  
It has been updated. Thanks for pointing this out.

---

<div class="post-metadata">

**Author:** ![4iiz\_Support](https://avatars.discourse-cdn.com/v4/letter/4/8baadc/32.png) [@4iiz\_Support](https://integration.keap.com/u/4iiz_Support)\
**Post date:** [August 7, 2018, 2:05pm UTC](https://integration.keap.com/t/api-throttling-you/61/5 "2018-08-07T14:05:00Z")

</div>

How do we begin the process for upping the limit across multiple applications using oAuth? We are currently working across 30 applications, with intentions to go much higher. Thanks.

_Is it possible to up the 10k token limit?_  
**Legacy** No. it cannot be increased.  
**oAuth** The limit is implemented to maintain stability for an Infusionsoft application. If the developer application is being used by multiple Infusionsoft applications then the limit can be increased after an approval process where best practices are shown.

---

<div class="post-metadata">

**Author:** ![Andrea\_Mientkiewicz](https://avatars.discourse-cdn.com/v4/letter/a/ea666f/32.png) [@Andrea\_Mientkiewicz](https://integration.keap.com/u/Andrea_Mientkiewicz)\
**Post date:** [March 9, 2023, 9:40pm UTC](https://integration.keap.com/t/api-throttling-you/61/6 "2023-03-09T21:40:15Z")

</div>

> [@martinc](#):
>
> **oAuth** The response of each post in the header will have the per second limit as well as the daily limit. An Email is also sent at 65% and 100% of the daily usage. An Email is also sent at 100% of the per second usage. The usage can also be found in the developer center under the developer application and reports (This is updated periodically but can be downloaded as a CSV)

Who’s email is this sent to? For the OAuth?

---

<div class="post-metadata">

**Author:** ![TomScott](https://sea1.discourse-cdn.com/flex019/user_avatar/integration.keap.com/tomscott/32/67_2.png) [@TomScott](https://integration.keap.com/u/TomScott)\
**Post date:** [March 13, 2023, 9:33pm UTC](https://integration.keap.com/t/api-throttling-you/61/7 "2023-03-13T21:33:20Z")

</div>

Apologies Andrea, the post you are citing refers to a previous version of our developer site, and a feature that is no longer available.

---

<div class="post-metadata">

**Author:** ![Andrea\_Mientkiewicz](https://avatars.discourse-cdn.com/v4/letter/a/ea666f/32.png) [@Andrea\_Mientkiewicz](https://integration.keap.com/u/Andrea_Mientkiewicz)\
**Post date:** [March 14, 2023, 1:52pm UTC](https://integration.keap.com/t/api-throttling-you/61/8 "2023-03-14T13:52:27Z")

</div>

Thank you!
