---
title: "Set user password"
method: POST
path: "/v1/users/{user-id}/password"
tags: ["Users"]
---

# Set user password

`POST /v1/users/{user-id}/password`

Set or change a user's password. The operation is treated as a self-change when the
target user-id is the currently authenticated user, and as an administrative reset
otherwise. When self-changing, `oldPassword` is required so the current password can be
verified; for an administrative reset `oldPassword` is not required.

Users can change their own password without MANAGE_USERS access right.
Administrative password reset requires MANAGE_USERS access right.

## Path parameters

- `user-id` integer, required

## Request body

- PasswordInput — Password change request
  - `newPassword` string, required — The new password
  - `oldPassword` string — Current password (required for self-change, omit for admin reset)

## Response `200`

Password changed successfully

## Other responses

- `400` — Missing newPassword, missing oldPassword on self-change, weak password, or recently used password
- `401` — Unauthorized
- `403` — Access denied (wrong old password or insufficient rights)
- `404` — User not found
- `500` — Database failure

---

[API](https://skmtc.net/netxms/apis/netxms-api.md) · [All operations](https://skmtc.net/netxms/apis/netxms-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/netxms/netxms-api/versions/14d93e5115dd/schema)
