---
title: "Update users and theirs permissions for a group"
method: POST
path: "/groups/{group_id}/users/batch_update"
tags: ["Group"]
---

# Update users and theirs permissions for a group

`POST /groups/{group_id}/users/batch_update`

This endpoint will update the users and their permissions for a group

## Path parameters

- `group_id` integer, required

## Request body

- object[] — List of operations to perform
  - `action` 'add' | 'update' | 'remove', required — Type of action to perform
  - `user_id` integer, required — ID of the user to perform the action on
  - `permission` 'manager' | 'member' — Permission to set for the user when action is add or update

## Response `200`

After a successful request, the endpoint returns HTTP 200.

- object
  - `group_users` UserWithPermission[]
    - `id` integer
    - `full_name` string
    - `display_name` string
    - `email` string
    - `permission` string

## Other responses

- `401` — Authorization information is missing or invalid.
- `403` — If non-admin user tries to call this endpoint, the call is rejected with 403 Forbidden.
- `404` — If group is not found with the provided id, the endpoint returns HTTP 404.
- `422` — Invalid group_id or changes are provided.

---

[API](https://skmtc.net/instructure/apis/studio-public-api.md) · [All operations](https://skmtc.net/instructure/apis/studio-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/instructure/studio-public-api/revisions/4838a5113869/schema)
