Groups

Changes the settings of a group. Only the fields in the body are changed, and an empty body changes nothing. null is never a valid value: omit a field instead of sending null. The rules are checked against the group as it will look after the change, so a shared group can become restricted with its recording access in a single request.

Changing a group requires the permission to edit it in the web app: a company admin, or a manager who is a member of the group. Managers can change name only. A manager sending visibility, recordingAccess or recordingAccessGroupIds gets 403, because these can expose the recordings of a group to other users. A group that is unknown, personal, or not readable returns 404 with the code group_not_found. The default General group cannot be changed and returns 400 with the code group_is_default.

Changing a group from restricted to shared adds every user of the company to it, and its recording access no longer applies. Changing it from shared to restricted keeps the members. Changing the recording access takes effect immediately for all members, with no further updates to meetings or recordings.

Renaming to a name that another group of the company already has, ignoring case, returns 409 with the code group_name_taken. Error codes for 400 are the ones of POST /groups, plus group_is_default.

Rate limits:

  • Global: 120 requests per minute per API key.
  • Endpoint-specific: 30 requests per minute per API key, shared with POST /groups and DELETE /groups/{groupId}.
patch/groups/{groupId}

Request

  • Base URL
    https://demodesk.com/api/v2
  • Auth
    HTTP bearer

Path parameters

groupIdstring required

Id of the group, as returned by the group list.

Request body

namestring

New name of the group, without surrounding whitespace. Must be unique within the company, ignoring case.

visibility'restricted' | 'shared'

Changing a group from restricted to shared adds every user of the company to it. Changing it from shared to restricted keeps the members.

recordingAccess'own_group' | 'selected_groups' | 'all_groups'

Whose recordings the members can see in addition to the group's own. Only for restricted groups. Company admins only.

recordingAccessGroupIdsstring[]

Replaces the selected groups. Required and non-empty when the resulting recordingAccess is selected_groups, not allowed otherwise. Company admins only.

Example request

{
  "name": "Sales DACH",
  "recordingAccessGroupIds": [
    "12",
    "34"
  ]
}

Response

Group updated, or unchanged for an empty body.

Example response

{
  "data": {
    "id": "456",
    "name": "Sales DACH",
    "recordingAccessGroupIds": [
      "12",
      "34"
    ],
    "createdAt": "2026-10-14T09:12:33.000Z",
    "updatedAt": "2026-10-14T09:12:33.000Z"
  }
}

Changes