Skip to main content
Each endpoint has a rate limit of 100 requests per minute, 10 per minute, 200 per hour or 5 per hour. The limits apply per account and are the same on every plan.

How do the limits work?

  • Limits are shared within a group. All endpoints with the same limit draw from one allowance. For example, the endpoints limited to 200 requests per hour share a single 200-per-hour allowance, so 150 calls to one leaves 50 for the rest.
  • Each group is separate. Using up the 5-per-hour bulk allowance doesn’t affect your per-minute endpoints.
  • Limits are per account. Every request made with your API key counts, whichever machine sends it.

What happens when I exceed a limit?

The API responds with 429 Too Many Requests:
The Retry-After response header gives the same wait in seconds. Wait that long before retrying:

How do I get all the results?

  • Use bulk endpoints for full history. Bulk endpoints such as Bulk Congress Trading return a dataset’s full history in a few large responses. Their limit is 5 requests per hour, so request large pages rather than many small ones.
  • Page through paginated endpoints. Endpoints that paginate take a page parameter (starting at 1) and a page_size parameter. Keep requesting the next page until a page comes back with fewer results than page_size. Each endpoint’s reference page lists its default and maximum page size.
  • Prefer one broad request over many narrow ones. Looping a per-ticker endpoint over hundreds of tickers uses up a 10-per-minute allowance quickly. If a live or bulk endpoint covers every ticker, use it instead and filter the results yourself.
Endpoints that support date filters take date_from and date_to, or date, in YYYYMMDD format, so you can fetch only what changed since your last request.

Rate limit for each endpoint

100 requests per minute

10 requests per minute

200 requests per hour

5 requests per hour

If these limits don’t fit your use case, contact us.
Last modified on November 5, 2026