Questa guida illustra i componenti principali di una risposta nell'API Google Drive Activity, mostrando esempi e come interpretarli.
Oggetti
DriveActivity: questa è la risorsa principale restituita dalle query all'API Drive Activity. Descrive uno o più attori che eseguono una o più azioni che interessano uno o più target.TimestampeTimeRange: descrivono, rispettivamente, un singolo punto in cui si è verificata l'attività o l'inizio e la fine dell'attività in un determinato periodo di tempo.Actor: in genere, unActorè un utente finale. Tuttavia, a volte, un evento di sistema può attivare unActionquando un amministratore agisce come utente o come se fosse un utente oppure quando l'azione viene eseguita da una persona non identificabile. Il messaggioActorincapsula ciascuno di questi casi.Target: unTargetè l'oggetto di un'attività, ad esempio un file, una cartella, un Drive condiviso o un commento su un file. Tieni presente che molti tipi di azioni supportano più di un tipo di target. Ad esempio, anche seEditsi applica in genere ai file di Drive, altre azioni comeRenameeCreatepossono essere applicate anche alle cartelle di Drive e ai Drive condivisi. I target che non sono elementi di Drive possono comunque farvi riferimento, ad esempio la cartella principale di un archivio o il documento principale contenente un commento del file.Action: ogni risorsaDriveActivityha una o più azioni correlate. UnActionè autonomo, come un evento, in quanto comprende non solo il tipo e le informazioni dettagliati sulla relativa azione, ma anche unActor, unTargete unTimestampo unTimeRange. Per evitare la ridondanza, unActionnon compila i propri campiTarget,Actoro di tempo se sono uguali a quelli dell'DriveActivitycomplessivo.ActionDetail: il tipo specifico e le informazioni dettagliate su unAction. Ad esempio, un dettaglio dell'azioneMoveha una posizione di origine e di destinazione e unPermissionChangespecifica chi può ora accedere a un documento e con quali privilegi.
Risposte di esempio
Esamina quanto segue per vedere le risposte di esempio.
Un utente ha modificato un file in Drive
Una risorsa DriveActivity potrebbe includere una sola azione, ad esempio un utente che modifica un file.
"activities":[{
"primaryActionDetail":{ "edit":{} },
"actors":[ { "user":{ "knownUser":{ "personName":"people/ACCOUNT_ID" } } } ],
"targets":[ { "driveItem":{ "name":"items/ITEM_ID", "title":"TITLE", "file":{} } } ],
"timestamp":{ "seconds":"1536794657", "nanos":791000000 },
"actions":[ { "detail":{ "edit":{} } } ]
}]
Questo output include i seguenti valori:
- ACCOUNT_ID: l'ID dell'utente. Può essere utilizzato con l' API People per ottenere ulteriori informazioni.
- ITEM_ID: l'ID dell'elemento di Drive.
- TITLE: il titolo dell'elemento di Drive.
Tieni presente che l'oggetto Action in questa risposta non include Actor,
Target o timestamp perché sono uguali al valore
DriveActivity complessivo.
Due utenti hanno modificato lo stesso file in momenti simili
Quando viene utilizzato un ConsolidationStrategy, le azioni correlate vengono raggruppate in un unico DriveActivity combinato. In questo
esempio, vengono raggruppate due azioni simili: un tipo di azione Edit di due
diversi utenti.
"activities":[{
"primaryActionDetail":{ "edit":{} },
"actors":[
{ "user":{ "knownUser":{ "personName":"people/ACCOUNT_ID_1" } } },
{ "user":{ "knownUser":{ "personName":"people/ACCOUNT_ID_2" } } }
],
"targets":[
{ "driveItem":{ "name":"items/ITEM_ID", "title":"TITLE", "file":{} } }
],
"timeRange":{
"startTime":{ "seconds":"1541089823", "nanos":712000000 },
"endTime":{ "seconds":"1541089830", "nanos":830000000 }
},
"actions":[
{
"detail":{ "edit":{} },
"actor":{ "user":{ "knownUser":{ "personName":"people/ACCOUNT_ID_1" } } },
"timestamp":{ "seconds":"1541089830", "nanos":830000000 }
},
{
"detail":{ "edit":{} },
"actor":{ "user":{ "knownUser":{ "personName":"people/ACCOUNT_ID_2" } } },
"timestamp":{ "seconds":"1541089823", "nanos":712000000 }
}
]
}]
Questo output include i seguenti valori:
- ACCOUNT_ID_1: l'ID del primo utente. Può essere utilizzata con l'API People per ottenere ulteriori informazioni.
- ACCOUNT_ID_2: l'ID del secondo utente.
- ITEM_ID: l'ID dell'elemento di Drive.
- TITLE: il titolo dell'elemento di Drive.
Tieni presente che l'oggetto Action in questa risposta non include Target
perché è uguale al valore DriveActivity complessivo.
L'esempio illustra anche in che modo le app potrebbero utilizzare solo le informazioni di riepilogo in
DriveActivity, senza esaminare le singole azioni. La risposta indica che due utenti hanno modificato un determinato file in un determinato periodo di tempo.
Un utente ha spostato due file in una nuova directory
In questo esempio, ConsolidationStrategy ha raggruppato due azioni Move correlate perché i file sono stati spostati contemporaneamente dalla stessa origine alla stessa destinazione.
"activities":[{
"primaryActionDetail":{
"move":{
"addedParents":[ { ... } ]
"removedParents":[ { ... } ]
}
},
"actors":[ { "user":{ "knownUser":{ "personName":"people/ACCOUNT_ID" } } } ],
"targets":[
{ "driveItem":{ "name":"items/ITEM_ID_1", "title":"TITLE_1", "file":{} } },
{ "driveItem":{ "name":"items/ITEM_ID_2", "title":"* TITLE_2", "file":{} } }
],
"timestamp":{ "seconds":"1541090960", "nanos":985000000 },
"actions":[
{
"detail":{ "move":{ "addedParents":[ { ... } ] "removedParents":[ { ... } ] } },
"target":{ "driveItem":{ "name":"items/ITEM_ID_1", "title":"TITLE_1", "file":{} } }
},
{
"detail":{ "move":{ "addedParents":[ { ... } ] "removedParents":[ { ... } ] } },
"target":{ "driveItem":{ "name":"items/ITEM_ID_2", "title":"* TITLE_2", "file":{} } }
}
]
}]
Questo output include i seguenti valori:
- ACCOUNT_ID: l'ID dell'utente. Può essere utilizzato con l' API People per ottenere ulteriori informazioni.
- ITEM_ID_1: l'ID del primo elemento di Drive.
- ITEM_ID_2: l'ID del secondo elemento di Drive.
- TITLE_1: il titolo del primo elemento di Drive.
- TITLE_2: il titolo del secondo elemento di Drive.
Tieni presente che l'oggetto Action in questa risposta non include Actor o
timestamp perché sono uguali al DriveActivity complessivo.