Bouton d'intégration avec l'interface utilisateur de Drive

Lorsqu'un utilisateur clique sur le bouton « Nouveau » de l'interface utilisateur Drive et sélectionne une application dans l' interface utilisateur Drive, Drive le redirige vers la nouvelle URL de cette application définie dans Configurer une intégration de l'interface utilisateur Drive.

Votre application reçoit ensuite un ensemble par défaut de variables de modèle dans un state paramètre. Les informations state par défaut pour une nouvelle URL sont les suivantes :

{
  "action":"create",
  "folderId":"FOLDER_ID",
  "folderResourceKey":"FOLDER_RESOURCE_KEY",
  "userId":"USER_ID"
}

Ce résultat inclut les valeurs suivantes :

Votre application doit répondre à cette requête en procédant comme suit :

  1. Vérifiez que le champ action a la valeur create.
  2. Utilisez la valeur userId pour créer une session pour l'utilisateur. Pour en savoir plus sur les utilisateurs connectés, consultez la section Utilisateurs et nouveaux événements.
  3. Utilisez la méthode files.create pour créer une ressource de fichier. Si folderId a été défini dans la requête, définissez le champ parents sur la valeur folderId.
  4. Si folderResourceKey a été défini dans la requête, définissez l'en-tête de requête X-Goog-Drive-Resource-Keys. Pour en savoir plus sur les clés de ressource, consultez la section Accéder aux fichiers partagés par lien à l'aide de clés de ressource.

Le paramètre state est encodé au format URL. Votre application doit donc gérer les caractères d'échappement et l'analyser au format JSON.

Utilisateurs et nouveaux événements

Les applications Drive doivent traiter tous les événements "create" comme des connexions potentielles. Certains utilisateurs peuvent avoir plusieurs comptes. L'ID utilisateur dans le paramètre state peut donc ne pas correspondre à la session actuelle. Si l'ID utilisateur dans le paramètre state ne correspond pas à la session actuelle, mettez fin à la session actuelle pour votre application et connectez-vous en tant qu'utilisateur demandé.