---
title: "Change, reset, or set password"
method: POST
path: "/auth/v1/user/password"
tags: ["Auth"]
---

# Change, reset, or set password

`POST /auth/v1/user/password`

## Request

- Base URL: `https://api.run402.com`
- URL: `https://api.run402.com/auth/v1/user/password`
- Auth: API key in header `apikey` and HTTP bearer

Three modes: (1) Change: provide current_password + new_password. (2) Reset via magic link: login with magic link, call with just new_password. (3) Set for passwordless user: requires project allow_password_set=true. Requires BOTH the project apikey header AND the user access_token as Authorization: Bearer.

## Request body

- object
  - `current_password` string: Required for password change (not for reset/set)
  - `new_password` string, required

## Response `200`

Password updated

- StatusOk
  - `status` string, required

## Other responses

- `401`: Wrong current_password or invalid token
- `403`: Password set not enabled for this project (passwordless user)

---

[API](https://skmtc.dev/run402/apis/run402-api.md) · [All operations](https://skmtc.dev/run402/apis/run402-api/llms.txt) · [OpenAPI document](https://skmtc.dev/run402/apis/run402-api/revisions/893607557f50?raw)
