# Update an existing group question Modifies an existing question's text, type, choices, or ordering. Requires GroupQuestions.Manage permission. When changing question type, ensure the choices array is appropriate (empty for TEXT, populated for SINGLE_CHOICE/MULTIPLE_CHOICE). All fields must be provided in the update. Changes are tracked in the audit log for compliance. RBAC: requires GroupQuestions.Manage Endpoint: PUT /api/v1/groups/{groupId}/questions/{questionId} Version: 1.0 Security: ## Path parameters: - `groupId` (string, required) The unique identifier of the group containing the question Example: "us_01hxcvk1hjexere4pvtrj0ymqq" - `questionId` (string, required) The unique identifier of the question to update Example: "us_01hxcvk1hjexere4pvtrj0ymqq" ## Request fields (application/json): - `questionText` (string, required) The question text displayed to users (max 200 characters) Example: "Why do you want to join this group?" - `type` (string, required) Question type determining the answer format (TEXT, SINGLE_CHOICE, MULTIPLE_CHOICE) Enum: "TEXT", "MULTIPLE_CHOICE", "SINGLE_CHOICE" - `choices` (array, required) Available choices for SINGLE_CHOICE or MULTIPLE_CHOICE questions. Empty for TEXT questions. - `choices.text` (string, required) The display text for this choice option (max 60 characters) Example: "I want to learn from others" - `choices.order` (integer, required) Display order for this choice (lower values appear first) - `ordering` (integer, required) Display order position - questions with lower values appear first Example: 1000 ## Response 200 fields (application/json): - `questionText` (string, required) The question text displayed to users (max 200 characters) Example: "Why do you want to join this group?" - `type` (string, required) Question type determining the answer format (TEXT, SINGLE_CHOICE, MULTIPLE_CHOICE) Enum: "TEXT", "MULTIPLE_CHOICE", "SINGLE_CHOICE" - `choices` (array, required) Available choices for SINGLE_CHOICE or MULTIPLE_CHOICE questions. Empty for TEXT questions. - `choices.text` (string, required) The display text for this choice option (max 60 characters) Example: "I want to learn from others" - `choices.order` (integer, required) Display order for this choice (lower values appear first) - `ordering` (integer, required) Display order position - questions with lower values appear first Example: 1000 - `id` (string, required) Unique identifier for the question Example: "us_01hxcvk1hjexere4pvtrj0ymqq" ## Response 400 fields (application/json): - `errorCode` (string, required) Error code - `message` (string, required) Error message - `docUrl` (string) Link to documentation ## Response 401 fields (application/json): - `errorCode` (string, required) Error code - `message` (string, required) Error message - `docUrl` (string) Link to documentation ## Response 403 fields (application/json): - `errorCode` (string, required) Error code - `message` (string, required) Error message - `docUrl` (string) Link to documentation ## Response 404 fields (application/json): - `errorCode` (string, required) Error code - `message` (string, required) Error message - `docUrl` (string) Link to documentation