> ## 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` не принимается; группа вне доступного набора также отклоняется. Проверка и сохранение не предоставляют клиенту условного атомарного обновления.

> [!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/promote/123/'
```

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

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


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