AttendBeacon
Arbeitsbereich öffnen

Konzepte

Ratenlimits

Jeder Schlüssel darf 120 Aufrufe pro Minute senden, REST-API und MCP-Server zusammen. Jede Antwort sagt, wie viele noch übrig sind.

Das Limit

Jeder Schlüssel darf 120 Aufrufe pro Minute senden. REST-API und MCP-Server zählen im selben Zeitfenster. Teilen sich ein KI-Assistent und eine Synchronisierung einen Schlüssel, teilen sie sich also auch sein Limit; geben Sie besser jedem einen eigenen Schlüssel.

Eine Synchronisierung, die 500 Teilnehmende pro Seite liest, schafft innerhalb des Limits 60.000 Teilnehmende pro Minute. Eine gut gebaute Integration stößt also selten daran. Eine Schleife, die immer wieder dasselbe fragt, erreicht es innerhalb einer Minute, und genau dafür ist es da.

Wo Sie stehen

Jede Antwort, auch eine Ablehnung, nennt das Limit in zwei Formen: in den RateLimit-Headern der IETF und in den X-RateLimit-*-Headern, die die meisten Client-Bibliotheken lesen.

HTTP
HTTP/1.1 200 OK
RateLimit-Policy: "default";q=120;w=60
RateLimit: "default";r=117;t=42
X-RateLimit-Limit: 120
X-RateLimit-Remaining: 117
X-RateLimit-Reset: 42

r (remaining) sind die in diesem Zeitfenster verbleibenden Aufrufe, t die Sekunden bis zum Beginn eines neuen Zeitfensters.

Wenn Sie es überschreiten

Der Aufruf wird mit 429 Too Many Requests abgelehnt, mit einem Retry-After-Header in Sekunden und einem Problem mit "code": "rateLimited". Es wurde nichts ausgeführt: Warten Sie und senden Sie ihn dann erneut. Ein abgelehnter Aufruf erscheint in der Aktivität der Schlüssel, sodass Sie sehen, wann es passiert ist.

HTTP
HTTP/1.1 429 Too Many Requests
Retry-After: 18
Content-Type: application/problem+json

{ "status": 429, "code": "rateLimited", "detail": "This key made more than 120 calls in a minute. Try again in 18 seconds; the RateLimit header says what is left." }

Deutlich unter dem Limit bleiben

  • Fordern Sie große Seiten an: limit=500 ist kein Problem.
  • Synchronisieren Sie mit updatedSince, statt jedes Mal alles zu lesen (Paginierung und Synchronisierung).
  • Nutzen Sie Webhooks statt Polling für das, was gerade passiert ist.
  • Senden Sie If-None-Match mit dem ETag, den Sie haben: Ein 304 ist schnell, zählt aber trotzdem.
  • Legen Sie eine Pause ein, wenn r in RateLimit niedrig wird, statt auf eine Ablehnung zu warten.

Das Zeitfenster wird pro Server gezählt. An einem geschäftigen Tag kann ein Schlüssel also gelegentlich etwas mehr als das Limit bekommen. Verlassen Sie sich nicht darauf: Maßgeblich sind die Header.

Die Anleitungen und diese Website sind in Ihrer Sprache. Die Beschreibungen in der API-Referenz selbst sind auf Englisch, so wie die API selbst spricht.