---
title: "Add users to groups"
method: POST
path: "/api/v2/bulk/groups/memberships"
tags: ["Groups"]
---

# Add users to groups

`POST /api/v2/bulk/groups/memberships`

> 🔑
>
> Required OAuth scope: `groups:bulk`.

> 🚜
>
> This endpoint processes up to 20,000 objects asynchronously. For more information, see the [Bulk operations guide](https://360learning.readme.io/docs/bulk-operations-1).

Adds multiple users to groups with their assigned roles. Upon submission, the request is queued. Use the provided URL in the response header to check the status of the bulk operation.

## Headers

- `360-api-version` 'v2.0', required

## Request body

- AddUsersToGroupsBody
  - `input` MembershipAdditionDTO[], required — An array of objects, each specifying details for adding a user to a group.
    - `userId` string, ObjectId, required — The unique ID of the user to be added to the group.
    - `groupId` string, ObjectId, required — The unique ID of the group to which the user will be added.
    - `role` 'admin' | 'analyst' | 'editor' | 'coach' | 'contributor' | 'learner' | 'userAdmin', required — The role assigned to the user within the group.

## Response `202`

The operation is successfully created.

## Other responses

- `400` — The server cannot or will not process the request due to something that is perceived to be a client error.
- `401` — The given access token is either missing, invalid, has expired, or has been revoked.
- `403` — The given access token does not have the required OAuth scope to execute the request.
- `429` — The maximum number of concurrent operations has been reached.
- `503` — The bulk API is temporarily disabled.

---

[API](https://skmtc.dev/360learning/apis/core-api.md) · [All operations](https://skmtc.dev/360learning/apis/core-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/360learning/core-api/revisions/94b691b0b72c/schema)
