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 valeurformId
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ètreisQuiz
d'un formulaire existant surtrue
.- É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
- Pour en savoir plus sur le développement avec les API Google Workspace, y compris sur la gestion de l'authentification et de l'autorisation, consultez Premiers pas en tant que développeur Workspace.
- Pour savoir comment configurer et exécuter une application Forms API de base, consultez la présentation des guides de démarrage rapide.