# Участники рабочих групп

Меняют состав рабочей группы: добавляют и удаляют участников, назначают модераторов, рассылают приглашения и передают владение. Права на каждое действие Битрикс24 проверяет у пользователя, от имени которого действует ключ.

Битрикс24 API: `sonet_group.user.*`, `sonet_group.setowner`
Скоуп: `sonet_group`

## Операции

- [Добавить участников](./members/add.md) — `POST /v1/workgroups/:groupId/users`
- [Удалить участников](./members/remove.md) — `DELETE /v1/workgroups/:groupId/users`
- [Изменить роль участников](./members/role.md) — `PATCH /v1/workgroups/:groupId/users`
- [Пригласить участников](./members/invite.md) — `POST /v1/workgroups/:groupId/invitations`
- [Передать владение группой](./members/owner.md) — `PUT /v1/workgroups/:groupId/owner`
- [Мои рабочие группы](/docs/me/workgroups) — `GET /v1/me/workgroups`

## Частичный результат

Добавление, удаление, смена роли и приглашение принимают массив `userIds` и отвечают одинаково:

- Все пользователи обработаны — `200` с `data.processedUserIds` и пустым `data.skippedUserIds`.
- Обработаны не все — `422 BITRIX_ERROR`, оба массива приходят в `error.processedUserIds` и `error.skippedUserIds`.
- Битрикс24 отказал в вызове — тоже `422 BITRIX_ERROR`, но массивов в `error` нет, там только причина отказа от Битрикс24. Проверяйте наличие массивов, прежде чем их читать.

Изменения для пользователей из `processedUserIds` в ответе `422` уже применены и не откатываются. Причину пропуска по каждому пользователю ответ не называет: пользователь уже в группе или уже приглашён, у него уже эта роль, это владелец группы или скрам-мастер скрам-проекта, такого пользователя нет. Перед повтором перечитайте состав через [`GET /v1/workgroups/:groupId/users`](/docs/entities/workgroups/users) и отправьте только тех, кого действительно нужно обработать. Приглашения не повторяйте вслепую: каждое уходит живому человеку.

## Типовой сценарий

1. Найти группу: [`GET /v1/workgroups`](/docs/entities/workgroups/list).
2. Посмотреть состав: [`GET /v1/workgroups/:groupId/users`](/docs/entities/workgroups/users).
3. Добавить сотрудников сразу — [`POST /v1/workgroups/:groupId/users`](./members/add.md), либо пригласить их — [`POST /v1/workgroups/:groupId/invitations`](./members/invite.md).
4. Назначить модератора: [`PATCH /v1/workgroups/:groupId/users`](./members/role.md) с `role: "moderator"`.

Через [`POST /v1/batch`](/docs/batch) эти операции недоступны: пакетный вызов адресует только сущности из [справочника](/docs/entity-api).

## Смотрите также

- [Рабочие группы](/docs/entities/workgroups)
- [Участники рабочей группы](/docs/entities/workgroups/users)
