Documentation
Adding Graffiti
Invite the bot, the permissions it asks for and why, and which Graffiti instance answers in your server.
Invite the bot
Sign in to the dashboard. Servers Graffiti isn't in yet show an Add Graffiti button, which opens Discord's invite screen with that server already chosen. Approve it, come back, and the server is ready to configure.
The permissions it asks for, and why
Graffiti asks only for what its modules actually use, and never for Administrator. If you take one away, the feature that needs it tells you so, in the mod log or in reply to the command, instead of failing silently.
| Permission | Used for |
|---|---|
| View Channel | Seeing the channels it is meant to work in. |
| Send Messages | Mod-log entries, ticket replies, panels and welcomes. |
| Embed Links | Every message Graffiti sends is an embed. |
| Attach Files | Hall of Fame image quotes and flagged-image evidence. |
| Read Message History | Hall of Fame backfill, ticket transcripts, and re-scanning edited messages. |
| Add Reactions | Reacting to correct counts in the counting channel. |
| Manage Messages | Removing flagged links, images and spam. |
| Manage Channels | Creating ticket channels and Join-to-Create voice rooms. |
| Manage Roles | Auto-roles on join, and the permission overwrites on a ticket channel. |
| Kick Members | The kick command and automatic punishment. |
| Ban Members | The ban and unban commands, and automatic punishment. |
| Moderate Members | Timeouts, from the command and from automatic punishment. |
| Move Members | Moving someone into the Join-to-Create room made for them. |
| Connect | Reaching the voice channels Join-to-Create manages. |
| View Audit Log | Forwarding bans, kicks and timeouts made in Discord to the mod log. |
Graffiti's role must sit above the roles it manages and the members it moderates. Discord won't let a bot act on anyone whose highest role is at or above its own.
Which Graffiti answers in your server
Every server is served by exactly one bot. Normally that is Graffiti itself. A Premium server can instead be served by its own custom bot: once that bot is installed on the server and has arrived, the server is assigned to it, and Graffiti stays quiet there. If the custom bot goes offline or Premium lapses, Graffiti takes over again automatically, with the same settings.
If you use a command and get "Another Graffiti bot is set up for this server", you're talking to the bot that isn't assigned. Use the other one's commands.
Check it worked
Type /ping in a channel Graffiti can see. Then open the server on the dashboard; its overview shows which bot is serving it.