---
metadata:
  - name: generator
    content: Diplodoc Platform v5.39.1
alternate:
  - https://yandex.com.tr/support/forms/en/api-ref/questions/events_v1_views_questions_modify_question_view.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com.tr/support/forms/en/llms.txt

<div class="openapi">

# Modify question

<!-- markdownlint-disable-file -->

Modifies question settings.

Parameters:
- **survey_id**: form ID
- **question_id**: question ID
- **with_slugs**: replace numeric question and answer option IDs with slugs (default: numeric IDs)

## Request

<div class="openapi__requests">

<div class="openapi__request__wrapper" style="--method: var(--dc-openapi-methods-patch);margin-bottom: 12px">

<div class="openapi__request">

PATCH {.openapi__method}
```text translate=no
https://api.forms.yandex.net/v1/surveys/{survey_id}/questions/{question_id}
```

</div>

</div>

</div>

### Path parameters

#|
|| **Name** | **Description** ||
||

_question_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer
{.table-cell}
||
||

_survey_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

_Pattern:_{.json-schema-reset .json-schema-assertion} `^[a-fA-F\d]{24}$`

_Example:_{.json-schema-reset .json-schema-example} ``
{.table-cell}
||
|#{.json-schema-properties}

### Query parameters

#|
|| **Name** | **Description** ||
||

_with_slugs_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

_Default:_{.json-schema-reset .json-schema-value} `false`
{.table-cell}
||
|#{.json-schema-properties}

<div class="openapi-entity">

### Body

{% cut "application/json" %}

```json translate=no
{
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "hidden": true,
  "slug": "example",
  "image": {
    "id": 0,
    "links": {},
    "name": "example"
  },
  "type": "string",
  "initial": "example",
  "multiline": true,
  "hint_source": {
    "name": "example",
    "params": [
      {}
    ]
  },
  "validators": [
    {
      "type": "required"
    }
  ],
  "has_quiz": true,
  "quiz_items": [
    {
      "label": "example",
      "correct": true,
      "scores": 0.5
    }
  ]
}
```

{% endcut %}

{% cut "**Any of 12 types**" %}{.json-schema-combinators data-marker=or}

- **QuestionStringIn**

  **Type**: [QuestionStringIn](#entity-QuestionStringIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "hidden": true,
    "slug": "example",
    "image": {
      "id": 0,
      "links": {},
      "name": "example"
    },
    "type": "string",
    "initial": "example",
    "multiline": true,
    "hint_source": {
      "name": "example",
      "params": [
        {
          "type": "example",
          "value": "example"
        }
      ]
    },
    "validators": [
      {
        "type": "required"
      }
    ],
    "has_quiz": true,
    "quiz_items": [
      {
        "label": "example",
        "correct": true,
        "scores": 0.5
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionBooleanIn**

  **Type**: [QuestionBooleanIn](#entity-QuestionBooleanIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "hidden": true,
    "slug": "example",
    "image": {
      "id": 0,
      "links": {},
      "name": "example"
    },
    "type": "boolean",
    "initial": true,
    "validators": [
      {
        "type": "required"
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionIntegerIn**

  **Type**: [QuestionIntegerIn](#entity-QuestionIntegerIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "hidden": true,
    "slug": "example",
    "image": {
      "id": 0,
      "links": {},
      "name": "example"
    },
    "type": "integer",
    "initial": 0,
    "validators": [
      {
        "type": "required"
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionFileIn**

  **Type**: [QuestionFileIn](#entity-QuestionFileIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "hidden": true,
    "slug": "example",
    "image": {
      "id": 0,
      "links": {},
      "name": "example"
    },
    "type": "file",
    "validators": [
      {
        "type": "required"
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionCommentIn**

  **Type**: [QuestionCommentIn](#entity-QuestionCommentIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "hidden": true,
    "slug": "example",
    "image": {
      "id": 0,
      "links": {},
      "name": "example"
    },
    "type": "comment",
    "header": true
  }
  ```

  {% endcut %}

- **QuestionDateIn**

  **Type**: [QuestionDateIn](#entity-QuestionDateIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "hidden": true,
    "slug": "example",
    "image": {
      "id": 0,
      "links": {},
      "name": "example"
    },
    "type": "date",
    "validators": [
      {
        "type": "required"
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionDateRangeIn**

  **Type**: [QuestionDateRangeIn](#entity-QuestionDateRangeIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "hidden": true,
    "slug": "example",
    "image": {
      "id": 0,
      "links": {},
      "name": "example"
    },
    "type": "daterange",
    "validators": [
      {
        "type": "required"
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionPaymentIn**

  **Type**: [QuestionPaymentIn](#entity-QuestionPaymentIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "hidden": true,
    "slug": "example",
    "image": {
      "id": 0,
      "links": {},
      "name": "example"
    },
    "type": "payment",
    "fixed": true,
    "account_id": "example",
    "initial": 0,
    "validators": [
      {
        "type": "required"
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionEnumIn**

  **Type**: [QuestionEnumIn](#entity-QuestionEnumIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "hidden": true,
    "slug": "example",
    "image": {
      "id": 0,
      "links": {},
      "name": "example"
    },
    "type": "enum",
    "widget": "radio",
    "items": [
      {
        "id": 0,
        "slug": "example",
        "label": "",
        "hidden": true,
        "image": null,
        "correct": true,
        "scores": 0.5
      }
    ],
    "initial": [
      null
    ],
    "modify_choices": "",
    "validators": [
      {
        "type": "required"
      }
    ],
    "show_first": true,
    "show_suggest": true,
    "has_quiz": true
  }
  ```

  {% endcut %}

- **QuestionSuggestIn**

  **Type**: [QuestionSuggestIn](#entity-QuestionSuggestIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "hidden": true,
    "slug": "example",
    "image": {
      "id": 0,
      "links": {},
      "name": "example"
    },
    "type": "suggest",
    "data_source": {
      "name": "example",
      "params": [
        {
          "type": "example",
          "value": "example"
        }
      ]
    },
    "multichoice": true,
    "validators": [
      {
        "type": "required"
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionMatrixIn**

  **Type**: [QuestionMatrixIn](#entity-QuestionMatrixIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "hidden": true,
    "slug": "example",
    "image": {
      "id": 0,
      "links": {},
      "name": "example"
    },
    "type": "matrix",
    "rows": [
      {
        "id": 0,
        "slug": "example",
        "label": "example"
      }
    ],
    "columns": [
      null
    ],
    "validators": [
      {
        "type": "required"
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionSeriesIn**

  **Type**: [QuestionSeriesIn](#entity-QuestionSeriesIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "hidden": true,
    "slug": "example",
    "image": {
      "id": 0,
      "links": {},
      "name": "example"
    },
    "type": "series"
  }
  ```

  {% endcut %}

{% endcut %}

</div>

<div class="openapi-entity">

### ImageIn {#entity-ImageIn}

#|
|| **Name** | **Description** ||
||

_id_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: integer

Image ID
{.table-cell}
||
||

_links_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: Links" %}

#|
||

_[additional]_{.json-schema-reset .json-schema-additional-property}
{.table-cell}|
**Type**: string&lt;uri&gt;

_Min length:_{.json-schema-reset .json-schema-assertion} `1`

_Max length:_{.json-schema-reset .json-schema-assertion} `2083`

_Example:_{.json-schema-reset .json-schema-example} `https://example.com`
{.table-cell}
||
|#{.json-schema-properties}

{% endcut %}

List of links to different image sizes

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{}
```

{% endcut %}
{.table-cell}
||
||

_name_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Original image file name

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionDataSourceParam {#entity-QuestionDataSourceParam}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Parameter type

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_value_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Parameter value

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "example",
  "value": "example"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionHintSource {#entity-QuestionHintSource}

#|
|| **Name** | **Description** ||
||

_name_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Name for the data source

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_params_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [QuestionDataSourceParam](#entity-QuestionDataSourceParam)[]

Parameters for the data source

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "example",
    "value": "example"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "name": "example",
  "params": [
    {
      "type": "example",
      "value": "example"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationRequiredOut {#entity-ValidationRequiredOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Required for filling

_Const:_{.json-schema-reset .json-schema-value} `required`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "required"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationMinStringOut {#entity-ValidationMinStringOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Minimum number of characters

_Const:_{.json-schema-reset .json-schema-value} `min`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_value_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Validation value
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "min",
  "value": 0
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationMaxStringOut {#entity-ValidationMaxStringOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Maximum number of characters

_Const:_{.json-schema-reset .json-schema-value} `max`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_value_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Validation value
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "max",
  "value": 0
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationEmailStringOut {#entity-ValidationEmailStringOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Email validation

_Const:_{.json-schema-reset .json-schema-value} `email`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "email"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationUrlStringOut {#entity-ValidationUrlStringOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

URL validation

_Const:_{.json-schema-reset .json-schema-value} `url`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "url"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationPhoneStringOut {#entity-ValidationPhoneStringOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Phone number validation

_Const:_{.json-schema-reset .json-schema-value} `phone`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "phone"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationInnStringOut {#entity-ValidationInnStringOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

TIN (INN) validation

_Const:_{.json-schema-reset .json-schema-value} `inn`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "inn"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationDecimalStringOut {#entity-ValidationDecimalStringOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Decimal number validation

_Const:_{.json-schema-reset .json-schema-value} `decimal`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "decimal"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationRussianStringOut {#entity-ValidationRussianStringOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Russian letters validation

_Const:_{.json-schema-reset .json-schema-value} `russian`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "russian"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationRegexpStringOut {#entity-ValidationRegexpStringOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Regular expression validation

_Const:_{.json-schema-reset .json-schema-value} `regexp`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_value_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Validation value

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "regexp",
  "value": "example"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationExternalOut {#entity-ValidationExternalOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Validation via external endpoint

_Const:_{.json-schema-reset .json-schema-value} `external`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "external"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionQuizItemIn {#entity-QuestionQuizItemIn}

#|
|| **Name** | **Description** ||
||

_label_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Answer option text

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_scores_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: number

Points for the answer
{.table-cell}
||
||

_correct_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Correct answer option flag
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "label": "example",
  "correct": true,
  "scores": 0.5
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionStringIn {#entity-QuestionStringIn}

#|
|| **Name** | **Description** ||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_has_quiz_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Quiz presence flag
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag
{.table-cell}
||
||

_hint_source_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **QuestionHintSource**

  **Type**: [QuestionHintSource](#entity-QuestionHintSource)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "name": "example",
    "params": [
      {
        "type": "example",
        "value": "example"
      }
    ]
  }
  ```

  {% endcut %}

{% endcut %}

Question hint source

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "name": "example",
  "params": [
    {
      "type": "example",
      "value": "example"
    }
  ]
}
```

{% endcut %}
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageIn**

  **Type**: [ImageIn](#entity-ImageIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_initial_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Initial value

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question name

_Max length:_{.json-schema-reset .json-schema-assertion} `8000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_multiline_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Multiline text flag
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_quiz_items_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [QuestionQuizItemIn](#entity-QuestionQuizItemIn)[]

List of quiz answer options

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "label": "example",
    "correct": true,
    "scores": 0.5
  }
]
```

{% endcut %}
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `string`

_Const:_{.json-schema-reset .json-schema-value} `string`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 11 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationMinStringOut**

  **Type**: [ValidationMinStringOut](#entity-ValidationMinStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "min",
    "value": 0
  }
  ```

  {% endcut %}

- **ValidationMaxStringOut**

  **Type**: [ValidationMaxStringOut](#entity-ValidationMaxStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "max",
    "value": 0
  }
  ```

  {% endcut %}

- **ValidationEmailStringOut**

  **Type**: [ValidationEmailStringOut](#entity-ValidationEmailStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "email"
  }
  ```

  {% endcut %}

- **ValidationUrlStringOut**

  **Type**: [ValidationUrlStringOut](#entity-ValidationUrlStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "url"
  }
  ```

  {% endcut %}

- **ValidationPhoneStringOut**

  **Type**: [ValidationPhoneStringOut](#entity-ValidationPhoneStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "phone"
  }
  ```

  {% endcut %}

- **ValidationInnStringOut**

  **Type**: [ValidationInnStringOut](#entity-ValidationInnStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "inn"
  }
  ```

  {% endcut %}

- **ValidationDecimalStringOut**

  **Type**: [ValidationDecimalStringOut](#entity-ValidationDecimalStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "decimal"
  }
  ```

  {% endcut %}

- **ValidationRussianStringOut**

  **Type**: [ValidationRussianStringOut](#entity-ValidationRussianStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "russian"
  }
  ```

  {% endcut %}

- **ValidationRegexpStringOut**

  **Type**: [ValidationRegexpStringOut](#entity-ValidationRegexpStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "regexp",
    "value": "example"
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "hidden": true,
  "slug": "example",
  "image": {
    "id": 0,
    "links": {},
    "name": "example"
  },
  "type": "string",
  "initial": "example",
  "multiline": true,
  "hint_source": {
    "name": "example",
    "params": [
      {
        "type": "example",
        "value": "example"
      }
    ]
  },
  "validators": [
    {
      "type": "required"
    }
  ],
  "has_quiz": true,
  "quiz_items": [
    {
      "label": "example",
      "correct": true,
      "scores": 0.5
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionBooleanIn {#entity-QuestionBooleanIn}

#|
|| **Name** | **Description** ||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageIn**

  **Type**: [ImageIn](#entity-ImageIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_initial_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Initial value
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question name

_Max length:_{.json-schema-reset .json-schema-assertion} `8000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `boolean`

_Const:_{.json-schema-reset .json-schema-value} `boolean`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 2 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "hidden": true,
  "slug": "example",
  "image": {
    "id": 0,
    "links": {},
    "name": "example"
  },
  "type": "boolean",
  "initial": true,
  "validators": [
    {
      "type": "required"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationMinIntegerOut {#entity-ValidationMinIntegerOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Minimum value

_Const:_{.json-schema-reset .json-schema-value} `min`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_value_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Validation value
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "min",
  "value": 0
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationMaxIntegerOut {#entity-ValidationMaxIntegerOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Maximum value

_Const:_{.json-schema-reset .json-schema-value} `max`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_value_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Validation value
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "max",
  "value": 0
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionIntegerIn {#entity-QuestionIntegerIn}

#|
|| **Name** | **Description** ||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageIn**

  **Type**: [ImageIn](#entity-ImageIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_initial_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: integer

Initial value
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question name

_Max length:_{.json-schema-reset .json-schema-assertion} `8000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `integer`

_Const:_{.json-schema-reset .json-schema-value} `integer`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 4 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationMinIntegerOut**

  **Type**: [ValidationMinIntegerOut](#entity-ValidationMinIntegerOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "min",
    "value": 0
  }
  ```

  {% endcut %}

- **ValidationMaxIntegerOut**

  **Type**: [ValidationMaxIntegerOut](#entity-ValidationMaxIntegerOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "max",
    "value": 0
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "hidden": true,
  "slug": "example",
  "image": {
    "id": 0,
    "links": {},
    "name": "example"
  },
  "type": "integer",
  "initial": 0,
  "validators": [
    {
      "type": "required"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationMaxSizeFileOut {#entity-ValidationMaxSizeFileOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Maximum file size, MB

_Const:_{.json-schema-reset .json-schema-value} `size`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_value_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Validation value

_Max value:_{.json-schema-reset .json-schema-assertion} `20`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "size",
  "value": 20
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationMaxCountFileOut {#entity-ValidationMaxCountFileOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Maximum number of files

_Const:_{.json-schema-reset .json-schema-value} `count`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_value_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Validation value

_Max value:_{.json-schema-reset .json-schema-assertion} `20`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "count",
  "value": 20
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionFileIn {#entity-QuestionFileIn}

#|
|| **Name** | **Description** ||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageIn**

  **Type**: [ImageIn](#entity-ImageIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question name

_Max length:_{.json-schema-reset .json-schema-assertion} `8000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `file`

_Const:_{.json-schema-reset .json-schema-value} `file`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 4 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationMaxSizeFileOut**

  **Type**: [ValidationMaxSizeFileOut](#entity-ValidationMaxSizeFileOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "size",
    "value": 20
  }
  ```

  {% endcut %}

- **ValidationMaxCountFileOut**

  **Type**: [ValidationMaxCountFileOut](#entity-ValidationMaxCountFileOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "count",
    "value": 20
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "hidden": true,
  "slug": "example",
  "image": {
    "id": 0,
    "links": {},
    "name": "example"
  },
  "type": "file",
  "validators": [
    {
      "type": "required"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionCommentIn {#entity-QuestionCommentIn}

#|
|| **Name** | **Description** ||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_header_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Header flag
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageIn**

  **Type**: [ImageIn](#entity-ImageIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question name

_Max length:_{.json-schema-reset .json-schema-assertion} `8000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `comment`

_Const:_{.json-schema-reset .json-schema-value} `comment`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "hidden": true,
  "slug": "example",
  "image": {
    "id": 0,
    "links": {},
    "name": "example"
  },
  "type": "comment",
  "header": true
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationMinDateOut {#entity-ValidationMinDateOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Minimum date

_Const:_{.json-schema-reset .json-schema-value} `min`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_value_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string&lt;date&gt;

Validation value

_Example:_{.json-schema-reset .json-schema-example} `2025-01-01`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "min",
  "value": "2025-01-01"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationMaxDateOut {#entity-ValidationMaxDateOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Maximum date

_Const:_{.json-schema-reset .json-schema-value} `max`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_value_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string&lt;date&gt;

Validation value

_Example:_{.json-schema-reset .json-schema-example} `2025-01-01`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "max",
  "value": "2025-01-01"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionDateIn {#entity-QuestionDateIn}

#|
|| **Name** | **Description** ||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageIn**

  **Type**: [ImageIn](#entity-ImageIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question name

_Max length:_{.json-schema-reset .json-schema-assertion} `8000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `date`

_Const:_{.json-schema-reset .json-schema-value} `date`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 4 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationMinDateOut**

  **Type**: [ValidationMinDateOut](#entity-ValidationMinDateOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "min",
    "value": "2025-01-01"
  }
  ```

  {% endcut %}

- **ValidationMaxDateOut**

  **Type**: [ValidationMaxDateOut](#entity-ValidationMaxDateOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "max",
    "value": "2025-01-01"
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "hidden": true,
  "slug": "example",
  "image": {
    "id": 0,
    "links": {},
    "name": "example"
  },
  "type": "date",
  "validators": [
    {
      "type": "required"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionDateRangeIn {#entity-QuestionDateRangeIn}

#|
|| **Name** | **Description** ||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageIn**

  **Type**: [ImageIn](#entity-ImageIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question name

_Max length:_{.json-schema-reset .json-schema-assertion} `8000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `daterange`

_Const:_{.json-schema-reset .json-schema-value} `daterange`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 4 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationMinDateOut**

  **Type**: [ValidationMinDateOut](#entity-ValidationMinDateOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "min",
    "value": "2025-01-01"
  }
  ```

  {% endcut %}

- **ValidationMaxDateOut**

  **Type**: [ValidationMaxDateOut](#entity-ValidationMaxDateOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "max",
    "value": "2025-01-01"
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "hidden": true,
  "slug": "example",
  "image": {
    "id": 0,
    "links": {},
    "name": "example"
  },
  "type": "daterange",
  "validators": [
    {
      "type": "required"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationMinPaymentOut {#entity-ValidationMinPaymentOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Minimum amount

_Const:_{.json-schema-reset .json-schema-value} `min`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_value_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Validation value
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "min",
  "value": 0
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ValidationMaxPaymentOut {#entity-ValidationMaxPaymentOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Maximum amount

_Const:_{.json-schema-reset .json-schema-value} `max`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_value_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Validation value
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "max",
  "value": 0
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionPaymentIn {#entity-QuestionPaymentIn}

#|
|| **Name** | **Description** ||
||

_account_id_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Wallet number for payment

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_fixed_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Allow changing the payment amount
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageIn**

  **Type**: [ImageIn](#entity-ImageIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_initial_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: integer

Initial value
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question name

_Max length:_{.json-schema-reset .json-schema-assertion} `8000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `payment`

_Const:_{.json-schema-reset .json-schema-value} `payment`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 3 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationMinPaymentOut**

  **Type**: [ValidationMinPaymentOut](#entity-ValidationMinPaymentOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "min",
    "value": 0
  }
  ```

  {% endcut %}

- **ValidationMaxPaymentOut**

  **Type**: [ValidationMaxPaymentOut](#entity-ValidationMaxPaymentOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "max",
    "value": 0
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "hidden": true,
  "slug": "example",
  "image": {
    "id": 0,
    "links": {},
    "name": "example"
  },
  "type": "payment",
  "fixed": true,
  "account_id": "example",
  "initial": 0,
  "validators": [
    {
      "type": "required"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### WidgetType {#entity-WidgetType}

An enumeration.

**Type**: string

_Enum:_{.json-schema-reset .json-schema-value} `radio`, `checkbox`, `dropdown`, `stars`, `onerow`

</div>

<div class="openapi-entity">

### QuestionEnumItemIn {#entity-QuestionEnumItemIn}

#|
|| **Name** | **Description** ||
||

_correct_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Correct answer option flag
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden answer option flag
{.table-cell}
||
||

_id_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: integer

Answer option ID
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageIn**

  **Type**: [ImageIn](#entity-ImageIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example"
  }
  ```

  {% endcut %}

{% endcut %}

Answer option image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Answer option text

_Default:_{.json-schema-reset .json-schema-value} ``
{.table-cell}
||
||

_scores_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: number

Points for correct answer
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Answer option slug (defaults to ID)

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "slug": "example",
  "label": "",
  "hidden": true,
  "image": {
    "id": 0,
    "links": {},
    "name": "example"
  },
  "correct": true,
  "scores": 0.5
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionModifyChoicesType {#entity-QuestionModifyChoicesType}

An enumeration.

**Type**: string

_Enum:_{.json-schema-reset .json-schema-value} ``, `natural`, `sort`, `shuffle`

</div>

<div class="openapi-entity">

### ValidationEnumSingleOut {#entity-ValidationEnumSingleOut}

#|
|| **Name** | **Description** ||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Value must be single

_Const:_{.json-schema-reset .json-schema-value} `single`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "single"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionEnumIn {#entity-QuestionEnumIn}

#|
|| **Name** | **Description** ||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_has_quiz_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Quiz presence flag
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageIn**

  **Type**: [ImageIn](#entity-ImageIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_initial_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [QuestionEnumItemIn](#entity-QuestionEnumItemIn)[]

Initial value

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "slug": "example",
    "label": "",
    "hidden": true,
    "image": {
      "id": 0,
      "links": {},
      "name": "example"
    },
    "correct": true,
    "scores": 0.5
  }
]
```

{% endcut %}
{.table-cell}
||
||

_items_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [QuestionEnumItemIn](#entity-QuestionEnumItemIn)[]

List of items

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "slug": "example",
    "label": "",
    "hidden": true,
    "image": {
      "id": 0,
      "links": {},
      "name": "example"
    },
    "correct": true,
    "scores": 0.5
  }
]
```

{% endcut %}
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question name

_Max length:_{.json-schema-reset .json-schema-assertion} `8000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_modify_choices_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **QuestionModifyChoicesType**

  **Type**: [QuestionModifyChoicesType](#entity-QuestionModifyChoicesType)

  An enumeration.

  _Enum:_{.json-schema-reset .json-schema-value} ``, `natural`, `sort`, `shuffle`

{% endcut %}

Item sort type

_Example:_{.json-schema-reset .json-schema-example} ``
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_show_first_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Whether to show the first value (for dropdown list)
{.table-cell}
||
||

_show_suggest_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Show suggestions for options
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `enum`

_Const:_{.json-schema-reset .json-schema-value} `enum`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 3 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationEnumSingleOut**

  **Type**: [ValidationEnumSingleOut](#entity-ValidationEnumSingleOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "single"
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
||

_widget_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **WidgetType**

  **Type**: [WidgetType](#entity-WidgetType)

  An enumeration.

  _Enum:_{.json-schema-reset .json-schema-value} `radio`, `checkbox`, `dropdown`, `stars`, `onerow`

{% endcut %}

Question display type

_Default:_{.json-schema-reset .json-schema-value} `radio`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "hidden": true,
  "slug": "example",
  "image": {
    "id": 0,
    "links": {},
    "name": "example"
  },
  "type": "enum",
  "widget": "radio",
  "items": [
    {
      "id": 0,
      "slug": "example",
      "label": "",
      "hidden": true,
      "image": null,
      "correct": true,
      "scores": 0.5
    }
  ],
  "initial": [
    null
  ],
  "modify_choices": "",
  "validators": [
    {
      "type": "required"
    }
  ],
  "show_first": true,
  "show_suggest": true,
  "has_quiz": true
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionDataSource {#entity-QuestionDataSource}

#|
|| **Name** | **Description** ||
||

_name_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Data source name

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_params_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [QuestionDataSourceParam](#entity-QuestionDataSourceParam)[]

Parameters for the data source

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "example",
    "value": "example"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "name": "example",
  "params": [
    {
      "type": "example",
      "value": "example"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionSuggestIn {#entity-QuestionSuggestIn}

#|
|| **Name** | **Description** ||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_data_source_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **QuestionDataSource**

  **Type**: [QuestionDataSource](#entity-QuestionDataSource)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "name": "example",
    "params": [
      {
        "type": "example",
        "value": "example"
      }
    ]
  }
  ```

  {% endcut %}

{% endcut %}

Data source

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "name": "example",
  "params": [
    {
      "type": "example",
      "value": "example"
    }
  ]
}
```

{% endcut %}
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageIn**

  **Type**: [ImageIn](#entity-ImageIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question name

_Max length:_{.json-schema-reset .json-schema-assertion} `8000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_multichoice_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Enable multiple selection
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `suggest`

_Const:_{.json-schema-reset .json-schema-value} `suggest`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 2 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "hidden": true,
  "slug": "example",
  "image": {
    "id": 0,
    "links": {},
    "name": "example"
  },
  "type": "suggest",
  "data_source": {
    "name": "example",
    "params": [
      {
        "type": "example",
        "value": "example"
      }
    ]
  },
  "multichoice": true,
  "validators": [
    {
      "type": "required"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionMatrixRowIn {#entity-QuestionMatrixRowIn}

#|
|| **Name** | **Description** ||
||

_id_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: integer

Scale rating element ID
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Scale rating element text

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Scale rating element slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "slug": "example",
  "label": "example"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionMatrixIn {#entity-QuestionMatrixIn}

#|
|| **Name** | **Description** ||
||

_columns_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [QuestionMatrixRowIn](#entity-QuestionMatrixRowIn)[]

List of columns

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "slug": "example",
    "label": "example"
  }
]
```

{% endcut %}
{.table-cell}
||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageIn**

  **Type**: [ImageIn](#entity-ImageIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question name

_Max length:_{.json-schema-reset .json-schema-assertion} `8000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_rows_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [QuestionMatrixRowIn](#entity-QuestionMatrixRowIn)[]

List of rows

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "slug": "example",
    "label": "example"
  }
]
```

{% endcut %}
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `matrix`

_Const:_{.json-schema-reset .json-schema-value} `matrix`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 2 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "hidden": true,
  "slug": "example",
  "image": {
    "id": 0,
    "links": {},
    "name": "example"
  },
  "type": "matrix",
  "rows": [
    {
      "id": 0,
      "slug": "example",
      "label": "example"
    }
  ],
  "columns": [
    null
  ],
  "validators": [
    {
      "type": "required"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionSeriesIn {#entity-QuestionSeriesIn}

#|
|| **Name** | **Description** ||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageIn**

  **Type**: [ImageIn](#entity-ImageIn)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question name

_Max length:_{.json-schema-reset .json-schema-assertion} `8000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Max length:_{.json-schema-reset .json-schema-assertion} `1000`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `series`

_Const:_{.json-schema-reset .json-schema-value} `series`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "hidden": true,
  "slug": "example",
  "image": {
    "id": 0,
    "links": {},
    "name": "example"
  },
  "type": "series"
}
```

{% endcut %}

</div>

## Responses

<div class="openapi__response__code__200">

## 200 OK

OK

<div class="openapi-entity">

### Body

{% cut "application/json" %}

```json translate=no
{
  "id": 0,
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "slug": "example",
  "hidden": false,
  "conditions": [
    {
      "id": 0,
      "operator": "example",
      "items": [
        null
      ]
    }
  ],
  "image": {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": null
  },
  "type": "string",
  "initial": "example",
  "multiline": true,
  "hint_source": {
    "name": "example",
    "params": [
      null
    ]
  },
  "validators": [
    {}
  ],
  "has_quiz": true,
  "quiz_items": [
    {
      "label": "example",
      "correct": true,
      "scores": 0.5
    }
  ]
}
```

{% endcut %}

{% cut "**Any of 2 types**" %}{.json-schema-combinators data-marker=or}

- **QuestionOut**

  **Type**: [QuestionOut](#entity-QuestionOut)

  Question data

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "slug": "example",
    "hidden": false,
    "conditions": [
      {
        "id": 0,
        "operator": "example",
        "items": [
          {}
        ]
      }
    ],
    "image": {
      "id": 0,
      "links": {},
      "name": "example",
      "check_status": "check"
    },
    "type": "string",
    "initial": "example",
    "multiline": true,
    "hint_source": {
      "name": "example",
      "params": [
        {}
      ]
    },
    "validators": [
      {
        "type": "required"
      }
    ],
    "has_quiz": true,
    "quiz_items": [
      {
        "label": "example",
        "correct": true,
        "scores": 0.5
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionSeriesOut**

  **Type**: [QuestionSeriesOut](#entity-QuestionSeriesOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "slug": "example",
    "hidden": false,
    "conditions": [
      {
        "id": 0,
        "operator": "example",
        "items": [
          {
            "operator": null,
            "type": null,
            "condition": null,
            "question": "example",
            "value": "example"
          }
        ]
      }
    ],
    "image": {
      "id": 0,
      "links": {},
      "name": "example",
      "check_status": "check"
    },
    "type": "series",
    "items": [
      {
        "id": 0,
        "label": "example",
        "comment": "example",
        "placeholder": "example",
        "slug": "example",
        "hidden": false,
        "conditions": [
          null
        ],
        "image": null,
        "type": "string",
        "initial": "example",
        "multiline": true,
        "hint_source": null,
        "validators": [
          null
        ],
        "has_quiz": true,
        "quiz_items": [
          {}
        ]
      }
    ]
  }
  ```

  {% endcut %}

{% endcut %}

</div>

<div class="openapi-entity">

### OperatorType {#entity-OperatorType}

An enumeration.

**Type**: string

_Enum:_{.json-schema-reset .json-schema-value} `and`, `or`

</div>

<div class="openapi-entity">

### ConditionItemType {#entity-ConditionItemType}

An enumeration.

**Type**: string

_Enum:_{.json-schema-reset .json-schema-value} `question`, `language`, `origin`

</div>

<div class="openapi-entity">

### ConditionType {#entity-ConditionType}

An enumeration.

**Type**: string

_Enum:_{.json-schema-reset .json-schema-value} `eq`, `neq`, `lt`, `gt`

</div>

<div class="openapi-entity">

### ConditionItemOut {#entity-ConditionItemOut}

#|
|| **Name** | **Description** ||
||

_condition_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ConditionType**

  **Type**: [ConditionType](#entity-ConditionType)

  An enumeration.

  _Enum:_{.json-schema-reset .json-schema-value} `eq`, `neq`, `lt`, `gt`

{% endcut %}

Comparison operator

_Example:_{.json-schema-reset .json-schema-example} `eq`
{.table-cell}
||
||

_operator_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **OperatorType**

  **Type**: [OperatorType](#entity-OperatorType)

  An enumeration.

  _Enum:_{.json-schema-reset .json-schema-value} `and`, `or`

{% endcut %}

Operator between conditions

_Example:_{.json-schema-reset .json-schema-example} `and`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ConditionItemType**

  **Type**: [ConditionItemType](#entity-ConditionItemType)

  An enumeration.

  _Enum:_{.json-schema-reset .json-schema-value} `question`, `language`, `origin`

{% endcut %}

Condition type

_Example:_{.json-schema-reset .json-schema-example} `question`
{.table-cell}
||
||

_question_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_value_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Condition value

_Max length:_{.json-schema-reset .json-schema-assertion} `100`

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "operator": "and",
  "type": "question",
  "condition": "eq",
  "question": "example",
  "value": "example"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### ConditionOut {#entity-ConditionOut}

#|
|| **Name** | **Description** ||
||

_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Condition group ID
{.table-cell}
||
||

_operator_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Condition group operator

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_items_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [ConditionItemOut](#entity-ConditionItemOut)[]

List of conditions in the group

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "operator": "and",
    "type": "question",
    "condition": "eq",
    "question": "example",
    "value": "example"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "operator": "example",
  "items": [
    {
      "operator": "and",
      "type": "question",
      "condition": "eq",
      "question": "example",
      "value": "example"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### FileCheckStatusType {#entity-FileCheckStatusType}

An enumeration.

**Type**: string

_Enum:_{.json-schema-reset .json-schema-value} `check`, `ready`, `infected`, `error`, `deleted`

</div>

<div class="openapi-entity">

### ImageOut {#entity-ImageOut}

#|
|| **Name** | **Description** ||
||

_links_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
{% cut "**Type**: Links" %}

#|
||

_[additional]_{.json-schema-reset .json-schema-additional-property}
{.table-cell}|
**Type**: string&lt;uri&gt;

_Min length:_{.json-schema-reset .json-schema-assertion} `1`

_Max length:_{.json-schema-reset .json-schema-assertion} `2083`

_Example:_{.json-schema-reset .json-schema-example} `https://example.com`
{.table-cell}
||
|#{.json-schema-properties}

{% endcut %}

List of links to different image sizes

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{}
```

{% endcut %}
{.table-cell}
||
||

_check_status_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **FileCheckStatusType**

  **Type**: [FileCheckStatusType](#entity-FileCheckStatusType)

  An enumeration.

  _Enum:_{.json-schema-reset .json-schema-value} `check`, `ready`, `infected`, `error`, `deleted`

{% endcut %}

Image upload status

_Example:_{.json-schema-reset .json-schema-example} `check`
{.table-cell}
||
||

_id_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: integer

Image ID
{.table-cell}
||
||

_name_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Original image file name

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example",
  "check_status": "check"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionQuizItemOut {#entity-QuestionQuizItemOut}

#|
|| **Name** | **Description** ||
||

_correct_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: boolean

Correct answer option flag
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Answer option text

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_scores_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: number

Points for the answer
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "label": "example",
  "correct": true,
  "scores": 0.5
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionStringOut {#entity-QuestionStringOut}

#|
|| **Name** | **Description** ||
||

_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Question ID
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question label

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_multiline_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: boolean

Multiline text flag
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_conditions_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [ConditionOut](#entity-ConditionOut)[]

Conditions for the question

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "operator": "example",
    "items": [
      {
        "operator": "and",
        "type": "question",
        "condition": "eq",
        "question": "example",
        "value": "example"
      }
    ]
  }
]
```

{% endcut %}
{.table-cell}
||
||

_has_quiz_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Test presence flag
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag

_Default:_{.json-schema-reset .json-schema-value} `false`
{.table-cell}
||
||

_hint_source_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **QuestionHintSource**

  **Type**: [QuestionHintSource](#entity-QuestionHintSource)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "name": "example",
    "params": [
      {
        "type": "example",
        "value": "example"
      }
    ]
  }
  ```

  {% endcut %}

{% endcut %}

Question hint source

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "name": "example",
  "params": [
    {
      "type": "example",
      "value": "example"
    }
  ]
}
```

{% endcut %}
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageOut**

  **Type**: [ImageOut](#entity-ImageOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example",
  "check_status": "check"
}
```

{% endcut %}
{.table-cell}
||
||

_initial_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Initial value

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_quiz_items_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [QuestionQuizItemOut](#entity-QuestionQuizItemOut)[]

List of test answer options

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "label": "example",
    "correct": true,
    "scores": 0.5
  }
]
```

{% endcut %}
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `string`

_Const:_{.json-schema-reset .json-schema-value} `string`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 11 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationMinStringOut**

  **Type**: [ValidationMinStringOut](#entity-ValidationMinStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "min",
    "value": 0
  }
  ```

  {% endcut %}

- **ValidationMaxStringOut**

  **Type**: [ValidationMaxStringOut](#entity-ValidationMaxStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "max",
    "value": 0
  }
  ```

  {% endcut %}

- **ValidationEmailStringOut**

  **Type**: [ValidationEmailStringOut](#entity-ValidationEmailStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "email"
  }
  ```

  {% endcut %}

- **ValidationUrlStringOut**

  **Type**: [ValidationUrlStringOut](#entity-ValidationUrlStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "url"
  }
  ```

  {% endcut %}

- **ValidationPhoneStringOut**

  **Type**: [ValidationPhoneStringOut](#entity-ValidationPhoneStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "phone"
  }
  ```

  {% endcut %}

- **ValidationInnStringOut**

  **Type**: [ValidationInnStringOut](#entity-ValidationInnStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "inn"
  }
  ```

  {% endcut %}

- **ValidationDecimalStringOut**

  **Type**: [ValidationDecimalStringOut](#entity-ValidationDecimalStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "decimal"
  }
  ```

  {% endcut %}

- **ValidationRussianStringOut**

  **Type**: [ValidationRussianStringOut](#entity-ValidationRussianStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "russian"
  }
  ```

  {% endcut %}

- **ValidationRegexpStringOut**

  **Type**: [ValidationRegexpStringOut](#entity-ValidationRegexpStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "regexp",
    "value": "example"
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "slug": "example",
  "hidden": false,
  "conditions": [
    {
      "id": 0,
      "operator": "example",
      "items": [
        {
          "operator": null,
          "type": null,
          "condition": null,
          "question": "example",
          "value": "example"
        }
      ]
    }
  ],
  "image": {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  },
  "type": "string",
  "initial": "example",
  "multiline": true,
  "hint_source": {
    "name": "example",
    "params": [
      {
        "type": "example",
        "value": "example"
      }
    ]
  },
  "validators": [
    {
      "type": "required"
    }
  ],
  "has_quiz": true,
  "quiz_items": [
    {
      "label": "example",
      "correct": true,
      "scores": 0.5
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionBooleanOut {#entity-QuestionBooleanOut}

#|
|| **Name** | **Description** ||
||

_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Question ID
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question label

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_conditions_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [ConditionOut](#entity-ConditionOut)[]

Conditions for the question

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "operator": "example",
    "items": [
      {
        "operator": "and",
        "type": "question",
        "condition": "eq",
        "question": "example",
        "value": "example"
      }
    ]
  }
]
```

{% endcut %}
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag

_Default:_{.json-schema-reset .json-schema-value} `false`
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageOut**

  **Type**: [ImageOut](#entity-ImageOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example",
  "check_status": "check"
}
```

{% endcut %}
{.table-cell}
||
||

_initial_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Initial value
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `boolean`

_Const:_{.json-schema-reset .json-schema-value} `boolean`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 2 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "slug": "example",
  "hidden": false,
  "conditions": [
    {
      "id": 0,
      "operator": "example",
      "items": [
        {
          "operator": null,
          "type": null,
          "condition": null,
          "question": "example",
          "value": "example"
        }
      ]
    }
  ],
  "image": {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  },
  "type": "boolean",
  "initial": true,
  "validators": [
    {
      "type": "required"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionIntegerOut {#entity-QuestionIntegerOut}

#|
|| **Name** | **Description** ||
||

_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Question ID
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question label

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_conditions_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [ConditionOut](#entity-ConditionOut)[]

Conditions for the question

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "operator": "example",
    "items": [
      {
        "operator": "and",
        "type": "question",
        "condition": "eq",
        "question": "example",
        "value": "example"
      }
    ]
  }
]
```

{% endcut %}
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag

_Default:_{.json-schema-reset .json-schema-value} `false`
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageOut**

  **Type**: [ImageOut](#entity-ImageOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example",
  "check_status": "check"
}
```

{% endcut %}
{.table-cell}
||
||

_initial_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: integer

Initial value
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `integer`

_Const:_{.json-schema-reset .json-schema-value} `integer`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 4 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationMinIntegerOut**

  **Type**: [ValidationMinIntegerOut](#entity-ValidationMinIntegerOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "min",
    "value": 0
  }
  ```

  {% endcut %}

- **ValidationMaxIntegerOut**

  **Type**: [ValidationMaxIntegerOut](#entity-ValidationMaxIntegerOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "max",
    "value": 0
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "slug": "example",
  "hidden": false,
  "conditions": [
    {
      "id": 0,
      "operator": "example",
      "items": [
        {
          "operator": null,
          "type": null,
          "condition": null,
          "question": "example",
          "value": "example"
        }
      ]
    }
  ],
  "image": {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  },
  "type": "integer",
  "initial": 0,
  "validators": [
    {
      "type": "required"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionFileOut {#entity-QuestionFileOut}

#|
|| **Name** | **Description** ||
||

_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Question ID
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question label

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_conditions_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [ConditionOut](#entity-ConditionOut)[]

Conditions for the question

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "operator": "example",
    "items": [
      {
        "operator": "and",
        "type": "question",
        "condition": "eq",
        "question": "example",
        "value": "example"
      }
    ]
  }
]
```

{% endcut %}
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag

_Default:_{.json-schema-reset .json-schema-value} `false`
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageOut**

  **Type**: [ImageOut](#entity-ImageOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example",
  "check_status": "check"
}
```

{% endcut %}
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `file`

_Const:_{.json-schema-reset .json-schema-value} `file`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 4 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationMaxSizeFileOut**

  **Type**: [ValidationMaxSizeFileOut](#entity-ValidationMaxSizeFileOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "size",
    "value": 20
  }
  ```

  {% endcut %}

- **ValidationMaxCountFileOut**

  **Type**: [ValidationMaxCountFileOut](#entity-ValidationMaxCountFileOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "count",
    "value": 20
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "slug": "example",
  "hidden": false,
  "conditions": [
    {
      "id": 0,
      "operator": "example",
      "items": [
        {
          "operator": null,
          "type": null,
          "condition": null,
          "question": "example",
          "value": "example"
        }
      ]
    }
  ],
  "image": {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  },
  "type": "file",
  "validators": [
    {
      "type": "required"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionCommentOut {#entity-QuestionCommentOut}

#|
|| **Name** | **Description** ||
||

_header_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: boolean

Header flag
{.table-cell}
||
||

_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Question ID
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question label

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_conditions_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [ConditionOut](#entity-ConditionOut)[]

Conditions for the question

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "operator": "example",
    "items": [
      {
        "operator": "and",
        "type": "question",
        "condition": "eq",
        "question": "example",
        "value": "example"
      }
    ]
  }
]
```

{% endcut %}
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag

_Default:_{.json-schema-reset .json-schema-value} `false`
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageOut**

  **Type**: [ImageOut](#entity-ImageOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example",
  "check_status": "check"
}
```

{% endcut %}
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `comment`

_Const:_{.json-schema-reset .json-schema-value} `comment`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "slug": "example",
  "hidden": false,
  "conditions": [
    {
      "id": 0,
      "operator": "example",
      "items": [
        {
          "operator": null,
          "type": null,
          "condition": null,
          "question": "example",
          "value": "example"
        }
      ]
    }
  ],
  "image": {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  },
  "type": "comment",
  "header": true
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionDateOut {#entity-QuestionDateOut}

#|
|| **Name** | **Description** ||
||

_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Question ID
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question label

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_conditions_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [ConditionOut](#entity-ConditionOut)[]

Conditions for the question

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "operator": "example",
    "items": [
      {
        "operator": "and",
        "type": "question",
        "condition": "eq",
        "question": "example",
        "value": "example"
      }
    ]
  }
]
```

{% endcut %}
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag

_Default:_{.json-schema-reset .json-schema-value} `false`
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageOut**

  **Type**: [ImageOut](#entity-ImageOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example",
  "check_status": "check"
}
```

{% endcut %}
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `date`

_Const:_{.json-schema-reset .json-schema-value} `date`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 4 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationMinDateOut**

  **Type**: [ValidationMinDateOut](#entity-ValidationMinDateOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "min",
    "value": "2025-01-01"
  }
  ```

  {% endcut %}

- **ValidationMaxDateOut**

  **Type**: [ValidationMaxDateOut](#entity-ValidationMaxDateOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "max",
    "value": "2025-01-01"
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "slug": "example",
  "hidden": false,
  "conditions": [
    {
      "id": 0,
      "operator": "example",
      "items": [
        {
          "operator": null,
          "type": null,
          "condition": null,
          "question": "example",
          "value": "example"
        }
      ]
    }
  ],
  "image": {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  },
  "type": "date",
  "validators": [
    {
      "type": "required"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionDateRangeOut {#entity-QuestionDateRangeOut}

#|
|| **Name** | **Description** ||
||

_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Question ID
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question label

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_conditions_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [ConditionOut](#entity-ConditionOut)[]

Conditions for the question

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "operator": "example",
    "items": [
      {
        "operator": "and",
        "type": "question",
        "condition": "eq",
        "question": "example",
        "value": "example"
      }
    ]
  }
]
```

{% endcut %}
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag

_Default:_{.json-schema-reset .json-schema-value} `false`
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageOut**

  **Type**: [ImageOut](#entity-ImageOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example",
  "check_status": "check"
}
```

{% endcut %}
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `daterange`

_Const:_{.json-schema-reset .json-schema-value} `daterange`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 4 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationMinDateOut**

  **Type**: [ValidationMinDateOut](#entity-ValidationMinDateOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "min",
    "value": "2025-01-01"
  }
  ```

  {% endcut %}

- **ValidationMaxDateOut**

  **Type**: [ValidationMaxDateOut](#entity-ValidationMaxDateOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "max",
    "value": "2025-01-01"
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "slug": "example",
  "hidden": false,
  "conditions": [
    {
      "id": 0,
      "operator": "example",
      "items": [
        {
          "operator": null,
          "type": null,
          "condition": null,
          "question": "example",
          "value": "example"
        }
      ]
    }
  ],
  "image": {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  },
  "type": "daterange",
  "validators": [
    {
      "type": "required"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionPaymentOut {#entity-QuestionPaymentOut}

#|
|| **Name** | **Description** ||
||

_account_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Wallet number for payment

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_fixed_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: boolean

Allow changing the payment amount
{.table-cell}
||
||

_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Question ID
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question label

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_conditions_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [ConditionOut](#entity-ConditionOut)[]

Conditions for the question

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "operator": "example",
    "items": [
      {
        "operator": "and",
        "type": "question",
        "condition": "eq",
        "question": "example",
        "value": "example"
      }
    ]
  }
]
```

{% endcut %}
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag

_Default:_{.json-schema-reset .json-schema-value} `false`
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageOut**

  **Type**: [ImageOut](#entity-ImageOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example",
  "check_status": "check"
}
```

{% endcut %}
{.table-cell}
||
||

_initial_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: integer

Initial value
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `payment`

_Const:_{.json-schema-reset .json-schema-value} `payment`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 3 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationMinPaymentOut**

  **Type**: [ValidationMinPaymentOut](#entity-ValidationMinPaymentOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "min",
    "value": 0
  }
  ```

  {% endcut %}

- **ValidationMaxPaymentOut**

  **Type**: [ValidationMaxPaymentOut](#entity-ValidationMaxPaymentOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "max",
    "value": 0
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "slug": "example",
  "hidden": false,
  "conditions": [
    {
      "id": 0,
      "operator": "example",
      "items": [
        {
          "operator": null,
          "type": null,
          "condition": null,
          "question": "example",
          "value": "example"
        }
      ]
    }
  ],
  "image": {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  },
  "type": "payment",
  "fixed": true,
  "account_id": "example",
  "initial": 0,
  "validators": [
    {
      "type": "required"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionEnumOut {#entity-QuestionEnumOut}

#|
|| **Name** | **Description** ||
||

_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Question ID
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question label

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_conditions_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [ConditionOut](#entity-ConditionOut)[]

Conditions for the question

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "operator": "example",
    "items": [
      {
        "operator": "and",
        "type": "question",
        "condition": "eq",
        "question": "example",
        "value": "example"
      }
    ]
  }
]
```

{% endcut %}
{.table-cell}
||
||

_has_quiz_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Test presence flag
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag

_Default:_{.json-schema-reset .json-schema-value} `false`
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageOut**

  **Type**: [ImageOut](#entity-ImageOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example",
  "check_status": "check"
}
```

{% endcut %}
{.table-cell}
||
||

_initial_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [QuestionEnumItemIn](#entity-QuestionEnumItemIn)[]

Initial value

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "slug": "example",
    "label": "",
    "hidden": true,
    "image": {
      "id": 0,
      "links": {},
      "name": "example"
    },
    "correct": true,
    "scores": 0.5
  }
]
```

{% endcut %}
{.table-cell}
||
||

_items_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [QuestionEnumItemIn](#entity-QuestionEnumItemIn)[]

List of items

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "slug": "example",
    "label": "",
    "hidden": true,
    "image": {
      "id": 0,
      "links": {},
      "name": "example"
    },
    "correct": true,
    "scores": 0.5
  }
]
```

{% endcut %}
{.table-cell}
||
||

_modify_choices_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **QuestionModifyChoicesType**

  **Type**: [QuestionModifyChoicesType](#entity-QuestionModifyChoicesType)

  An enumeration.

  _Enum:_{.json-schema-reset .json-schema-value} ``, `natural`, `sort`, `shuffle`

{% endcut %}

Item sort type

_Example:_{.json-schema-reset .json-schema-example} ``
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_show_first_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Whether to show the first value (for dropdown)
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `enum`

_Const:_{.json-schema-reset .json-schema-value} `enum`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 3 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationEnumSingleOut**

  **Type**: [ValidationEnumSingleOut](#entity-ValidationEnumSingleOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "single"
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
||

_widget_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **WidgetType**

  **Type**: [WidgetType](#entity-WidgetType)

  An enumeration.

  _Enum:_{.json-schema-reset .json-schema-value} `radio`, `checkbox`, `dropdown`, `stars`, `onerow`

{% endcut %}

Question display type

_Default:_{.json-schema-reset .json-schema-value} `radio`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "slug": "example",
  "hidden": false,
  "conditions": [
    {
      "id": 0,
      "operator": "example",
      "items": [
        {
          "operator": null,
          "type": null,
          "condition": null,
          "question": "example",
          "value": "example"
        }
      ]
    }
  ],
  "image": {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  },
  "type": "enum",
  "widget": "radio",
  "items": [
    {
      "id": 0,
      "slug": "example",
      "label": "",
      "hidden": true,
      "image": {
        "id": 0,
        "links": {},
        "name": "example"
      },
      "correct": true,
      "scores": 0.5
    }
  ],
  "initial": [
    null
  ],
  "modify_choices": "",
  "validators": [
    {
      "type": "required"
    }
  ],
  "show_first": true,
  "has_quiz": true
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionSuggestOut {#entity-QuestionSuggestOut}

#|
|| **Name** | **Description** ||
||

_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Question ID
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question label

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_multichoice_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: boolean

Enable multiple choice
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_conditions_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [ConditionOut](#entity-ConditionOut)[]

Conditions for the question

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "operator": "example",
    "items": [
      {
        "operator": "and",
        "type": "question",
        "condition": "eq",
        "question": "example",
        "value": "example"
      }
    ]
  }
]
```

{% endcut %}
{.table-cell}
||
||

_data_source_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [QuestionDataSource](#entity-QuestionDataSource)

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "name": "example",
  "params": [
    {
      "type": "example",
      "value": "example"
    }
  ]
}
```

{% endcut %}
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag

_Default:_{.json-schema-reset .json-schema-value} `false`
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageOut**

  **Type**: [ImageOut](#entity-ImageOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example",
  "check_status": "check"
}
```

{% endcut %}
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `suggest`

_Const:_{.json-schema-reset .json-schema-value} `suggest`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 2 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "slug": "example",
  "hidden": false,
  "conditions": [
    {
      "id": 0,
      "operator": "example",
      "items": [
        {
          "operator": null,
          "type": null,
          "condition": null,
          "question": "example",
          "value": "example"
        }
      ]
    }
  ],
  "image": {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  },
  "type": "suggest",
  "data_source": {
    "name": "example",
    "params": [
      {
        "type": "example",
        "value": "example"
      }
    ]
  },
  "multichoice": true,
  "validators": [
    {
      "type": "required"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionMatrixRowOut {#entity-QuestionMatrixRowOut}

#|
|| **Name** | **Description** ||
||

_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Scale evaluation item ID
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Scale evaluation item text

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Scale evaluation item slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "slug": "example",
  "label": "example"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionMatrixOut {#entity-QuestionMatrixOut}

#|
|| **Name** | **Description** ||
||

_columns_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: [QuestionMatrixRowOut](#entity-QuestionMatrixRowOut)[]

List of columns

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "slug": "example",
    "label": "example"
  }
]
```

{% endcut %}
{.table-cell}
||
||

_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Question ID
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question label

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_rows_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: [QuestionMatrixRowOut](#entity-QuestionMatrixRowOut)[]

List of rows

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "slug": "example",
    "label": "example"
  }
]
```

{% endcut %}
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_conditions_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [ConditionOut](#entity-ConditionOut)[]

Conditions for the question

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "operator": "example",
    "items": [
      {
        "operator": "and",
        "type": "question",
        "condition": "eq",
        "question": "example",
        "value": "example"
      }
    ]
  }
]
```

{% endcut %}
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag

_Default:_{.json-schema-reset .json-schema-value} `false`
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageOut**

  **Type**: [ImageOut](#entity-ImageOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example",
  "check_status": "check"
}
```

{% endcut %}
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `matrix`

_Const:_{.json-schema-reset .json-schema-value} `matrix`
{.table-cell}
||
||

_validators_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**Type**: array" %}

{% cut "**Any of 2 types**" %}{.json-schema-combinators data-marker=or}

- **ValidationRequiredOut**

  **Type**: [ValidationRequiredOut](#entity-ValidationRequiredOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "required"
  }
  ```

  {% endcut %}

- **ValidationExternalOut**

  **Type**: [ValidationExternalOut](#entity-ValidationExternalOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "type": "external"
  }
  ```

  {% endcut %}

{% endcut %}

{% endcut %}

List of validators

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "required"
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "slug": "example",
  "hidden": false,
  "conditions": [
    {
      "id": 0,
      "operator": "example",
      "items": [
        {
          "operator": null,
          "type": null,
          "condition": null,
          "question": "example",
          "value": "example"
        }
      ]
    }
  ],
  "image": {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  },
  "type": "matrix",
  "rows": [
    {
      "id": 0,
      "slug": "example",
      "label": "example"
    }
  ],
  "columns": [
    null
  ],
  "validators": [
    {
      "type": "required"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionOut {#entity-QuestionOut}

Question data

{% cut "**Any of 11 types**" %}{.json-schema-combinators data-marker=or}

- **QuestionStringOut**

  **Type**: [QuestionStringOut](#entity-QuestionStringOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "slug": "example",
    "hidden": false,
    "conditions": [
      {
        "id": 0,
        "operator": "example",
        "items": [
          {
            "operator": null,
            "type": null,
            "condition": null,
            "question": "example",
            "value": "example"
          }
        ]
      }
    ],
    "image": {
      "id": 0,
      "links": {},
      "name": "example",
      "check_status": "check"
    },
    "type": "string",
    "initial": "example",
    "multiline": true,
    "hint_source": {
      "name": "example",
      "params": [
        {
          "type": "example",
          "value": "example"
        }
      ]
    },
    "validators": [
      {
        "type": "required"
      }
    ],
    "has_quiz": true,
    "quiz_items": [
      {
        "label": "example",
        "correct": true,
        "scores": 0.5
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionBooleanOut**

  **Type**: [QuestionBooleanOut](#entity-QuestionBooleanOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "slug": "example",
    "hidden": false,
    "conditions": [
      {
        "id": 0,
        "operator": "example",
        "items": [
          {
            "operator": null,
            "type": null,
            "condition": null,
            "question": "example",
            "value": "example"
          }
        ]
      }
    ],
    "image": {
      "id": 0,
      "links": {},
      "name": "example",
      "check_status": "check"
    },
    "type": "boolean",
    "initial": true,
    "validators": [
      {
        "type": "required"
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionIntegerOut**

  **Type**: [QuestionIntegerOut](#entity-QuestionIntegerOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "slug": "example",
    "hidden": false,
    "conditions": [
      {
        "id": 0,
        "operator": "example",
        "items": [
          {
            "operator": null,
            "type": null,
            "condition": null,
            "question": "example",
            "value": "example"
          }
        ]
      }
    ],
    "image": {
      "id": 0,
      "links": {},
      "name": "example",
      "check_status": "check"
    },
    "type": "integer",
    "initial": 0,
    "validators": [
      {
        "type": "required"
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionFileOut**

  **Type**: [QuestionFileOut](#entity-QuestionFileOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "slug": "example",
    "hidden": false,
    "conditions": [
      {
        "id": 0,
        "operator": "example",
        "items": [
          {
            "operator": null,
            "type": null,
            "condition": null,
            "question": "example",
            "value": "example"
          }
        ]
      }
    ],
    "image": {
      "id": 0,
      "links": {},
      "name": "example",
      "check_status": "check"
    },
    "type": "file",
    "validators": [
      {
        "type": "required"
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionCommentOut**

  **Type**: [QuestionCommentOut](#entity-QuestionCommentOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "slug": "example",
    "hidden": false,
    "conditions": [
      {
        "id": 0,
        "operator": "example",
        "items": [
          {
            "operator": null,
            "type": null,
            "condition": null,
            "question": "example",
            "value": "example"
          }
        ]
      }
    ],
    "image": {
      "id": 0,
      "links": {},
      "name": "example",
      "check_status": "check"
    },
    "type": "comment",
    "header": true
  }
  ```

  {% endcut %}

- **QuestionDateOut**

  **Type**: [QuestionDateOut](#entity-QuestionDateOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "slug": "example",
    "hidden": false,
    "conditions": [
      {
        "id": 0,
        "operator": "example",
        "items": [
          {
            "operator": null,
            "type": null,
            "condition": null,
            "question": "example",
            "value": "example"
          }
        ]
      }
    ],
    "image": {
      "id": 0,
      "links": {},
      "name": "example",
      "check_status": "check"
    },
    "type": "date",
    "validators": [
      {
        "type": "required"
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionDateRangeOut**

  **Type**: [QuestionDateRangeOut](#entity-QuestionDateRangeOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "slug": "example",
    "hidden": false,
    "conditions": [
      {
        "id": 0,
        "operator": "example",
        "items": [
          {
            "operator": null,
            "type": null,
            "condition": null,
            "question": "example",
            "value": "example"
          }
        ]
      }
    ],
    "image": {
      "id": 0,
      "links": {},
      "name": "example",
      "check_status": "check"
    },
    "type": "daterange",
    "validators": [
      {
        "type": "required"
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionPaymentOut**

  **Type**: [QuestionPaymentOut](#entity-QuestionPaymentOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "slug": "example",
    "hidden": false,
    "conditions": [
      {
        "id": 0,
        "operator": "example",
        "items": [
          {
            "operator": null,
            "type": null,
            "condition": null,
            "question": "example",
            "value": "example"
          }
        ]
      }
    ],
    "image": {
      "id": 0,
      "links": {},
      "name": "example",
      "check_status": "check"
    },
    "type": "payment",
    "fixed": true,
    "account_id": "example",
    "initial": 0,
    "validators": [
      {
        "type": "required"
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionEnumOut**

  **Type**: [QuestionEnumOut](#entity-QuestionEnumOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "slug": "example",
    "hidden": false,
    "conditions": [
      {
        "id": 0,
        "operator": "example",
        "items": [
          {
            "operator": null,
            "type": null,
            "condition": null,
            "question": "example",
            "value": "example"
          }
        ]
      }
    ],
    "image": {
      "id": 0,
      "links": {},
      "name": "example",
      "check_status": "check"
    },
    "type": "enum",
    "widget": "radio",
    "items": [
      {
        "id": 0,
        "slug": "example",
        "label": "",
        "hidden": true,
        "image": {
          "id": 0,
          "links": {},
          "name": "example"
        },
        "correct": true,
        "scores": 0.5
      }
    ],
    "initial": [
      null
    ],
    "modify_choices": "",
    "validators": [
      {
        "type": "required"
      }
    ],
    "show_first": true,
    "has_quiz": true
  }
  ```

  {% endcut %}

- **QuestionSuggestOut**

  **Type**: [QuestionSuggestOut](#entity-QuestionSuggestOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "slug": "example",
    "hidden": false,
    "conditions": [
      {
        "id": 0,
        "operator": "example",
        "items": [
          {
            "operator": null,
            "type": null,
            "condition": null,
            "question": "example",
            "value": "example"
          }
        ]
      }
    ],
    "image": {
      "id": 0,
      "links": {},
      "name": "example",
      "check_status": "check"
    },
    "type": "suggest",
    "data_source": {
      "name": "example",
      "params": [
        {
          "type": "example",
          "value": "example"
        }
      ]
    },
    "multichoice": true,
    "validators": [
      {
        "type": "required"
      }
    ]
  }
  ```

  {% endcut %}

- **QuestionMatrixOut**

  **Type**: [QuestionMatrixOut](#entity-QuestionMatrixOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "slug": "example",
    "hidden": false,
    "conditions": [
      {
        "id": 0,
        "operator": "example",
        "items": [
          {
            "operator": null,
            "type": null,
            "condition": null,
            "question": "example",
            "value": "example"
          }
        ]
      }
    ],
    "image": {
      "id": 0,
      "links": {},
      "name": "example",
      "check_status": "check"
    },
    "type": "matrix",
    "rows": [
      {
        "id": 0,
        "slug": "example",
        "label": "example"
      }
    ],
    "columns": [
      null
    ],
    "validators": [
      {
        "type": "required"
      }
    ]
  }
  ```

  {% endcut %}

{% endcut %}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "slug": "example",
  "hidden": false,
  "conditions": [
    {
      "id": 0,
      "operator": "example",
      "items": [
        {}
      ]
    }
  ],
  "image": {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  },
  "type": "string",
  "initial": "example",
  "multiline": true,
  "hint_source": {
    "name": "example",
    "params": [
      {}
    ]
  },
  "validators": [
    {
      "type": "required"
    }
  ],
  "has_quiz": true,
  "quiz_items": [
    {
      "label": "example",
      "correct": true,
      "scores": 0.5
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### QuestionSeriesOut {#entity-QuestionSeriesOut}

#|
|| **Name** | **Description** ||
||

_id_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: integer

Question ID
{.table-cell}
||
||

_items_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: [QuestionOut](#entity-QuestionOut)[]

List of questions in the series

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "label": "example",
    "comment": "example",
    "placeholder": "example",
    "slug": "example",
    "hidden": false,
    "conditions": [
      {
        "id": 0,
        "operator": "example",
        "items": [
          null
        ]
      }
    ],
    "image": {
      "id": 0,
      "links": {},
      "name": "example",
      "check_status": null
    },
    "type": "string",
    "initial": "example",
    "multiline": true,
    "hint_source": {
      "name": "example",
      "params": [
        null
      ]
    },
    "validators": [
      {}
    ],
    "has_quiz": true,
    "quiz_items": [
      {
        "label": "example",
        "correct": true,
        "scores": 0.5
      }
    ]
  }
]
```

{% endcut %}
{.table-cell}
||
||

_label_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question label

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

Question slug

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_comment_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question hint

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_conditions_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [ConditionOut](#entity-ConditionOut)[]

Conditions for the question

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": 0,
    "operator": "example",
    "items": [
      {
        "operator": "and",
        "type": "question",
        "condition": "eq",
        "question": "example",
        "value": "example"
      }
    ]
  }
]
```

{% endcut %}
{.table-cell}
||
||

_hidden_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean

Hidden question flag

_Default:_{.json-schema-reset .json-schema-value} `false`
{.table-cell}
||
||

_image_{.json-schema-reset .json-schema-property}
{.table-cell}|
{% cut "**All of 1 type**" %}{.json-schema-combinators data-marker=and}

- **ImageOut**

  **Type**: [ImageOut](#entity-ImageOut)

  {% cut "**Example**" %}{.json-schema-example}

  ```json translate=no
  {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  }
  ```

  {% endcut %}

{% endcut %}

Question image

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "links": {},
  "name": "example",
  "check_status": "check"
}
```

{% endcut %}
{.table-cell}
||
||

_placeholder_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Placeholder text for the question

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Question type

_Default:_{.json-schema-reset .json-schema-value} `series`

_Const:_{.json-schema-reset .json-schema-value} `series`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": 0,
  "label": "example",
  "comment": "example",
  "placeholder": "example",
  "slug": "example",
  "hidden": false,
  "conditions": [
    {
      "id": 0,
      "operator": "example",
      "items": [
        {
          "operator": null,
          "type": null,
          "condition": null,
          "question": "example",
          "value": "example"
        }
      ]
    }
  ],
  "image": {
    "id": 0,
    "links": {},
    "name": "example",
    "check_status": "check"
  },
  "type": "series",
  "items": [
    {
      "id": 0,
      "label": "example",
      "comment": "example",
      "placeholder": "example",
      "slug": "example",
      "hidden": false,
      "conditions": [
        null
      ],
      "image": null,
      "type": "string",
      "initial": "example",
      "multiline": true,
      "hint_source": null,
      "validators": [
        null
      ],
      "has_quiz": true,
      "quiz_items": [
        {}
      ]
    }
  ]
}
```

{% endcut %}

</div>

</div>

</div>

[*Deprecated]: No longer supported, please use an alternative and newer version.