Aperçu

L'API Google Forms est une interface RESTful qui vous permet de créer et de modifier des formulaires et des questionnaires, de récupérer les réponses et les notes d'un questionnaire, de configurer des clés de réponse avec commentaires automatiques et de recevoir des notifications push. Les utilisations les plus courantes de cette API incluent les tâches suivantes:

  • Créer un formulaire ou un questionnaire
  • Mettre à jour un formulaire ou un questionnaire
  • Récupérer les réponses à partir d'un formulaire ou d'un questionnaire
  • Lire le contenu et les métadonnées d'un formulaire
  • Configurer et recevoir des notifications push

Vous trouverez ci-dessous la liste des termes couramment utilisés dans l'API Forms:

Form

Un document Google Forms, créé et stocké dans Drive. Chaque formulaire est représenté par une ressource Form et possède une valeur formId unique, contenant des lettres, des chiffres, des traits d'union ou des traits de soulignement. Vous trouverez l'ID du formulaire dans une URL Google Forms:

https://docs.google.com/forms/d/FORM_ID/edit

Quiz

Type spécifique de document Google Forms permettant de classer les réponses du formulaire par rapport à un corrigé. Pour créer un quiz, vous devez utiliser la méthode batchUpdate() pour mettre à jour le paramètre isQuiz d'un formulaire existant vers true.

Notation
Barème de notation, grille de réponse et commentaires associés à une question, appliqués lorsque isQuiz est défini sur true. Représenté par la ressource Grading.
Commentaires
Réponse donnée à l'utilisateur final lorsqu'il répond à une question dans un quiz, représentée par la ressource Feedback.
Élément

Un seul élément dans un formulaire, représenté par la ressource Item. Item est un élément répété qui peut contenir une section, un groupe de questions, une question, du texte, une image ou une vidéo.

Question

Une seule question sur le formulaire, représentée par la ressource Question.

Groupe de questions

Groupe de questions qui partagent toutes le même ensemble de réponses possibles (par exemple, une grille de notes de 1 à 5). Représenté par la ressource QuestionGroupItem.

Section

Une section permet de diviser un formulaire en plusieurs pages et d'ajouter une logique conditionnelle (par exemple, n'afficher que certaines questions en fonction des réponses de l'utilisateur). Les sections correspondent à la ressource PageBreakItem.

Réponse

Réponse de l'utilisateur final à une question, représentée par la ressource Answer. Inclut les informations sur la note (le cas échéant), les métadonnées et le contenu de la réponse.

Réponse

Envoi d'un formulaire par l'utilisateur final, représenté par la ressource FormResponse.

Montre

Déclencheur qui suit les modifications apportées au schéma de formulaire (telles que les modifications apportées aux questions) ou aux envois de réponses de formulaire, et envoie une notification push en cas de modification. Représentés par la ressource Watch.

Structure du formulaire

Lorsque vous gérez des formulaires et des questionnaires, il peut être compliqué de comprendre comment spécifier différents champs, car de nombreux objets de formulaire peuvent être imbriqués de plusieurs manières. Pour voir comment la représentation visuelle d'un formulaire est mappée avec les champs, nous vous recommandons d'utiliser l'interface utilisateur pour créer quelques exemples de formulaires que votre application peut générer. Récupérez ensuite le fichier JSON correspondant à l'aide de la méthode forms.get() afin de pouvoir effectuer une comparaison. Par exemple, cet exemple de quiz correspond au fichier JSON suivant:

{
  "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"
              }
            ]
          }
        }
      }
    }
  ]
}

Étapes suivantes