Set up
1
Create a category
Jail needs its own ticket category to work with. If you don’t already have one set aside for it, create one:
/ticket create id:jail. This is a normal ticket category at this point - nothing jail-specific happens until the next step.2
Link it to jail
Run
/config jail. This opens a select menu listing every ticket category on your server - pick the one you want to use for jail. Only one category can be linked at a time; picking a different one moves the link, it doesn’t add a second jail category.3
Set the jail role
Run
/ticket edit category:jail and go to the Roles page. Set an Assign role there - once a category is linked to jail, this list is what actually gets applied to a member’s account when they’re jailed. Without a role set here, /jail will refuse to jail anyone, since there’d be nothing to apply.4
Optional: notify on jail
Back in
/config jail, toggle Notify user on jail on if you want jailed members DMed the reason they were given. If their DMs are closed, this is silently skipped - jailing still succeeds either way.Jailing a member
Run/jail member:<user> reason:<text> (reason is optional, but worth setting since it’s shown to staff in the channel and, if enabled, DMed to the member). This does four things in order:
- Removes the target’s current server roles.
- Applies the jail category’s assign role(s) (the ones you set in the setup steps above).
- Opens a ticket channel for them inside the jail category, just like a normal ticket open.
- Records what was removed, so it can be put back later.
/jail outright rather than letting it partially apply:
- The target already has a role equal to or higher than yours (server owners are exempt from this check).
- The target’s highest role sits above the bot’s own highest role - Discord’s permission system means the bot literally can’t touch it.
- The bot is missing the Manage Roles permission.
- The target is the server owner, or is another bot.
/unjail member:<user> reverses the process: it restores exactly the roles that were recorded as removed when the member was jailed, then leaves the jail ticket channel as-is (it doesn’t get closed automatically - close it separately if you want a transcript, or delete it if you don’t).
Escalating into or out of jail
/escalate category:jail, run from inside an already-open regular ticket, moves that ticket into the jail category and applies the exact same role swap /jail does - it’s the same underlying action, just triggered from a conversation that’s already happening instead of starting fresh. Running /escalate on a jailed ticket to move it to a normal category does the reverse: restores the member’s roles the same way /unjail would.
This is the intended path when a regular support conversation turns into something that needs jail - staff don’t need to close the current ticket and separately run /jail, they can escalate the same channel directly.