---
title: "Patch metadata of a user"
method: PATCH
path: "/users/{id}/metadata"
tags: ["User Metadata Management"]
---

# Patch metadata of a user

`PATCH /users/{id}/metadata`

Updates a users metadata by deep merging the metadata patch from
the request with existing metadata.

Set the entire request to `null` to clear all metadata:
Set any of `public_metadata`, `private_metadata`, `unsafe_metadata` to null to
clear metadata for that category. 

An empty object (`{}`) for the top level request object or an empty object for
`public_metadata`, `private_metadata` or the `unsafe_metadata` property represent
a noop patch. 

Unknown top level keys besides `public_metadata`, `private_metadata` or `unsafe_metadata`
are ignored.

All other top level request values (e.g. an empty string, a non-empty string, an array) result in a bad request.

## Path parameters

- `id` string, uuid, required

## Request body

- object — The user metadata patch
  - `public_metadata` object
  - `unsafe_metadata` object

## Response `200`

OK

- UserMetadata — The public and unsafe metadata of a user
  - `public_metadata` object
  - `unsafe_metadata` object

## Other responses

- `204` — No content (user has no metadata)
- `400` — Bad Request
- `404` — Not Found
- `500` — Internal server error

---

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