Discord permissions

Every permission Zippy Wall requests is listed here with its exact purpose. We don't ask for Administrator — every action runs with the minimum permission required.

PermissionWhy we need it
View ChannelsRead chat at all — required for any moderation.
Send MessagesPost mod-log embeds, censor replies, slash-command responses.
Embed LinksRequired so mod-log and audit-log embeds render properly.
Read Message Historydiscord.js fetches message context when handling events.
Manage MessagesDELETE action — remove offending messages.
Manage ChannelsAuto-slowmode (sets per-channel rate limits during raids).
Manage ServerAnti-raid FREEZE — temporarily raises server verification level.
Manage RolesAnti-nuke STRIP_ROLES punishment — removes roles from compromised accounts.
Manage WebhooksCENSOR action — re-posts redacted messages as the original user.
Kick MembersKICK action + per-joiner raid kick during active raid window.
Ban MembersBAN action + unban via /unban.
Moderate MembersTIMEOUT / Mute action.
View Audit LogAnti-nuke listens to audit-log events to detect dangerous-action bursts.

Re-invite required when we add permissions

When Zippy Wall ships a new feature that needs additional Discord permissions, your existing install won't automatically gain them. Discord persists per-server permissions from the original authorization. To grant the new perms, re-invite the bot from your dashboard's Add to your Discord link — Discord shows a "needs additional permissions" consent screen for just the delta.

You'll know this is needed if a feature returns "Missing Permissions" in the mod-log. See Troubleshooting.

Role hierarchy

Discord requires our bot's highest role to be above the target user's highest role for kick/ban/timeout/role-strip to succeed. Drag Zippy Wall's role above your moderator and member roles in Server Settings → Roles.

Note: the server owner cannot be moderated by any bot — that's a Discord platform rule, not a Zippy Wall limit.