REST Resource: forms

Recurso: Form

Um documento do Formulários Google. Um formulário é criado no Drive. A exclusão de um formulário ou a alteração das proteções de acesso são feitas por meio da Drive API.

Representação JSON
{
  "formId": string,
  "info": {
    object (Info)
  },
  "settings": {
    object (FormSettings)
  },
  "items": [
    {
      object (Item)
    }
  ],
  "revisionId": string,
  "responderUri": string,
  "linkedSheetId": string
}
Campos
formId

string

Apenas saída. O ID do formulário.

info

object (Info)

Obrigatório. O título e a descrição do formulário.

settings

object (FormSettings)

As configurações do formulário. Isso precisa ser atualizado com UpdateSettingsRequest. Ele é ignorado durante forms.create e UpdateFormInfoRequest.

items[]

object (Item)

Obrigatório. Uma lista dos itens do formulário, que pode incluir cabeçalhos de seção, perguntas, mídia incorporada etc.

revisionId

string

Apenas saída. O ID de revisão do formulário. Usado no WriteControl em solicitações de atualização para identificar a revisão em que as mudanças foram baseadas.

O formato do ID de revisão pode mudar com o tempo. Por isso, ele deve ser tratado de forma opaca. Um código de revisão retornado só é válido por 24 horas depois de ser retornado e não pode ser compartilhado entre usuários. Se o ID de revisão não for alterado entre as chamadas, o formulário não foi alterado. Por outro lado, um ID alterado (para o mesmo formulário e usuário) geralmente significa que o formulário foi atualizado. No entanto, um ID alterado também pode ser devido a fatores internos, como alterações no formato do ID.

responderUri

string

Apenas saída. O URI do formulário para compartilhar com os participantes. Isso abre uma página na qual o usuário pode enviar respostas, mas não pode editar as perguntas.

linkedSheetId

string

Apenas saída. O ID da planilha Google vinculada que está acumulando respostas deste formulário (se houver uma planilha).

Informações

As informações gerais de um formulário.

Representação JSON
{
  "title": string,
  "documentTitle": string,
  "description": string
}
Campos
title

string

Obrigatório. É o título do formulário visível para os participantes.

documentTitle

string

Apenas saída. O título do documento visível no Drive. Se Info.title estiver vazio, documentTitle poderá aparecer na IU do Formulários Google e ficar visível para os participantes. documentTitle pode ser definido na criação, mas não pode ser modificado por uma solicitação em lote. Use a API Google Drive se você precisar atualizar documentTitle de forma programática.

description

string

A descrição do formulário.

Configurações do formulário

Configurações de um formulário.

Representação JSON
{
  "quizSettings": {
    object (QuizSettings)
  }
}
Campos
quizSettings

object (QuizSettings)

Configurações relacionadas a formulários e avaliações de testes.

Configurações do teste

Configurações relacionadas a formulários e avaliações de testes. Eles devem ser atualizados com UpdateSettingsRequest.

Representação JSON
{
  "isQuiz": boolean
}
Campos
isQuiz

boolean

Se este formulário é um teste ou não. Quando definido como verdadeiro, as respostas são avaliadas com base na pergunta Grading. Quando a política é definida como falsa, todas as perguntas Grading são excluídas.

Item

Um único item do formulário. kind define o tipo de item.

Representação JSON
{
  "itemId": string,
  "title": string,
  "description": string,

  // Union field kind can be only one of the following:
  "questionItem": {
    object (QuestionItem)
  },
  "questionGroupItem": {
    object (QuestionGroupItem)
  },
  "pageBreakItem": {
    object (PageBreakItem)
  },
  "textItem": {
    object (TextItem)
  },
  "imageItem": {
    object (ImageItem)
  },
  "videoItem": {
    object (VideoItem)
  }
  // End of list of possible types for union field kind.
}
Campos
itemId

string

O código do item.

Durante a criação, ele pode ser fornecido, mas o código ainda não pode ser usado no formulário. Se não for fornecido, um novo ID será atribuído.

title

string

O título do item.

description

string

A descrição do item.

Campo de união kind. Obrigatório. Que tipo de item. kind só pode ser um dos seguintes:
questionItem

object (QuestionItem)

Faz uma pergunta ao usuário.

questionGroupItem

object (QuestionGroupItem)

Faz uma ou mais perguntas ao usuário com uma única solicitação importante.

pageBreakItem

object (PageBreakItem)

Inicia uma nova página com um título.

textItem

object (TextItem)

Exibe um título e uma descrição na página.

imageItem

object (ImageItem)

Exibe uma imagem na página.

videoItem

object (VideoItem)

Exibe um vídeo na página.

PerguntaItem

Um item de formulário que contém uma única pergunta.

Representação JSON
{
  "question": {
    object (Question)
  },
  "image": {
    object (Image)
  }
}
Campos
question

object (Question)

Obrigatório. A pergunta exibida.

image

object (Image)

A imagem exibida na pergunta.

Pergunta

Qualquer pergunta. O tipo específico de pergunta é conhecido pelo kind.

Representação JSON
{
  "questionId": string,
  "required": boolean,
  "grading": {
    object (Grading)
  },

  // Union field kind can be only one of the following:
  "choiceQuestion": {
    object (ChoiceQuestion)
  },
  "textQuestion": {
    object (TextQuestion)
  },
  "scaleQuestion": {
    object (ScaleQuestion)
  },
  "dateQuestion": {
    object (DateQuestion)
  },
  "timeQuestion": {
    object (TimeQuestion)
  },
  "fileUploadQuestion": {
    object (FileUploadQuestion)
  },
  "rowQuestion": {
    object (RowQuestion)
  }
  // End of list of possible types for union field kind.
}
Campos
questionId

string

Somente leitura. O código da pergunta.

Durante a criação, ele pode ser fornecido, mas o código ainda não pode ser usado no formulário. Se não for fornecido, um novo ID será atribuído.

required

boolean

Se a pergunta precisa ser respondida para que um participante envie a resposta.

grading

object (Grading)

Configuração da avaliação da pergunta.

Campo de união kind. Obrigatório. É o tipo de pergunta feita a um participante. kind pode ser apenas de um dos tipos a seguir:
choiceQuestion

object (ChoiceQuestion)

Um participante pode escolher entre um conjunto predefinido de opções.

textQuestion

object (TextQuestion)

Um participante pode digitar uma resposta de texto livre.

scaleQuestion

object (ScaleQuestion)

Um participante pode escolher um número em um intervalo.

dateQuestion

object (DateQuestion)

Um participante pode digitar uma data.

timeQuestion

object (TimeQuestion)

Um participante pode digitar um horário.

fileUploadQuestion

object (FileUploadQuestion)

Um participante pode fazer upload de um ou mais arquivos.

rowQuestion

object (RowQuestion)

Uma linha de QuestionGroupItem.

ChoiceQuestion

Pergunta sobre rádio/caixa de seleção/menu suspenso.

Representação JSON
{
  "type": enum (ChoiceType),
  "options": [
    {
      object (Option)
    }
  ],
  "shuffle": boolean
}
Campos
type

enum (ChoiceType)

Obrigatório. É o tipo de pergunta de escolha.

options[]

object (Option)

Obrigatório. Lista de opções que o participante precisa escolher.

shuffle

boolean

Se as opções devem ser exibidas em ordem aleatória para diferentes instâncias do teste. Isso geralmente é usado para evitar trapaças com participantes que podem estar olhando para a tela de outro participante ou para lidar com vieses em uma pesquisa que pode ser apresentada colocando sempre as mesmas opções em primeiro ou último lugar.

Tipo de escolha

O tipo de escolha.

Enums
CHOICE_TYPE_UNSPECIFIED Valor padrão. Não utilizado.
RADIO Botões de opção: todas as opções são mostradas ao usuário, que só pode escolher uma delas.
CHECKBOX Caixas de seleção: todas as opções são mostradas ao usuário, que pode escolher quantas opções quiser.
DROP_DOWN Menu suspenso: as opções são mostradas apenas ao usuário sob demanda. Caso contrário, apenas a opção atual é mostrada. Somente uma opção pode ser escolhida.

Opção

Uma opção para uma pergunta do Choice.

Representação JSON
{
  "value": string,
  "image": {
    object (Image)
  },
  "isOther": boolean,

  // Union field go_to_section can be only one of the following:
  "goToAction": enum (GoToAction),
  "goToSectionId": string
  // End of list of possible types for union field go_to_section.
}
Campos
value

string

Obrigatório. A opção apresentada ao usuário.

image

object (Image)

Exibir imagem como uma opção.

isOther

boolean

Se a opção é "outro". No momento, só se aplica aos tipos de escolha RADIO e CHECKBOX, mas não é permitido em QuestionGroupItem.

Campo de união go_to_section. Qual seção será consultada se essa opção for selecionada. No momento, aplica-se apenas aos tipos de escolha RADIO e SELECT, mas não é permitido em QuestionGroupItem. go_to_section pode ser apenas de um dos tipos a seguir:
goToAction

enum (GoToAction)

Tipo de navegação da seção.

goToSectionId

string

ID do item do cabeçalho da seção que será acessado.

GoToAction

Constantes de navegação por seção.

Enums
GO_TO_ACTION_UNSPECIFIED Valor padrão. Não utilizado.
NEXT_SECTION Vá para a próxima seção.
RESTART_FORM Volte para o início do formulário.
SUBMIT_FORM Envie o formulário imediatamente.

Imagem

Dados que representam uma imagem.

Representação JSON
{
  "contentUri": string,
  "altText": string,
  "properties": {
    object (MediaProperties)
  },

  // Union field image_source can be only one of the following:
  "sourceUri": string
  // End of list of possible types for union field image_source.
}
Campos
contentUri

string

Apenas saída. Um URI a partir do qual é possível fazer o download da imagem. Isso é válido somente por tempo limitado.

altText

string

Uma descrição da imagem exibida ao passar o cursor e ler os leitores de tela.

properties

object (MediaProperties)

Propriedades de uma imagem.

Campo de união image_source. O tipo de origem da imagem. É preciso definir exatamente um campo de origem da imagem ao criar novas imagens. image_source pode ser apenas de um dos tipos a seguir:
sourceUri

string

Apenas entrada. O URI de origem é o URI usado para inserir a imagem. O URI de origem pode ficar vazio quando buscado.

Propriedades de mídia

Propriedades da mídia.

Representação JSON
{
  "alignment": enum (Alignment),
  "width": integer
}
Campos
alignment

enum (Alignment)

Posição da mídia.

width

integer

A largura da mídia em pixels. Quando a mídia é exibida, ela é dimensionada para o menor valor ou a largura do formulário exibido. A proporção original da mídia é preservada. Se uma largura não for especificada quando a mídia for adicionada ao formulário, ela será definida como a largura da fonte de mídia. A largura precisa estar entre 0 e 740 (valores inclusivos). Só é permitido definir a largura como 0 ou não especificada ao atualizar a fonte de mídia.

Alinhamento

Alinhamento na página.

Enums
ALIGNMENT_UNSPECIFIED Valor padrão. Não utilizado.
LEFT Alinhar à esquerda.
RIGHT Alinhar à direita.
CENTER Centro.

Pergunta em texto

Uma pergunta baseada em texto.

Representação JSON
{
  "paragraph": boolean
}
Campos
paragraph

boolean

Se a pergunta é de parágrafo ou não. Caso contrário, é uma pergunta de texto curta.

Perguntas de escala

Uma pergunta de escala. O usuário tem um intervalo de valores numéricos para escolher.

Representação JSON
{
  "low": integer,
  "high": integer,
  "lowLabel": string,
  "highLabel": string
}
Campos
low

integer

Obrigatório. O menor valor possível para a escala.

high

integer

Obrigatório. O maior valor possível da escala.

lowLabel

string

O rótulo a ser exibido, descrevendo o ponto mais baixo da escala.

highLabel

string

O rótulo a ser exibido, descrevendo o ponto mais alto da escala.

Pergunta de data

Uma pergunta de data. O padrão das perguntas de data é apenas mês + dia.

Representação JSON
{
  "includeTime": boolean,
  "includeYear": boolean
}
Campos
includeTime

boolean

Indica se a hora deve ser incluída como parte da pergunta.

includeYear

boolean

Indica se o ano deve ser incluído na pergunta.

Pergunta sobre tempo

Uma pergunta sobre tempo.

Representação JSON
{
  "duration": boolean
}
Campos
duration

boolean

true se a pergunta for sobre um tempo decorrido. Caso contrário, será uma hora do dia.

FileUploadQuestion

Uma pergunta sobre o upload de arquivos. No momento, a API não suporta a criação de perguntas para upload de arquivos.

Representação JSON
{
  "folderId": string,
  "types": [
    enum (FileType)
  ],
  "maxFiles": integer,
  "maxFileSize": string
}
Campos
folderId

string

Obrigatório. O código da pasta do Drive onde os arquivos enviados estão armazenados.

types[]

enum (FileType)

Tipos de arquivos aceitos pela pergunta.

maxFiles

integer

É o número máximo de arquivos que podem ser enviados para esta pergunta em uma única resposta.

maxFileSize

string (int64 format)

Número máximo de bytes permitidos para qualquer arquivo enviado para esta pergunta.

Tipo de arquivo

Tipos de arquivo que podem ser enviados para uma pergunta de upload de arquivo.

Enums
FILE_TYPE_UNSPECIFIED Valor padrão. Não utilizado.
ANY Sem restrições de tipo.
DOCUMENT Um documento do Google Docs.
PRESENTATION Um arquivo do Apresentações Google.
SPREADSHEET Um arquivo do Planilhas Google.
DRAWING Um desenho.
PDF PDF.
IMAGE Uma imagem.
VIDEO Um vídeo.
AUDIO Um arquivo de áudio.

RowQuestion

Configuração para uma pergunta que faz parte de um grupo de perguntas.

Representação JSON
{
  "title": string
}
Campos
title

string

Obrigatório. O título da linha única no QuestionGroupItem.

Avaliação

Avaliação para uma única pergunta

Representação JSON
{
  "pointValue": integer,
  "correctAnswers": {
    object (CorrectAnswers)
  },
  "whenRight": {
    object (Feedback)
  },
  "whenWrong": {
    object (Feedback)
  },
  "generalFeedback": {
    object (Feedback)
  }
}
Campos
pointValue

integer

Obrigatório. O número máximo de pontos que um participante pode receber automaticamente para uma resposta correta. Não pode ser negativo.

correctAnswers

object (CorrectAnswers)

Obrigatório. A chave de resposta para a pergunta. As respostas são avaliadas automaticamente com base nesse campo.

whenRight

object (Feedback)

O feedback exibido para as respostas corretas. Esse feedback só pode ser definido para perguntas de múltipla escolha com respostas corretas.

whenWrong

object (Feedback)

O feedback exibido para respostas incorretas. Esse feedback só pode ser definido para perguntas de múltipla escolha com respostas corretas.

generalFeedback

object (Feedback)

O feedback exibido para todas as respostas. Geralmente, esse recurso é usado para perguntas de resposta curta quando o proprietário de um questionário quer dar rapidamente aos participantes a opção de responder corretamente à pergunta antes de eles avaliarem a resposta de forma oficial. Não é possível definir feedback geral para perguntas de múltipla escolha com nota automática.

Respostas corretas

A chave de resposta de uma pergunta.

Representação JSON
{
  "answers": [
    {
      object (CorrectAnswer)
    }
  ]
}
Campos
answers[]

object (CorrectAnswer)

Uma lista de respostas corretas. Uma resposta pode ser avaliada automaticamente com base nessas respostas. Para perguntas de valor único, uma resposta será marcada como correta se corresponder a qualquer valor nesta lista. Em outras palavras, várias respostas corretas são possíveis. Para perguntas de vários valores (CHECKBOX), uma resposta será marcada como correta se contiver exatamente os valores dessa lista.

Resposta correta

Uma única resposta correta para uma pergunta. Para perguntas de valor múltiplo (CHECKBOX), pode ser necessário usar vários CorrectAnswers para representar uma única opção de resposta correta.

Representação JSON
{
  "value": string
}
Campos
value

string

Obrigatório. O valor correto da resposta. Consulte a documentação de TextAnswer.value para ver detalhes sobre como os vários tipos de valor são formatados.

QuestionGroupItem

Define uma pergunta que compreende várias perguntas agrupadas.

Representação JSON
{
  "questions": [
    {
      object (Question)
    }
  ],
  "image": {
    object (Image)
  },

  // Union field kind can be only one of the following:
  "grid": {
    object (Grid)
  }
  // End of list of possible types for union field kind.
}
Campos
questions[]

object (Question)

Obrigatório. Uma lista de perguntas que pertencem a este grupo de perguntas. Uma pergunta só pode pertencer a um grupo. A kind do grupo pode afetar os tipos de perguntas permitidos.

image

object (Image)

A imagem exibida no grupo de perguntas acima das perguntas específicas.

Campo de união kind. Obrigatório. É o tipo de grupo de perguntas, que determina os tipos de perguntas permitidos e como eles são exibidos. kind pode ser apenas de um dos tipos a seguir:
grid

object (Grid)

O grupo de perguntas é uma grade com linhas de perguntas de múltipla escolha que compartilham as mesmas opções. Quando grid for definido, todas as perguntas do grupo precisarão ser do tipo row.

Grade

Uma grade de opções (rádio ou caixas de seleção) com cada linha constituindo uma pergunta separada. Cada linha tem as mesmas opções, que são mostradas como colunas.

Representação JSON
{
  "columns": {
    object (ChoiceQuestion)
  },
  "shuffleQuestions": boolean
}
Campos
columns

object (ChoiceQuestion)

Obrigatório. As opções compartilhadas por cada pergunta na grade. Em outras palavras, os valores das colunas. Somente as opções CHECK_BOX e RADIO são permitidas.

shuffleQuestions

boolean

Se for true, as perguntas serão ordenadas aleatoriamente. Em outras palavras, as linhas aparecem em uma ordem diferente para cada participante.

Quebra de página

Uma quebra de página. O título e a descrição deste item são exibidos na parte superior da nova página.

Texto do item

Um item de texto.

Item de imagem

Um item que contém uma imagem.

Representação JSON
{
  "image": {
    object (Image)
  }
}
Campos
image

object (Image)

Obrigatório. A imagem exibida no item.

Item de vídeo

Um item que contém um vídeo.

Representação JSON
{
  "video": {
    object (Video)
  },
  "caption": string
}
Campos
video

object (Video)

Obrigatório. O vídeo exibido no item.

caption

string

O texto exibido abaixo do vídeo.

Vídeo

Dados que representam um vídeo.

Representação JSON
{
  "youtubeUri": string,
  "properties": {
    object (MediaProperties)
  }
}
Campos
youtubeUri

string

Obrigatório. Um URI do YouTube.

properties

object (MediaProperties)

Propriedades de um vídeo.

Métodos

batchUpdate

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

create

Crie um novo formulário usando o título fornecido na mensagem de formulário fornecida na solicitação.

get

Acessar um formulário.