Understanding API Rate Limits
API rate limits help ensure a fast, stable, and reliable experience for all Intrinio customers. Every API subscription includes request limits that determine how many API calls your account can make within a given period. Understanding how these limits work will help you build applications that perform efficiently and avoid unexpected interruptions.
How API Rate Limits Work
Each Intrinio subscription includes one or more rate limits associated with the datasets and services available to your account. These limits define how many requests you can make over a specific time window.
Rate limits are enforced automatically. If your application exceeds a limit, the API will temporarily reject additional requests until enough time has passed for your usage to fall back within the allowed threshold.
Checking Your Current Usage
You can monitor your API usage at any time using the Account Current Usage endpoint:
GET /account/current_usage
This endpoint returns your current usage across all access codes associated with your account, allowing you to see how close you are to your rate limits. The endpoint is publicly available to authenticated users and is designed specifically for monitoring account usage.
You can also view your available datasets and access codes through your Intrinio account or by using:
GET /account/access_codes
This endpoint returns the access codes and datasets your account is authorized to use.
Best Practices for Staying Within Rate Limits
Most applications can operate well within their allotted limits by following a few best practices:
- Cache data whenever possible instead of requesting the same information repeatedly.
- Avoid polling endpoints more frequently than necessary.
- Use pagination to retrieve large result sets efficiently rather than issuing many small requests.
- Download bulk datasets when appropriate instead of making thousands of individual API calls.
- Batch requests when supported by the endpoint.
- Monitor your current usage during development and production.
What Happens When You Exceed a Rate Limit?
If your application exceeds a rate limit:
- The API will temporarily reject additional requests.
- Your application should pause before retrying.
- Avoid immediately retrying failed requests in a tight loop, as this can prolong the throttling period.
Implementing exponential backoff or a similar retry strategy is considered a best practice for handling temporary rate limit responses.
Optimizing Your Application
If your application consistently approaches its rate limits, consider reviewing your request patterns:
- Eliminate duplicate requests.
- Cache static or infrequently changing data.
- Replace frequent polling with more efficient workflows when available.
- Use bulk download products for large historical datasets.
- Review whether the endpoints you're calling are the most efficient for your use case.
The Intrinio MCP Server can also help developers identify the datasets and API endpoints available under their subscription, making it easier to build efficient integrations.
Need Higher Rate Limits?
If your application has grown beyond your current limits or requires significantly higher throughput, our team can help determine the best solution for your use case. Enterprise plans can accommodate custom rate limits and specialized deployment requirements.
If you're unsure whether your current subscription is the right fit, contact the Intrinio team through our Request a Consultation form to discuss your application's requirements.