REST Resource: forms

Recurso: formulário

Um documento do app Formulários Google. Um formulário é criado no Drive, e você pode excluir o formulário ou alterar as proteções de acesso usando a API Drive.

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. Precisa ser atualizado com UpdateSettingsRequest. ela será ignorada 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 da revisão do formulário. Usado no WriteControl em solicitações de atualização para identificar a revisão em que as mudanças se baseiam.

O formato do ID de revisão pode mudar com o tempo e, por isso, precisa ser tratado de modo opaco. Um ID de revisão retornado tem a garantia de ser válido apenas por 24 horas após 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 terá sido 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 a ser compartilhado 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 do formulário (se houver uma planilha desse tipo).

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 que fica visível para os participantes.

documentTitle

string

Apenas saída. O título do documento visível no Google Drive. Se Info.title estiver vazio, é possível que documentTitle apareça no lugar na interface do Formulários Google e fique visível para os participantes. documentTitle pode ser definido na criação, mas não pode ser modificado por uma solicitação batchUpdate. Use a API Google Drive se precisar atualizar o documentTitle programaticamente.

description

string

A descrição do formulário.

FormSettings

Configurações de um formulário.

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

object (QuizSettings)

Configurações relacionadas aos formulários de teste e avaliação.

QuizSettings

Configurações relacionadas aos formulários de teste e avaliação. Elas precisam ser atualizadas com UpdateSettingsRequest.

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

boolean

Se este formulário é um teste ou não. Quando verdadeiro, as respostas são avaliadas com base na pergunta Grading. Ao definir como falso, 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 ID do item.

Ele poderá ser fornecido no momento da criação, mas o ID ainda não poderá estar no formulário. Se não for informado, um novo ID será atribuído.

title

string

Título do item.

description

string

A descrição do item.

Campo de união kind. Obrigatório. O tipo de item. kind só pode ser de um dos tipos a seguir:
questionItem

object (QuestionItem)

Faz uma pergunta ao usuário.

questionGroupItem

object (QuestionGroupItem)

Apresenta uma ou mais perguntas ao usuário com uma única instrução principal.

pageBreakItem

object (PageBreakItem)

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

textItem

object (TextItem)

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

imageItem

object (ImageItem)

Mostra uma imagem na página.

videoItem

object (VideoItem)

Exibe um vídeo na página.

QuestionItem

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 que aparece na pergunta.

Pergunta

Qualquer pergunta. O tipo específico de pergunta é conhecido pela 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 ID da pergunta.

Ele poderá ser fornecido no momento da criação, mas o ID ainda não poderá estar no formulário. Se não for informado, um novo ID será atribuído.

required

boolean

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

grading

object (Grading)

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

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

object (ChoiceQuestion)

Um entrevistado 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 de 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 um QuestionGroupItem.

ChoiceQuestion

Uma pergunta de 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 um participante precisa escolher.

shuffle

boolean

Define se as opções devem ser exibidas em ordem aleatória para diferentes instâncias do teste. Isso é usado com frequência para evitar fraudes por participantes que talvez estejam olhando para a tela de outro participante ou para resolver o viés de uma pesquisa que pode ser introduzida ao sempre colocar as mesmas opções em primeiro ou último lugar.

ChoiceType

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 pode escolher apenas uma.
CHECKBOX Caixas de seleção: todas as opções são mostradas ao usuário, que pode escolher quantas delas quiser.
DROP_DOWN Menu suspenso: as opções são mostradas para o usuário apenas quando necessário. Caso contrário, apenas a escolha atual é mostrada. Só é possível escolher uma opção.

Opção

Uma opção para uma pergunta de escolha.

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 escolha apresentada ao usuário.

image

object (Image)

Exibir imagem como opção.

isOther

boolean

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

Campo de união go_to_section. A seção que será acessada se essa opção estiver selecionada. No momento, só se aplica aos tipos de escolha RADIO e SELECT, mas não é permitido em QuestionGroupItem. go_to_section só pode ser 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 de destino.

GoToAction

Constantes para navegação da 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 do qual é possível fazer o download da imagem. isso é válido apenas por tempo limitado.

altText

string

Uma descrição da imagem que é mostrada ao passar o cursor e lida pelos leitores de tela.

properties

object (MediaProperties)

Propriedades de uma imagem.

Campo de união image_source. O tipo de origem da imagem. Exatamente um campo de origem da imagem precisa ser definido ao criar novas imagens. image_source pode ser apenas de um dos tipos a seguir:
sourceUri

string

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

MediaProperties

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 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, inclusive. A definição da largura como 0 ou não especificada é permitida apenas 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 Center.

TextQuestion

Uma pergunta em texto.

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

boolean

Se a pergunta é do tipo "Parágrafo" ou não. Se não, a pergunta é de texto curto.

ScaleQuestion

Uma pergunta em 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 para a 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.

DateQuestion

Uma pergunta sobre datas. Por padrão, as perguntas com data são definidas como mês + dia.

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

boolean

Indica se a hora deve ser incluída na pergunta.

includeYear

boolean

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

TimeQuestion

Uma pergunta do momento.

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

boolean

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

FileUploadQuestion

Uma pergunta para upload de arquivo. No momento, a API não é compatível com 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 Google Drive em que os arquivos enviados por upload são armazenados.

types[]

enum (FileType)

Tipos de arquivo aceitos por esta pergunta.

maxFiles

integer

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

maxFileSize

string (int64 format)

O número máximo de bytes permitidos para um único arquivo enviado para esta pergunta.

FileType

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

Enums
FILE_TYPE_UNSPECIFIED Valor padrão. Não utilizado.
ANY Sem restrições de tipo.
DOCUMENT Um arquivo do Documentos Google.
PRESENTATION Um arquivo do Apresentações Google.
SPREADSHEET Uma planilha Google.
DRAWING Um desenho.
PDF Um 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 única linha na QuestionGroupItem.

Avaliação

Atribuir nota 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. Esse valor 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 neste 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. Isso é comumente usado para perguntas de resposta curta quando o proprietário de um teste quer rapidamente dar aos entrevistados alguma noção sobre se eles responderam à pergunta corretamente antes de terem a chance de avaliar oficialmente a resposta. Não é possível configurar o feedback geral para perguntas de múltipla escolha avaliadas automaticamente.

CorrectAnswers

A chave de resposta para uma pergunta.

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

object (CorrectAnswer)

Uma lista de respostas corretas. As respostas do teste podem receber notas automaticamente com base nessas respostas. Para perguntas de valor único, uma resposta é marcada como correta se corresponder a qualquer valor da lista (em outras palavras, várias respostas corretas são possíveis). Para perguntas de múltiplos valores (CHECKBOX), uma resposta será marcada como correta se contiver exatamente os valores desta lista.

CorrectAnswer

Uma única resposta correta para uma pergunta. Nas perguntas de múltiplos valores (CHECKBOX), pode ser necessário usar vários CorrectAnswer para representar uma única opção de resposta correta.

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

string

Obrigatório. O valor da resposta correta. Consulte a documentação de TextAnswer.value para ver detalhes sobre como 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 pergunta 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 quais tipos de perguntas são permitidos e como elas são exibidas. 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 é definido, todas as perguntas do grupo precisam ser do tipo row.

Grade

Uma grade de opções (rádio ou caixas de seleção) em que cada linha constitui 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 escolhas compartilhadas por cada pergunta na grade. Em outras palavras, os valores das colunas. Apenas 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 entrevistado.

PageBreakItem

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

TextItem

Um item de texto.

ImageItem

Um item que contém uma imagem.

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

object (Image)

Obrigatório. A imagem exibida no item.

VideoItem

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 do formulário na solicitação.

get

Receba um formulário.