> ## Documentation Index
> Fetch the complete documentation index at: https://docs.arzguard.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Снять группу у пользователя

> Удаляет одну доступную инициатору дополнительную группу у форумного пользователя.

Снимает выбранную дополнительную группу, если она назначена целевому пользователю.

## Доступ

Требуется scope `user:promote`, право пользователя `general/promoteAllow` и хотя бы одна группа, которой он может управлять. Эти собственные проверки выполняются и при запросе обхода стандартных прав XenForo.

**XF-Api-Key** `string` *required*

Обязательный ключ API XenForo. Тип ключа и пользовательский контекст описаны в разделе [«Авторизация»](/guard-forum/authentication).

## Параметры

**user\_id** `integer` *required*

Положительный ID существующего форумного пользователя.

**group** `integer` *required*

Положительный ID одной группы из доступного инициатору набора. Передаётся формой `application/x-www-form-urlencoded`.

## Результат

**success** `boolean`

При успешном сохранении равно `true`.

**groups** `object | array`

ID и названия всех оставшихся дополнительных групп пользователя после операции. Если дополнительных групп не осталось, PHP сериализует пустой набор как `[]`.

**user** `User`

Присутствует только при наличии scope `user:read`. Схема [User](/guard-forum/models) зависит также от контекста и прав.

## Поведение

Доступные группы определяются настройкой `groups_that_can_promote`: она должна содержать основную или одну из дополнительных групп инициатора.

Изменение отклоняется, если целевой пользователь не существует, его основная или дополнительная группа имеет `block_promote` либо настройка `groups_that_cant_promote` целевых групп запрещает действия группам инициатора.

Остальные дополнительные группы и основная группа сохраняются. Пересчитываются оформление, разрешения и связи групп. Если выбранная разрешённая группа уже отсутствует, результирующий список не меняется. Передавайте конкретную положительную `group`: пропуск или `0` отклоняется проверкой доступных групп; массовое снятие без `group` текущей реализацией не поддерживается.

> [!NOTE]
>
> При ответе с `user` установленное расширение может вернуть `user_title: true` для непустого пользовательского титула. Это известное отличие текущей реализации от обычной строки титула.

Все ID и данные в примерах условные. `FORUM_API_KEY` — заранее настроенная переменная окружения; действующий ключ в документации не приводится.

```bash cURL theme={null}
curl --request POST \
  --header "XF-Api-Key: $FORUM_API_KEY" \
  --header 'Accept: application/json' \
  --data-urlencode 'group=8' \
  'https://forum.arzguard.com/api/demote/123/'
```

```json Условный сокращённый ответ theme={null}
{
  "success": true,
  "groups": []
}
```

Форматы тела запроса и общая обработка ошибок описаны в разделе [«Запросы и ошибки»](/guard-forum/requests-and-errors).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.