# Workgroup members

Manage membership of your workgroups. Every operation requires `sonet_group`; READONLY keys cannot write. Bitrix24 checks the acting user's permissions. Add, remove and role changes require a Bitrix24 account administrator; invitations and owner changes follow Bitrix24 permissions.

## Operations

- [Add](./members/add.md) — `POST /v1/workgroups/:groupId/users`
- [Remove](./members/remove.md) — `DELETE /v1/workgroups/:groupId/users`
- [Change role](./members/role.md) — `PATCH /v1/workgroups/:groupId/users`
- [Invite](./members/invite.md) — `POST /v1/workgroups/:groupId/invitations`
- [Transfer ownership](./members/owner.md) — `PUT /v1/workgroups/:groupId/owner`
- [My workgroups](/docs/me/workgroups) — `GET /v1/me/workgroups`

## Partial result

Add, remove, role and invitation actions return `data: {groupId, processedUserIds, skippedUserIds}`. A partial or empty result returns 422 `BITRIX_ERROR`, with arrays in `error.processedUserIds` and `error.skippedUserIds`. Changes to processed users are NOT rolled back. An empty result does not identify the cause: a user may already belong to the group, have the requested role, be the owner or scrum master, or be absent. Read the group and roster before retrying; never blindly retry invitations.

## Errors

400 `MISSING_REQUIRED_FIELDS` means required fields are missing or malformed; 400 `INVALID_PARAMS` means invalid id, role or message. 403 `SCOPE_DENIED` / `WRITE_BLOCKED_READONLY_KEY` is refused locally before Bitrix24. 403 means Bitrix24 permission refusal; 404 `ENTITY_NOT_FOUND` means missing or invisible group. 422 `BITRIX_ERROR` means business refusal or partial result. 429 means a limit; 502 means unavailable or unreadable response; 503 means timeout. Nested operations are unavailable in `/v1/batch`.
