---
title: "Delete my messages with optional filters"
method: POST
path: "/users/@me/messages/bulk-delete-mine"
tags: ["Users"]
---

# Delete my messages with optional filters

`POST /users/@me/messages/bulk-delete-mine`

## Request

- Base URL: `https://web.fluxer.app/api/v1`
- URL: `https://web.fluxer.app/api/v1/users/@me/messages/bulk-delete-mine`
- Auth: API key in header `Authorization`
- TypeScript: <https://skmtc.dev/fluxer/apis/fluxer-api/docs/users/@me/messages/bulk-delete-mine/post.ts> (a function with typed inputs; its response is checked against the schema)

Immediately deletes messages the caller has authored, subject to optional date-range and per-context filters (DMs, group DMs, guilds, with optional guild exclusions; or an inaccessible-only mode for contexts the caller is no longer a member of). Requires sudo mode verification. The deletion runs asynchronously. When it completes, the caller gets the totals in a system DM, or by email when the instance has direct messages turned off and sends email.

## Request body

- BulkDeleteSelfMessagesRequest
  - `scope` 'selected' | 'inaccessible_only': Which set of contexts the deletion targets
  - `include_dms` boolean: Include 1:1 direct messages the caller still has open.
  - `include_dms_closed` boolean: Include 1:1 direct messages the caller has previously closed. Independent of include_dms — set include_dms=false and include_dms_closed=true to target closed DMs only.
  - `include_group_dms` boolean: Include group DMs the caller is still a member of.
  - `include_guilds` boolean: Include text channels in guilds the caller is a member of.
  - `guild_filter_mode` 'exclude' | 'include_only': How the guild filter list is interpreted when include_guilds is true.
  - `excluded_guild_ids` SnowflakeType[]: Guild IDs to leave untouched. Used when include_guilds is true, guild_filter_mode is exclude, and scope is selected.
    - union
      - string, snowflake
      - integer
  - `included_guild_ids` SnowflakeType[]: The only guild IDs to apply this operation to. Used when include_guilds is true, guild_filter_mode is include_only, and scope is selected.
    - union
      - string, snowflake
      - integer
  - `start_date` string, date-time, nullable: Inclusive ISO8601 lower bound for message timestamps. Null/omitted means unbounded in the past.
  - `end_date` string, date-time, nullable: Exclusive ISO8601 upper bound for message timestamps. Null/omitted means unbounded in the future.
  - `password` string
  - `mfa_method` 'totp' | 'webauthn' | 'email_code': MFA method to use for verification
  - `mfa_code` string: MFA verification code from an authenticator app
  - `email_code_ticket` string: Ticket from POST /users/@me/sudo/email-code, sent with mfa_method email_code
  - `email_code` string: The 6-digit code from the email, sent with mfa_method email_code
  - `webauthn_response` WebAuthnAuthenticationResponse
    - `id` string, required
    - `rawId` string, required
    - `type` 'public-key', required
    - `authenticatorAttachment` 'cross-platform' | 'platform'
    - `clientExtensionResults` object, required
      - `appid` boolean
      - `credProps` object
        - `rk` boolean
      - `hmacCreateSecret` boolean
    - `response` object, required
      - `clientDataJSON` string, required
      - `authenticatorData` string, required
      - `signature` string, required
      - `userHandle` string
  - `webauthn_challenge` string: WebAuthn challenge string

## Response `202`

Success

## Other responses

- `400`: Bad Request - The request was malformed or contained invalid data
- `401`: Unauthorized - Authentication is required or the token is invalid
- `403`: Forbidden - You do not have permission to perform this action
- `429`: Too Many Requests - You are being rate limited
- `500`: Internal Server Error - An unexpected error occurred

## Changes

> 66 revisions in range; 2 not diffed.

- **2026-10-24** `2ecd716d4472`: 3 info
  - added the new optional request property `email_code`
  - added the new optional request property `email_code_ticket`
  - added the new `email_code` enum value to the request property `mfa_method`
- …earlier changes not shown

[Operation history](https://skmtc.dev/fluxer/apis/fluxer-api/changes/users/@me/messages/bulk-delete-mine/post.md)

---

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