Skip to content

Form Root Schema Properties

The root form object that contains all pages, questions, and global configuration.

Element type: survey Key properties: 28

  • Aliases: form schema root, survey JSON, complete form.
  • Use when: creating or updating the top-level form object.
  • Recommended properties: title, description, showQuestionNumbers, pages, calculatedValues, triggers.
{ "title": "Client intake", "showQuestionNumbers": "off", "pages": [{ "name": "page1", "elements": [] }] }

  • Use the root object for global form configuration and the pages array.
  • Use Page and Panel for nested layout objects.
  • Use Calculated Value and Trigger for root-level computed behavior.
  • Type: string
  • Default:
  • Localizable: Yes

A title for the form element. If title is undefined, the name property value is displayed instead.

  • Type: text
  • Default:
  • Localizable: Yes

Explanatory text displayed under the title.

  • Type: surveypages
  • Default:

Returns an array of all pages in the survey.

  • Type: string
  • Default: "off"
  • Allowed values: on, onPage, recursive, off

Specifies whether to display form element numbers and how to calculate them.

  • Type: boolean
  • Default: true

Gets or sets the visibility of the Start, Next, Previous, and Complete navigation buttons.

This property does not control progress saving in Formspace. To let respondents save and continue later, use Progress saving in the form’s Publish → Settings panel instead.

  • Type: boolean
  • Default: false

Specifies the visibility of the progress bar.

  • Type: string
  • Default: "auto"
  • Allowed values: auto, aboveheader, belowheader, bottom, topbottom

Specifies the alignment of the progress bar. Applies only if the showProgressBar property is true.

  • Type: boolean
  • Default: true

Specifies whether to show the complete page.

  • Type: html
  • Default:
  • Localizable: Yes

HTML content displayed on the complete page.

  • Type: string
  • Default:
  • Localizable: Yes

Gets or sets a caption for the Complete button.

  • Type: calculatedvalues
  • Default:

An array of calculated values.

  • Type: triggers
  • Default:

A list of triggers in the survey.

  • Type: string
  • Default: "onComplete"
  • Allowed values: none, onComplete, onHidden, onHiddenContainer

Specifies when to remove values of invisible questions from survey results.

  • Type: string
  • Default: "top"
  • Allowed values: top, bottom, left

Gets or sets question title location relative to the input field: “top”, “bottom”, or “left”.

  • Type: string
  • Default: "underTitle"
  • Allowed values: underInput, underTitle

Specifies where to display question descriptions.

  • Type: string
  • Default: "top"
  • Allowed values: top, bottom

Specifies the error message position.

  • Type: string
  • Default: "initial"
  • Allowed values: initial, random

Specifies the sort order of questions in the survey.

  • Type: string
  • Default: "*"

Specifies one or multiple characters that designate required questions.

  • Type: string
  • Default:
  • Allowed values:

Specifies the survey’s locale.

  • Type: file
  • Default:
  • Localizable: Yes

An image URL or a Base64-encoded image to use as a survey logo.

  • Type: string
  • Default: "left"
  • Allowed values: none, left, right, top, bottom

A logo position relative to the survey title.

  • Type: string
  • Default:

A survey width in CSS values.

  • Type: string
  • Default: "auto"
  • Allowed values: auto, static, responsive

Specifies how to calculate the survey width.

  • Type: string
  • Default:

A URL to which respondents should be navigated after survey completion.

  • Type: urlconditions
  • Default:

An array of objects that allows you to navigate respondents to different URLs after survey completion.

  • Type: boolean
  • Default: false

Gets or sets a Boolean value that specifies whether the first page is a start page.

  • Type: boolean
  • Default:

Enables the read-only mode. If you set this property to true, users cannot take the survey.

  • Type: string
  • Default: "onBlur"
  • Allowed values: onBlur, onTyping

Specifies when to update the question value in questions with a text input field.