Throttling

Spring Systems PortalApp uses API throttling to ensure availability and consistent throughput. Please
make sure you are transmitting more than one transaction per API call to avoid any throttling issues.

  • Request Limit - This is the number of API calls allowed per Request Time Period. Default setting
    is 500 requests (calls) per 86400 seconds (24h)
  • Request Time Period - Default setting is 86400 seconds (24 hours)
  • Transaction Limit - Default limit is 5,000 created or updated transactions per period.
  • Requested Entities Limit - This applies to get requests only and controls the number of
    transactions or item returned per Request Time Period. For example, when requesting orders or
    items, please use filters to limit the number of possible results in your API query. Default is
    50,000. (also see pagination)
  • Burst Time Period - Default is 1 call per 1 sec

In addition to the traditional limits detailed above, Spring also utilizes a “Leaky Bucket” approach to further allow burst calls, yet control the pace of these bursts.

  • Leaky Bucket Capacity – Each API user has a “bucket capacity” per endpoint. The default capacity is 100. The bucket starts with 0 calls. Each call adds one to the bucket. When the bucket is full, no further calls will be allowed.
  • Leak per second – each bucket will remove one per second to rebuild the allowed call count.

If these limits are reached, your API user will be prevented from making additional calls until the subsequent time period and/or appropriate limit is reached. Once again, please make sure you are transmitting more than one transaction per API call to avoid any throttling and transmission limit issues.

Please try to schedule and design your API calls to stay within these limits. Contact your account manager if you find the need to extend these limits (additional charges may apply). Limits cannot be extended when API calls are being made with only one transaction per call.

See section “Response Metadata” for additional detail.