Limit errors (429)

Updated 2026-11-13

A call answers HTTP 429. There are two different limits behind this status; this page shows how to tell them apart and what to do for each.

Two limits, one status

Per-minute limitMonthly limit
"error"RATE_LIMIT_EXCEEDEDMonthly call limit reached
Extra fielddetails.limit, details.resetcode: "CALL_LIMIT_REACHED"
Retry-After headerYesNo
CountsCalls to one service in one minute, all callers togetherCalls to all services of the account in one calendar month
Size1,000 calls per minute per serviceDepends on the plan
EndsWithin a minuteOn the 1st of the next month (UTC), or right away on a larger plan
What to doWait, then send fewer calls at onceTell the owner; upgrade or wait

Per-minute limit: "RATE_LIMIT_EXCEEDED"

{
  "error": "RATE_LIMIT_EXCEEDED",
  "message": "Rate limit exceeded. Maximum 1000 requests per minute.",
  "details": { "limit": 1000, "reset": 1794567890 }
}

A service answers at most 1,000 calls per minute, all callers together. The limit is the same on every plan and protects the service from bursts.

What to do:

  1. Wait for the number of seconds in the Retry-After header, then call again.
  2. Spread the calls. Send them at a steady pace instead of all at once, and limit how many run in parallel.
  3. Do not repeat a refused call in a tight loop. Every call inside the minute counts, refused ones too, so a loop keeps the limit reached.
  4. Avoid calls you do not need: keep a result you already have instead of asking for it again.
  5. If several of your systems call the same service, remember that they share the one limit.

Monthly limit: "Monthly call limit reached"

{
  "error": "Monthly call limit reached",
  "code": "CALL_LIMIT_REACHED",
  "message": "This service's account has used its … calls for this month. Calls work again on the 1st (UTC), or right away on a larger plan."
}

The account that owns the service has used the calls its plan includes for this month. In place of "…" the message names the number of calls of the plan. Until the month ends, every service of that account answers this error, on every channel.

What to do:

  • If you own the service: upgrade for more calls; they are available at once. Or wait: calls work again on the 1st of the next month, counted in UTC. See Call limits and Upgrade and billing.
  • If you are a caller: nothing in your request is wrong. Tell the owner of the service; waiting a minute does not help.
  • If you run an automation: pause it until the month ends or the plan changes, so it does not fail on every run.

Where the owner sees the month's calls: the Analytics page of the account shows This Month with the calls used and the calls of the plan. See Account analytics.

Things that still work while the month's calls are used up:

  • Editing, saving, publishing and testing in the editor. Testing a draft is not a call.
  • Opening the discovery address to read the description of the service.

Find out who uses the calls

Open the service and go to Usage → Overview (Nutzung → Übersicht). Who is calling (Wer ruft auf) lists the callers by token or AI connection with their number of calls, and When it is called (Wann aufgerufen wird) shows the busy hours. See The usage overview.

For developers and agents

Per-minute limit (API)

  • Status 429, body error: "RATE_LIMIT_EXCEEDED", message, timestamp, details.limit (1000), details.reset (Unix time in seconds).
  • Headers: Retry-After (seconds), X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.
  • The window is the last 60 seconds, per service, for all callers and tokens together.

Monthly limit

  • API, GET and POST: status 429, body error: "Monthly call limit reached", code: "CALL_LIMIT_REACHED", message. No Retry-After.
  • Discovery address: status 429, the same fields plus "success": false. Reading the description (a GET without action) still answers 200.
  • Service MCP address: the tool call answers a result with isError: true; its text is the message followed by "Tell the user; do not retry."
  • An agent connected to the account gets the code call_limit_reached when it runs a service; see Agent errors.
  • The month is the calendar month in UTC. The count is per account, over all its services and all channels (API, AI, web app).

Telling them apart in code

if status == 429:
    if body.code == "CALL_LIMIT_REACHED":  stop; report to the user or owner
    else:                                   wait Retry-After seconds; retry

For an agent: on RATE_LIMIT_EXCEEDED wait and retry once the time has passed. On CALL_LIMIT_REACHED do not retry; tell the user that the account's calls for this month are used up and that the owner can upgrade or wait for the 1st (UTC).

FAQ

What does "RATE_LIMIT_EXCEEDED" mean?

The service received more than 1,000 calls within a minute, all callers together. Wait for the seconds in the Retry-After header and send your calls at a steadier pace.

What does "Monthly call limit reached" mean?

The account that owns the service has used the calls its plan includes for this month. Calls work again on the 1st of the next month (UTC), or right away after the owner moves to a larger plan.

How do I tell the two 429 errors apart?

Look at the body: the monthly limit has "code": "CALL_LIMIT_REACHED", the per-minute limit has "error": "RATE_LIMIT_EXCEEDED" and a Retry-After header.

How long do I have to wait after a rate limit error?

As many seconds as the Retry-After header says, at most a minute. Calls sent while the limit is reached count too, so pause instead of retrying at once.

Is the per-minute limit per token or per caller?

Neither: it is per service. All callers and all tokens of one service share the 1,000 calls per minute.

Can I get a higher per-minute limit?

The limit of 1,000 calls per minute per service is the same on every plan. Spread your calls over time so that they stay below it.

When does the monthly count start again?

On the 1st of each month at 00:00 UTC. Depending on your time zone this is in the evening of the last day or in the morning of the 1st.

Does upgrading help immediately?

Yes. The larger number of calls applies to the current month right away, so calls work again without waiting for the 1st. How to upgrade is in Upgrade and billing.

Do all my services stop when the monthly limit is reached?

Yes. The calls are counted per account, so every service of the account answers "Monthly call limit reached" until the month ends or the plan changes. The services stay published.

My AI assistant says the calls for this month are used up. What does that mean?

The assistant passed on the monthly limit of the account that owns the service. Asking again does not help; the owner can upgrade, or the service works again on the 1st (UTC).

Can I still edit and test my service when the limit is reached?

Yes. Editing, saving, publishing and testing with the test button in the editor keep working; only calls to published services are refused.