---
title: "Delete Users"
method: POST
path: "/users/delete"
tags: ["product:chat"]
---

# Delete Users

`POST /users/delete`

Deletes users and optionally all their belongings asynchronously.

Sends events:
- channel.deleted
- user.deleted

## Request body

- DeleteUsersRequest, nullable
  - `calls` 'soft' | 'hard' — Calls delete mode. Affected calls are those that include exactly two members, one of whom is the user being deleted. * null or empty string - doesn't delete any calls * soft - marks user's calls and their related data as deleted (soft-delete) * hard - deletes user's calls and their data completely (hard-delete)
  - `conversations` 'soft' | 'hard' — Conversation channels delete mode. Conversation channel is any channel which only has two members one of which is the user being deleted. * null or empty string - doesn't delete any conversation channels * soft - marks all conversation channels as deleted (same effect as Delete Channels with 'hard' option disabled) * hard - deletes channel and all its data completely including messages (same effect as Delete Channels with 'hard' option enabled)
  - `files` boolean — Delete user files. * false or empty string - doesn't delete any files * true - deletes all files uploaded by the user, including images and attachments.
  - `messages` 'soft' | 'pruning' | 'hard' — Message delete mode. * null or empty string - doesn't delete user messages * soft - marks all user messages as deleted without removing any related message data * pruning - marks all user messages as deleted, nullifies message information and removes some message data such as reactions and flags * hard - deletes messages completely with all related information
  - `new_call_owner_id` string
  - `new_channel_owner_id` string
  - `user` 'soft' | 'pruning' | 'hard' — User delete mode. * soft - marks user as deleted and retains all user data * pruning - marks user as deleted and nullifies user information * hard - deletes user completely. Requires 'hard' option for messages and conversations as well
  - `user_ids` string[], required — IDs of users to delete

## Response `201`

Successful response

- DeleteUsersResponse, nullable
  - `duration` string, required — Duration of the request in milliseconds
  - `task_id` string, required — ID of the task to delete users

## Other responses

- `400` — Bad request
- `429` — Too many requests

---

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