Ctrl k
Search docs…
Docs

Moderation

Last update: October 5, 2026
Every moderation action — a slash command, an auto moderation hit or a decision taken in the dashboard — is stored as a numbered case. Cases can be looked up, revoked and appealed, and they are mirrored into the moderation log channel. Open Moderation → Settings in the dashboard:
  • Moderator roles — members holding one of them may use the /mod commands. Administrators always can.
  • Moderation log channel — every case is posted there.
  • Notify punished members — sends a direct message with the reason, the duration and a link to the appeal form.
  • Warn escalation — punish a member automatically once they reach a given number of active warns. Warns can also expire after a number of days.
  • Auto moderation — six filters (invites, links, blocked words, word lists, mention spam and spam) that run on Discord's own AutoMod, see below.
Every filter you switch on is created as a rule in Server Settings → Safety Setup → AutoMod and kept in sync with the dashboard when you save. Discord itself does the matching, so a filter also catches edited messages and works while the bot is restarting. The filters are:
  • Invite filter — invites to other Discord servers.
  • Link filter — every link that is not on the whitelist.
  • Blocked words — words and phrases (up to 1000, a * at the start or the end is a wildcard), regular expressions (up to 10, Rust syntax, no look-around) and a list of allowed words.
  • Word lists — Discord's built-in lists of profanity, sexual content and slurs, plus allowed words.
  • Mention spam — more than 1–50 different member or role mentions in one message, with optional mention raid protection.
  • Spam — Discord's own detection of spam content, nothing more to configure.
Each filter has the same options: the message can be blocked (optionally with a text shown to its author, up to 150 characters), Discord can post an alert to a channel of your choice, channels and roles can be ignored, and moderators can be exempt. Discord needs at least one action per rule, so if you neither block the message, nor pick an alert channel, nor use a timeout, the message is blocked anyway. Discord blocks the message, posts the alert and applies the timeout by itself. Then the bot records a case (shown in the case log with the source “Auto moderation”) and applies the punishment of the filter: a warn, a kick or a ban. A timeout (the “Mute” punishment) is applied by Discord for the invite, link and blocked-word filters, and by the bot for the others.
  • Manage Server to create, update and delete the AutoMod rules (and Moderate Members for timeouts). Without it the settings are saved, but Discord is not updated: the page says so, and every filter shows “Cannot check Discord”.
  • Next to every enabled filter the page shows whether its rule exists in Discord: Active in Discord, Not created (it is created on the next save), Missing in Discord or Disabled in Discord (somebody deleted or switched off the rule there; saving restores it).
  • Discord allows one rule each for spam, word lists and mention spam per server, and six rules with keywords (the bot uses three). If the server already has a rule of the same type of its own, saving shows a warning and that filter is not created: remove the other rule, or keep it and leave the filter off.
The whitelist is not a list of plain domains: it accepts one wildcard character, *, which stands for “anything”, at the start or the end of a pattern. Everything else is matched literally, and a pattern always covers the deeper pages of whatever it matched. Discord's allow list takes 100 entries and every pattern uses two to four of them; the counter above the list shows how many are left. | Pattern | Ignores | | --- | --- | | youtube.com | the domain, all of its subdomains and every page | | *.wikipedia.org | subdomains only, not wikipedia.org itself | | discord.com/channels/* | only links pointing at a channel | | *docs* | any link containing “docs” | The settings page has a tester: paste a link and it tells you which pattern lets it through. The tester is an approximation, Discord has the final word. Plain domains you configured before keep working exactly as they did. Moderation → Report & appeal forms is a form builder. Add as many questions as you need — short text, long text, numbers, yes/no, a list of choices, a user or channel ID, a message link or a plain link — mark them required or optional and choose the channel the submissions are posted to. Each form has its own public link:
https://<dashboard>/submit/<server id>/report
https://<dashboard>/submit/<server id>/appeal
/mod link prints both links in Discord. Reports are open to members of the server. Appeals are open to members, to banned users and to anyone who was punished on the server before — a banned user can still open the appeal page and send the form. A submission arrives in two places at once:
  • In the configured Discord channel, as an embed with Take in review, Approve and Reject buttons. Approving or rejecting asks for a response that is sent to the author.
  • In Moderation → Submission queue, with the same actions.
Approving an appeal automatically revokes the case it was filed against: the ban is lifted, the time out is removed and a counterpart case is written to the log. /mod warn, /mod unwarn, /mod mute, /mod unmute, /mod kick, /mod ban, /mod unban, /mod note, /mod case, /mod cases, /mod purge, /mod slowmode, /mod link. Durations accept values like 30m, 2h, 7d; a bare number is read as minutes. Mutes use the native Discord time out and are capped at 28 days. Temporary bans are lifted by the bot once they expire. Moderation → Audit log records what happens on the server. The bot creates a webhook in the channel you choose and posts through it, so the entries stay visually separate from the bot's own messages. Twenty-one events are covered, grouped into four categories:
  • Members — joins, leaves, kicks, bans, unbans, role changes, nickname changes, timeouts.
  • Messages — deletion, edits shown as a diff, bulk deletion.
  • Voice — joining, leaving and switching channels.
  • Server — channels, roles and server settings.
Each category — Members, Messages, Voice and Server — can post to a channel of its own, so the voice noise does not bury the bans. Every event can also be switched off on its own, or sent to yet another channel. The most specific setting wins: the event's channel, then its category's channel, then the default audit log channel. Leave a field empty to fall back to the next one. You can also ignore whole channels or roles, skip everything bots do, and give the webhook its own name and avatar.
  • Manage Webhooks in every channel the log posts to — without it the bot cannot create the webhook and the log stays silent.
  • View Audit Log on the server, so bans, kicks and role changes can name the moderator behind them.
Discord sends only the new version of an edited message, and nothing at all for a deleted one, so the previous text comes from the bot's own cache (the last 500 messages per channel). Older messages, or messages from before the last restart, are logged with “content unavailable” instead.