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 aux formulaires et les notes des questionnaires, de configurer des corrigés de questionnaires avec des commentaires automatiques, et de recevoir des notifications push. Voici les utilisations les plus courantes de cette API :

  • Créer un formulaire ou un questionnaire
  • Publier et gérer les personnes ayant répondu
  • Modifier un formulaire ou un questionnaire
  • Récupérer les réponses d'un formulaire ou d'un questionnaire
  • lire le contenu d'un formulaire et les métadonnées ;
  • Configurer et recevoir des notifications push
Voici une liste des termes courants utilisés dans l'API Forms :
Form

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 qui permet de noter les réponses au formulaire par rapport à un corrigé. Un quiz ne peut être créé qu'à l'aide de la méthode batchUpdate() pour définir le paramètre isQuiz d'un formulaire existant sur true.

Notation
Valeur en points, corrigé et commentaires pour 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 d'un quiz, représentée par la ressource Feedback.
Élément

Élément unique d'un formulaire, représenté par la ressource Item. Item est un élément répétitif qui peut contenir une section, un groupe de questions, une question, du texte, une image ou une vidéo.

Question

Question unique du 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 certaines questions qu'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 du formulaire (par exemple, les modifications apportées aux questions) ou les réponses envoyées au formulaire, et qui envoie une notification push lorsqu'une modification se produit. Représenté par la ressource Watch.

Structure du formulaire

Lorsque vous gérez des formulaires et des quiz, il peut être compliqué de spécifier différents champs, car de nombreux objets de formulaire peuvent être imbriqués les uns dans les autres de plusieurs façons. Pour voir comment la représentation visuelle d'un formulaire correspond aux champs, nous vous recommandons d'utiliser l'UI pour créer quelques exemples de formulaires que votre application pourrait générer. Récupérez ensuite le fichier JSON correspondant à l'aide de la méthode forms.get() pour pouvoir effectuer la comparaison. Par exemple, cet exemple de quiz correspond au code 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"
              }
            ]
          }
        }
      }
    }
  ],
  "publishSettings" : {
    "isPublished": true,
    "isAcceptingResponses": true
  }
}

Étapes suivantes