Skip to content

Question types

A form’s questions are the items of components, in the order respondents see them. Each item has a type. This page lists the types and the keys they all share. The pages of each family describe the options, validations and answer format of every type.

typeName in the editorThe respondentAnswer type
textTexttypes a short or long texttext
numberNumbertypes a numbernumber
mailEmailtypes an e-mail addressmail
phone_numberPhone numbertypes a phone numberphone_number
websiteWebsitetypes a web addresswebsite
dateDateenters a day, month and yeardate
multiple_choiceChoicepicks one or several optionschoice or choices
picture_choicePicture choicepicks one or several imageschoice or choices
dropdownDropdownpicks one option from a listtext
yesnoYes/Noanswers yes or noboolean
legalLegal noteticks a consent boxboolean
rankingRankingputs options in orderchoices
ratingRatingpicks a value on a scale of 3 to 10 pointsnumber
customer_satSatisfaction scorepicks a value on a scale of 2 to 5 pointsnumber
opinion_scaleNPSpicks a value from 0 to 10number
matrixMatrixanswers a table of rows and columnsmatrix
sliderSlidermoves a slider in each rownumbers_scale
numbers_scaleNumber scalepicks a number in each rownumbers_scale
constant_sumConstant sumspreads a total over the rowsnumbers_scale
semantic_differentialSemantic differentialplaces each row between two opposite wordsnumbers_scale
file_uploadFileattaches one or several filesfile_url
signatureSignaturedraws a signaturefile_url
statementStatementreads a text or looks at an imagenone
groupGrouped questionssees several questions on one pagenone

The answer type is the type of the answer in a response. Several question types share one answer type: a rating and an NPS question both store a number. See Answers.

Every question has these keys.

KeyTypeDescription
idstring12-character identifier, unique in the form. Responses refer to the question by it.
refstringIdentifier in UUID format, unique in the form. Logic rules and inserted values refer to the question by it.
typestringOne of the values in the table above.
titlestringThe question text. Supports text formatting and inserted values.
propertiesobjectOptions of the question. Always has description. The other keys depend on the type.
properties.descriptionstringText under the title (Description in the editor). Supports the same formatting as title. An empty string shows nothing.
validationsobjectWhat the form checks before the respondent can go on.
validations.requiredbooleanThe respondent has to answer. false by default, true for the slider family.
mediaobject or falseImage or video shown with the question. See Media.

Some types add lists.

KeyUsed byHolds
choicesmultiple_choice, picture_choice, dropdown, ranking, matrixThe options, or the columns of a matrix.
questionsmatrix, slider, numbers_scale, constant_sum, semantic_differentialThe rows.
componentsgroupThe questions on the page.
quotasmultiple_choice, picture_choiceResponse limits per option. See Quotas.

Both identify the same question, and both are created by the editor.

  • id is short. It is what you get in responses and webhooks, next to the question title and type. Picked options, rows and columns are named by their id there as well.
  • ref is what the form itself uses to link things: a logic rule points at the ref of a question, and a value inserted into a text is written as {{component:<ref>}}.

A copied question gets new values of both. Options (choices) and rows (questions) have their own id and ref, with the same roles.

{
"id": "VlD8orUBcVuK",
"ref": "5c1e9a40-3b7d-4f1e-9d2a-7a6f0c8e2b11",
"type": "yesno",
"title": "Did you find what you were looking for?",
"properties": { "description": "", "answer_type": "thumbs" },
"validations": { "required": false },
"media": false
}

A form that meets a type it does not know shows the question title with the note “This question can’t be displayed.” and goes on. Treat the list above as open: new types are added over time, so code that reads responses should handle a question type or an answer type it has not seen before.