Skip to main content
Two separate ceilings apply: how fast you can call, and how much you can call in a month.

Per minute

Exceeding it returns a rate limit error with headers telling you when to retry. Back off rather than retrying immediately, or you will simply consume the next window too. These rates apply once you are authenticated, by key or by OAuth. The keyless anonymous lane runs on its own lower per-IP ceiling of 30 requests per minute, on top of its 25 material calls per IP per day, so add a key before you measure throughput.

Per month

Credits are separate and tracked on your account rather than per key: Creating more keys does not create more allowance. The per-minute limit is per account too: every key on the account and every connected OAuth client draw from one shared bucket.

When you hit either

Hive stops. There is no overage billing, so an agent stuck in a loop produces errors rather than an invoice. Requests fail with a quota error naming the cause. Both errors return a Retry-After header on the MCP endpoint. The per-minute limit returns the seconds left in the current window. The monthly credit error returns 60 and, when your billing cycle end is known, also names that exact instant in its message and next_action, so back off to the named reset rather than retrying every minute. On the REST API the credit error carries X-Quota-Remaining instead, with no Retry-After and no reset time. Current balance and cycle end are on dashboard usage.

Staying inside them

  • Use limit and page instead of pulling result sets you will not read.
  • Cache within a task rather than re-fetching the same value per step.
  • Connect to a category endpoint when an agent only works in one domain, so discovery stays cheap.
  • Poll on the interval your strategy needs, not the fastest one available.