# Purge

> With the `@Nyaru purge` command, you can delete a number of messages from a channel. You can use different filters/options to specify what type of messages you want to remove from the channel.

{% tabs %}
{% tab title="Aliases" %}
`pg`, `bulkdelete`, `clear`
{% endtab %}

{% tab title="Flags" %}

* `-force` - Force [flag](https://docs.nyaru.xyz/introduction/usage#flags) allows you to force purge the required messages, instead of filtering pinned messages **(This will force to delete pinned messages as well)**. Learn more about flags [here](https://docs.nyaru.xyz/introduction/usage#flags).
  {% endtab %}

{% tab title="Cooldown" %}
5 seconds
{% endtab %}

{% tab title="Permissions" %}

* `MANAGE_MESSAGES`: The discord user running the command should have at least this permission in the command channel.
  {% endtab %}

{% tab title="Requirements" %}

* `READ_MESSAGES`: Bot should be able to read messages to listen your command!
* `READ_MESSAGE_HISTORY`: Bot should be able to read message history to fetch and purge them.
* `EMBED_LINKS`: Bot will provide command output in the embed.
* `MANAGE_MESSAGES`: Bot should have permissions to manage messages in the command channel to delete messages.
  {% endtab %}
  {% endtabs %}

{% hint style="warning" %}
You can **only** delete upto **100** messages *maximum* per execution, and you **cannot** purge messages **older** than **14 days**. [Learn more](https://docs.nyaru.xyz/introduction/faqs#purge-isnt-working-as-expected-with-messages-older-than-14-days-what-does-that-mean).
{% endhint %}

## Usage

```
@Nyaru purge (count) (option) (search arguments)
```

### Examples

* Purge last **69** messages, **excluding** channel pins:

> @Nyaru purge 69

* Purge last **100** messages, **including** channel pins:

> @Nyaru purge 100 -force

{% hint style="danger" %}
In above examples, purge count/amount is **required** argument, however the flag is *optional*.
{% endhint %}

## Sub Commands

Purge filters can help you specify and clean **specific** type of messages (to your desire). Some cases where you can use these sub commands:

* You want to clear messages which **includes** text `hell`,&#x20;
* You want to clear all bot messages *(upto last 100 messages)*,
* You want to clear all **attachment** messages,
* You want to clear all messages **not including** text `noob`,

and much more - we have got it covered for you.

| Sub Command                                                        | Description                                                |
| ------------------------------------------------------------------ | ---------------------------------------------------------- |
| [bots](https://docs.nyaru.xyz/moderation/purge/bots)               | Purge messages sent by **bots**.                           |
| [humans](https://docs.nyaru.xyz/moderation/purge/humans)           | Purge messages sent by **humans**.                         |
| [links (WIP)](https://docs.nyaru.xyz/moderation/purge/links)       | Purge messages containing any **link(s)**.                 |
| [attachments](https://docs.nyaru.xyz/moderation/purge/attachments) | Purge messages containing any **attachment(s)**.           |
| [mentions](https://docs.nyaru.xyz/moderation/purge/mentions)       | Purge messages containing **user** or **role mention(s)**. |
| [embeds (WIP)](https://docs.nyaru.xyz/moderation/purge/embeds)     | Purge messages containing **embed(s)**.                    |
| [includes](https://docs.nyaru.xyz/moderation/purge/includes)       | Purge messages **including** the given text.               |
| [not](https://docs.nyaru.xyz/moderation/purge/not)                 | Purge messages **not including** the given text.           |
| [startswith](https://docs.nyaru.xyz/moderation/purge/startswith)   | Purge messages **starting with** given text.               |
| [endswith](https://docs.nyaru.xyz/moderation/purge/endswith)       | Purge messages **ending with** given text.                 |
| [user](https://docs.nyaru.xyz/moderation/purge/user)               | Purge messages sent by a **specific user/bot account**.    |

{% hint style="info" %}
**You can click on the respective sub-command to jump to detailed documentation with usage and examples of that specific sub-command.**
{% endhint %}
