---
title: "Update a user"
method: PATCH
path: "/v3/spend/users/{userId}"
tags: ["users"]
---

# Update a user

`PATCH /v3/spend/users/{userId}`

Update details about an existing user.

## Path parameters

- `userId` string, required — BILL-generated ID or UUID of the user

## Headers

- `apiToken` string, nullable — Access token for Spend & Expense API authentication

## Request body

- UpdateUserRequestDto — Update a user (role updated)
  - `firstName` string — User first name
  - `lastName` string — User last name
  - `email` string — User email address
  - `role` 'ADMIN' | 'AUDITOR' | 'BOOKKEEPER' | 'MEMBER' — User role. * `ADMIN`: The user manages the account with full access to settings, people, and activity. * `AUDITOR`: The user can view account activity and export activity for use in other systems. * `BOOKKEEPER`: The user helps the `ADMIN` with account management, and has view-only access to activity. * `MEMBER`: The user is able to spend company funds for assigned budgets.
  - `dateOfBirth` string, date — User date of birth. The value is in the `yyyy-MM-dd` format.
  - `phoneNumber` string — User phone number

## Response `200`

Update a user response

- UserResponseDto — Users response.
  - `id` string — BILL-generated ID of the user
  - `uuid` string — BILL-generated UUID of the user
  - `firstName` string — User first name
  - `lastName` string — User last name
  - `email` string — User email address
  - `receiptEmail` string — Receipt categorization email address
  - `retired` boolean — Set as `true` if the user is deleted
  - `useCompanyMailingAddress` boolean — Set as `true` if the company email address is set for the user
  - `smsOptIn` boolean — Set as `true` if SMS notifications are enabled for the user
  - `hasDateOfBirth` boolean — Set as `true` if the user date of birth is set
  - `role` 'ADMIN' | 'APPROVER' | 'AUDITOR' | 'BOOKKEEPER' | 'MEMBER' | 'FINANCE_ADMIN' | 'NO_ACCESS' — User role
  - `phoneNumber` string — User phone number
  - `createdTime` string, date-time — User created date and time

## Other responses

- `4XX` — List of errors.
- `5XX` — List of errors.

---

[API](https://skmtc.net/bill/apis/bill-v3-api.md) · [All operations](https://skmtc.net/bill/apis/bill-v3-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bill/bill-v3-api/revisions/0483350c434e/schema)
