---
title: "Update Memberships"
method: PUT
path: "/groups/{group_id}/memberships"
tags: ["Memberships"]
---

# Update Memberships

`PUT /groups/{group_id}/memberships`

Replaces the Group's entire membership list with the given Actors.

Any Actor not named in the request is removed from the Group. To add or
remove individual Actors without disturbing the rest, use `PATCH`.

Members that are not changing keep their membership rows, so a replace that
leaves the list untouched is a no-op rather than a full rewrite.

Repeating an Actor in the request body is not an error; the list is
deduplicated. `actor_ids` in the response is sorted, not returned in
request order.

## Path parameters

- `group_id` string, required

## Request body

- MembershipPutRequest — PUT body for updating Memberships
  - `memberships` object[], required
    - `actor_id` string, uuid — Actor ID

## Response `200`

Membership Response

- MembershipResponse — Response schema for Membership Updates
  - `data` object — Memberships
    - `actor_ids` string[] — Actor IDs

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `422` — Unprocessable Content
- `429` — Too Many Requests

---

[API](https://skmtc.dev/firezone/apis/firezone-api.md) · [All operations](https://skmtc.dev/firezone/apis/firezone-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/firezone/firezone-api/revisions/110de2cb2283/schema)
