Method: forms.batchUpdate

Modifiez le formulaire à l'aide d'un lot de mises à jour.

Requête HTTP

POST https://forms.googleapis.com/v1/forms/{formId}:batchUpdate

L'URL utilise la syntaxe de transcodage gRPC.

Paramètres de chemin d'accès

Paramètres
formId

string

Obligatoire. ID du formulaire.

Corps de la requête

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

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

boolean

Indique si une version mise à jour du modèle doit être renvoyée dans la réponse.

requests[]

object (Request)

Obligatoire. Requêtes de mise à jour de ce lot.

writeControl

object (WriteControl)

Permet de contrôler la façon dont les requêtes d'écriture sont exécutées.

Corps de la réponse

Réponse à une requête BatchUpdateFormRequest.

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

Représentation JSON
{
  "form": {
    object (Form)
  },
  "replies": [
    {
      object (Response)
    }
  ],
  "writeControl": {
    object (WriteControl)
  }
}
Champs
form

object (Form)

En fonction du champ de requête booléen includeFormInResponse, un formulaire avec toutes les mutations/mises à jour appliquées est renvoyé ou non. Il peut être postérieur à l'ID de révision créé par ces modifications.

replies[]

object (Response)

Réponse aux mises à jour. Cette correspondance est un à un avec les requêtes de mise à jour, bien que les réponses à certaines requêtes puissent être vides.

writeControl

object (WriteControl)

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

Champs d'application des autorisations

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

  • https://www.googleapis.com/auth/drive
  • https://www.googleapis.com/auth/drive.file
  • https://www.googleapis.com/auth/forms.body

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

Requête

Types de demandes de mise à jour que vous pouvez effectuer.

Représentation JSON
{

  // Union field kind can be only one of the following:
  "updateFormInfo": {
    object (UpdateFormInfoRequest)
  },
  "updateSettings": {
    object (UpdateSettingsRequest)
  },
  "createItem": {
    object (CreateItemRequest)
  },
  "moveItem": {
    object (MoveItemRequest)
  },
  "deleteItem": {
    object (DeleteItemRequest)
  },
  "updateItem": {
    object (UpdateItemRequest)
  }
  // End of list of possible types for union field kind.
}
Champs
Champ d'union kind. Type de requête. kind ne peut être qu'un des éléments suivants :
updateFormInfo

object (UpdateFormInfoRequest)

Mettez à jour les informations du formulaire.

updateSettings

object (UpdateSettingsRequest)

Met à jour les paramètres du formulaire.

createItem

object (CreateItemRequest)

Créer un élément.

moveItem

object (MoveItemRequest)

Déplacer un élément vers un emplacement spécifié

deleteItem

object (DeleteItemRequest)

Supprimez un élément.

updateItem

object (UpdateItemRequest)

Mettez à jour un élément.

UpdateFormInfoRequest

Mettez à jour les informations du formulaire.

Représentation JSON
{
  "info": {
    object (Info)
  },
  "updateMask": string
}
Champs
info

object (Info)

Informations à mettre à jour.

updateMask

string (FieldMask format)

Obligatoire. Seules les valeurs nommées dans ce masque sont modifiées. Vous devez spécifier au moins un champ. La racine info est implicite et ne doit pas être spécifiée. Un seul "*" peut être utilisé comme raccourci pour mettre à jour tous les champs.

Il s'agit d'une liste de noms de champs complets séparés par une virgule. Exemple : "user.displayName,photo"

UpdateSettingsRequest

Mettez à jour le FormSettings du formulaire.

Représentation JSON
{
  "settings": {
    object (FormSettings)
  },
  "updateMask": string
}
Champs
settings

object (FormSettings)

Obligatoire. Paramètres à mettre à jour.

updateMask

string (FieldMask format)

Obligatoire. Seules les valeurs nommées dans ce masque sont modifiées. Vous devez spécifier au moins un champ. La racine settings est implicite et ne doit pas être spécifiée. Un seul "*" peut être utilisé comme raccourci pour mettre à jour tous les champs.

Il s'agit d'une liste de noms de champs complets séparés par une virgule. Exemple : "user.displayName,photo"

CreateItemRequest

Créez un élément dans un formulaire.

Représentation JSON
{
  "item": {
    object (Item)
  },
  "location": {
    object (Location)
  }
}
Champs
item

object (Item)

Obligatoire. Élément à créer.

location

object (Location)

Obligatoire. Emplacement du nouvel élément.

Lieu

Emplacement spécifique dans un formulaire.

Représentation JSON
{

  // Union field where can be only one of the following:
  "index": integer
  // End of list of possible types for union field where.
}
Champs
Champ d'union where. Obligatoire. Spécifiez un emplacement dans le formulaire. where ne peut être qu'un des éléments suivants :
index

integer

Indice d'un élément dans le formulaire. Cette valeur doit être comprise dans la plage

[0..N)

N est le nombre d'éléments du formulaire.

MoveItemRequest

Déplacer un élément dans un formulaire

Représentation JSON
{
  "originalLocation": {
    object (Location)
  },
  "newLocation": {
    object (Location)
  }
}
Champs
originalLocation

object (Location)

Obligatoire. Emplacement de l'élément à déplacer.

newLocation

object (Location)

Obligatoire. Nouvel emplacement de l'article.

DeleteItemRequest

Supprimez un élément d'un formulaire.

Représentation JSON
{
  "location": {
    object (Location)
  }
}
Champs
location

object (Location)

Obligatoire. Emplacement de l'élément à supprimer.

UpdateItemRequest

Mettre à jour un élément dans un formulaire

Représentation JSON
{
  "item": {
    object (Item)
  },
  "location": {
    object (Location)
  },
  "updateMask": string
}
Champs
item

object (Item)

Obligatoire. Nouvelles valeurs de l'élément. Notez que les ID d'article et de question sont utilisés s'ils sont fournis (et s'ils figurent dans le masque de champ). Si un ID est vide (et dans le masque de champ), un nouvel ID est généré. Cela signifie que vous pouvez modifier un élément en obtenant le formulaire via forms.get, en modifiant votre copie locale de cet élément comme vous le souhaitez, puis en l'écrivant à nouveau à l'aide de UpdateItemRequest, en conservant les ID (ou non dans le masque de champ).

location

object (Location)

Obligatoire. Zone géographique identifiant l'article à mettre à jour.

updateMask

string (FieldMask format)

Obligatoire. Seules les valeurs nommées dans ce masque sont modifiées.

Il s'agit d'une liste de noms de champs complets séparés par une virgule. Exemple : "user.displayName,photo"

WriteControl

Permet de contrôler la façon dont les requêtes d'écriture sont exécutées.

Représentation JSON
{

  // Union field control can be only one of the following:
  "requiredRevisionId": string,
  "targetRevisionId": string
  // End of list of possible types for union field control.
}
Champs
Champ d'union control. Détermine la révision du formulaire à partir de laquelle les modifications doivent être appliquées et le comportement de la requête si cette révision n'est pas la révision actuelle du formulaire. control ne peut être qu'un des éléments suivants :
requiredRevisionId

string

ID de révision du formulaire auquel la requête d'écriture s'applique. Si ce n'est pas la dernière version du formulaire, la requête n'est pas traitée et renvoie une erreur 400 de requête incorrecte.

targetRevisionId

string

ID de révision cible du formulaire auquel la requête d'écriture s'applique.

Si des modifications ont été apportées après cette révision, les modifications de cette demande de mise à jour sont transformées en fonction de ces modifications. Une nouvelle version du formulaire est alors générée, qui intègre à la fois les modifications de la requête et les modifications intermédiaires, et le serveur résout les modifications contradictoires.

L'ID de révision cible ne peut être utilisé que pour écrire dans les versions récentes d'un formulaire. Si la révision cible est trop éloignée de la dernière révision, la requête n'est pas traitée et renvoie un code d'erreur 400 (Erreur de requête incorrecte). La requête peut être réessayée après avoir lu la dernière version du formulaire. Dans la plupart des cas, un ID de révision cible reste valide pendant plusieurs minutes après avoir été lu, mais pour les formulaires fréquemment modifiés, cette période peut être plus courte.

Réponse

Une seule réponse d'une mise à jour.

Représentation JSON
{

  // Union field kind can be only one of the following:
  "createItem": {
    object (CreateItemResponse)
  }
  // End of list of possible types for union field kind.
}
Champs
Champ d'union kind. Type de réponse. kind ne peut être qu'un des éléments suivants :
createItem

object (CreateItemResponse)

Résultat de la création d'un élément.

CreateItemResponse

Résultat de la création d'un élément.

Représentation JSON
{
  "itemId": string,
  "questionId": [
    string
  ]
}
Champs
itemId

string

ID de l'élément créé.

questionId[]

string

ID de la question créée dans le cadre de cet élément. Pour un groupe de questions, il liste les ID de toutes les questions créées pour cet élément.