---
title: "PATCH /v2/chats/{chat_id}/members/{user_id}"
method: PATCH
path: "/v2/chats/{chat_id}/members/{user_id}"
tags: ["Messaging"]
---

# PATCH /v2/chats/{chat_id}/members/{user_id}

`PATCH /v2/chats/{chat_id}/members/{user_id}`

## Request

- Base URL: `https://api.arbital.xyz` (the document declares no server; this is the origin it was published from)
- URL: `https://api.arbital.xyz/v2/chats/{chat_id}/members/{user_id}`
- Auth: HTTP bearer

Owner only. Promotes a member to admin or demotes an admin to member. The owner role never changes through this route.

## Path parameters

- `chat_id` string, uuid, required
- `user_id` string, uuid, required

## Request body

- UpdateChatMemberRoleRequest
  - `role` 'admin' | 'member', required

## Response `200`

Member role after the change; assigning the current role changes nothing

- ChatMember
  - `chat_id` string, uuid, required
  - `joined_at_unix_ms` integer, required
  - `role` 'owner' | 'admin' | 'member', required
  - `state` 'active' | 'left' | 'removed' | 'banned', required
  - `state_changed_at_unix_ms` integer, required
  - `state_changed_by_user_id` string, uuid, nullable, required
  - `user_id` string, uuid, required
  - `user` MessagingUserSummary, required
    - `avatar_url` string, nullable, required: Approved profile image or stable CALLD default avatar URL.
    - `display_name` string, nullable, required
    - `user_id` string, uuid, required
    - `username` string, required
  - `version` string, required

## Other responses

- `400`: Stable machine-readable private messaging problem
- `401`: Stable machine-readable private messaging problem
- `403`: Stable machine-readable private messaging problem
- `404`: Stable machine-readable private messaging problem
- `409`: Stable machine-readable private messaging problem
- `429`: Authenticated messaging mutation budget exhausted
- `503`: Stable machine-readable private messaging problem

---

[API](https://skmtc.dev/arbital/apis/arbital-api.md) - [All operations](https://skmtc.dev/arbital/apis/arbital-api/llms.txt) - [OpenAPI document](https://skmtc.dev/arbital/apis/arbital-api/revisions/bb0185edf43a?raw)
