Dispatch.IO Logo
Modules and features

Anti-raid and security

How Dispatch.IO protects your server, protection by protection, with raid mode, the whitelist and emergency mentions.

Updated on October 15, 2026#securite

Search the documentation

Type a keyword: a command, a module, a dashboard page…

The Dispatch.IO anti-raid watches your server around the clock and reacts on its own to dangerous behaviour: spam, links, forbidden words, mass mentions, mass joins, brand-new accounts, apps added without permission, channels, bans, invites or webhooks created in bulk, and sensitive server changes. This page explains, protection by protection, what triggers a reaction, the sanction applied and what members and staff see.

It is written for server owners and administrators. To turn on and tune each option, see Bot configuration (the /config command) or the Security and anti-raid page of the website.

Overview

Dispatch.IO security is made of five building blocks:

Building blockWhat it doesWhere to set it
Anti-raid (14 protections)Detects dangerous behaviour, sanctions the author and undoes the damage/config → Antiraid, Anti-Raid page of the website
Raid modeKicks every new member during an attack/raid-mode, Security page of the website
WhitelistExempts members, roles or apps from some protections/config → Whitelist, Security page of the website
Emergency mentionsMention your staff in important logsBasic configuration page of the website
Flagged member alertWarns your staff when a reported account joinsAutomatic

For every anti-raid protection, the bot follows the same path:

The protections fall into three families, detailed below: message filters, join control and server protections.

Before you start

Turning the anti-raid on

  1. Turn on the master switch: the button labelled Enabled in /config → Antiraid, or Enable Anti-Raid on the Anti-Raid page of the website. While it is off, no protection acts, the captcha included.
  2. Pick the Anti-Raid log channel (called Raid logs channel in /config → Channels): this is where the bot reports everything it does.
  3. Turn on the protections you want one by one. On a new server, all of them are off.

Raid mode and the flagged member alert work even while the anti-raid is off.

The bot's permissions

The bot needs specific permissions to sanction and repair. Keep the Administrator permission on it (it includes all of them) and put its role above the roles of the members it must watch (see Permissions and roles).

Bot permissionUsed to
AdministratorConfigure the anti-raid in /config. If the bot loses it, the anti-raid turns itself off the next time a role of the server is edited.
View Audit LogFind who added an app, created or deleted a channel, banned someone, created an invite or a webhook, or changed the server
Manage MessagesDelete filtered messages
Timeout MembersApply timeouts
Manage RolesRemove an offender's administrator roles
Kick, Accept, and Deny MembersKick apps, mass joins, recent accounts, raid-mode newcomers, captcha failures
Ban MembersBan repeat recent accounts, unban after a mass ban
Manage ChannelsDelete mass-created channels, recreate a deleted channel
Manage WebhooksDelete mass-created webhooks
Manage ServerDelete invites, undo a server change, Discord safety actions of raid mode

When a permission is missing, the action is skipped and the bot posts an error in the Server logs channel.

Warning

Without View Audit Log, the protections that need to find an author (apps, channels, bans, invites, webhooks, server changes) do nothing, with no error message at all.

Who is never sanctioned

  • The bot itself: its own actions (recreating a channel, unbanning…) trigger nothing.
  • The server owner and the Dispatch.IO creators, for message filters and join control.
  • Whitelisted members, roles and apps, for the protections covered by their scope.

Messages from other bots are filtered like members' messages. Messages sent through a webhook are not filtered.

Thresholds

Thresholds (number of messages, time window…) are the same for every server and set by the Dispatch.IO team. The values on this page are the defaults. Only the minimum age of recent accounts is set per server.

Warnings and sanctions

Message filters: warnings, then a timeout

For links, abusive mentions and forbidden words, each offending message is deleted and earns a warning: an infraction is recorded, the member gets a DM and the raid logs channel gets a log. On the 3rd warning within the protection's time window, the member gets a 24-hour timeout.

Spam is stricter: a 24-hour timeout on the first detection, with no warning.

DM received after a forbidden link
The warning sent by DM: the deleted message, the bot and the server.

Server protections: role removal, timeout and repair

For channel creation, channel deletion, invites, webhooks and server changes, the bot:

  1. removes the offender's roles that have the Administrator permission (except roles managed by an integration);
  2. gives them a 3- or 7-day timeout depending on the protection;
  3. undoes the damage (channels deleted or recreated, invites or webhooks deleted, settings restored).

If the offender is an app whose integration role has the Administrator permission, it is banned instead of timed out.

Mass ban works slightly differently: the bot removes the offender's ADMIN and MODO staff roles registered for the server (see Permissions and roles), gives a 7-day timeout, then unbans the victims.

Note

DMs and logs talk about a "temporary ban", but it really is a timeout: the member stays on the server but cannot write or speak until it ends.

DM received after a spam timeout
The DM of a timeout: duration, reason, bot and server.

Infractions

Every anti-raid warning and timeout is recorded as an infraction issued by the bot. You can find them with /infractions (see Moderation). Deleting a warning lowers the counter that leads to a timeout.

Logs

Every warning and sanction is posted in the Raid logs channel: the member, the channel, the deleted message and, for a timeout, the reason and the sanction. Emergency mentions are added at the bottom (see below).

Log of a link warning in the raid logs channel
The log of a warning: member, channel, original message, then the emergency mention (here the owner).

Message filters

Spam, links, abusive mentions and forbidden words.

The filters check every new message and every edited message. They ignore the owner, the Dispatch.IO creators and members whitelisted with the Messages scope. They run in this order, and only the first one that detects something acts: links, spam, abusive mentions, forbidden words.

Protection (website)/config menuDefault triggerSanction
Anti-spam protectionAnti-Spam5 messages in 5 secondsImmediate 24-hour timeout
Link protectionAnti-LinkEvery link outside the allowed channelsWarning, 24-hour timeout on the 3rd within 60 seconds
Mention abuse protectionAnti-Mention abusive6 mentions in one message, or 3 messages with mentions within 30 secondsWarning, 24-hour timeout on the 3rd within 30 seconds
Forbidden words protectionAnti-Bad wordsEvery message containing a forbidden wordWarning, 24-hour timeout on the 3rd within 24 hours

Anti-spam

  • Trigger: a member's 5th message within 5 seconds, all channels combined. Message edits count too.
  • Sanction: an immediate 24-hour timeout, and removal of the roles that have the Administrator permission. An administrator app is banned.
  • For 10 seconds, every new message from that person is deleted as soon as it is sent.
  • Clean-up: the bot deletes the latest messages of the channel, as many as the spammer's recent messages.

Warning

The clean-up deletes the latest messages of the channel, whoever wrote them: if other members posted in the meantime, some of their messages can go too.

  • Trigger: anything that looks like a link, with or without https://: example.com, discord.gg/…, IP addresses, GIF links, but also words such as readme.md or script.py. The content of forwarded messages is checked too.
  • Exceptions: the channels allowed for links and open ticket channels. Threads of an allowed channel are not exempt.
  • Action: message deleted and a warning. On the 3rd warning within 60 seconds, a 24-hour timeout.
  • Setting: the list of allowed channels (Channels allowed for links on the website, Edit allowed channels in /config). In /config, your selection replaces the whole list. A deleted allowed channel is removed from the list automatically.

Abusive mentions

  • Trigger: a message with more than 5 mentions, or 3 messages containing mentions within 30 seconds. Member and role mentions, @everyone and @here count (even if the member is not allowed to use them). The automatic mention of a reply does not count.
  • Action: message deleted and a warning. On the 3rd warning within 30 seconds, a 24-hour timeout.

Forbidden words

  • The list: a built-in list of insults, hate speech, threats and a few scam phrases, in French and English, always active and not displayed, plus your own words (50 characters max each).
  • Detection: case and accents are ignored. The bot also spots letters separated by spaces, dots or underscores (b.a.d) and digits or symbols used as letters in the message (3 for e, 0 for o, $ for s…).
  • Action: message deleted and a warning; the log shows the detected word. On the 3rd warning within 24 hours, a 24-hour timeout.
  • Setting: the Forbidden words list on the website, or Add a word / Remove a word in /config.

Caution

  • Words are matched anywhere, even inside another word: a short word can trigger on innocent words that contain it.
  • Do not use special characters such as (, ), [, ], +, * or ? in your words: they stop the whole filter from working on your server.
  • A word already used by another Dispatch.IO server is not saved, even if /config replies "Word added".

Join control

Apps, mass joins, recent accounts and captcha.

On every join, the bot checks the new member in this order:

App additions (Anti-App)

  • Trigger: any app (bot) added to the server, whoever adds it, the owner included, unless the app is whitelisted with the App additions or Global scope.
  • Action: the app is kicked, then a log is posted. If the person who added it is not an administrator, they get a warning and a second log shows who added it.
  • Before installing an app, whitelist it: the Whitelist an app button on the website (you can paste the ID of an app that is not on the server yet) or /config → Whitelist → Add.

Mass joins (Anti-Join massif)

  • Trigger: the 6th newcomer within 10 seconds (not counting members whitelisted with Joins / recent accounts).
  • Action: every member who joined during those 10 seconds and is still there gets a DM, then is kicked. Each new join within the window repeats this. The log lists the kicked members.
  • Raid mode does not turn on by itself: if the attack goes on, turn it on yourself.

Recent accounts (Anti-Recent account)

  • Trigger: a Discord account created less than 7 days ago (adjustable from 0 to 365 days: Min. age (days) on the website, Configure account creation threshold in /config).
  • Action: a warning, a DM (account creation date and the date from which they can come back), then a kick. On the 3rd attempt within that period, the account is banned.
  • The log shows the same information.
DM received by an account that is too recent
The DM sent to an account that is too recent: creation date, threshold and the date from which it can join.

Captcha (Security Captcha)

The captcha asks every newcomer to copy a code before they can use the server.

  • Conditions: anti-raid on, captcha protection on and a Captcha channel (text channel) picked. Otherwise the join goes on as usual. Bots skip the captcha.
  • How it goes:
    1. The bot posts in the captcha channel an image with a 6-character code (letters and digits, without I, O, 0 or 1), mentions the member and says they have 3 minutes.
    2. The member types the code in the channel. Each of their messages is deleted right away. Case does not matter, but there must be no extra space.
    3. After a wrong code, the message shows "Incorrect Code" and the number of attempts left.
  • Success: the captcha message disappears, a log is posted in the Captcha logs channel, then the member gets the welcome message and the welcome roles.
  • Failure (wrong code on the last attempt or 3 minutes elapsed): the member gets a DM, a log is posted, then they are kicked.

Important

  • The bot hides nothing on its own: during the captcha, the member sees whatever @everyone can see. Make the captcha channel visible to newcomers and keep the rest of the server for a welcome role, which is only given after the captcha (see Welcome and goodbye).
  • In practice, the member has 2 attempts: their 3rd message ends the verification as a failure, even if it contains the right code.
  • The whitelist does not skip the captcha.
Captcha message: image of the code to copy, mention of the member and 3-minute limit
The message posted in the captcha channel when a member joins.
Log of a successful captcha
The log posted in the captcha logs channel when a member passes the verification.

Server protections

Channels, bans, invites, webhooks and sensitive settings.

These protections watch what staff members do (or a hacked staff account). The bot reads the audit log to find the author: it needs the View Audit Log permission.

Protection (website)/config menuDefault triggerSanctionRepairWhitelist scope
Mass channel creation protectionAnti-Mass channel creation3 channels created within 10 seconds on the server, at least 2 by the same personRole removal + 3-day timeoutThe channels they created in those 10 seconds are deletedChannel create
Mass channel deletion protectionAnti-Mass channel deletionThe same person deletes 3 channels within 30 secondsRole removal + 7-day timeoutThe 3rd deleted channel is recreatedChannel delete
Mass ban protectionAnti-Mass ban4 bans within 10 seconds on the server, at least 3 by the same personRemoval of ADMIN and MODO roles + 7-day timeoutTheir victims are unbannedMass bans
Invite creation protectionAnti-Mass invite creation6 invites created within 60 seconds, at least 5 by the same personRole removal + 3-day timeoutTheir invites are deletedInvites
Webhook creation protectionAnti-Mass webhook creationMore than 100 webhook changes within 60 secondsRole removal + 3-day timeoutTheir webhooks are deletedWebhooks
Server modification protectionAnti-Mass server updateA single change of the server name, verification level or explicit content filterRole removal + 7-day timeoutThe previous setting is restoredServer updates

Details:

  • Channel deletion: only the 3rd deleted channel is recreated, with its name, category, position, permissions, topic and settings, but without its messages. If the bot used it (log channel, welcome channel, channel allowed for links…), the new channel takes over that role.
  • Mass ban: bans made with the bot's /ban do not count against the moderator (the bot is the one banning).
  • Server changes: the icon, the banner and other settings are not watched. To rename the server yourself, make sure you are whitelisted (see the warning in the Whitelist section).
  • Webhooks: with the default threshold, this protection almost never triggers. Webhook edits and deletions count too.

The offender gets a DM and every sanction is posted in the raid logs channel.

Raid mode

Raid mode is an emergency button: while it is on, every newcomer gets a DM, then is kicked. There are no exceptions: whitelisted members, apps and bots are kicked too.

DM received by a newcomer during raid mode
The message sent to every newcomer before they are kicked.

Turning it on and off

/raid-mode commandSecurity page of the website
WhoMembers with the Administrator permissionPeople who manage the server on the website
Duration24 hours1, 2, 4, 6, 12 or 24 hours (2 hours suggested)
Discord safety actionsAlways appliedPause invites and Pause DMs, your choice
Turning it off/raid-mode → DisableRaid mode switch → Disable

The command is detailed in Server management.

On a Community server, the bot also applies Discord's safety actions until raid mode ends: invites are paused and DMs between members are paused. On a server without Community, only the kicks apply.

When raid mode ends

  • Raid mode stops on its own at the scheduled time. No message is posted at that moment, and the website page may still show Enabled until you reload it.
  • No protection turns raid mode on by itself: it is always a staff decision.

What gets logged

  • Turning it on and off is posted in the Raid logs channel, with the emergency mentions.
  • Each kick is posted in the Join/leave logs channel ("Automatic Kick - Raid Mode"). This log does not name the kicked member: the join log right above it does.
Log of raid mode turned on from the website
Raid mode turned on, in the raid logs channel, with the Discord safety action of a Community server.

Whitelist

The whitelist exempts members, apps or roles from some protections. Each entry has a scope: Global (every protection) or a list of specific protections.

Scope (website)Protections it exempts fromDo role entries count?
GlobalAll of the ones belowYes
App additionsApp additions: the app itself must be on the listNo
Messages (spam, links, words, mentions)Anti-spam, links, abusive mentions, forbidden wordsYes
Channel createMass channel creationYes
Channel deleteMass channel deletionYes
Mass bansMass banYes
WebhooksWebhook creationYes
InvitesInvite creationYes
Server updatesServer modificationYes
Joins / recent accountsMass joins and recent accountsYes, but a newcomer has no role yet
  • On the website (Security page): add users or roles, pick their scopes, then save at the bottom of the page.
  • In /config → Whitelist: add or remove members and apps, always with the Global scope. Roles do not show up there.
  • Nothing exempts from raid mode or the captcha.
  • A member sanctioned with /timeout, /kick or /ban (or the same action from the website) is removed from the whitelist.
  • Additions and removals made in /config are noted in the Server logs channel.
Warning

The owner and server protections

The owner is shown as Global and cannot be removed. Yet for server protections (channels, bans, invites, webhooks, server changes), the bot only protects them through a whitelist entry created when the bot joins the server (on an ownership transfer, the bot replaces the former owner's entry with one for the new owner). Saving the whitelist from the website currently removes that entry. In that case, add the owner with /config → Whitelist → Add: otherwise their own changes (renaming the server, for example) can be undone.

Emergency mentions

Emergency mentions alert your staff as soon as an important log is posted: the bot adds mentions at the bottom of the log, which send a real notification.

Logs concerned: everything posted in the Raid logs channel and the Sanction logs channel, plus, in the Server logs channel, the logs of a deleted channel, a deleted role and a server change.

By default, alerts are on with no recipient: the owner is then mentioned on every log concerned, even for a simple link warning.

Everything is set on the Basic configuration page of the website (see Server home):

Setting (website)EffectDefault
Security AlertsTurns all emergency mentions on or offOn
Emergency RolesRoles mentionedNone
Emergency UsersMembers mentionedNone (the owner is mentioned when no role or member is picked)
Direct Message (DM) CopyAlso sends the log by DM to the emergency users (or the owner). Members of emergency roles do not get a DM.Off
  • The DM copy needs the Basic or Ultimate plan (see Premium plans and limits). Without it, your choice stays saved and comes back with the plan.
  • Each person gets at most one DM every 30 seconds per server: during an attack, not every following log is copied.

Warning

If you turn Security Alerts off, the flagged member alert (below) and the bump invite deletion alert are no longer posted at all.

Flagged members

On every join, the bot checks whether the account is reported on DangerCord (a report database shared between servers) or on the Dispatch.IO blacklist. This check runs even when the anti-raid is off.

If the account is reported, an alert is posted in the Join/leave logs channel: the member, the services reporting them, the reason (for the Dispatch.IO blacklist) and a warning. The emergency mentions are added and send a notification.

Alert for a flagged member with the ban button
The alert posted when a reported account joins the server.
  • The bot does not sanction the member by itself: your staff decides.
  • The Ban this user button bans the account, even if it has already left the server. It needs the Ban Members permission (or an ADMIN or MODO staff role). The ban is noted in the Sanction logs channel.

Where to find the logs

Channel (/config → Channels)Name on the websiteWhat security posts there
Raid logs channelAnti-Raid & Security LogsWarnings and sanctions, kicked apps, mass joins, recent accounts, anti-raid changes, raid mode turned on and off
Captcha logs channelCaptcha Verification LogsCaptcha successes and failures
Join/leave logs channelJoins & Leaves LogsRaid-mode kicks, flagged member alerts
Server logs channelGeneral Server LogsPermissions the bot is missing, deleted channels (and whether they will be recreated), whitelist changes
Sanction logs channelModeration & Sanction LogsBans made with the button of an alert

These channels must be text channels: announcement channels receive nothing. With no channel picked, the log is simply not posted. More in Logs.

Pitfalls and limits

  • Texts do not follow the thresholds: the bot's messages quote fixed numbers ("5 messages sent in less than 5 seconds", "3 links within one minute"…), even if the Dispatch.IO team changes a threshold.
  • Apps added by staff: Anti-App also kicks apps added by the owner or an administrator. Whitelist the app before adding it.
  • Deleted channels: while the protection is on, the first two deletions by a non-whitelisted member do not show up in the Server logs channel.
  • Losing the Administrator permission: the anti-raid turns itself off. Give the permission back to the bot, then turn the anti-raid on again.
  • /infractions: warnings for recent accounts and app additions show a technical text (antiRaid.recent_account.infraction.reason) instead of a sentence.
  • Thresholds set at bot level: only the minimum account age is set per server; for everything else, use the whitelist to relax a protection.

Updated on October 15, 2026