In diesem Leitfaden werden die Hauptkomponenten einer Antwort in der Google Drive Activity API erläutert. anhand von Beispielen und deren Interpretation.
Objekte
DriveActivity
: Die primäre Ressource, die durch Abfragen an die Drive Activity API zurückgegeben wird Es beschreibt einen oder mehrere Akteure, die eine oder mehrere Aktionen durchführen, die ein oder mehrere mehr Ziele zu erreichen.Timestamp
undTimeRange
: Diese entweder einen einzelnen Zeitpunkt, an dem die Aktivität oder den Beginn und das Ende der Aktivität über einen Zeitraum von .Actor
: Normalerweise ist einActor
Endanwendenden. Manchmal kann jedoch ein SystemereignisAction
, wenn ein Administrator als oder wenn sie von einer nicht identifizierbaren Person ausgeführt werden. Die DieActor
-Nachricht schließt jeden dieser Fälle ein.Target
:Target
ist das Objekt. z. B. eine Datei, einen Ordner, eine geteilte Ablage oder einen Dateikommentar. Beachten Sie, dass viele Aktionstypen mehr als eine Art von Ziel unterstützen. Für ObwohlEdit
im Allgemeinen für Drive-Dateien gilt, sind andere Aktionen wieRename
undCreate
können auch auf Google Drive angewendet werden Ordner und geteilten Ablagen. Ziele, die keine Drive-Elemente sind kann weiterhin auf ein Laufwerk verweisen, z. B. auf den Stammordner eines Laufwerks oder auf das übergeordnete Element. Dokument mit einem Dateikommentar.Action
: JeweilsDriveActivity
Ressource eine oder mehrere zugehörige Aktionen hat. EinAction
ist eigenständig, wie ein event, da es nicht nur den detaillierten Typ und die detaillierten Informationen enthält. zur Aktion, sondern auchActor
,Target
und entwederTimestamp
oderTimeRange
. Um Redundanz zu vermeiden, füllt einAction
nicht selbst mit DatenTarget
-,Actor
- oder Zeitfelder, wenn diese mit dem GesamtwertDriveActivity
.ActionDetail
: spezifischen Typ und detaillierte Informationen überAction
. Beispiel: Das AktionsdetailMove
hat einen Quell- und einen Zielspeicherort sowie einPermissionChange
gibt an, wer jetzt mit welchen Berechtigungen auf ein Dokument zugreifen kann. Berechtigungen.
Beispielantworten
Ein Nutzer hat eine Datei in Google Drive bearbeitet:
Eine einfache DriveActivity
-Ressource kann nur eine Aktion enthalten, z. B. einen Nutzer
eine Datei zu bearbeiten.
"activities":[{
"primary_action_detail":{ "edit":{} },
"actors":[ { "user":{ "known_user":{ "person_name":"people/ACCOUNT_ID" } } } ],
"targets":[ { "drive_item":{ "name":"items/ITEM_ID", "title":"TITLE", "file":{} } } ],
"timestamp":{ "seconds":"1536794657", "nanos":791000000 },
"actions":[ { "detail":{ "edit":{} } } ]
}]
Diese Ausgabe enthält die folgenden Werte:
- ACCOUNT_ID: die ID des Nutzers. Es kann mit dem People API ein, um weitere Informationen zu erhalten.
- ITEM_ID: die ID der Drive-Datei.
- TITLE: der Titel der Drive-Datei.
Hinweis: Das Action
in dieser Antwort enthält nicht Actor
, Target
,
oder TimeStamp
, weil sie identisch mit den DriveActivity
insgesamt sind.
Zwei Nutzer haben dieselbe Datei gleichzeitig bearbeitet:
Wenn die Konsolidierung aktiviert ist, werden zusammengehörige Aktionen in einer Gruppe zusammengefasst
DriveActivity
In diesem Beispiel sind zwei ähnliche Aktionen gruppiert: eine Edit
Aktionstyp von zwei verschiedenen Nutzern erstellen.
"activities":[{
"primary_action_detail":{ "edit":{} },
"actors":[
{ "user":{ "known_user":{ "person_name":"people/ACCOUNT_ID_1" } } },
{ "user":{ "known_user":{ "person_name":"people/ACCOUNT_ID_2" } } }
],
"targets":[
{ "drive_item":{ "name":"items/ITEM_ID", "title":"TITLE", "file":{} } }
],
"time_range":{
"start_time":{ "seconds":"1541089823", "nanos":712000000 },
"end_time":{ "seconds":"1541089830", "nanos":830000000 }
},
"actions":[
{
"detail":{ "edit":{} },
"actor":{ "user":{ "known_user":{ "person_name":"people/ACCOUNT_ID_1" } } },
"timestamp":{ "seconds":"1541089830", "nanos":830000000 }
},
{
"detail":{ "edit":{} },
"actor":{ "user":{ "known_user":{ "person_name":"people/ACCOUNT_ID_2" } } },
"timestamp":{ "seconds":"1541089823", "nanos":712000000 }
}
]
}]
Diese Ausgabe enthält die folgenden Werte:
- ACCOUNT_ID_1: die ID des ersten Nutzers. Es kann mit die People API, um weitere Informationen zu erhalten.
- ACCOUNT_ID_2: die ID des zweiten Nutzers.
- ITEM_ID: die ID der Drive-Datei.
- TITLE: der Titel der Drive-Datei.
Die Aktionen in dieser Antwort enthalten nicht Target
, da es sich um
ist identisch mit dem gesamten DriveActivity
.
Das Beispiel zeigt auch, dass Apps möglicherweise nur die zusammenfassenden Informationen in
DriveActivity
, ohne die einzelnen Aktionen zu betrachten. Die Antwort
gibt an, dass zwei Nutzer eine bestimmte Datei über einen bestimmten Zeitraum bearbeitet haben.
Ein Nutzer hat zwei Dateien in ein neues Verzeichnis verschoben:
In diesem Beispiel wurden im Rahmen der Konsolidierungsstrategie zwei zusammengehörige Move
-Aktionen gruppiert
da die Dateien von der gleichen Quelle
zum selben Ziel
.
"activities":[{
"primary_action_detail":{
"move":{
"added_parents":[ { ... } ]
"removed_parents":[ { ... } ]
}
},
"actors":[ { "user":{ "known_user":{ "person_name":"people/ACCOUNT_ID" } } } ],
"targets":[
{ "drive_item":{ "name":"items/ITEM_ID_1", "title":"TITLE_1", "file":{} } },
{ "drive_item":{ "name":"items/ITEM_ID_2", "title":"* TITLE_2", "file":{} } }
],
"timestamp":{ "seconds":"1541090960", "nanos":985000000 },
"actions":[
{
"detail":{ "move":{ "added_parents":[ { ... } ] "removed_parents":[ { ... } ] } },
"target":{ "drive_item":{ "name":"items/ITEM_ID_1", "title":"TITLE_1", "file":{} } }
},
{
"detail":{ "move":{ "added_parents":[ { ... } ] "removed_parents":[ { ... } ] } },
"target":{ "drive_item":{ "name":"items/ITEM_ID_2", "title":"* TITLE_2", "file":{} } }
}
]
}]
Diese Ausgabe enthält die folgenden Werte:
- ACCOUNT_ID: die ID des Nutzers. Es kann mit dem People API ein, um weitere Informationen zu erhalten.
- ITEM_ID_1: die ID des ersten Drive-Elements.
- ITEM_ID_2: die ID des zweiten Drive-Elements.
- TITLE_1: der Titel des ersten Drive-Elements
- TITLE_2: der Titel des zweiten Drive-Elements
Hinweis: Die Aktionen in dieser Antwort enthalten nicht Actor
oder TimeStamp
.
weil sie identisch mit den Gesamt-DriveActivity
sind.