Method: documents.batchUpdate

Applique une ou plusieurs mises à jour au document.

Chaque request est validée avant d'être appliquée. Si une requête n'est pas valide, l'ensemble de la requête échouera et rien ne sera appliqué.

Certaines demandes sont accompagnées de replies pour vous donner des informations sur leur application. Les autres requêtes n'ont pas besoin de renvoyer d'informations. Elles renvoient chacune une réponse vide. L'ordre des réponses correspond à celui des requêtes.

Par exemple, supposons que vous appeliez batchUpdate avec quatre mises à jour, et que seule la troisième renvoie des informations. La réponse comporterait deux réponses vides, la réponse à la troisième demande et une autre réponse vide, dans cet ordre.

Étant donné que d'autres utilisateurs peuvent modifier le document, il est possible qu'il ne reflète pas exactement vos modifications. En effet, vos modifications peuvent être modifiées par rapport à celles des collaborateurs. Si aucun collaborateur n'est associé au document, vos modifications devraient s'y refléter. Dans tous les cas, les modifications apportées à votre demande sont garanties d'être appliquées ensemble de manière atomique.

Requête HTTP

POST https://docs.googleapis.com/v1/documents/{documentId}:batchUpdate

L'URL utilise la syntaxe de transcodage gRPC.

Paramètres de chemin d'accès

Paramètres
documentId

string

ID du document à mettre à jour.

Corps de la requête

Le corps de la requête contient des données présentant la structure suivante :

Représentation JSON
{
  "requests": [
    {
      object (Request)
    }
  ],
  "writeControl": {
    object (WriteControl)
  }
}
Champs
requests[]

object (Request)

Liste des mises à jour à appliquer au document.

writeControl

object (WriteControl)

Permet de contrôler l'exécution des requêtes d'écriture.

Corps de la réponse

Message de réponse d'une requête documents.batchUpdate.

Si la requête aboutit, le corps de la réponse contient des données qui ont la structure suivante :

Représentation JSON
{
  "documentId": string,
  "replies": [
    {
      object (Response)
    }
  ],
  "writeControl": {
    object (WriteControl)
  },
  "suggestionResponses": [
    {
      object (SuggestionResponse)
    }
  ],
  "commentUpdateState": enum (CommentUpdateState)
}
Champs
documentId

string

ID du document auquel les modifications ont été appliquées.

replies[]

object (Response)

Réponse aux actualités. Cette valeur correspond aux mises à jour, même si les réponses à certaines requêtes peuvent être vides.

writeControl

object (WriteControl)

Contrôle d'écriture mis à jour après l'application de la requête.

suggestionResponses[]

object (SuggestionResponse)

Les suggestions concernées par chaque mise à jour. Cette valeur correspond exactement aux mises à jour.

commentUpdateState

enum (CommentUpdateState)

Indique si les modifications apportées aux commentaires ont été appliquées dans la requête par lot.

Champs d'application des autorisations

Nécessite l'un des champs d'application OAuth suivants :

  • https://www.googleapis.com/auth/documents
  • https://www.googleapis.com/auth/drive
  • https://www.googleapis.com/auth/drive.file

Pour en savoir plus, consultez le guide d'autorisation.

WriteControl

Permet de contrôler l'exécution des requêtes d'écriture.

Représentation JSON
{
  "writeMode": enum (WriteMode),

  "requiredRevisionId": string,
  "targetRevisionId": string
}
Champs
writeMode

enum (WriteMode)

La façon dont les mises à jour de la demande doivent être appliquées au document.

Si aucune valeur n'est spécifiée, les mises à jour des demandes seront appliquées comme des modifications normales.

Champ d'union control. Détermine la révision du document dans laquelle écrire et le comportement de la requête si cette révision n'est pas la révision actuelle du document. Si aucun champ n'est spécifié, les modifications sont appliquées à la dernière révision. control ne peut être qu'un des éléments suivants :
requiredRevisionId

string

revision ID facultatif du document auquel la requête d'écriture est appliquée. Si ce n'est pas la dernière révision du document, la requête n'est pas traitée et renvoie une erreur 400 (requête incorrecte).

Lorsqu'un ID de révision requis est renvoyé dans une réponse, il indique l'ID de révision du document après l'application de la requête.

targetRevisionId

string

revision ID cible facultative du document auquel la requête d'écriture est appliquée.

Si des modifications ont été apportées par des collaborateurs après la lecture du document à l'aide de l'API, les modifications produites par cette requête d'écriture sont appliquées aux modifications apportées par les collaborateurs. Cela entraîne la création d'une nouvelle révision du document qui intègre à la fois les modifications apportées par le collaborateur et celles de la demande, le serveur Docs résolvant les conflits. Lorsque vous utilisez l'ID de révision cible, le client API peut être considéré comme un autre collaborateur du document.

L'ID de révision cible ne peut être utilisé que pour écrire dans les versions récentes d'un document. Si la révision cible est trop ancienne par rapport à la dernière révision, la requête n'est pas traitée et renvoie une erreur 400 (requête incorrecte). La requête doit être relancée après récupération de la dernière version du document. En général, un ID de révision reste valide en tant que révision cible pendant plusieurs minutes après sa lecture, mais cette période peut être plus courte pour les documents fréquemment modifiés.

WriteMode

Détermine comment les mises à jour des demandes doivent être appliquées au document.

Enums
WRITE_MODE_UNSPECIFIED Le mode d'écriture n'est pas spécifié. Le comportement par défaut est EDIT.
EDIT Appliquez toutes les mises à jour comme des modifications normales.
SUGGEST Appliquez toutes les mises à jour en tant que suggestions.

SuggestionResponse

Suggestions concernées par une mise à jour donnée.

Représentation JSON
{
  "createdSuggestionIds": [
    string
  ],
  "updatedSummarySuggestionIds": [
    string
  ],
  "deletedSuggestionIds": [
    string
  ],
  "acceptedSuggestionIds": [
    string
  ],
  "rejectedSuggestionIds": [
    string
  ]
}
Champs
createdSuggestionIds[]

string

ID des suggestions créées lors de la mise à jour.

updatedSummarySuggestionIds[]

string

ID des suggestions dont les résumés ont été mis à jour.

deletedSuggestionIds[]

string

ID des suggestions supprimées lors de la mise à jour.

acceptedSuggestionIds[]

string

ID des suggestions acceptées lors de la mise à jour.

rejectedSuggestionIds[]

string

ID des suggestions refusées lors de la mise à jour.

CommentUpdateState

État des mises à jour des commentaires dans la requête par lot.

Enums
COMMENT_UPDATE_STATE_UNSPECIFIED L'état des mises à jour des commentaires n'est pas spécifié.
NO_UPDATES_REQUESTED Aucune mise à jour de commentaire n'a été demandée dans la requête par lot.
ALL_SAVED Toutes les modifications demandées pour les commentaires ont été appliquées dans la requête par lot.
ALL_FAILED_UNKNOWN_REASON Échec de toutes les modifications demandées pour les commentaires.