En esta guía, se explican los componentes principales de una respuesta en la API de Google Drive Activity. con ejemplos y cómo interpretarlos.
Objetos
DriveActivity
: Este es el recurso principal devuelto por las consultas a la API de Drive Activity. Integra describe a uno o más actores que realizan una o más acciones que afectan a uno o más objetivos.Timestamp
yTimeRange
: Estas describen, respectivamente, un único punto en el tiempo cuando la actividad o el inicio y el final del momento en que la actividad ocurrió durante un intervalo de tiempo.Actor
: Por lo general, unActor
es un usuario final. Sin embargo, en ocasiones, un evento del sistema puede activarAction
cuando un administrador actúa como usuario o como ellos mismos, o cuando lo realiza una persona no identificable. El El mensajeActor
encapsula cada uno de estos casos.Target
: UnTarget
es el objeto. de una actividad, como un archivo, una carpeta, una unidad compartida o el comentario de un archivo. Ten en cuenta que muchos tipos de acción admiten más de un tipo de objetivo. Para Por ejemplo, aunqueEdit
generalmente se aplica a archivos de Drive, otras las acciones comoRename
yCreate
también se pueden aplicar a Drive carpetas y unidades compartidas. Destinos que no son elementos de Drive pueden hacer referencia a una, como la carpeta raíz de una unidad o la carpeta documento que contenga un comentario en el archivo.Action
: CadaDriveActivity
recurso tiene una o más acciones relacionadas. UnAction
es independiente, como un evento, en el sentido de que comprende no solo el tipo detallado y la información acerca de la acción, pero también unActor
, unTarget
y unTimestamp
oTimeRange
. Para evitar la redundancia, un objetoAction
no propaga su propioTarget
,Actor
o campos de tiempo cuando sean iguales al valor generalDriveActivity
ActionDetail
: Este es el un tipo específico y también información detallada sobre unAction
. Por ejemplo, un El detalle de la acción deMove
tiene una ubicación de origen y una de destino, y unaPermissionChange
especifica quién puede acceder a un documento ahora y con qué privilegios.
Respuestas de ejemplo
Un usuario editó un archivo en Drive:
Un recurso DriveActivity
simple puede incluir solo una acción, como un usuario
editar un archivo.
"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":{} } } ]
}]
En esta salida, se incluyen los siguientes valores:
- ACCOUNT_ID: Es el ID del usuario. Se puede utilizar con el API de People para obtener más información.
- ITEM_ID: Es el ID del elemento de Drive.
- TITLE: Es el título del elemento de Drive.
Ten en cuenta que el Action
de esta respuesta no incluye Actor
, Target
ni
o TimeStamp
porque son iguales a las DriveActivity
generales.
Dos usuarios editaron el mismo archivo en momentos similares:
Cuando se activa la consolidación, las acciones relacionadas se agrupan en una
DriveActivity
En este ejemplo, se agrupan 2 acciones similares: una Edit
el tipo de acción de 2 usuarios 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 }
}
]
}]
En esta salida, se incluyen los siguientes valores:
- ACCOUNT_ID_1: Es el ID del primer usuario. Se puede usar con la API de People para obtener más información.
- ACCOUNT_ID_2: Es el ID del segundo usuario.
- ITEM_ID: Es el ID del elemento de Drive.
- TITLE: Es el título del elemento de Drive.
Ten en cuenta que las acciones de esta respuesta no incluyen el Target
porque es
igual que el DriveActivity
general.
El ejemplo también ilustra cómo las aplicaciones podrían usar solo la información resumida en
DriveActivity
sin mirar las acciones individuales. La respuesta
indica que 2 usuarios editaron un archivo determinado durante un período.
Un usuario movió 2 archivos a un directorio nuevo:
En este ejemplo, la estrategia de consolidación agrupó 2 acciones de Move
relacionadas
porque los archivos se movieron de la misma fuente al mismo destino en
mismo tiempo.
"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":{} } }
}
]
}]
En esta salida, se incluyen los siguientes valores:
- ACCOUNT_ID: Es el ID del usuario. Se puede utilizar con el API de People para obtener más información.
- ITEM_ID_1: Es el ID del primer elemento de Drive.
- ITEM_ID_2: Es el ID del segundo elemento de Drive.
- TITLE_1: Es el título del primer elemento de Drive.
- TITLE_2: Es el título del segundo elemento de Drive.
Ten en cuenta que las acciones de esta respuesta no incluyen Actor
ni TimeStamp
.
porque son iguales a los DriveActivity
generales.