A API Google Forms é uma interface RESTful que permite criar e modificar formulários e testes, recuperar respostas de formulários e notas de testes, configurar gabaritos de testes com feedback automático e receber notificações push. Os usos mais comuns dessa API incluem as seguintes tarefas:
- Criar um formulário ou teste
- Publicar e gerenciar participantes
- Atualizar um formulário ou teste
- Recuperar respostas de um formulário ou teste
- Ler conteúdo e metadados de formulários
- Configurar e receber notificações push
- Confira a seguir uma lista de termos comuns usados na API Forms:
- Formulário
- Um documento do Formulários Google, criado e armazenado no Drive. Cada formulário é representado por um recurso - Forme tem um valor- formIdexclusivo, que contém letras, números, hífens ou sublinhados. Você pode encontrar o ID do formulário em um URL do app Formulários Google:
- https://docs.google.com/forms/d/FORM_ID/edit
- Teste
- Um tipo específico de documento do Formulários Google que permite a avaliação das respostas do formulário em relação a um gabarito. Um teste só pode ser criado usando o método - batchUpdate()para atualizar a configuração- isQuizem um formulário existente para- true.
- Item
- Um único elemento em um formulário, representado pelo recurso Item. - Itemé um elemento repetido que pode conter uma seção, um grupo de perguntas, uma pergunta, um texto, uma imagem ou um vídeo.
- Pergunta
- Uma única pergunta no formulário, representada pelo recurso - Question.
- Grupo de perguntas
- Um grupo de perguntas que compartilham o mesmo conjunto de respostas possíveis (por exemplo, uma grade de classificações de 1 a 5). Representado pelo recurso - QuestionGroupItem.
- Section
- Uma seção é uma maneira de dividir um formulário em várias páginas e adicionar lógica condicional, como mostrar apenas algumas perguntas com base nas respostas do usuário. As seções correspondem ao recurso - PageBreakItem.
- Resposta
- A resposta do usuário final a uma pergunta, representada pelo recurso - Answer. Inclui informações de nota (se houver), metadados e o conteúdo da resposta.
- Resposta
- O envio de um formulário pelo usuário final, representado pelo recurso - FormResponse.
- Relógio
- Um gatilho que rastreia mudanças no esquema do formulário (como edições de perguntas) ou envios de respostas e envia uma notificação push quando uma mudança ocorre. Representado pelo recurso - Watch.
Estrutura do formulário
Ao gerenciar formulários e testes, entender como especificar diferentes campos
pode ser complicado, já que muitos dos objetos de formulário podem ser aninhados uns dentro
dos outros de várias maneiras. Para ver como a representação visual de um formulário
é mapeada para os campos, recomendamos usar a interface para criar alguns exemplos de
formulários que seu aplicativo pode gerar. Em seguida, recupere o JSON correspondente usando o método forms.get() para comparar. Por exemplo, este exemplo de teste corresponde ao seguinte JSON:
{
  "formId": "FORM_ID",
  "info": {
    "title": "Famous Black Women",
    "description": "Please complete this quiz based off of this week's readings for class.",
    "documentTitle": "API Example Quiz"
  },
  "settings": {
    "quizSettings": {
      "isQuiz": true
    }
  },
  "revisionId": "00000021",
  "responderUri": "https://docs.google.com/forms/d/e/1FAIpQLSd0iBLPh4suZoGW938EU1WIxzObQv_jXto0nT2U8HH2KsI5dg/viewform",
  "items": [
    {
      "itemId": "5d9f9786",
      "imageItem": {
        "image": {
          "contentUri": "DIRECT_URL",
          "properties": {
            "alignment": "LEFT"
          }
        }
      }
    },
    {
      "itemId": "72b30353",
      "title": "Which African American woman authored \"I Know Why the Caged Bird Sings\"?",
      "questionItem": {
        "question": {
          "questionId": "25405d4e",
          "required": true,
          "grading": {
            "pointValue": 2,
            "correctAnswers": {
              "answers": [
                {
                  "value": "Maya Angelou"
                }
              ]
            }
          },
          "choiceQuestion": {
            "type": "RADIO",
            "options": [
              {
                "value": "Maya Angelou"
              },
              {
                "value": "bell hooks"
              },
              {
                "value": "Alice Walker"
              },
              {
                "value": "Roxane Gay"
              }
            ]
          }
        }
      }
    },
    {
      "itemId": "0a4859c8",
      "title": "Who was the first Dominican-American woman elected to state office?",
      "questionItem": {
        "question": {
          "questionId": "37fff47a",
          "grading": {
            "pointValue": 2,
            "correctAnswers": {
              "answers": [
                {
                  "value": "Grace Diaz"
                }
              ]
            }
          },
          "choiceQuestion": {
            "type": "RADIO",
            "options": [
              {
                "value": "Rosa Clemente"
              },
              {
                "value": "Grace Diaz"
              },
              {
                "value": "Juana Matias"
              },
              {
                "value": "Sabrina Matos"
              }
            ]
          }
        }
      }
    }
  ],
  "publishSettings" : {
    "isPublished": true,
    "isAcceptingResponses": true
  }
}
Próximas etapas
- Para saber mais sobre o desenvolvimento com as APIs do Google Workspace, incluindo o processamento de autenticação e autorização, consulte Começar a desenvolver para o Workspace.
- Para saber como configurar e executar um app básico da API Forms, leia a Visão geral dos guias de início rápido.