---
title: "PUT /v2/api/metadata/{network}/locks/{lockAddress}/users/{userAddress}"
method: PUT
path: "/v2/api/metadata/{network}/locks/{lockAddress}/users/{userAddress}"
---

# PUT /v2/api/metadata/{network}/locks/{lockAddress}/users/{userAddress}

`PUT /v2/api/metadata/{network}/locks/{lockAddress}/users/{userAddress}`

Update or create user metadata for lock.

## Path parameters

- `network` integer, required
- `lockAddress` string, required
- `userAddress` string, required

## Request body

- object
  - `metadata` UserMetadataInput
    - `public` object, nullable
    - `protected` object, nullable

## Response `204`

Return user metadata saved.

- object

## Other responses

- `400` — Invalid input received. Bad request.
- `401` — User is not authenticated.
- `404` — The item you are making request for does not exist.
- `409` — There is a conflict. The resource already exist.
- `500` — Unable to fullfil request due to internal server error.

---

[API](https://skmtc.dev/unlock-protocol/apis/unlock-locksmith.md) · [All operations](https://skmtc.dev/unlock-protocol/apis/unlock-locksmith/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/unlock-protocol/unlock-locksmith/revisions/e003b998de45/schema)
