PostHog · Schema
SurveyRatingQuestionSchema
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. |
| display | object | Display format: 'number' shows numeric scale, 'emoji' shows emoji scale. * `number` - number * `emoji` - emoji |
| scale | integer | Rating scale can be one of 3, 5, or 7 |
| lowerBoundLabel | string | Label for the lowest rating (e.g., 'Very Poor') |
| upperBoundLabel | string | Label for the highest rating (e.g., 'Excellent') |
| branching | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/SurveyRatingQuestionSchema",
"title": "SurveyRatingQuestionSchema",
"type": "object",
"properties": {
"type": {
"$ref": "#/components/schemas/SurveyRatingQuestionSchemaTypeEnum"
},
"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."
},
"display": {
"allOf": [
{
"$ref": "#/components/schemas/SurveyRatingQuestionSchemaDisplayEnum"
}
],
"description": "Display format: 'number' shows numeric scale, 'emoji' shows emoji scale.\n\n* `number` - number\n* `emoji` - emoji"
},
"scale": {
"type": "integer",
"minimum": 1,
"description": "Rating scale can be one of 3, 5, or 7"
},
"lowerBoundLabel": {
"type": "string",
"description": "Label for the lowest rating (e.g., 'Very Poor')"
},
"upperBoundLabel": {
"type": "string",
"description": "Label for the highest rating (e.g., 'Excellent')"
},
"branching": {
"allOf": [
{
"$ref": "#/components/schemas/SurveyBranchingSchema"
}
],
"nullable": true
}
},
"required": [
"question",
"type"
]
}