Admin Commands¶
Server administration commands for permissions, roles, and bot management.
Permissions — /permissions¶
Permission overrides for command category access.
/permissions grant <command_group> [user] [role] [reason]¶
Grant access to a command category.
| Parameter | Type | Required | Description |
|---|---|---|---|
command_group |
String | Yes | Command category key (alphanumeric, dots, hyphens, max 50) |
user |
Member | No | Target user (exactly one of user/role required) |
role |
Role | No | Target role (exactly one of user/role required) |
reason |
String | No | Audit log reason |
/permissions revoke <command_group> [user] [role] [reason]¶
Revoke access from a user or role. Same parameters as grant.
/permissions list [command_group] [user] [role]¶
List all permission overrides. All parameters are optional filters.
/permissions check <command_group> [user]¶
Check whether a user has access to a specific command category.
| Parameter | Type | Required | Description |
|---|---|---|---|
command_group |
String | Yes | Category to check |
user |
Member | No | User to check (defaults to yourself) |
Role Commands — /role¶
All role management — assigning, creating, editing, inspecting, and bulk operations — lives under one /role group.
/role add <member> <role> [reason]¶
Assign a role to a member. Requires the roles command category. Enforces hierarchy: the role must be below both your top role and the bot's top role.
/role remove <member> <role> [reason]¶
Remove a role from a member. Same permission and hierarchy checks as add.
/role create <name> [color] [hoist] [mentionable]¶
Create a new role. Requires the admin command category.
| Parameter | Type | Required | Description |
|---|---|---|---|
name |
String | Yes | Role name |
color |
String | No | Hex colour code |
hoist |
Boolean | No | Display separately in member list |
mentionable |
Boolean | No | Allow @mentioning |
/role delete <role>¶
Delete a role. Requires the admin command category. Prevents deletion of bot-managed and booster roles. Hierarchy checks enforced.
/role edit <role> [name] [color] [hoist] [mentionable]¶
Edit role properties. Requires the admin command category. Supports partial updates — only specified fields are changed.
/role info <role> [options]¶
Display role metadata and, for moderators, filtered role-member dumps.
| Parameter | Type | Required | Description |
|---|---|---|---|
role |
Role | Yes | Role to inspect |
include_member_dump |
Boolean | No | Include roster preview in response |
include_bots |
Boolean | No | Include bots in dump/export |
granted_on_after |
String | No | Lower date bound (YYYY-MM-DD or YYYY-MM-DD HH:MM) |
granted_on_before |
String | No | Upper date bound (YYYY-MM-DD or YYYY-MM-DD HH:MM) |
held_for_min |
String | No | Minimum held time (30d, 12h, 90m) |
held_for_max |
String | No | Maximum held time (365d, 48h) |
sort_preset |
Choice | No | Explicit sort mode (held_longest, granted_newest, etc.) |
sort_by |
Choice | No | Custom sort field |
sort_order |
Choice | No | Ascending/descending for custom sort |
custom_filter |
String | No | User-defined query clauses |
export_csv |
Boolean | No | Attach CSV of filtered result set |
limit |
Integer | No | Max rows shown in embed preview (1-100) |
Permission
/role info <role> with no other options is available to everyone. Setting any other parameter — including include_bots, sort_preset, sort_by, sort_order, and limit, not just the roster/filter/export options — triggers the advanced request path and requires moderator permissions.
Custom Filter Query Format¶
Use semicolon-separated clauses (;) in field operator value format.
Supported operators: =, !=, >, >=, <, <=, ~.
Supported fields: display_name, username, user_id, bot, has_nickname, granted_on, held_for.
Aliases: name, id, userid, joined, joined_on, held.
sort_preset accepts name_az, name_za, granted_oldest, granted_newest, held_longest, held_shortest, user_id_asc, user_id_desc, and overrides sort_by/sort_order when set.
Discord doesn't expose exact per-member role-grant timestamps — granted_on/held_for use the member's guild join time as a best-available proxy.
/role massadd <role> <of> [include_bots] [reason]¶
Give a role to every member of another role.
| Parameter | Type | Required | Description |
|---|---|---|---|
role |
Role | Yes | Role to give |
of |
Role | Yes | Members of this role receive it (@everyone allowed) |
include_bots |
Boolean | No | Include bot accounts |
reason |
String | No | Audit reason |
/role massremove <role> [of] [include_bots] [reason]¶
Remove a role from members.
| Parameter | Type | Required | Description |
|---|---|---|---|
role |
Role | Yes | Role to remove |
of |
Role | No | Limit to members of this role. Defaults to the role itself — with no of, this strips the role from every current holder. |
include_bots |
Boolean | No | Include bot accounts |
reason |
String | No | Audit reason |
Mass Op Confirm Flow¶
massadd and massremove both require the roles command category and share one confirm-and-run flow:
- The command validates the target role (rejects
@everyone, managed roles, and roles at or above your or the bot's top role) and computes a preview of who actually needs the change. - If nothing needs to change, it replies with a short "nothing to do" message and stops.
- Otherwise it posts a Confirm / Cancel embed (invoker-only, 60-second timeout). No changes happen until you press Confirm — a timeout or Cancel both leave every member untouched.
- On confirm, the bot processes members in chunks of 25, editing a progress message between chunks and offering a live Cancel button that stops the run at the next chunk boundary.
- One
role.massadd/role.massremoveaudit entry is written for the whole run, and a summary reports how many members succeeded, were skipped (e.g. left the server), or failed.
Only one mass role operation can run per guild at a time — a second attempt is rejected until the first finishes.
Channels and structure¶
| Command | Description |
|---|---|
/server createchannel |
Create a new channel |
/server deletechannel |
Delete a channel |
/server createcategory <name> |
Create a new category |
Members and emergencies¶
| Command | Description |
|---|---|
/server setnick <member> [nickname] |
Set a member's nickname |
/server lockdown |
Lock all text channels (deny @everyone Send Messages) |
/server unlockdown |
Restore channel permissions after a lockdown |
/server command |
Enable, disable, or restrict a specific command |
Guided Setup — /setup¶
| Command | Description |
|---|---|
/setup start |
Setup Assistant: builds the Server out one Proposal at a time (roles, channels, mod log and welcome), then the Server type and features. With AI available you can Tell the assistant what the Server is for and it tailors the layout. Nothing changes until you press Yes |
/setup review |
Checks the Server's permissions and settings and lists Major problems (dangerous @everyone permissions, risky overwrites and role menus, the bot's role position, verification, content filter, mod log). Where the bot can fix a problem safely there's a Fix button (confirm first, Undo afterwards); otherwise it says how to fix it. Re-scan confirms your fixes. Channels the bot can't view aren't checked; the Review counts them so it never calls a Server clean while skipping some. Premium Servers also get Nitpicks (smaller hygiene checks). One Review plus one re-scan per Server every 24 hours; needs Manage Server or the bot's admin permission |
/setup rolemenu |
Posts a role-button menu in a channel from roles you already have |
See Setup Assistant for the whole flow and what the AI sees.
Where Configuration Lives¶
Feature configuration is done on the web, not in slash commands:
| System | Where | Description |
|---|---|---|
| Logging | Dashboard → Logging (/dashboard) |
Log channels + event toggles |
| Moderation | Dashboard → Moderation / Automod | Policy; day-to-day actions via /mod and /cases |
| Voice | Dashboard → Voice (/dashboard) |
Voice system + AFK + Music Channel |
| Economy | Dashboard → Economy (/dashboard) |
Currency, shop, and reward settings |
See the respective command pages for full details: