All pages

Limits

What counts

A call is one request to the API or one question from your AI app. Both count against the same allowance. A call counts once however many results it returns. A call refused before it reaches the data never counts. One the data refuses does, such as a day before the first one or a ticker we don't have.

Your plan's limits

PlanA minuteA day
Individual301,000
Corporate600100,000
  • A minute is a clock minute: it resets at the start of the next one.
  • A day runs from midnight to midnight in New York time.

The headers

Every call that counts, and every 429, says where you stand:

q is the limit, r what's left, t the seconds until that window resets. They follow the IETF's draft for these fields and may change to match it when it's final.

RateLimit-Policy: "minute";q=30;w=60, "day";q=1000;w=86400
RateLimit: "minute";r=12;t=34, "day";r=871;t=40210

When you hit a limit

You get a 429 with a Retry-After header: the seconds to wait. Wait that long, then go on. For the day, that's until midnight in New York.

When we're busy

Rarely, everyone's calls are refused for the rest of a minute. You get a 503 with code: ceiling and a Retry-After. Wait, then retry. It never counts against you.

Retrying well

  • Honour Retry-After on every 429 and 503.
  • Otherwise back off: wait 1 second, then 2, then 4, with a little randomness.
  • Don't retry a 400, 401, 403 or 404: the same request gets the same answer.

Results per request

limit is 1 to 100 on the API (25 in AI apps), 10 if you leave it out. More results cost the same one call.

Keeping up

Poll the feed every 5 minutes. New items arrive every 5 minutes, so polling faster finds nothing new. That's 288 calls a day.

More than Corporate

Corporate is our largest plan. If it isn't enough, write to feedback@bullpen.news.