Rate Limits & Errors

Rate limits, error codes, and HTTP status responses for the Fiscal.ai API. Understand usage tiers and troubleshoot integration issues.

Rate Limits

The Fiscal.ai API enforces rate limits to ensure fair usage and maintain service quality for all users.

Free Plan

LimitValue
Burst requests50 requests/minute
Daily requests250 requests/day
Company-level data access25 companies on the free plan

When you exceed the short burst limit, the API returns a 429 status code:

{
  "error": "Rate limit exceeded for free trial."
}

When you exceed the daily limit, the API returns a 429 status code:

{
  "error": "Daily request limit exceeded for free trial"
}

Your limit resets at midnight UTC each day.

Paid plans have higher rate limits based on your subscription tier. Contact our sales team for details on rate limits for your specific plan.


HTTP Status Codes

The API uses standard HTTP status codes to indicate the success or failure of requests.

Success Codes

CodeDescription
200 OKRequest succeeded

Error Codes

CodeDescription
400 Bad RequestMissing or invalid parameters
401 UnauthorizedMissing or invalid API key
403 ForbiddenAccess denied to this resource or feature
404 Not FoundCompany or resource not found
429 Too Many RequestsRate limit exceeded
500 Internal Server ErrorServer error (please retry)

Error Response Format

All error responses follow this format:

{
  "error": "Error message describing what went wrong"
}

Common Error Messages

Authentication Errors (401)

{
  "error": "Invalid API key"
}

Missing Parameters (400)

{
  "error": "Missing required parameters: either Company Key, CUSIP, ISIN, FIGI, or Ticker + Exchange"
}

Company Not Found (404)

{
  "error": "Company not found"
}

Feature Access (403)

{
  "error": "You do not have access to this feature"
}
{
  "error": "This company is not available for the free trial."
}

CUSIP/ISIN License (403)

{
  "error": "CUSIP/ISIN license is required, please contact sales at https://fiscal.ai/contact-sales"
}

Rate Limit Exceeded (429)

{
  "error": "Daily request limit exceeded for free trial"
}

Best Practices

  1. Cache responses - Financial data doesn't change frequently. Cache responses to reduce API calls.

  2. Handle 429 errors gracefully - Implement exponential backoff when you hit rate limits.

  3. Check for errors first - Always check the HTTP status code before parsing the response body.

  4. Use company keys - Using companyKey directly is faster than looking up by ticker/exchange.


API Status

Check our live API status and subscribe to incident notifications:

status.fiscal.ai