---
title: "Update an existing user's information."
method: PUT
path: "/v1/users/{id}"
tags: ["users"]
---

# Update an existing user's information.

`PUT /v1/users/{id}`

Update existing user.

## Path parameters

- `id` string, required

## Headers

- `X-Trace-Id` string, uuid

## Request body

- User
  - `created_at` string, date-time
  - `updated_at` string, date-time
  - `email` string, email, required — The new users email address.
  - `blocked` boolean — Boolean to indicate if the user is blocked.
  - `blocked_code` 'email_changed' | 'null', string, nullable — If you say the user must be blocked, this will be the reason code.
  - `role` 'owner' | 'demo' | 'null', string, nullable — Role for the user. Can be empty or omitted.

## Response `200`

Updated user stored, result in response

## Other responses

- `400` — Bad request
- `401` — Unauthenticated
- `404` — Page not found
- `422` — Validation error. The body will have the exact details.
- `500` — Internal exception

---

[API](https://skmtc.dev/firefly-iii/apis/firefly-iii-api-develop.md) · [All operations](https://skmtc.dev/firefly-iii/apis/firefly-iii-api-develop/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/firefly-iii/firefly-iii-api-develop/revisions/8a1f6472e04b/schema)
