---
title: "Update a user"
method: PATCH
path: "/api/v1/users/{userId}"
tags: ["Users"]
---

# Update a user

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

Updates user information. At least one field must be provided. Required scope: `users:write` </br>Organization authorization: `supported`

## Path parameters

- `userId` integer, required

## Request body

- PatchUser
  - `email` string, email, nullable — User email address
  - `phone` string, nullable — User phone number in E.164 format
  - `firstName` string, nullable — User first name
  - `lastName` string, nullable — User last name
  - `language` string, nullable — User preferred language
  - `legalEmail` string, email, nullable — User legal email address
  - `address1` string, nullable — User address line 1
  - `address2` string, nullable — User address line 2
  - `address3` string, nullable — User address line 3
  - `zip` string, nullable — User zip/postal code
  - `city` string, nullable — User city
  - `province` string, nullable — User province/state

## Response `200`

User updated

- User
  - `id` integer, required — Id of the user
  - `firstName` string, nullable — First name of the user
  - `lastName` string, nullable — Last name of the user
  - `email` string, nullable — Email of the user
  - `legalEmail` string, nullable — Legal email of the user (certified e-mail)
  - `phone` string, nullable — Phone number of the user
  - `profileImageUrl` string, nullable — URL of the profile image
  - `address` Address
    - `address1` string, required — First line of address
    - `address2` string, nullable — Second line of address
    - `address3` string, nullable — Third line of address
    - `zip` string, required — Zip-code
    - `city` string, required — City (readable)
    - `province` string, nullable — Province
    - `country` string, nullable — Country (readable)
    - `countryAreaId` integer, nullable — Country area id
  - `language` string, nullable — Preferred language of the user
  - `termsReadAt` string, date-time, nullable — Timestamp when the user read the terms
  - `taxIdentificationNumber` string, nullable — Personal tax number if set for the user
  - `vatNumber` string, nullable — VAT number which is the company tax id
  - `recipientCode` string, nullable — The recipient code used for e-invoicing
  - `createdAt` string, date-time, nullable — Timestamp when the user was created
  - `updatedAt` string, date-time, nullable — Timestamp when the user was last updated
  - `deletedAt` string, date-time, nullable — Timestamp when the user was deleted
  - `emailVerifiedAt` string, date-time, nullable — Timestamp when the email was verified
  - `phoneVerifiedAt` string, date-time, nullable — Timestamp when the phone was verified
  - `marketingEmailsAcceptedAt` string, date-time, nullable — Timestamp when the user accepted the marketing emails
  - `defaultTeamId` integer, nullable — ID of the default team for the user
  - `isGuest` boolean, nullable — Indicates whether this user is a guest (ad-hoc) user who has not yet completed registration
  - `nationalId` string, nullable — National identification number. Returned only when configured per operator

## Other responses

- `400` — The request is invalid
- `401` — Consumer with provided credentials was not found
- `403` — Operator doesn't have access to resource
- `404` — Entity with the provided id was not found

---

[API](https://skmtc.net/monta/apis/monta-partner-api.md) · [All operations](https://skmtc.net/monta/apis/monta-partner-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/monta/monta-partner-api/revisions/517e18f11015/schema)
