---
title: "Restore a soft-archived user (v2, tenant actor)"
method: POST
path: "/v2/apps/{appId}/users/{userId}/restore"
tags: ["Users"]
---

# Restore a soft-archived user (v2, tenant actor)

`POST /v2/apps/{appId}/users/{userId}/restore`

## Request

- Base URL: `https://api.chat.ethora.com`
- URL: `https://api.chat.ethora.com/v2/apps/{appId}/users/{userId}/restore`
- Auth: HTTP bearer

Flips an archived user back to `active`. Login (v1+v2) immediately
starts accepting their credentials again. Idempotent for users
already active.

Cannot restore users mid-purge (`status: 'deleting'`) or fully purged
(`status: 'deleted'`) - returns 409.

Supports `User JWT` and `B2B Server JWT`.

## Path parameters

- `appId` string, required
- `userId` string, required

## Response `200`

restored ok

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: user not found in this app
- `409`: user is in a non-restorable state
- `422`: Unprocessable Entity
- `500`: Internal Server Error

---

[API](https://skmtc.dev/ethora/apis/platform-api.md) · [All operations](https://skmtc.dev/ethora/apis/platform-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ethora/apis/platform-api/revisions/01b6e64378ee?raw)
