---
title: "PATCH /api/v1/users/{user}"
method: PATCH
path: "/api/v1/users/{user}"
tags: ["UserService"]
---

# PATCH /api/v1/users/{user}

`PATCH /api/v1/users/{user}`

UpdateUser updates a user.

## Path parameters

- `user` string, required

## Query parameters

- `updateMask` string, field-mask
- `allowMissing` boolean

## Request body

- User
  - `name` string — The resource name of the user. Format: users/{user}
  - `role` 'ROLE_UNSPECIFIED' | 'ADMIN' | 'USER', enum, required — The role of the user.
  - `username` string, required — Required. The unique username for login.
  - `email` string — Optional. The email address of the user.
  - `displayName` string — Optional. The display name of the user.
  - `avatarUrl` string — Optional. The avatar URL of the user.
  - `description` string — Optional. The description of the user.
  - `password` string — Input only. The password for the user.
  - `state` 'STATE_UNSPECIFIED' | 'NORMAL' | 'ARCHIVED', enum, required — The state of the user.
  - `createTime` string, date-time — Output only. The creation timestamp.
  - `updateTime` string, date-time — Output only. The last update timestamp.

## Response `200`

OK

- User
  - `name` string — The resource name of the user. Format: users/{user}
  - `role` 'ROLE_UNSPECIFIED' | 'ADMIN' | 'USER', enum, required — The role of the user.
  - `username` string, required — Required. The unique username for login.
  - `email` string — Optional. The email address of the user.
  - `displayName` string — Optional. The display name of the user.
  - `avatarUrl` string — Optional. The avatar URL of the user.
  - `description` string — Optional. The description of the user.
  - `password` string — Input only. The password for the user.
  - `state` 'STATE_UNSPECIFIED' | 'NORMAL' | 'ARCHIVED', enum, required — The state of the user.
  - `createTime` string, date-time — Output only. The creation timestamp.
  - `updateTime` string, date-time — Output only. The last update timestamp.

## Other responses

- `default` — Default error response

## Changes

- **2026-01-20** `075d2b4f2e9d` — 1 breaking, 1 info
  - removed the enum value `HOST` of the request property `role`
  - removed the `HOST` enum value from the `role` response property for the response status `200`
- **2025-12-15** `d740073f088f` — 1 warning, 1 info
  - added the new `HOST` enum value to the `role` response property for the response status `200`
  - added the new `HOST` enum value to the request property `role`

[Change history](https://skmtc.dev/usememos/apis/untitled-api/changes/api/v1/users/:user/patch.md)

---

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