REST Resource: forms

Ressource: Formulaire

Un document Google Forms. Lorsque vous créez un formulaire dans Drive, vous pouvez le supprimer ou modifier les protections contre l'accès à celui-ci via 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 remplacé par UpdateSettingsRequest. il est ignoré pendant forms.create et UpdateFormInfoRequest.

items[]

object (Item)

Obligatoire. Liste des éléments du formulaire, qui peut inclure des en-têtes de section, des questions, des supports 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 pouvant changer au fil du temps, il doit être traité de manière opaque. Un ID de révision renvoyé n'est valide que pendant 24 heures. Il ne peut pas être partagé entre les utilisateurs. Si l'ID de révision n'est pas modifié entre les appels, cela signifie que le formulaire n'a pas changé. À l'inverse, un ID modifié (pour le même formulaire et le même utilisateur) signifie généralement que le formulaire a été mis à jour. Toutefois, un ID modifié peut également être dû à des facteurs internes, tels que des changements de format de l'ID.

responderUri

string

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

linkedSheetId

string

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

Infos

Informations générales d'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 s'afficher à 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 si ce formulaire est un questionnaire ou non. Lorsque la valeur est "true", les réponses sont notées en fonction de la question Grading. Si cette règle est définie sur "False", toutes les questions Grading sont supprimées.

Élément

Un seul élément du formulaire. kind définit le type d'élément dont il s'agit.

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'article.

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

title

string

Titre de l'élément.

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)

Poser une question à l'utilisateur.

questionGroupItem

object (QuestionGroupItem)

Poser une ou plusieurs questions à l'utilisateur avec une seule requête majeure.

pageBreakItem

object (PageBreakItem)

Ouvre 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

Des questions. 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 sa création, vous pouvez le fournir, mais l'ID ne doit pas déjà être utilisé dans le formulaire. S'il n'est pas fourni, un nouvel identifiant est attribué.

required

boolean

Indique si une réponse est nécessaire pour que la 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 posée à la personne interrogée. kind ne peut être qu'un des éléments suivants :
choiceQuestion

object (ChoiceQuestion)

La personne interrogée peut choisir parmi un ensemble d'options prédéfini.

textQuestion

object (TextQuestion)

La personne interrogée peut saisir sa réponse en texte libre.

scaleQuestion

object (ScaleQuestion)

La personne interrogée peut 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)

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

rowQuestion

object (RowQuestion)

Ligne de QuestionGroupItem.

ChoiceQuestion

Une question de type case d'option/case à cocher/liste déroulante.

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

enum (ChoiceType)

Obligatoire. Type de question à choix.

options[]

object (Option)

Obligatoire. Liste des options parmi lesquelles la personne interrogée doit choisir.

shuffle

boolean

Afficher ou non les options dans un ordre aléatoire pour différentes instances du quiz Cela permet souvent d'éviter la tricherie de la part des personnes interrogées qui pourraient regarder l'écran d'une autre personne, ou de réduire les biais dans une enquête qui pourrait être introduite en mettant toujours les mêmes options en premier ou en dernier.

ChoiceType

Type de choix.

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 choisir qu'une seule.
CHECKBOX Cases à cocher: toutes les options sont présentées à l'utilisateur, qui peut en sélectionner autant de fois que nécessaire.
DROP_DOWN Menu déroulant: les options ne sont visibles que par l'utilisateur à la demande. Sinon, seul le choix actuel 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 un QuestionGroupItem.

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

enum (GoToAction)

Type de navigation dans les sections.

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. Un URI à partir duquel vous pouvez télécharger l'image. n'est valable que pour une durée limitée.

altText

string

Description de l'image affichée au passage de la souris et 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 source de l'image doit être défini lorsque vous créez des 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 média.

width

integer

Largeur du support en pixels. Lorsque le support est affiché, il est ajusté à la plus petite valeur de cette valeur ou à la largeur de la forme affichée. 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 la largeur sur 0 ou non spécifié 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 composée de texte.

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

boolean

Indique si la question est constituée d'un paragraphe. Si ce n'est pas le cas, la question est une courte question textuelle.

ScaleQuestion

Une question sur une échelle. L'utilisateur peut choisir parmi une plage de valeurs numériques.

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

integer

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

high

integer

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

lowLabel

string

Étiquette à 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

Une question de date. Par défaut, les questions "Date" ne contiennent que le mois et le jour.

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

boolean

Indique si l'heure doit être incluse dans la question.

includeYear

boolean

Indique si l'année doit être incluse dans la question.

TimeQuestion

Une question sur le temps.

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

boolean

true si la question concerne un temps écoulé. Sinon, il s'agit d'une heure précise.

FileUploadQuestion

Question sur l'importation de fichier. Pour le moment, l'API ne permet pas de créer des questions liées à l'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 pour 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 chaque fichier importé pour cette question.

FileType

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

Enums
FILE_TYPE_UNSPECIFIED Valeur par défaut. Non utilisé.
ANY Aucune restriction sur le type.
DOCUMENT Document Google Docs.
PRESENTATION Présentation Google Slides.
SPREADSHEET Une feuille de calcul Google Sheets.
DRAWING Dessin.
PDF Un PDF.
IMAGE Image.
VIDEO Une vidéo
AUDIO 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 la seule ligne dans QuestionGroupItem.

Notation

Notation d'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 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)

Commentaires affichés pour les bonnes réponses. Ce commentaire ne peut être défini que pour les questions à choix multiples dont la réponse est correcte.

whenWrong

object (Feedback)

Commentaires affichés pour les réponses incorrectes. Ce commentaire ne peut être défini que pour les questions à choix multiples dont la réponse est correcte.

generalFeedback

object (Feedback)

Commentaires affichés pour toutes les réponses. Cette méthode est généralement utilisée pour les questions à réponse courte lorsque le propriétaire d'un questionnaire souhaite rapidement indiquer aux personnes interrogées s'ils ont répondu correctement à la question avant d'avoir pu noter officiellement la réponse. Il est impossible de définir des commentaires d'ordre 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)

Liste des bonnes réponses. Les réponses au questionnaire peuvent être notées automatiquement 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, il est possible d'avoir plusieurs réponses correctes). 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 bonne réponse. Consultez la documentation sur 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 ensemble.

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 sont affichées. 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 du genre row.

Grille

Grille de choix (cases d'option ou cases à cocher) dans lesquelles chaque ligne correspond à une question distincte. Chaque ligne dispose des mêmes choix, qui s'affichent 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 sont affichés 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'article.

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. URI YouTube.

properties

object (MediaProperties)

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

Méthodes

batchUpdate

Modifiez le formulaire avec plusieurs mises à jour.

create

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

get

Obtenez un formulaire.