Auf dieser Seite erhalten Sie einen Überblick über die Google Workspace Events API und erfahren, wie Sie die API verwenden können, um Ereignisse in Google Workspace zu abonnieren.
Google Workspace-Ereignisse beschreiben Änderungen an Google Workspace-Ressourcen, z. B. wenn Ressourcen erstellt, aktualisiert oder gelöscht werden. Ihre App kann eine Google Workspace-Ressource abonnieren, um über für Sie relevante Ereignisse informiert zu werden.
So empfängt Ihre App Ereignisse
Damit Ihre App Google Workspace-Ereignisse empfangen kann, verwenden Sie die Google Workspace Events API, um Abos für Google Workspace-Ressourcen zu erstellen.
Im folgenden Beispiel wird gezeigt, wie die Google Workspace Events API Ereignisse über ein Abo an eine Google Chat-App sendet:
- Eine Chat-App abonniert einen Chatbereich.
- Der Chat-Space ändert sich. Beispiel: Eine neue Nachricht wird im Gruppenbereich gepostet.
- Chat sendet ein Ereignis an ein Thema in
Google Cloud Pub/Sub, das als Benachrichtigungsendpunkt für das Abo dient. Das Ereignis enthält Daten dazu, was sich geändert hat. Bei einem Ereignis zu einer neuen Nachricht enthält das Ereignis beispielsweise Details zur erstellten
Message
-Ressource. - Die Chat-App verarbeitet die Google Cloud Pub/Sub-Nachricht, die das Ereignis enthält, und ergreift bei Bedarf Maßnahmen.
Wichtige Terminologie
Im Folgenden finden Sie eine Liste der häufig verwendeten Begriffe in der Google Workspace Events API:
- Google Workspace-Termin
Eine Änderung an einer Google Workspace-Ressource. Ereignisse werden gemäß der CloudEvents-Spezifikation formatiert und können entweder ein Abo-Ereignis oder ein Lifecycle-Ereignis sein:
- Aboereignis
- Eine Änderung an der Google Workspace-Ressource, die Sie beobachten, z. B. eine neue Nachricht in einem Google Chat-Gruppenbereich. Sie können angeben, wie viele Details Sie zur geänderten Ressource erhalten möchten. Weitere Informationen finden Sie unter Struktur von Google Workspace-Ereignissen.
- Lifecycle-Event
- Ein Ereignis zu Ihrem Google Workspace-Abo. Lebenszyklusereignisse informieren Sie über Probleme und den Status Ihres Abos, damit Sie keine Aboereignisse verpassen. Standardmäßig werden immer Lebenszyklusereignisse für Ihr Abo empfangen. Weitere Informationen finden Sie unter Lebenszyklusereignisse für Google Workspace-Abos.
- Google Workspace-Abo
Eine benannte Entität, die eine Ressource aus einer Google Workspace-Anwendung überwacht. Ein Abo wird durch eine
Subscription
-Ressource dargestellt. Ein Abo wird durch die folgenden Informationen definiert:- Zielressource
- Die Google Workspace-Ressource, die Sie überwachen möchten.
Diese Ressource wird im Feld
targetResource
des Google Workspace-Abos dargestellt. Jedes Abo kann nur eine Ressource überwachen. Informationen dazu, welche Google Workspace-Ressourcen von der Google Workspace Events API unterstützt werden, finden Sie unter Unterstützte Google Workspace-Ereignisse. - Ereignistypen
- Die Arten von Änderungen, über die Sie für die Zielressource benachrichtigt werden möchten. Wenn Sie beispielsweise einen Google Chat-Gruppenbereich abonniert haben, können Sie festlegen, ob Sie Ereignisse zu dem Gruppenbereich und seinen untergeordneten Ressourcen wie Mitgliedschaften und Nachrichten erhalten möchten.
- Benachrichtigungs-Endpunkt
- Der Endpunkt, an dem das Google Workspace-Abo Ereignisse empfängt. Die Google Workspace Events API unterstützt Google Cloud Pub/Sub-Themen als Benachrichtigungsendpunkt. Weitere Informationen zur Verwendung von Google Cloud Pub/Sub finden Sie in der Google Cloud Pub/Sub-Dokumentation.
- Nutzlastoptionen
- Die Ereignisdaten, die Sie zu geänderten Ressourcen erhalten möchten.
Unterstützte Google Workspace-Ereignisse
Welche Ereignisse Ihre App empfangen kann, hängt von der Zielressource Ihres Abos ab. In der folgenden Tabelle sind die unterstützten Ereignisse für jede mögliche Zielressource aufgeführt.
Zielressource | Unterstützte Ereignisse |
---|---|
Google Chat-Bereiche |
|
Google Chat-Nutzer |
|
Google Drive-Dateien |
|
Geteilte Ablagen in Google Drive |
|
Google Meet-Konferenzräume |
|
Google Meet-Nutzer |
|
Weitere Informationen finden Sie in den folgenden Anleitungen:
Struktur von Google Workspace-Ereignissen
Google Workspace-Ereignisse folgen der CloudEvents-Spezifikation, einer branchenüblichen Methode zum Beschreiben von Ereignisdaten. Google Workspace-Ereignisse enthalten Folgendes:
- Attribute des CloudEvent.
- Daten zur Google Workspace-Ressource, die sich aufgrund des Ereignisses geändert hat
Im folgenden Abschnitt wird die Struktur der Attribute und Daten für Google Workspace-Ereignisse erläutert.
CloudEvent-Attribute
Google Workspace-Ereignisse enthalten die folgenden erforderlichen CloudEvents-Attribute:
Attribut | Beschreibung | Beispiel |
---|---|---|
|
Der Typ der Daten, die im Ereignis übergeben wurden. |
|
|
Eine Kennung für das CloudEvent. |
|
|
Die Quelle des Ereignisses. Bei Google Workspace-Ereignissen ist dies der vollständige Ressourcenname des Abos. |
//workspaceevents.googleapis.com/subscriptions/chat-spaces-abcdefg
|
|
Die CloudEvents-Spezifikationsversion, die für dieses Ereignis verwendet wird. |
|
|
Die Google Workspace-Ressource, in der das Ereignis aufgetreten ist. |
|
|
Der Zeitstempel, an dem das Ereignis eingetreten ist, im RFC 3339-Format. |
|
|
Der Typ des Google Workspace-Ereignisses. |
|
Ereignisdaten
Ereignisdaten sind eine Nutzlast, die eine Änderung an der Zielressource Ihres Abos darstellt, einschließlich untergeordneter Ressourcen der Zielressource. In Ihrem Abo können Sie angeben, ob die Nutzlast Daten zur geänderten Ressource oder nur den Namen der geänderten Ressource enthalten soll.
Wenn Sie beispielsweise ein Abo für einen Chatbereich haben, können Sie Ereignisse zu neuen Nachrichten in diesem Bereich erhalten. Bei Ereignissen zu neuen Nachrichten enthalten die Ereignisdaten eine Nutzlast mit der erstellten Chat-spaces.message
-Ressource.
Wenn Sie ein Abo erstellen, können Sie angeben, wie viele Ressourcendaten in den Ereignissen enthalten sind, die Ihre App empfängt:
- Ressourcendaten einschließen:Enthält einige oder alle Felder der geänderten Ressource. Wenn Sie Ressourcendaten einbeziehen, ist die Dauer Ihres Abos auf bis zu 4 Stunden begrenzt. Wenn Sie die domainweite Delegierung verwenden, sind bis zu 24 Stunden möglich.
- Ressourcendaten ausschließen: Enthält nur den Namen der geänderten Ressource. Die Dauer Ihres Abos beträgt bis zu 7 Tage. Wenn Sie Details zum Ereignis abrufen möchten, können Sie die Ressource mit dem Ressourcennamen abfragen.
Diese Optionen für Ereignisdaten werden im Feld payloadOptions
Ihres Abos dargestellt.
Ereignisse als Google Cloud Pub/Sub-Nachrichten
Für die Abos der Google Workspace Events API werden Google Cloud Pub/Sub-Themen als Benachrichtigungsendpunkt verwendet, der Google Workspace-Ereignisse empfängt. Die Ereignisse werden als Google Cloud Pub/Sub-Nachrichten codiert. Ihre App kann die Google Cloud Pub/Sub-Nachricht verarbeiten, um Maßnahmen zu ergreifen oder auf das Ereignis zu reagieren.
Das folgende Beispiel zeigt eine Google Cloud Pub/Sub-Nachricht, die ein Ereignis zu einer aktualisierten Nachricht in einem Chatbereich enthält:
{
"message":
{
"attributes":
{
"ce-datacontenttype": "application/json",
"ce-id": "spaces/SPACE_ID/spaceEvents/SPACE_EVENT_ID",
"ce-source": "//workspaceevents.googleapis.com/subscriptions/SUBSCRIPTION_ID",
"ce-specversion": "1.0",
"ce-subject": "//chat.googleapis.com/spaces/SPACE_ID",
"ce-time": "2023-09-07T21:37:53.274191Z",
"ce-type": "google.workspace.chat.message.v1.updated"
},
"data": "EVENT_DATA",
"messageId": "PUBSUB_MESSAGE_ID",
"orderingKey": "//workspaceevents.googleapis.com/subscriptions/SUBSCRIPTION_ID",
"publishTime": "2023-09-07T21:37:53.713Z"
}
}
Beachten Sie die folgenden Felder:
attributes
: Attribute für das CloudEvent, einschließlich des Ereignistyps. In diesem Fall geht es bei dem Ereignis um eine aktualisierte Nachricht im Gruppenbereich.data
: Die Ereignisdaten mit Details zur aktualisiertenspaces.message
-Ressource, formatiert als Base64-codierter String.messageId
: Die Kennung für die Google Cloud Pub/Sub-Nachricht.
Weitere Informationen dazu, wie CloudEvents in Google Cloud Pub/Sub-Nachrichten angegeben werden, finden Sie unter Google Cloud Pub/Sub Protocol Binding for CloudEvents.