Auf dieser Seite werden die Google Drive-Ereignisse beschrieben, die Ihre App mit der Google Workspace Events API abonnieren kann. Nachdem Sie entschieden haben, welche Ereignistypen Sie benötigen, erstellen Sie ein Abo, um Ereignisse von Drive zu empfangen.
Weitere Informationen zur Entwicklung von Apps für Drive finden Sie in der Google Drive API – Übersicht.
Unterstützte Drive-Ereignisse
Mit Google Workspace-Abos können Sie Ereignisse zu den folgenden Arten von Änderungen in Drive erhalten:
- Eine Datei ist:
- Sie wurden einem Ordner oder einer geteilten Ablage hinzugefügt.
- In einen Ordner oder eine geteilte Ablage verschoben
- Eine bearbeitete oder neue Version wird hochgeladen.
- In den Papierkorb verschoben oder aus dem Papierkorb entfernt.
- Für eine Datei wird ein Zugriffsvorschlag erstellt oder aufgelöst.
Ressourcen, die Sie auf Ereignisse überwachen können
Damit Sie Ereignisse empfangen können, müssen Sie eine zu überwachende Drive-Ressource angeben, die als Zielressource des Abos bezeichnet wird.
Die Google Workspace Events API unterstützt die folgenden Zielressourcen für Drive:
Zielressource | Format | Einschränkungen (falls zutreffend) |
---|---|---|
Datei |
//drive.googleapis.com/files/FILE
Dabei ist FILE die ID im
Ressourcennamen der Drive API-Ressource |
Der Nutzer, der das Abo autorisiert, muss die Berechtigung für die Datei im Abo in Bezug auf das Ereignis „Abonnieren“ haben. |
Geteilte Ablage |
//drive.googleapis.com/drives/DRIVE
Dabei ist DRIVE die ID im Ressourcennamen der Drive API-Ressource |
Das Abo empfängt nur Ereignisse für Elemente in der geteilten Ablage, in der der Nutzer über sein Google Workspace-Konto oder Google-Konto Mitglied ist. |
Ereignistypen zum Erstellen von Abos
Wenn Sie ein Abo für eine Drive-Ressource erstellen, geben Sie mit dem Feld eventTypes[]
an, welche Arten von Ereignissen Sie erhalten möchten. Ereignistypen werden gemäß der CloudEvents-Spezifikation formatiert, z. B. google.workspace.APPLICATION.RESOURCE.VERSION.ACTION
.
Wenn Sie beispielsweise Ereignisse dazu erhalten möchten, dass eine Datei in einem Ordner oder einer geteilten Ablage erstellt wird, geben Sie die Datei als Zielressource und den Ereignistyp als google.workspace.drive.file.v3.created
an. Wenn Sie Ereignisse dazu erhalten möchten, dass für eine Datei ein Zugriffsvorschlag erstellt wird, geben Sie den Zugriffsvorschlag als Zielressource und den Ereignistyp als google.workspace.drive.accessproposal.v3.created
an. Weitere Informationen zur Funktionsweise von Ereignissen finden Sie unter Struktur von Google Workspace-Ereignissen.
In der folgenden Tabelle sehen Sie, welche Ereignistypen für Abonnements von Drive-Ressourcen unterstützt werden:
Ereignistyp | Format | Ressourcendaten | ||
---|---|---|---|---|
Abos für Dateien | ||||
Eine Datei wird einem Ordner oder einer geteilten Ablage hinzugefügt. |
|
|
||
Eine Datei wird in einen Ordner oder eine geteilte Ablage verschoben. |
|
|
||
Eine Datei wird bearbeitet oder eine neue Überarbeitung wird hochgeladen. |
|
|
||
Eine Datei wird gelöscht. |
|
|
||
Eine Datei wird in den Papierkorb verschoben. |
|
|
||
Eine Datei wird aus dem Papierkorb entfernt. |
|
|
||
Für eine Datei wird ein Zugriffsvorschlag erstellt. |
|
|
||
Ein Zugriffsvorschlag wird für eine Datei bearbeitet. |
|
|
||
Abos für geteilte Ablagen | ||||
Eine Datei wird einem Ordner oder einer geteilten Ablage hinzugefügt. |
|
|
||
Eine Datei wird in einen Ordner oder eine geteilte Ablage verschoben. |
|
|
||
Eine Datei wird bearbeitet oder eine neue Überarbeitung wird hochgeladen. |
|
|
||
Eine Datei wird gelöscht. |
|
|
||
Eine Datei wird in den Papierkorb verschoben. |
|
|
||
Eine Datei wird aus dem Papierkorb entfernt. |
|
|
||
Für eine Datei wird ein Zugriffsvorschlag erstellt. |
|
|
||
Ein Zugriffsvorschlag wird für eine Datei bearbeitet. |
|
|
Ereignisdaten
In diesem Abschnitt werden Ereignisdaten und Beispielnutzlasten für Ereignisse in Drive beschrieben.
Wenn Ihr Google Workspace-Abo ein Ereignis von Drive empfängt, enthält das Feld data
die Nutzlast für das Ereignis. Diese Nutzlast enthält Informationen zur geänderten Google Workspace-Ressource. Wenn Sie beispielsweise Datei-Ereignisse abonniert haben, enthält die Nutzlast für diese Ereignisse Informationen zur geänderten file
-Ressource.
Ressourcendaten in der Ereignisnutzlast
Wenn Sie ein Abo erstellen, können Sie angeben, ob die Nutzlast Details zur Ressource oder nur den Namen der Ressource enthalten soll. Wenn Sie beispielsweise Ereignisse zu Dateien in Drive erhalten möchten, können Sie angeben, welche Felder einer files
-Ressource Sie in der Ereignisnutzlast erhalten möchten.
In der folgenden Tabelle finden Sie Beispiele für JSON-Nutzlasten für ein Abo der Drive-Ressource. Die Datei-ID enthält Buchstaben, Zahlen und einige Sonderzeichen im Format files/^[01][0-9a-zA-Z_-]+$/
. Beispiel: files/1aaabbbAAABBB111222-_
Für jedes Ereignis, das das Abo empfängt, wird die Nutzlast im Feld data
des Ereignisses angezeigt:
Beispiel | Ereignistyp | JSON-Nutzlast |
---|---|---|
Ein Nutzer fügt einem Ordner oder einer geteilten Ablage eine Datei hinzu. |
|
Enthält Ressourcendaten
{ "file": { "id": "FILE_ID", "parent": "PARENT_ID", "version": "63", "mimeType": "application/vnd.google-apps.document" } } Ressourcendaten sind ausgeschlossen
{ "file": { "id": "FILE_ID" } } |
Ein Nutzer verschiebt eine Datei in einen Ordner oder eine geteilte Ablage. |
|
Enthält Ressourcendaten
{ "file": { "id": "FILE_ID", "parent": "PARENT_ID", "version": "63", "mimeType": "application/vnd.google-apps.document" } } Ressourcendaten sind ausgeschlossen
{ "file": { "id": "FILE_ID" } } |
Ein Nutzer bearbeitet eine Datei oder eine neue Revision wird hochgeladen. |
|
Enthält Ressourcendaten
{ "file": { "id": "FILE_ID", "parent": "PARENT_ID", "version": "63", "mimeType": "application/vnd.google-apps.document" } } Ressourcendaten sind ausgeschlossen
{ "file": { "id": "FILE_ID" } } |
Ein Nutzer löscht eine Datei. |
|
Enthält Ressourcendaten
{ "file": { "id": "FILE_ID", "parent": "PARENT_ID", "version": "63", "mimeType": "application/vnd.google-apps.document" } } Ressourcendaten sind ausgeschlossen
{ "file": { "id": "FILE_ID" } } |
Ein Nutzer verschiebt eine Datei in den Papierkorb. |
|
Enthält Ressourcendaten
{ "file": { "id": "FILE_ID", "parent": "PARENT_ID", "version": "63", "mimeType": "application/vnd.google-apps.document" } } Ressourcendaten sind ausgeschlossen
{ "file": { "id": "FILE_ID" } } |
Ein Nutzer stellt eine Datei aus dem Papierkorb wieder her. |
|
Enthält Ressourcendaten
{ "file": { "id": "FILE_ID", "parent": "PARENT_ID", "version": "63", "mimeType": "application/vnd.google-apps.document" } } Ressourcendaten sind ausgeschlossen
{ "file": { "id": "FILE_ID" } } |
Ein Nutzer erstellt einen Zugriffsvorschlag für eine Datei. |
|
Enthält Ressourcendaten
{ "accessProposal": [ { "file_id": "FILE_ID", "proposalId": "PROPOSAL_ID", "recipientEmailAddress": "63", "requesterEmailAddress": "application/vnd.google-apps.document", "requestMessage": "grant me access to this file", "rolesAndViews": [ { "role": "writer", "view": "published" } ] } ] } Ressourcendaten sind ausgeschlossen
{ "accessProposal": [ { "proposalId": "PROPOSAL_ID" } ] } |
Ein Nutzer bearbeitet einen Zugriffsvorschlag für eine Datei. |
|
Enthält Ressourcendaten
{ "accessProposal": [ { "file_id": "FILE_ID", "proposalId": "PROPOSAL_ID", "recipientEmailAddress": "63", "requesterEmailAddress": "application/vnd.google-apps.document", "requestMessage": "resolve access to this file", "rolesAndViews": [ { "role": "writer", "view": "published" } ] } ] } Ressourcendaten sind ausgeschlossen
{ "accessProposal": [ { "proposalId": "PROPOSAL_ID" } ] } |
Beschränkungen
- Wenn das boolesche Feld
includeDescendants
inDriveOptions
true
ist, wird bei Drive-Abos für geteilte Ablagen und Ordner immer ein Ereignis gesendet, auch wenn die Datei, die das Ereignis ausgelöst hat, viele Ebenen unter dem Ordner liegt, der für das Drive-Abo verwendet wird. - Auch wenn Sie ein Abo für einen Ordner erstellt haben, erhalten Sie möglicherweise nicht alle Ereignisse in der Dateihierarchie, da der Nutzer oder die Anwendung möglicherweise keinen Zugriff darauf hat. In diesem Fall bleibt das Abo aktiv, Sie erhalten aber keine Ereignisse für Ressourcen, auf die Sie keinen Zugriff haben.
- Abos werden für Ereignisse für alle Dateien und Ordner unterstützt, nicht jedoch für den Stammordner von geteilten Ablagen. Abos werden nur für Dateien und Ordner in geteilten Ablagen unterstützt. Änderungen, die direkt am Stammordner einer geteilten Ablage vorgenommen werden, lösen keine Ereignisse aus.
- Der Nutzer, der das Abo autorisiert, muss die Berechtigung für die Datei haben, die den Ereignissen entspricht, die er abonniert.
- Das Abo empfängt nur Ereignisse für Ressourcen, auf die der Nutzer über sein Google Workspace-Konto oder Google-Konto Zugriff hat.