Este guia explica os principais componentes de uma resposta na API Google Drive Activity. que mostra exemplos e como interpretá-los.
Objetos
DriveActivity
: aqui é o recurso principal retornado por consultas à API Drive Activity. Ela descreve um ou mais atores realizando uma ou mais ações que afetam um ou mais destinos.Timestamp
eTimeRange
: estes descrevem, respectivamente, um único ponto no tempo em que a atividade ocorreu ou o início e o fim de quando a atividade ocorreu durante um período de tempo de resposta.Actor
: normalmente, umaActor
é um usuário final. No entanto, às vezes, um evento do sistema pode acionarAction
quando um administrador estiver agindo como um usuário ou como si mesmo, ou quando realizado por uma pessoa não identificável. A A mensagemActor
encapsula cada um desses casos.Target
: umaTarget
é o objeto de uma atividade, como um arquivo, uma pasta, um drive compartilhado ou um comentário em um arquivo. Muitos tipos de ação oferecem suporte a mais de um tipo de destino. Para exemplo, emboraEdit
geralmente se aplique a arquivos do Google Drive, outras ações comoRename
eCreate
também podem ser aplicadas ao Drive pastas e drives compartilhados. Destinos que não são itens do Drive ainda podem se referir a ele, como a pasta raiz de um drive ou o diretório que contém um comentário no arquivo.Action
: a cadaDriveActivity
tem uma ou mais ações relacionadas. UmAction
é independente, como um event, que abrange não apenas o tipo detalhado e as informações sobre a ação, mas também umActor
, umTarget
e umTimestamp
ouTimeRange
. Para evitar redundância, umaAction
não preenche a própriaTarget
,Actor
ou campos de hora, quando forem iguais ao valor geralDriveActivity
.ActionDetail
: este é o tipo específico e informações detalhadas sobre umaAction
. Por exemplo, O detalhe da açãoMove
tem um local de origem e de destino e umPermissionChange
especifica quem agora pode acessar um documento e com o que para conceder privilégios de acesso.
Exemplos de respostas
Um usuário editou um arquivo no Drive:
Um recurso DriveActivity
simples pode incluir apenas uma ação, como um usuário
sem editar um arquivo.
"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":{} } } ]
}]
Esta saída inclui os seguintes valores:
- ACCOUNT_ID: o ID do usuário. Ele pode ser usado com o API People para ver mais informações.
- ITEM_ID: o código do item do Drive.
- TITLE: o título do item do Google Drive.
Observe que o Action
nessa resposta não inclui Actor
, Target
,
ou TimeStamp
porque são iguais ao DriveActivity
geral.
Dois usuários editaram o mesmo arquivo em momentos semelhantes:
Quando a consolidação está ativada, as ações relacionadas são agrupadas em uma
DriveActivity
: Neste exemplo, duas ações semelhantes são agrupadas: uma Edit
de dois usuários diferentes.
"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 }
}
]
}]
Esta saída inclui os seguintes valores:
- ACCOUNT_ID_1: o ID do primeiro usuário. Ele pode ser usado com a API People para mais informações.
- ACCOUNT_ID_2: o ID do segundo usuário.
- ITEM_ID: o código do item do Drive.
- TITLE: o título do item do Google Drive.
As ações nessa resposta não incluem Target
porque ele é
igual à DriveActivity
geral.
O exemplo também ilustra como os aplicativos podem usar apenas as informações de resumo em
DriveActivity
, sem analisar ações individuais. A resposta
indica que dois usuários editaram um determinado arquivo durante um período.
Um usuário moveu dois arquivos para um novo diretório:
Neste exemplo, a estratégia de consolidação agrupou duas ações Move
relacionadas
porque os arquivos foram movidos da mesma origem para o mesmo destino no
ao mesmo tempo.
"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":{} } }
}
]
}]
Esta saída inclui os seguintes valores:
- ACCOUNT_ID: o ID do usuário. Ele pode ser usado com o API People para ver mais informações.
- ITEM_ID_1: o código do primeiro item do Drive.
- ITEM_ID_2: o código do segundo item do Drive.
- TITLE_1: o título do primeiro item do Drive.
- TITLE_2: o título do segundo item do Drive.
As ações nessa resposta não incluem Actor
nem TimeStamp
.
porque são iguais aos DriveActivity
gerais.