REST Resource: forms

Ressource: Formulaire

Document Google Forms. Vous créez un formulaire dans Drive. Pour le supprimer ou modifier ses protections d'accès, vous devez utiliser l'API Drive.

Représentation JSON
{
  "formId": string,
  "info": {
    object (Info)
  },
  "settings": {
    object (FormSettings)
  },
  "items": [
    {
      object (Item)
    }
  ],
  "revisionId": string,
  "responderUri": string,
  "linkedSheetId": string
}
Champs
formId

string

Uniquement en sortie. ID du formulaire.

info

object (Info)

Obligatoire. Titre et description du formulaire.

settings

object (FormSettings)

Paramètres du formulaire. Il doit être mis à jour avec UpdateSettingsRequest. Il est ignoré pendant forms.create et UpdateFormInfoRequest.

items[]

object (Item)

Obligatoire. Une liste des éléments du formulaire, qui peut inclure des en-têtes de section, des questions, des éléments multimédias intégrés, etc.

revisionId

string

Uniquement en sortie. ID de révision du formulaire. Utilisé dans WriteControl dans les requêtes de mise à jour pour identifier la révision sur laquelle les modifications sont basées.

Le format de l'ID de révision peut changer au fil du temps. Il doit donc être traité de manière opaque. Un ID de révision renvoyé est garanti pendant 24 heures à compter de sa réception. Il ne peut pas être partagé entre les utilisateurs. Si l'ID de révision reste le même entre les appels, le formulaire n'a pas changé. À l'inverse, une modification de l'ID (pour le même formulaire et le même utilisateur) signifie généralement que le formulaire a été mis à jour. Cependant, cette modification peut également être due à des facteurs internes tels que les changements de format de l'ID.

responderUri

string

Uniquement en sortie. URI du formulaire à partager avec les personnes interrogées. Une page s'ouvre. Elle permet à l'utilisateur d'envoyer des réponses, mais pas de les modifier.

linkedSheetId

string

Uniquement en sortie. ID de la feuille de calcul Google Sheets associée qui accumule les réponses à ce formulaire (le cas échéant).

Infos

Informations générales relatives à un formulaire.

Représentation JSON
{
  "title": string,
  "documentTitle": string,
  "description": string
}
Champs
title

string

Obligatoire. Titre du formulaire visible par les personnes interrogées.

documentTitle

string

Uniquement en sortie. Titre du document visible dans Drive. Si Info.title est vide, documentTitle peut apparaître à sa place dans l'interface utilisateur de Google Forms et être visible par les personnes interrogées. documentTitle peut être défini lors de la création, mais ne peut pas être modifié par une requête batchUpdate. Veuillez utiliser l'API Google Drive si vous devez mettre à jour documentTitle par programmation.

description

string

Description du formulaire.

FormSettings

Paramètres d'un formulaire.

Représentation JSON
{
  "quizSettings": {
    object (QuizSettings)
  }
}
Champs
quizSettings

object (QuizSettings)

Paramètres liés aux formulaires de questionnaire et à la notation.

QuizSettings

Paramètres liés aux formulaires de questionnaire et à la notation. Ils doivent être mis à jour avec UpdateSettingsRequest.

Représentation JSON
{
  "isQuiz": boolean
}
Champs
isQuiz

boolean

Indique s'il s'agit d'un questionnaire ou non. Lorsque la valeur est "true", les réponses sont notées en fonction de la question Grading. Si elle est définie sur "False", toutes les questions Grading sont supprimées.

Article

Élément unique du formulaire. kind définit le type d'élément.

Représentation 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.
}
Champs
itemId

string

ID de l'élément.

Lors de la création, il peut être fourni, mais l'ID ne doit pas être déjà utilisé dans le formulaire. S'il n'est pas fourni, un nouvel ID est attribué.

title

string

Titre de l'article.

description

string

Description de l'article.

Champ d'union kind. Obligatoire. Type d'élément dont il s'agit. kind ne peut être que l'un des éléments suivants:
questionItem

object (QuestionItem)

Pose une question à l'utilisateur.

questionGroupItem

object (QuestionGroupItem)

Pose une ou plusieurs questions à l'utilisateur avec une seule invite majeure.

pageBreakItem

object (PageBreakItem)

Commence une nouvelle page avec un titre.

textItem

object (TextItem)

Affiche un titre et une description sur la page.

imageItem

object (ImageItem)

Affiche une image sur la page.

videoItem

object (VideoItem)

Affiche une vidéo sur la page.

QuestionItem

Élément de formulaire contenant une seule question.

Représentation JSON
{
  "question": {
    object (Question)
  },
  "image": {
    object (Image)
  }
}
Champs
question

object (Question)

Obligatoire. Question affichée.

image

object (Image)

Image affichée dans la question.

Question

N'importe quelle question. Le type spécifique de question est connu par son kind.

Représentation 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.
}
Champs
questionId

string

Lecture seule. ID de la question.

Lors de la création, il peut être fourni, mais l'ID ne doit pas être déjà utilisé dans le formulaire. S'il n'est pas fourni, un nouvel ID est attribué.

required

boolean

Indique si une réponse à la question est nécessaire pour qu'une personne interrogée puisse envoyer sa réponse.

grading

object (Grading)

Configuration de la notation pour la question.

Champ d'union kind. Obligatoire. Type de question proposée à une personne interrogée. kind ne peut être qu'un des éléments suivants :
choiceQuestion

object (ChoiceQuestion)

Les personnes interrogées peuvent choisir parmi un ensemble d'options prédéfinies.

textQuestion

object (TextQuestion)

Les personnes interrogées peuvent saisir une réponse en texte libre.

scaleQuestion

object (ScaleQuestion)

Les personnes interrogées peuvent choisir un nombre dans une plage.

dateQuestion

object (DateQuestion)

Les personnes interrogées peuvent saisir une date.

timeQuestion

object (TimeQuestion)

Les personnes interrogées peuvent saisir une heure.

fileUploadQuestion

object (FileUploadQuestion)

Une personne interrogée peut importer un ou plusieurs fichiers.

rowQuestion

object (RowQuestion)

Ligne d'un objet QuestionGroupItem.

ChoiceQuestion

Une case d'option/une case à cocher/une liste déroulante

Représentation JSON
{
  "type": enum (ChoiceType),
  "options": [
    {
      object (Option)
    }
  ],
  "shuffle": boolean
}
Champs
type

enum (ChoiceType)

Obligatoire. Type de question à choix multiples.

options[]

object (Option)

Obligatoire. Liste des options qu'une personne interrogée doit choisir.

shuffle

boolean

Indique si les options doivent s'afficher dans un ordre aléatoire pour différentes instances du questionnaire. Cette technique est souvent utilisée pour éviter la tricherie par les personnes interrogées qui sont susceptibles de regarder l'écran d'un autre participant, ou pour corriger un biais dans une enquête qui peut être introduit en plaçant toujours les mêmes options en premier ou en dernier.

ChoiceType

Type choisi.

Enums
CHOICE_TYPE_UNSPECIFIED Valeur par défaut. Non utilisé.
RADIO Cases d'option: toutes les options sont présentées à l'utilisateur, qui ne peut en sélectionner qu'une seule.
CHECKBOX Cases à cocher: l'utilisateur peut choisir parmi toutes les options disponibles.
DROP_DOWN Menu déroulant: les options ne sont visibles que par l'utilisateur à la demande. Sinon, seul l'option actuelle s'affiche. Vous ne pouvez choisir qu'une seule option.

Option

Option pour une question "Choix".

Représentation 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.
}
Champs
value

string

Obligatoire. Choix présenté à l'utilisateur.

image

object (Image)

Afficher l'image en tant qu'option.

isOther

boolean

Indique si l'option est définie sur "autre". Ne s'applique actuellement qu'aux types de choix RADIO et CHECKBOX, mais n'est pas autorisé dans une QuestionGroupItem.

Champ d'union go_to_section. Section à laquelle accéder si cette option est sélectionnée Ne s'applique actuellement qu'au type de choix RADIO et SELECT, mais n'est pas autorisé dans une QuestionGroupItem. go_to_section ne peut être qu'un des éléments suivants:
goToAction

enum (GoToAction)

Type de navigation de section.

goToSectionId

string

ID de l'élément de l'en-tête de section auquel accéder.

GoToAction

Constantes pour la navigation dans les sections

Enums
GO_TO_ACTION_UNSPECIFIED Valeur par défaut. Non utilisé.
NEXT_SECTION Passez à la section suivante.
RESTART_FORM Revenez au début du formulaire.
SUBMIT_FORM Envoyez le formulaire immédiatement.

Image

Données représentant une image.

Représentation 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.
}
Champs
contentUri

string

Uniquement en sortie. URI à partir duquel vous pouvez télécharger l'image. Il n'est valide que pour une durée limitée.

altText

string

Description de l'image qui s'affiche lorsque l'utilisateur pointe dessus et qui est lue par les lecteurs d'écran.

properties

object (MediaProperties)

Propriétés d'une image.

Champ d'union image_source. Type de source de l'image. Un seul champ de source d'image doit être défini lors de la création d'images. image_source ne peut être qu'un des éléments suivants :
sourceUri

string

Uniquement en entrée. L'URI source est l'URI utilisé pour insérer l'image. L'URI source peut être vide lors de la récupération.

MediaProperties

Propriétés du support.

Représentation JSON
{
  "alignment": enum (Alignment),
  "width": integer
}
Champs
alignment

enum (Alignment)

Position du support.

width

integer

Largeur du média en pixels. Lorsque le contenu multimédia est affiché, il est ajusté à la plus petite de cette valeur ou à la largeur du formulaire affiché. Le format d'origine du contenu multimédia est conservé. Si aucune largeur n'est spécifiée lors de l'ajout du contenu multimédia au formulaire, elle est définie sur la largeur de la source multimédia. La largeur doit être comprise entre 0 et 740 inclus. Vous ne pouvez définir une largeur sur 0 ou sur "non spécifiée" que lors de la mise à jour de la source multimédia.

Alignement

Alignement sur la page.

Enums
ALIGNMENT_UNSPECIFIED Valeur par défaut. Non utilisé.
LEFT Aligner à gauche.
RIGHT Aligner à droite.
CENTER et Security Command Center.

TextQuestion

Question textuelle.

Représentation JSON
{
  "paragraph": boolean
}
Champs
paragraph

boolean

Indique s'il s'agit d'une question de paragraphe ou non. Dans le cas contraire, la question est une question à court texte.

ScaleQuestion

Une question sur l'échelle. L'utilisateur dispose d'une plage de valeurs numériques parmi lesquelles choisir.

Représentation JSON
{
  "low": integer,
  "high": integer,
  "lowLabel": string,
  "highLabel": string
}
Champs
low

integer

Obligatoire. Valeur la plus basse possible pour l'échelle.

high

integer

Obligatoire. Valeur la plus élevée possible pour l'échelle.

lowLabel

string

Libellé à afficher décrivant le point le plus bas de l'échelle.

highLabel

string

Étiquette à afficher décrivant le point le plus élevé de l'échelle.

DateQuestion

Question sur la date. Par défaut, les questions de type "Date" comportent uniquement un mois et un jour.

Représentation JSON
{
  "includeTime": boolean,
  "includeYear": boolean
}
Champs
includeTime

boolean

S'il faut inclure ou non la durée dans la question.

includeYear

boolean

Indique s'il faut inclure l'année dans la question.

TimeQuestion

Question sur le temps.

Représentation JSON
{
  "duration": boolean
}
Champs
duration

boolean

true si la question porte sur un temps écoulé. Sinon, elle correspond à une heure précise de la journée.

FileUploadQuestion

Question sur l'importation de fichiers Pour le moment, l'API ne permet pas de créer des questions avec importation de fichiers.

Représentation JSON
{
  "folderId": string,
  "types": [
    enum (FileType)
  ],
  "maxFiles": integer,
  "maxFileSize": string
}
Champs
folderId

string

Obligatoire. ID du dossier Drive dans lequel les fichiers importés sont stockés.

types[]

enum (FileType)

Types de fichiers acceptés par cette question.

maxFiles

integer

Nombre maximal de fichiers pouvant être importés pour cette question en une seule réponse.

maxFileSize

string (int64 format)

Nombre maximal d'octets autorisés pour un fichier importé dans cette question.

FileType

Types de fichiers pouvant être importés dans une question de type "Importer un fichier".

Enums
FILE_TYPE_UNSPECIFIED Valeur par défaut. Non utilisé.
ANY Aucune restriction de type.
DOCUMENT Document Google Docs.
PRESENTATION Une présentation Google Slides.
SPREADSHEET Une feuille de calcul Google Sheets.
DRAWING Un dessin.
PDF PDF.
IMAGE Image.
VIDEO Une vidéo
AUDIO Un fichier audio.

RowQuestion

Configuration d'une question faisant partie d'un groupe de questions.

Représentation JSON
{
  "title": string
}
Champs
title

string

Obligatoire. Titre de l'unique ligne de QuestionGroupItem.

Notation

Note pour une seule question

Représentation JSON
{
  "pointValue": integer,
  "correctAnswers": {
    object (CorrectAnswers)
  },
  "whenRight": {
    object (Feedback)
  },
  "whenWrong": {
    object (Feedback)
  },
  "generalFeedback": {
    object (Feedback)
  }
}
Champs
pointValue

integer

Obligatoire. Nombre maximal de points qu'une personne interrogée peut obtenir automatiquement pour une bonne réponse. Cette valeur ne doit pas être négative.

correctAnswers

object (CorrectAnswers)

Obligatoire. Corrigé de la question. Les réponses sont automatiquement notées en fonction de ce champ.

whenRight

object (Feedback)

Les commentaires affichés pour les bonnes réponses. Vous ne pouvez définir ces commentaires que pour les questions à choix multiples pour lesquelles vous avez fourni des réponses correctes.

whenWrong

object (Feedback)

Commentaires affichés pour les réponses incorrectes. Vous ne pouvez définir ces commentaires que pour les questions à choix multiples pour lesquelles vous avez fourni des réponses correctes.

generalFeedback

object (Feedback)

Commentaires affichés pour toutes les réponses. Cette fonction est couramment utilisée pour les questions à réponse courte lorsqu’un propriétaire de questionnaire souhaite donner rapidement aux répondants une idée s’ils ont répondu correctement à la question avant d’avoir eu la possibilité de noter officiellement la réponse. Il n'est pas possible de définir un commentaire général pour les questions à choix multiples notées automatiquement.

CorrectAnswers

Corrigé d'une question.

Représentation JSON
{
  "answers": [
    {
      object (CorrectAnswer)
    }
  ]
}
Champs
answers[]

object (CorrectAnswer)

Une liste des bonnes réponses Une réponse au questionnaire peut être automatiquement notée en fonction de ces réponses. Pour les questions à valeur unique, une réponse est marquée comme correcte si elle correspond à l'une des valeurs de cette liste. En d'autres termes, plusieurs réponses correctes sont possibles. Pour les questions à valeurs multiples (CHECKBOX), une réponse est marquée comme correcte si elle contient exactement les valeurs de cette liste.

CorrectAnswer

Une seule bonne réponse à une question. Pour les questions à valeurs multiples (CHECKBOX), plusieurs valeurs CorrectAnswer peuvent être nécessaires pour représenter une seule option de réponse correcte.

Représentation JSON
{
  "value": string
}
Champs
value

string

Obligatoire. Valeur de la réponse correcte. Consultez la documentation de TextAnswer.value pour en savoir plus sur la mise en forme des différents types de valeurs.

QuestionGroupItem

Définit une question qui comprend plusieurs questions regroupées.

Représentation 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.
}
Champs
questions[]

object (Question)

Obligatoire. Liste de questions appartenant à ce groupe de questions. Une question ne doit appartenir qu'à un seul groupe. L'kind du groupe peut avoir une incidence sur les types de questions autorisés.

image

object (Image)

Image affichée dans le groupe de questions au-dessus des questions spécifiques.

Champ d'union kind. Obligatoire. Type de groupe de questions, qui détermine les types de questions autorisés et la façon dont elles s'affichent. kind ne peut être qu'un des éléments suivants :
grid

object (Grid)

Le groupe de questions est une grille avec des lignes de questions à choix multiples qui partagent les mêmes options. Lorsque grid est défini, toutes les questions du groupe doivent être de genre row.

Grille

Grille de choix (cases d'option ou cases à cocher) où chaque ligne constitue une question distincte. Chaque ligne dispose des mêmes options, qui sont affichées sous forme de colonnes.

Représentation JSON
{
  "columns": {
    object (ChoiceQuestion)
  },
  "shuffleQuestions": boolean
}
Champs
columns

object (ChoiceQuestion)

Obligatoire. Les choix partagés par chaque question de la grille. En d'autres termes, les valeurs des colonnes. Seules les options CHECK_BOX et RADIO sont autorisées.

shuffleQuestions

boolean

Si la valeur est true, les questions sont classées de manière aléatoire. En d'autres termes, les lignes apparaissent dans un ordre différent pour chaque personne interrogée.

PageBreakItem

Saut de page. Le titre et la description de cet élément s'affichent en haut de la nouvelle page.

TextItem

Élément textuel.

ImageItem

Élément contenant une image.

Représentation JSON
{
  "image": {
    object (Image)
  }
}
Champs
image

object (Image)

Obligatoire. Image affichée dans l'élément.

VideoItem

Élément contenant une vidéo.

Représentation JSON
{
  "video": {
    object (Video)
  },
  "caption": string
}
Champs
video

object (Video)

Obligatoire. Vidéo affichée dans l'élément.

caption

string

Texte affiché sous la vidéo.

Vidéo

Données représentant une vidéo.

Représentation JSON
{
  "youtubeUri": string,
  "properties": {
    object (MediaProperties)
  }
}
Champs
youtubeUri

string

Obligatoire. Un URI YouTube.

properties

object (MediaProperties)

Propriétés d'une vidéo.

Méthodes

batchUpdate

Modifier le formulaire avec un lot de mises à jour

create

Créez un formulaire en utilisant le titre indiqué dans le message de formulaire fourni dans la requête.

get

obtenir un formulaire ;