API Reports: rapport sur l'activité Drive

Le rapport sur l'activité Drive fournit des informations sur les activités de vos utilisateurs lorsqu'ils gèrent, modifient et partagent des fichiers sur Google Drive dans Google Workspace. Par exemple, vous pouvez utiliser le rapport d'activité Drive pour obtenir la liste de tous les nouveaux documents Drive créés par un utilisateur donné sur une période donnée. Ces informations vous permettent d'améliorer la gestion de contenu et d'éventuelles fuites de données. Pour obtenir un rapport, vous devez utiliser la requête de point de terminaison de rapport de base avec des paramètres spécifiques au rapport, tels que l'adresse e-mail d'un utilisateur ou un type spécifique de modification de Google Drive. Les rapports peuvent inclure les données des 180 derniers jours maximum.

Le rapport d'activité Google Drive ne peut être utilisé qu'à des fins légales dans les comptes auxquels une licence a été attribuée.

Pour en savoir plus sur les chaînes de requête de la requête et les propriétés de la réponse, consultez la documentation de référence de l'API. Pour en savoir plus sur des événements spécifiques liés à Google Drive, consultez Noms des événements Drive.

Récupérer les événements Google Drive pour un domaine

Le rapport d'activité Drive vous permet de répertorier des informations sur vos documents Drive. Par exemple, vous pouvez demander un rapport listant les 25 événements Drive les plus récents de votre compte, couvrant jusqu'à 180 jours. Pour obtenir ce rapport, obtenez un jeton d'autorisation comme décrit dans le guide d'autorisation, puis utilisez la requête HTTP GET suivante:

GET https://admin.googleapis.com/admin/reports/v1/activity/users/all
/applications/drive?maxResults=25

Vous trouverez un exemple de réponse à cet appel d'API.

L'exemple suivant récupère un rapport de tous les événements Drive des 180 derniers jours, soit la période maximale.

GET https://admin.googleapis.com/admin/reports/v1/activity/users/all
/applications/drive

Récupérer des événements Google Drive par utilisateur

Pour récupérer un rapport sur les activités Google Drive d'un utilisateur donné, utilisez une requête HTTP GET avec le jeton d'autorisation décrit dans le guide sur les autorisations. Le champ userKey correspond à l'adresse e-mail principale de l'utilisateur dans le rapport ou all pour tous les utilisateurs.

L'exemple suivant récupère un rapport listant toutes les modifications apportées par l'utilisateur spécifié. Pour obtenir un exemple de réponse d'API, consultez l'exemple de réponse JSON.

GET https://admin.googleapis.com/admin/reports/v1/activity/users/kim@example.com
/applications/drive

Récupérer les événements Google Drive pour les Drive partagés

Vous pouvez récupérer un rapport des activités Google Drive pour un Drive partagé spécifique à l'aide d'une requête HTTP GET avec le jeton d'autorisation décrit dans le guide d'autorisation. Indiquez l'adresse e-mail de l'utilisateur pour lequel vous souhaitez générer le rapport dans le champ userKey, ou spécifiez all pour générer le rapport sur tous les utilisateurs.

L'exemple suivant récupère un rapport de toutes les modifications apportées à un Drive partagé spécifique. Pour obtenir un exemple de réponse d'API, consultez l'exemple de réponse JSON.

GET https://admin.googleapis.com/admin/reports/v1/activity/users/all
/applications/drive?filters=shared_drive_id==<id of shared drive>

Pour récupérer les événements d'un Drive partagé, filtrez-les à l'aide de doc_type. L'exemple suivant récupère les événements qui affectent tous les Drive partagés:

GET https://admin.googleapis.com/admin/reports/v1/activity/users/all
/applications/drive?filters=doc_type=shared_drive

Pour récupérer les événements liés aux modifications d'appartenance, spécifiez l'événement shared_drive_membership_change. L'exemple suivant récupère tous les ajouts de membres aux Drive partagés:

GET https://admin.googleapis.com/admin/reports/v1/activity/users/all
/applications/drive?evetName=shared_drive_membership_change&
filters=membership_change_type==add_to_shared_drive

Récupérer des événements Google Drive par type d'événement

Pour récupérer un rapport de toutes les instances d'un type d'événement spécifique, comme la création ou la modification d'un document, utilisez une requête HTTP GET avec le jeton d'autorisation décrit dans le guide d'autorisation. Le champ userKey correspond à l'adresse e-mail principale de l'utilisateur dans le rapport ou all pour tous les utilisateurs.

L'exemple suivant récupère un rapport sur toutes les activités de création de documentation sur un compte. Pour obtenir un exemple de réponse d'API, consultez l'exemple de réponse JSON:

GET https://admin.googleapis.com/admin/reports/v1/activity/users/all
/applications/drive?eventName=create

Exemple de réponse JSON

Lorsque vous envoyez une requête HTTP GET à l'API, une réponse réussie renvoie un code d'état HTTP 200. Avec le code d'état, la réponse renvoie un rapport pour le Drive. Ces rapports sont également disponibles dans la console d'administration. Pour en savoir plus, consultez le Centre d'aide pour les administrateurs Google Workspace. Pour en savoir plus sur eventName, consultez la documentation de référence sur les noms d'événements Drive. Pour en savoir plus sur les chaînes de requête de la requête et les propriétés de la réponse, consultez la documentation de référence de l'API.

{
 "kind": "reports#auditActivities",
 "nextPageToken": "next page's token",
 "items": [
  {
   "kind": "audit#activity",
   "id": {
    "time": "2014-03-17T15:39:18.460Z",
    "uniqQualifier": "report's unique ID",
    "applicationName": "drive",
    "customerId": "ABC123xyz"
   },
   "actor": {
   "callerType": "USER",
   "email": "kim@example.com",
   "profileId": "user's unique Google Workspace profile ID",
   "key": "consumer key of requestor in an OAuth 2LO request"
   },
   "ownerDomain": "domain of the source owner",
   "ipAddress": "user's IP address",
   "events": [
    {
     "type": "access",
     "name": "edit",
     "parameters": [
      {
        "name": "primary_event",
        "boolValue": true
      },
      {
        "name": "owner_is_shared_drive",
        "boolValue": false
      },      {
        "name": "doc_id",
        "value": "1DWuYM3ot_sAyEQqOz0xWJ9bVMSYzOmRNeBqbgtSwuK8"
      },
      {
        "name": "doc_title",
        "value": "Meeting notes"
      },
      {
        "name": "doc_type",
        "value": "document"
      },
      {
        "name": "owner",
        "value": "mary@example.com"
      }
      ]
     }
    ]
   },
  ]
 }