Method: forms.batchUpdate

Altere o formulário com um lote de atualizações.

Solicitação HTTP

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

O URL usa a sintaxe de transcodificação gRPC.

Parâmetros de caminho

Parâmetros
formId

string

Obrigatório. O ID do formulário.

Corpo da solicitação

O corpo da solicitação contém dados com a seguinte estrutura:

Representação JSON
{
  "includeFormInResponse": boolean,
  "requests": [
    {
      object (Request)
    }
  ],
  "writeControl": {
    object (WriteControl)
  }
}
Campos
includeFormInResponse

boolean

Define se uma versão atualizada do modelo será retornada na resposta.

requests[]

object (Request)

Obrigatório. As solicitações de atualização deste lote.

writeControl

object (WriteControl)

Fornece controle sobre como as solicitações de gravação são executadas.

Corpo da resposta

Resposta a um BatchUpdateFormRequest.

Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:

Representação JSON
{
  "form": {
    object (Form)
  },
  "replies": [
    {
      object (Response)
    }
  ],
  "writeControl": {
    object (WriteControl)
  }
}
Campos
form

object (Form)

Com base no campo de solicitação booleana includeFormInResponse, um formulário com todas as mutações/atualizações aplicadas é retornado ou não. Pode ser posterior ao ID de revisão criado por essas alterações.

replies[]

object (Response)

A resposta das atualizações. Isso é mapeado individualmente com as solicitações de atualização, embora as respostas a algumas possam estar vazias.

writeControl

object (WriteControl)

O controle de gravação atualizado após a aplicação da solicitação.

Escopos de autorização

Requer um dos seguintes escopos do OAuth:

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

Para mais informações, consulte o Guia de autorização.

Solicitação

Os tipos de solicitações de atualização que podem ser feitas.

Representação 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.
}
Campos
Campo de união kind. O tipo de solicitação. kind pode ser apenas de um dos tipos a seguir:
updateFormInfo

object (UpdateFormInfoRequest)

Atualize as informações do formulário.

updateSettings

object (UpdateSettingsRequest)

Atualiza as configurações do formulário.

createItem

object (CreateItemRequest)

Cria um novo item.

moveItem

object (MoveItemRequest)

Mova um item para um local específico.

deleteItem

object (DeleteItemRequest)

Excluir um item

updateItem

object (UpdateItemRequest)

Atualizar um item.

UpdateFormInfoRequest

Atualize as informações do formulário.

Representação JSON
{
  "info": {
    object (Info)
  },
  "updateMask": string
}
Campos
info

object (Info)

As informações a serem atualizadas.

updateMask

string (FieldMask format)

Obrigatório. Somente valores nomeados nessa máscara são alterados. É necessário especificar pelo menos um campo. A raiz info está implícita e não precisa ser especificada. Um único "*" pode ser usado como atalho para atualizar cada campo.

É uma lista separada por vírgulas de nomes de campos totalmente qualificados. Exemplo: "user.displayName,photo".

UpdateSettingsRequest

Atualize o FormSettings do formulário.

Representação JSON
{
  "settings": {
    object (FormSettings)
  },
  "updateMask": string
}
Campos
settings

object (FormSettings)

Obrigatório. As configurações a serem atualizadas.

updateMask

string (FieldMask format)

Obrigatório. Somente valores nomeados nessa máscara são alterados. É necessário especificar pelo menos um campo. A raiz settings está implícita e não precisa ser especificada. Um único "*" pode ser usado como atalho para atualizar cada campo.

É uma lista separada por vírgulas de nomes de campos totalmente qualificados. Exemplo: "user.displayName,photo".

CreateItemRequest

Crie um item em um formulário.

Representação JSON
{
  "item": {
    object (Item)
  },
  "location": {
    object (Location)
  }
}
Campos
item

object (Item)

Obrigatório. Item a ser criado.

location

object (Location)

Obrigatório. Onde colocar o novo item.

Local

Um local específico em um formulário.

Representação JSON
{

  // Union field where can be only one of the following:
  "index": integer
  // End of list of possible types for union field where.
}
Campos
Campo de união where. Obrigatório. Especifique um local no formulário. where pode ser apenas de um dos tipos a seguir:
index

integer

O índice de um item no formato. Precisa estar no intervalo

[0..N)

, em que N é o número de itens no formulário.

MoveItemRequest

Mover um item em um formulário.

Representação JSON
{
  "originalLocation": {
    object (Location)
  },
  "newLocation": {
    object (Location)
  }
}
Campos
originalLocation

object (Location)

Obrigatório. Local do item que será movido.

newLocation

object (Location)

Obrigatório. O novo local do item.

DeleteItemRequest

Excluir um item de um formulário.

Representação JSON
{
  "location": {
    object (Location)
  }
}
Campos
location

object (Location)

Obrigatório. Local do item a ser excluído.

UpdateItemRequest

Atualizar um item em um formulário.

Representação JSON
{
  "item": {
    object (Item)
  },
  "location": {
    object (Location)
  },
  "updateMask": string
}
Campos
item

object (Item)

Obrigatório. Novos valores para o item. Os IDs do item e da pergunta serão usados se forem fornecidos e estiverem na máscara de campo. Se um ID estiver em branco (e na máscara de campo), um novo ID será gerado. Isso significa que você pode modificar um item recebendo o formulário por forms.get, modificando sua cópia local desse item para que fique como você quer e usando UpdateItemRequest para gravá-lo, com os IDs sendo os mesmos (ou não na máscara de campo).

location

object (Location)

Obrigatório. Local que identifica o item a ser atualizado.

updateMask

string (FieldMask format)

Obrigatório. Somente valores nomeados nessa máscara são alterados.

É uma lista separada por vírgulas de nomes de campos totalmente qualificados. Exemplo: "user.displayName,photo".

WriteControl

Fornece controle sobre como as solicitações de gravação são executadas.

Representação 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.
}
Campos
Campo de união control. Determina a revisão do formulário a partir do qual as alterações devem ser aplicadas e como a solicitação deverá se comportar se essa revisão não for a revisão atual do formulário. control pode ser apenas de um dos tipos a seguir:
requiredRevisionId

string

O ID da revisão do formulário ao qual a solicitação de gravação é aplicada. Se esta não for a revisão mais recente do formulário, a solicitação não será processada e retornará um erro de solicitação 400 inválida.

targetRevisionId

string

O ID da revisão de destino do formulário ao qual a solicitação de gravação é aplicada.

Se ocorreram alterações após essa revisão, as alterações na solicitação de atualização serão transformadas em relação a essas alterações. Isso resulta em uma nova revisão do formulário que incorpora as alterações na solicitação e as alterações intermediárias, com o servidor resolvendo as alterações conflitantes.

O ID da revisão de destino só pode ser usado para gravar em versões recentes de um formulário. Se a revisão de destino estiver muito atrasada em relação à revisão mais recente, a solicitação não será processada e retornará um erro 400 (Erro de solicitação inválida). A solicitação poderá ser repetida após a leitura da versão mais recente do formulário. Na maioria dos casos, um ID de revisão de destino permanece válido por vários minutos após a leitura. No entanto, para formulários editados com frequência, essa janela pode ser menor.

Resposta

Uma única resposta de uma atualização.

Representação JSON
{

  // Union field kind can be only one of the following:
  "createItem": {
    object (CreateItemResponse)
  }
  // End of list of possible types for union field kind.
}
Campos
Campo de união kind. O tipo de resposta. kind pode ser apenas de um dos tipos a seguir:
createItem

object (CreateItemResponse)

O resultado da criação de um item.

CreateItemResponse

O resultado da criação de um item.

Representação JSON
{
  "itemId": string,
  "questionId": [
    string
  ]
}
Campos
itemId

string

ID do item criado.

questionId[]

string

O ID da pergunta criada como parte do item. Para um grupo de perguntas, ele lista os IDs de todas as perguntas criadas para o item.