Nutzungsbeschränkungen

Für die Google Calendar API gelten Kontingente, damit sie von allen Nutzern fair verwendet wird. Bei der Verwendung der Calendar API müssen drei wichtige Einschränkungen berücksichtigt werden:

  • Kontingente für die API-Nutzung: Werden pro Projekt und pro Nutzer erzwungen. Weitere Informationen finden Sie unter Arten von Nutzungskontingenten für die Calendar API.

  • Allgemeine Nutzungslimits für Google Kalender: Die Calendar API ist ein gemeinsam genutzter Dienst, für den Einschränkungen gelten, um die Gesamtleistung des Google Workspace-Systems zu schützen. Weitere Informationen finden Sie unter Nutzungsbeschränkungen für Google Kalender vermeiden.

  • Betriebliche Limits: Diese Limits können jederzeit angewendet werden. Limits können beispielsweise gelten, wenn Sie schnell hintereinander in einen einzelnen Kalender schreiben.

Kontingente für die Calendar API

Es werden zwei Arten von Kontingenten erzwungen:

  • Pro Minute und Projekt:Dies ist die Anzahl der Anfragen, die Ihr Google Cloud-Projekt in einer Minute stellen kann.

  • Pro Minute, Nutzer und Projekt:Dies ist die Anzahl der Anfragen, die ein einzelner Nutzer in Ihrem Cloud-Projekt stellen kann. Dieses Limit trägt zu einer fairen Verteilung der Nutzung unter Ihren Nutzern bei.

Kontingente werden pro Minute mit einem gleitenden Fenster berechnet. Ein schneller Traffic-Anstieg, der Ihr Kontingent pro Minute überschreitet, führt dazu, dass die Ratenbegrenzung im nächsten Fenster angewendet wird, um sicherzustellen, dass Ihre Nutzung im Durchschnitt innerhalb der Kontingente bleibt.

In der folgenden Tabelle werden diese Limits näher erläutert:

Art des Nutzungslimits Limit
Pro Minute und Projekt 10.000 Anfragen
Pro Minute, Nutzer und Projekt 600 Anfragen

Täglicher Abrechnungsschwellenwert

Dieses Limit pro Tag und Projekt definiert die maximale Anzahl von Anfragen, die Ihr Cloud-Projekt innerhalb von 24 Stunden verwenden kann, bevor Gebühren anfallen.

Bei einer Nutzung unter diesem Schwellenwert fallen keine zusätzlichen Gebühren an und Ihr Google Cloud-Konto wird nicht belastet. Vollständige Abrechnungsdetails werden später im Jahr 2026 mit einer Vorlaufzeit von mindestens 90 Tagen vor Inkrafttreten von Änderungen bekannt gegeben.

Für dieses Limit für den täglichen Schwellenwert können Sie keine Erhöhung beantragen.

In der folgenden Tabelle wird das Limit näher erläutert:

Art des Schwellenwertlimits Limit
Pro Tag und Projekt 1.000.000 Anfragen

Weitere Informationen finden Sie unter Standardisiertes Google Workspace-Modell für Agent-Tools und APIs.

Zeitbasierte Kontingentfehler beheben

Bei allen zeitbasierten Fehlern (maximal N Anfragen pro X Minuten) empfehlen wir Ihnen, dass Ihr Code die Ausnahme abfängt und einen abgeschnittenen exponentiellen Backoff verwendet, um zu verhindern, dass Ihre Geräte eine übermäßige Last erzeugen.

Exponentielle Backoffs bilden eine Standard-Fehlerbehandlungsstrategie für Netzwerkanwendungen. Ein exponentieller Backoff-Algorithmus wiederholt Anfragen mit exponentiell zunehmenden Wartezeiten zwischen den Anfragen bis zur maximalen Backoff-Zeit. Wenn Anfragen weiterhin nicht erfolgreich sind, müssen die Verzögerungen zwischen den Anfragen mit der Zeit zunehmen, bis die Anfrage erfolgreich ist.

Beispielalgorithmus

Ein exponentieller Backoff-Algorithmus wiederholt Anfragen exponentiell und verlängert dabei die Wartezeit zwischen zwei Wiederholungen bis zur maximalen Backoff-Zeit. Beispiel:

  1. Stellen Sie eine Anfrage an die Google Calendar API.
  2. Wenn die Anfrage fehlschlägt, warten Sie 1 + random_number_milliseconds und wiederholen Sie die Anfrage.
  3. Wenn die Anfrage fehlschlägt, warten Sie 2 + random_number_milliseconds und wiederholen Sie die Anfrage.
  4. Wenn die Anfrage fehlschlägt, warten Sie 4 + random_number_milliseconds und wiederholen Sie die Anfrage.
  5. Und so weiter bis zur maximum_backoff-Zeit.
  6. Das System wartet weiter und führt erneute Versuche bis zu einer maximalen Anzahl an Wiederholungsversuchen aus, jedoch ohne den zeitlichen Abstand zwischen zwei Versuchen zu erhöhen.

Dabei gilt:

  • Die Wartezeit beträgt min(((2^n)+random_number_milliseconds), maximum_backoff), wobei bei jeder Ausführung (Anfrage) n um 1 erhöht wird.
  • random_number_milliseconds ist eine zufällige Anzahl von Millisekunden,die kleiner oder gleich 1.000 ist. So lassen sich Situationen vermeiden, in denen viele Clients synchronisiert werden durch eine Situation und alle gleichzeitig Anfragen wiederholen und diese in synchronisierten Wellen senden. Der Wert von random_number_milliseconds wird nach jeder Anfragewiederholung neu berechnet.
  • maximum_backoff ist normalerweise 32 oder 64 Sekunden lang. Der geeignete Wert hängt vom jeweiligen Anwendungsfall ab.

Der Client kann den Vorgang wiederholen, nachdem er die maximum_backoff-Zeit erreicht hat. Die Backoff-Zeit muss dabei nicht mehr verlängert werden. Wenn ein Client beispielsweise eine maximum_backoff-Zeit von 64 Sekunden verwendet, kann er nach Erreichen dieses Werts alle 64 Sekunden einen neuen Versuch starten. Irgendwann sollten Clients daran gehindert werden, den Vorgang unbegrenzt zu wiederholen.

Die Wartezeit zwischen den Wiederholungen und der Anzahl der Wiederholungen hängt von Ihrem Anwendungsfall und den Netzwerkbedingungen ab.

Preise

Die gesamte Standardnutzung der Google Calendar API ist kostenlos. Wenn die Kontingent anfragelimits überschritten werden, fallen voraussichtlich später im Jahr 2026 Gebühren für Ihr Google Cloud-Rechnungskonto an. Weitere Informationen finden Sie unter Standardisiertes Google Workspace-Modell für Agent-Tools und APIs.

Kontingenterhöhung anfordern

Abhängig von der Ressourcennutzung Ihres Projekts möchten Sie möglicherweise eine Kontingentanpassung anfordern. API-Aufrufe durch ein Dienstkonto werden als Nutzung eines einzelnen Kontos betrachtet. Wenn Sie ein angepasstes Kontingent beantragen, bedeutet dies nicht, dass Ihr Antrag auch genehmigt wird. Anfragen zur Kontingentanpassung, die den Kontingentwert erheblich erhöhen würden, können länger dauern, bis sie genehmigt werden.

Es gelten nicht für alle Projekte dieselben Kontingente. Wenn Sie Google Cloud im Laufe der Zeit häufiger nutzen, müssen Ihre Kontingentwerte möglicherweise erhöht werden. Falls Sie eine deutlich stärkere Auslastung erwarten, können Sie proaktiv eine Anpassung Ihres Kontingents anfordern auf der Seite Kontingente und Systemlimits der Google Cloud Console.

Weitere Informationen finden Sie in den folgenden Ressourcen:

Fehlerbehebung

Wenn eines der Kontingente überschritten wird, wird die Ratenbegrenzung angewendet und Sie erhalten als Antwort auf Ihre Abfragen den 403 usageLimits Statuscode oder den 429 usageLimits Statuscode.

In diesem Fall können Sie Folgendes versuchen:

  1. Achten Sie darauf, alle Best Practices zu befolgen: Verwenden Sie exponentielle Backoffs, randomisieren Sie Traffic-Muster, und verwenden Sie Push-Benachrichtigungen.

  2. Wenn Ihr Projekt wächst und Sie mehr Nutzer haben, können Sie eine Kontingenterhöhung anfordern.

  3. Wenn Sie Kontingentlimits pro Nutzer erreichen, können Sie Folgendes tun:

    • Wenn Sie ein Dienstkonto verwenden, verteilen Sie die Last auf Nutzer oder auf mehrere Dienstkonten.

    • Sie können zwar eine Erhöhung des Kontingents pro Nutzer anfordern, aber im Allgemeinen empfehlen wir, es nicht über den Standardwert hinaus zu erhöhen, da Ihre Anwendung sonst andere Arten von Limits erreichen kann, z. B. allgemeine Nutzungslimits für Google Kalender oder betriebliche Limits.

  4. Testen Sie Ihre Kontingentlimits, indem Sie ein separates Projekt nur für Tests registrieren, das eine ähnliche Konfiguration wie Ihr Produktionsprojekt hat. Weitere Informationen finden Sie unter Umgang mit Kontingentlimits testen.

Traffic-Muster randomisieren

Bei Kalender-Clients kommt es häufig zu Traffic-Spitzen, da mehrere Clients gleichzeitig Vorgänge ausführen. Eine häufige schlechte Praxis für einen Kalender-Client ist beispielsweise die Durchführung einer vollständigen Synchronisierung um Mitternacht. Dadurch wird in der Regel Ihr Kontingent pro Minute überschritten, was zu Ratenbegrenzung und Backoffs führt.

Um dies zu vermeiden, sollten Sie Ihren Traffic nach Möglichkeit über den Tag verteilen. Wenn Ihr Client eine tägliche Synchronisierung durchführen muss, lassen Sie ihn eine zufällige Zeit festlegen (für jeden Client unterschiedlich). Wenn Sie einen Vorgang regelmäßig ausführen müssen, variieren Sie das Intervall um ±25%. So wird der Traffic gleichmäßiger verteilt und die Nutzerfreundlichkeit verbessert.

Push-Benachrichtigungen verwenden

Ein häufiger Anwendungsfall ist die Ausführung einer Aktion, wenn sich etwas im Kalender des Nutzers ändert. Ein Anti-Pattern ist hier das wiederholte Abrufen aller relevanten Kalender. Dadurch wird Ihr Kontingent schnell erschöpft. Wenn Ihre Anwendung beispielsweise 5.000 Nutzer hat und der Kalender jedes Nutzers einmal pro Minute abgerufen wird, ist dafür ein Kontingent pro Minute von mindestens 5.000 erforderlich, noch bevor überhaupt etwas getan wird.

Serverseitige Anwendungen können sich für Push-Benachrichtigungen registrieren, sodass Sie von Google Kalender benachrichtigt werden, wenn etwas Interessantes passiert. Die Einrichtung ist zwar aufwendiger, aber Sie können das Kontingent effizienter nutzen und die Nutzerfreundlichkeit verbessern. Geben Sie den eventType an, für den Sie Benachrichtigungen erhalten möchten. Weitere Informationen finden Sie unter Push Benachrichtigungen.

Richtige Zuweisung mit Dienstkonten

Wenn Ihre Anwendung Anfragen mit domänenweiter Delegierung ausführt, wird standardmäßig das Dienstkonto auf die Kontingente "Pro Minute, Nutzer und Projekt" angerechnet und nicht der Nutzer, den Sie imitieren. Das bedeutet, dass das Kontingent des Dienstkontos wahrscheinlich erschöpft wird und die Ratenbegrenzung angewendet wird, obwohl es möglicherweise für die Kalender mehrerer Nutzer verwendet wird.

Sie können dies vermeiden, indem Sie den URL-Parameter quotaUser (oder den HTTP-Header x-goog-quota-user) verwenden, um anzugeben, welcher Nutzer belastet wird. Google verwendet diesen Parameter nur für Kontingentberechnungen. Weitere Informationen finden Sie unter Anfragen pro Nutzer begrenzen.

Umgang mit Kontingentlimits testen

Damit Ihre Anwendung in der Praxis ordnungsgemäß mit dem Erreichen von Kontingentlimits umgeht (z. B. durch Wiederholungen mit exponentiellen Backoffs) und um potenzielle Störungen für Ihre Nutzer zu minimieren, sollten Sie Ihre Anwendung in einer realistischen Umgebung testen.

Wenn Sie testen möchten, ohne die tatsächliche Nutzung Ihrer Anwendung zu beeinträchtigen, registrieren Sie in der Google Cloud Console ein separates Projekt nur für Tests und dann konfigurieren Sie den OAuth-Zustimmungs bildschirm ähnlich wie bei Ihrem Produktionsprojekt. Anschließend können Sie für dieses Projekt künstlich niedrige Kontingent limits festlegen und das Verhalten Ihrer Anwendung beobachten.

Kontingente für den Calendar MCP-Server

Der Calendar MCP-Server verwendet einen Messwert für die Zuweisung von Abfragekosten. In den folgenden Tabellen sind die Abfragekosten für jede Calendar MCP-Servermethode nach Abschnitt aufgeschlüsselt:

Kontingente für den Calendar MCP

Es werden zwei Arten von Kontingenten erzwungen:

  • Pro Minute und Projekt:Dies sind die Abfragekosten für Ihr Cloud-Projekt für eine Minute.

  • Pro Minute, Nutzer und Projekt:Dies sind die Abfragekosten, die für einen einzelnen Nutzer in Ihrem Cloud-Projekt in einer Minute anfallen können.

In der folgenden Tabelle werden diese Kontingente näher erläutert:

Art des Nutzungslimits Abfragekosten
Pro Minute und Projekt 10.000
Pro Minute, Nutzer und Projekt 600

Kontingente für das Calendar MCP-Toolset

In der folgenden Tabelle sind die Abfragekosten für jedes calendarmcp.googleapis.com-Toolset aufgeschlüsselt:

Endpunkt Tool Abfragekosten

/mcp/v1

create_event

1

delete_event

10

get_event

1

list_events

1

respond_to_event

1

search_events

1

update_event

1

suggest_time

1

list_calendars

1

Weitere Informationen finden Sie in der Calendar MCP API Referenz.