PostHog · Schema
SurveyMultipleChoiceQuestionSchema
A/B TestingAnalyticsFeature FlagsOpen SourceProduct AnalyticsSession Recording
Properties
| Name | Type | Description |
|---|---|---|
| type | object | |
| question | string | Question text shown to respondents. |
| description | string | Optional helper text. |
| descriptionContentType | object | Format for the description field. * `text` - text * `html` - html |
| optional | boolean | Whether respondents may skip this question. |
| buttonText | string | Custom button label. |
| choices | array | Array of choice options. Multiple selections allowed. No branching logic supported. |
| shuffleOptions | boolean | Whether to randomize the order of choices for each respondent. |
| hasOpenChoice | boolean | Whether the final option should be an open-text choice (for example, 'Other'). |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/SurveyMultipleChoiceQuestionSchema",
"title": "SurveyMultipleChoiceQuestionSchema",
"type": "object",
"properties": {
"type": {
"$ref": "#/components/schemas/SurveyMultipleChoiceQuestionSchemaTypeEnum"
},
"question": {
"type": "string",
"description": "Question text shown to respondents."
},
"description": {
"type": "string",
"description": "Optional helper text."
},
"descriptionContentType": {
"allOf": [
{
"$ref": "#/components/schemas/DescriptionContentTypeEnum"
}
],
"description": "Format for the description field.\n\n* `text` - text\n* `html` - html"
},
"optional": {
"type": "boolean",
"description": "Whether respondents may skip this question."
},
"buttonText": {
"type": "string",
"description": "Custom button label."
},
"choices": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of choice options. Multiple selections allowed. No branching logic supported.",
"maxItems": 20,
"minItems": 2
},
"shuffleOptions": {
"type": "boolean",
"description": "Whether to randomize the order of choices for each respondent."
},
"hasOpenChoice": {
"type": "boolean",
"description": "Whether the final option should be an open-text choice (for example, 'Other')."
}
},
"required": [
"choices",
"question",
"type"
]
}