Permissions and role setup

How Iris uses Discord permissions, and where role hierarchy trips people up.

Two permissions to keep straight#

Almost every "it is not working" report comes down to one of two things: a permission Iris was never given, or a role it is not allowed to touch. They are different problems with different fixes.

  • What Iris may do is the permission set on the Iris role, and any channel override on top of it.
  • Who Iris may do it to is role hierarchy. Iris cannot act on a member whose highest role sits above its own, whatever permissions it holds.

The baseline#

Every module assumes these three. Without them a module can be on, saved and configured, and still appear to do nothing.

PermissionWhy Iris needs it
View ChannelsReads the channels you point a module at.
Send MessagesPosts welcomes, logs, notifications and command replies.
Embed LinksEvery Iris reply is an embed. Without this they are silently dropped.

What each module adds#

Grant these only for the modules you actually use. Each module page repeats its own list in its Permissions section.

PermissionNeeded by
Manage RolesAuto roles, self roles, verification, and /mute, which applies a role rather than a timeout
Manage MessagesAutoMod, anti-link, auto purge, /purge, /lock
Moderate MembersThe timeout an AutoMod filter applies when its action is mute
Kick Members/kick, and raider removal in anti-raid
Ban Members/ban, /softban, /tempban, /unban
Manage ChannelsTickets, VoiceMaster, /lockdown, /slowmode set
Move MembersVoiceMaster and /vckick
Manage Nicknames/nick
Read Message HistoryStarboard, logging, /purge
Add ReactionsAuto reactions, starboard, polls
Attach FilesTicket transcripts, and welcome image cards
View Audit LogNaming the moderator behind a ban, kick or role change in logging
Manage Emojis and Stickers/addemoji, and the stickers used by events

Channel overrides#

A server-wide permission can still be revoked in a single channel, and the override wins. This is the reason a filter works everywhere except one place, or a log channel stays empty while the rest of the module behaves.

  1. Open the channel, then Edit Channel > Permissions.
  2. Add the Iris role if it is not listed.
  3. Set View Channel, Send Messages and Embed Links to allow.
  4. Add Manage Messages or Read Message History if a filter or the starboard runs there.

Who can configure Iris#

Configuration is gated on the person running it, not on Iris. Manage Server is what puts a server in your dashboard list and what most setup commands check. Individual moderation commands check the matching Discord permission instead, so a moderator with only Ban Members can ban and nothing else.

Common questions#

Iris says it cannot assign a role.

The role sits above Iris in the list, or it is a managed role belonging to another bot or a Discord integration. Managed roles cannot be assigned by anyone.

Moderation works on members but not on staff.

That is hierarchy. Drag Iris above the staff roles you want it to be able to act on.

Can I remove Administrator after inviting?

Yes. Edit the Iris role and grant the baseline three plus the rows above for the modules you use. Nothing else in Iris depends on Administrator.

Commands do not show for my moderators.

Check the command is not turned off in command management, and that the channel is not on the ignore list.