Document

Ce guide présente des concepts tels que les principales méthodes qui composent l'API Google Docs, la manière d'accéder à un document et le workflow de création d'un document.

Méthodes d'API

La ressource documents fournit des méthodes permettant d'appeler l'API Docs. Les méthodes suivantes vous permettent de créer, lire et mettre à jour des documents Docs:

  • Utilisez la méthode documents.create pour créer un document.
  • Utilisez la méthode documents.get pour récupérer le contenu d'un document spécifié.
  • Utilisez la méthode documents.batchUpdate pour effectuer de manière atomique un ensemble de mises à jour sur un document spécifié.

Les méthodes documents.get et documents.batchUpdate nécessitent un documentId comme paramètre pour spécifier le document cible. La méthode documents.create renvoie une instance du document créé, à partir de laquelle vous pouvez lire le documentId. Pour en savoir plus sur les requêtes et les méthodes de réponse de l'API Docs, consultez la section Requêtes et réponses.

ID du document

documentId est l'identifiant unique du document. Il peut être dérivé de l'URL d'un document. Il s'agit d'une chaîne particulière contenant des lettres, des chiffres et des caractères spéciaux. Les ID de document sont stables, même si le nom du document change.

https://docs.google.com/document/d/DOCUMENT_ID/edit

L'expression régulière suivante peut être utilisée pour extraire le documentId d'une URL Google Docs:

/document/d/([a-zA-Z0-9-_]+)

Si vous connaissez l'API Google Drive, documentId correspond à id dans la ressource files.

Gérez des documents dans Google Drive.

Les fichiers Docs sont stockés dans Google Drive, notre service de stockage dans le cloud. Bien que l'API Docs dispose de ses propres méthodes autonomes, il est souvent nécessaire d'utiliser également celles de l'API Google Drive pour interagir avec les fichiers Docs d'un utilisateur. Par exemple, pour copier des fichiers Docs, utilisez la méthode files.copy de l'API Drive. Pour en savoir plus, consultez la section Copier un document existant.

Par défaut, lorsque vous utilisez l'API Docs, un nouveau document est enregistré dans le dossier racine de l'utilisateur sur Drive. Il existe des options pour enregistrer un fichier dans un dossier Drive. Pour en savoir plus, consultez Utiliser des dossiers Google Drive.

Travailler avec des fichiers Docs

Pour récupérer un document du dossier Mon Drive d'un utilisateur, il est souvent nécessaire d'utiliser d'abord la méthode files.list de Drive afin de récupérer l'ID d'un fichier. L'appel de la méthode sans paramètre renvoie une liste de tous les fichiers et dossiers, y compris les ID, pour l'utilisateur.

Le type MIME d'un document indique le type et le format des données. Le format de type MIME pour Docs est application/vnd.google-apps.document. Pour obtenir la liste des types MIME, consultez Types MIME pris en charge par Google Workspace et Google Drive.

Pour effectuer une recherche par type MIME uniquement pour les fichiers Docs dans Mon Drive, ajoutez le filtre de chaîne de requête suivant:

q: mimeType = 'application/vnd.google-apps.document'

Pour en savoir plus sur les filtres de chaîne de requête, consultez la section Rechercher des fichiers et des dossiers.

Une fois que vous connaissez documentId, utilisez la méthode documents.get pour récupérer une instance complète du document spécifié. Pour en savoir plus, consultez la section Requêtes et réponses.

Pour exporter le contenu d'octets d'un document Google Workspace, utilisez la méthode files.export de Drive avec l'documentId du fichier à exporter et le type MIME d'exportation approprié. Pour en savoir plus, consultez Exporter le contenu de documents Google Workspace.

Comparez les méthodes Get et List.

Le tableau suivant décrit les différences entre les méthodes Drive et Docs, ainsi que les données renvoyées avec chacune:

Opérateur Description Utilisation
drive.files.get Récupère les métadonnées d'un fichier par identifiant. Renvoie une instance de la ressource files. Obtenir les métadonnées d'un fichier spécifique
drive.files.list Récupère les fichiers d'un utilisateur. Renvoie une liste de fichiers. Obtenez la liste des fichiers utilisateur lorsque vous ne savez pas lequel modifier.
docs.documents.get Récupère la dernière version du document spécifié, y compris la mise en forme et le texte. Renvoie une instance de la ressource documents. Récupérez le document correspondant à un ID de document spécifique.

Workflow de création de documents

La création et le remplissage d'un document sont simples, car il n'y a aucun contenu existant à prendre en compte et aucun collaborateur ne peut modifier l'état du document. Conceptuellement, cela fonctionne comme illustré dans le schéma de séquence suivant:

Workflow pour créer et
remplir un nouveau document.
Figure 1 : Workflow de création et de remplissage d'un nouveau document.

Dans la figure 1, un utilisateur interagissant avec la ressource documents dispose du flux d'informations suivant:

  1. Une application appelle la méthode documents.create sur un serveur Web.
  2. Le serveur Web envoie une réponse HTTP qui contient une instance du document créé en tant que ressource documents.
  3. L'application peut éventuellement appeler la méthode documents.batchUpdate pour effectuer de manière atomique un ensemble de requêtes de modification afin de renseigner des données dans le document.
  4. Le serveur Web envoie une réponse HTTP. Certaines méthodes documents.batchUpdate fournissent un corps de réponse avec des informations sur les requêtes appliquées, tandis que d'autres affichent une réponse vide.

Workflow de mise à jour des documents

Il est plus complexe de mettre à jour un document existant. Avant de pouvoir effectuer des appels significatifs pour mettre à jour un document, vous devez connaître son état actuel: quels sont ses éléments, quel est leur contenu et leur ordre dans le document. Le schéma séquentiel suivant illustre ce fonctionnement:

Workflow de mise à jour d'un document.
Figure 2 : Workflow de mise à jour d'un document.

Dans la figure 2, le flux d'informations d'un utilisateur interagissant avec la ressource documents est le suivant:

  1. Une application appelle la méthode documents.get sur un serveur Web, avec le documentId du fichier à rechercher.
  2. Le serveur Web envoie une réponse HTTP qui contient une instance du document spécifié en tant que ressource documents. Le fichier JSON renvoyé contient le contenu du document, sa mise en forme et d'autres fonctionnalités.
  3. L'application analyse le fichier JSON afin que l'utilisateur puisse déterminer le contenu ou le format à mettre à jour.
  4. L'application appelle la méthode documents.batchUpdate pour effectuer de manière atomique un ensemble de requêtes de modification visant à mettre à jour le document.
  5. Le serveur Web envoie une réponse HTTP. Certaines méthodes documents.batchUpdate fournissent un corps de réponse avec des informations sur les requêtes appliquées, tandis que d'autres affichent une réponse vide.

Ce schéma ne prend pas en compte les workflows dans lesquels des mises à jour simultanées sont effectuées par d'autres collaborateurs dans le même document. Pour en savoir plus, consultez la section sur les bonnes pratiques Planifier la collaboration.