# Protection

Turn on anti-link, anti-spam, staff limits and anti-raid on the city's Discord, review incidents and undo mistakes.

Source: https://fivedash.fivex.gg/docs/en/discord/protection

Protection watches your city's Discord around the clock, in four layers: **Anti-link**, **Anti-spam**, **Staff limits** and **Anti-raid**. It deletes links and spam, stops staff who start banning or deleting channels too fast, and shuts the door when lots of people join at once. Everything it does becomes an incident in the panel that the team can review and undo. It's for owners and moderators who want the server safe even when nobody is watching.

## Before you start

* The **Discord** module must be on the organization's plan, on the **Pro** or **Ultra** plan. On Plus, the Protection page doesn't open.
* The city's bot must be connected to the server. See [Bot](https://fivedash.fivex.gg/docs/en/discord/bot).
* The bot's role needs these permissions: **View Audit Log**, **Manage Messages**, **Timeout Members**, **Manage Roles**, **Kick Members**, **Ban Members** and **Manage Server**. If one is missing, the page lists it.
* For **Anti-link** and **Repeated message** to work, turn on the **Message Content Intent** in Developer Portal → Bot → Privileged Gateway Intents. Without it, the bot can't read message text.
* The bot's role must be at the top of the role list: it only stops members whose roles are below its own.

Access level in the panel (**Protection** area):

| Level         | What it allows                   |
| ------------- | -------------------------------- |
| **View**      | Incidents                        |
| **Manage**    | Undo incidents and pause invites |
| **Configure** | Layers, limits and alerts        |

> If you see **The service that watches the server is down**, no layer works until it's back.

## Turn on Protection

### Open Protection

In the panel, go to **Discord → Protection** and open the **Settings** tab.

### Turn the module on

At the top of the page, switch **Off** to **On**. Protection starts off.

### Adjust the layers

In the **Layers** group, turn on and adjust each layer with the switch at the top of its card (for example, **Turn on Anti-link**). See each layer's limits below.

### Pick who is trusted

Under **Trusted**, pick **Trusted roles** and **Trusted members**. No layer applies to them.

### Pick the alerts channel

Under **Alerts**, pick the **Alerts channel** and, if you want, roles in **Mention on serious alerts**. The channel is required with **Staff limits** or **Anti-raid** on.

### Save

Click **Save** on the **You have unsaved changes** bar.

## The layers

### Anti-link

Deletes links members send. Allowed roles and allowed sites get through. Starts off.

| Field                                | What it does                                                                                                                             | Default                                     |
| ------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------- |
| **What to block**                    | **All links** (except the sites you allow) or **Invites only** (invites to other Discord servers).                                       | **All links**                               |
| **Allowed sites**                    | Sites that get through. Subdomains count too (youtube.com allows m.youtube.com). Discord's own links always get through. Up to 50 sites. | youtube.com, youtu.be, twitch.tv, tenor.com |
| **Roles that can send links**        | Partners, content creators, staff… Up to 25 roles.                                                                                       | None                                        |
| **Channels where links are allowed** | Where anyone can send links (promotion, clips…). Up to 25 channels.                                                                      | None                                        |
| **Warn in the channel**              | A short message mentioning the member, gone after a few seconds.                                                                         | On                                          |
| **Timeout after**                    | After N links in 10 minutes, the member gets a timeout. Choices: **Never**, 2, 3, 4 or 5 links.                                          | 3 links                                     |
| **Timeout duration**                 | How long the links timeout lasts. Choices: 1, 5, 10 or 30 minutes, 1 hour, 6 hours, 1 day or 1 week.                                     | 10 minutes                                  |

Shortcuts for **Add allowed site**: YouTube, YouTube (short), Twitch, Kick, TikTok, Instagram, X, Twitter, Medal, Streamable, Imgur, Tenor (GIFs), Giphy and Spotify.

### Anti-spam

Stops whoever sends too many messages, repeats the same thing or mentions everyone. The spam messages are always deleted.

| Field                           | What it does                                                                                                             | Default               |
| ------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | --------------------- |
| **Flood**                       | Back-to-back messages from the same person. **How many messages**: 4 to 15. **Within**: 5, 10, 15 or 30 s.               | On, 6 messages in 5 s |
| **Repeated message**            | The same text (or attachment) several times. **How many times**: 3 to 10. **Within**: 15 s, 30 s, 1 min, 2 min or 5 min. | On, 4 times in 30 s   |
| **Mass mentions**               | People, roles and @everyone mentioned in a single message. **How many mentions**: 3, 4, 5, 6, 8, 10, 15 or 20 or more.   | On, 6 mentions        |
| **What to do with the spammer** | **Just delete**, **Timeout**, **Kick** or **Ban**. Once per wave of spam.                                                | **Timeout**           |
| **Timeout duration**            | When the punishment is **Timeout**. Same choices as Anti-link.                                                           | 10 minutes            |
| **Channels without anti-spam**  | Where the anti-spam doesn't apply (counting, word games…). Up to 25 channels.                                            | None                  |

### Staff limits

For staff who start banning, kicking, disconnecting or deleting too many channels in a short time: a compromised or angry moderator. Protection reads the server's audit log.

| Rule                               | What counts                              | Default                            |
| ---------------------------------- | ---------------------------------------- | ---------------------------------- |
| **Bans**                           | Includes FiveDash's /ban.                | On, 3 in 1 min → **Remove roles**  |
| **Kicks**                          | Includes FiveDash's /kick.               | On, 4 in 1 min → **Remove roles**  |
| **Disconnect from call**           | Removing people from voice calls.        | On, 6 in 1 min → **Remove roles**  |
| **Delete channels and categories** | Text and voice channels, and categories. | On, 2 in 1 min → **Remove roles**  |
| **Create channels**                | Flooding the server with channels.       | Off, 6 in 1 min → **Remove roles** |
| **Delete roles**                   | Deleting the server's roles.             | On, 2 in 1 min → **Remove roles**  |
| **Create webhooks**                | Webhooks are used for spam.              | On, 3 in 1 min → **Remove roles**  |
| **Add bots**                       | Any bot. The added bot is kicked too.    | Off → **Remove roles**             |

In each rule: **How many** goes from 1 to 10; **Within** can be 10 s, 15 s, 30 s, 1 min, 2 min, 5 min or 10 min; **What to do** can be **Remove roles**, **Kick** or **Ban**.

| Field                       | What it does                                                     | Default |
| --------------------------- | ---------------------------------------------------------------- | ------- |
| **Notify the person by DM** | Explains why they were stopped and that the team will review it. | On      |

> **Remove roles** removes every role the bot can (the ones below its own) and remembers which they were. In the incident, **Give roles back** undoes it if it was a mistake. The server owner and trusted members are never stopped.

If the bot's role is below roles with dangerous permissions, the layer lists them: members with those roles can't be stopped.

### Anti-raid

Notices when lots of people join at once (bot accounts, a leaked invite) and shuts the door.

| Field                 | What it does                                                                                                                       | Default               |
| --------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | --------------------- |
| **When people join**  | Counting everyone who joins. **How many people**: 5, 8, 10, 15, 20, 30 or 50. **Within**: 10 s, 15 s, 30 s, 1 min, 2 min or 5 min. | On, 10 people in 15 s |
| **Pause invites**     | With Discord's own tool: nobody else joins through an invite. **For how long**: 1, 2, 6, 12 or 24 hours.                           | On, 2 hours           |
| **Kick new accounts** | Whoever joins during the raid with a recently created account. **Account age**: younger than 1, 3, 7, 14 or 30 days.               | Off, 7 days           |

## Trusted and alerts

| Field                         | What it does                                                                                                     | Default       |
| ----------------------------- | ---------------------------------------------------------------------------------------------------------------- | ------------- |
| **Trusted roles**             | No layer applies to members with one of these roles. Up to 25 roles.                                             | None          |
| **Trusted members**           | People the protection never stops. The server owner and the bot already are. Up to 50 members.                   | None          |
| **Alerts channel**            | Every incident becomes a message here. Required with staff limits or anti-raid. With no channel: **Panel only**. | None          |
| **Mention on serious alerts** | Staff going over the limit and raids mention these roles.                                                        | **Nobody**    |
| **Messages**                  | Link and invite notices, staff DM.                                                                               | Default texts |
| **Embed**                     | Each layer's alert color.                                                                                        | See below     |

### Customize messages

| Tab          | When it shows                                                                                                                          | Default text (English city)                                                    |
| ------------ | -------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| **Link**     | In the channel, under a blocked link; gone after a few seconds. The warnings line (timeout on the Nth link) is added below on its own. | `{{warning}} {membro}, links aren't allowed here.`                             |
| **Invite**   | Replaces the link notice when what was blocked is an invite to another server.                                                         | `{{warning}} {membro}, invites to other servers aren't allowed here.`          |
| **Staff DM** | In the private messages of the staff member who was stopped.                                                                           | Explains the reason, what the protection did and that the team will review it. |

Each text takes up to 1,000 characters. Variables:

| Variable     | What it shows                                       |
| ------------ | --------------------------------------------------- |
| `{membro}`   | Mentions who sent it (@Player)                      |
| `{nome}`     | The person's name                                   |
| `{servidor}` | The Discord server's name                           |
| `{motivo}`   | What went over the limit ("4 bans in 1 min")        |
| `{acao}`     | What the protection did ("Your roles were removed") |

With **Warn in the channel** on, the link and invite notices can't be empty. With **Notify the person by DM** on, neither can the staff DM.

### Customize embed

When something fails, the alert turns red.

| Layer            | Where the color shows                                                     | Default   |
| ---------------- | ------------------------------------------------------------------------- | --------- |
| **Anti-link**    | The bar of blocked link and invite alerts.                                | `#F0B232` |
| **Anti-spam**    | The bar of flood, repetition and mention alerts.                          | `#9B84EE` |
| **Staff limits** | The bar of alerts for staff going over the limit, and of the DM they get. | `#ED4245` |
| **Anti-raid**    | The bar of join raid alerts.                                              | `#EB459E` |

## Overview and incidents

The **Overview** tab shows:

* **Protection status**: **Protection on** or **Protection off**, how many layers are watching and the **Adjust layers** button.
* **Incidents in the last 7 days**, with a tile per layer (links and invites deleted; flood, repetition and mentions; staff stopped at the limit; join waves).
* **Emergency mode** (see below).
* The incident list: filter by layer, search by member, ID or message text. Columns: **Incident**, **Who** and **What was done**.

Click an incident to see the **Rule**, the **Channel**, the deleted **Message**, **What the protection did** and the **Targets** (with **Copy IDs**).

### Undo an incident

Needs the **Manage** level.

### Open the incident

In **Discord → Protection → Overview**, click the incident in the list.

### Undo it

If the protection removed roles, click **Give the role back** (or **Give 3 roles back**, with the number of roles): the roles go back to the person right away. If it gave a timeout, click **Unmute** to lift it now (it also ends on its own when time runs out).

Only removed roles and timeouts can be undone. Kicks and bans made by the protection aren't undone here. An incident can only be undone once.

## Pause invites by hand (emergency mode)

Needs the **Manage** level. The bot needs the **Manage Server** permission.

### Open the overview

Go to **Discord → Protection → Overview** and find the **Emergency mode** block.

### Pick how long

Under **For how long**, pick 1, 2, 6, 12 or 24 hours.

### Pause

Click **Pause invites**. Nobody joins through an invite until the time shown. Members already in the server carry on as usual.

### Resume whenever you want

Click **Resume invites** to let people join again before the time runs out.

## FAQ

**The anti-link doesn't delete anything.**
Check that the **Message Content Intent** is on in the Developer Portal and that the member doesn't have an allowed or trusted role.

**A moderator was stopped by mistake. How do I give the roles back?**
Open the incident in **Overview** and click **Give the role back** (or **Give 3 roles back**, with the number of roles). To avoid it next time, add the person to **Trusted members** or raise the rule's limit.

**Why didn't the protection stop someone on the staff?**
It only stops members whose roles are below the bot's role. Drag the bot's role to the top in Server Settings → Roles. The server owner and trusted members are never stopped.

## Next steps

[Moderation](https://fivedash.fivex.gg/docs/en/discord/moderation)/ban, /kick and /mute with reason and proof.
[Bot](https://fivedash.fivex.gg/docs/en/discord/bot)The bot's intents and permissions.
[Summons](https://fivedash.fivex.gg/docs/en/discord/alignment)Summon someone for a talk, with a deadline.
[Plans and billing](https://fivedash.fivex.gg/docs/en/getting-started/plans-and-billing)What comes with Pro and Ultra.
