Skip to main content

Server Administration

The Administration module contains tools used to manage a Discord server and its members. Every command here is a slash command, a right-click context menu, or a dashboard setting.

See also

NaviKing wrote a very good guide about a few real use cases of using the administration module. You can find it here: Configuring the Administration Module

Server Activity Logging

/log toggle

Command Syntax

/log toggle type:{logger type|All} [channel:{channel}] [webhook_url:{webhook URL}]

Command Description

Toggles one logger type for the current channel (or a channel/webhook you specify). Available loggers are:

  • Members: User joined/left the server.
  • Users: Username change, nickname change, avatar change.
  • Roles: Role added to user, role removed from user, role created, role edited, role deleted.
  • Channels: Channel created, channel edited*, channel deleted.
  • Threads: Thread created, thread edited**, thread deleted.
  • Server: Server info updated*, emoji created, emoji deleted, emoji updated.
  • Messages: Message deleted, message edited, message pinned, message unpinned.
  • Voice: User connected to/disconnected from/switched voice channel.
  • Moderation: Auto-moderation actions, administrators/moderators using a sensitive command, user struck by a moderation action (warn/kick/ban/mute/...), user evaded from a moderation action***.
  • Warning: This one is a more verbose version the moderation log, focused on moderation actions. Activating this logger enables the case/scoring system.
  • ALL: Activates all available loggers in the current channel.

Note

Premium: The Members, Messages, Roles, Channels, Moderation and Warning loggers are publicly available. If you want to enable Users, Server and Voice loggers, you can unlock them as a Premium feature (see Premium Perks). The "Invites Tracking" feature of the Members logger is only available as a Premium feature.

*: Due to the high amount of info that can be edited, these commands are limited to monitoring the main parameters.

**: Thread editing will track thread archival and unarchival events.

***: Evasion is intended as leaving and re-joining a server while a permanent or time-based mute/ban action is taken on the user, in an attempt to clear the moderation roles. The roles will be reapplied and the administrators/moderators will be notified.

Permissions Needed

  • User: No Discord permission is required at the picker level (Layer 1) - access is gated entirely by the administration module's own authorization rules, which default to Manage Server until a server manager opens the module up to more roles/users. See How Permission Checks Work.

Examples

/log toggle type:Members
/log toggle type:Voice channel:#mod-log
/log toggle type:All

Note

Viewing which loggers are enabled where, and filtering out specific users/channels/roles from a logger (a Premium feature), are configured from your server's Logger page on the dashboard - see On the Dashboard below.

Greet Messages

The Greet Messages submodule lets server managers configure automatic and configurable messages that GiselleBot will send when a user joins/leaves your server, or obtains a specific role.

All use cases (minus the "goodbye" messages) can be configured to send greet messages to a channel or to the user through a Direct Message.

Note

All greet/goodbye configuration - toggling announcements, setting the channel and/or DM message content (with its %user%/%server%/etc. placeholders), send delays, auto-deletion, and the role-triggered variants of each - is configured from your server's Welcome and Goodbye page on the dashboard. See Welcome & Goodbye for the full field-by-field reference.

Automated Roles Assignment/Removal

Note

Automatically assigning one or more roles to every user who joins the server, and automatically removing roles after a set amount of time, are configured from your server's Settings page on the dashboard - see On the Dashboard below.

Note

Automatically assigning a role to users who join a specific voice channel, and listing the currently set voice channel roles, are configured from your server's Voice Roles page on the dashboard - see On the Dashboard below.

Self-Assignable Roles

IMPORTANT NOTE: The bot will be able to assign a role only if it has both "Manage Roles" permissions AND if the role it's trying to assign is lower than the highest role the bot has. Please arrange your roles accordingly.

Before we delve into the actual self-assignable roles, it's very important that you become familiar with role groups.

A role group is a group of Discord roles that will share the same set of assignment rules.

Each role group can be configured by editing the following settings:

  • Name: Custom name for the group.
  • Mode: Given a group of Discord roles, the assignment mode defines how roles will be assigned to users:
    • Single Mode: Users can only have 1 role within this group.
    • Multiple Mode: Users can have a minimum and a maximum number of roles within this group.
    • None: No specific rules are applied. Required and ignored roles (see below) still apply.
  • Required Roles: This setting requires users to have at least one of the specified roles to be able to self-assign one role within this group.
  • Ignored Roles: This setting requires users not to have any of the specified roles to be able to self-assign one role within this group. Or, in other words, users with at least one of the specified roles won't have access to this group.
  • Prerequisites Check: Toggles the periodic monitoring of role requirements for self-assigned roles.
    • The configuration of self-assignable roles allows for preventing users with certain roles from receiving roles from a certain group, or to only receive roles from a group if they already have (one or more) different, particular role(s).
    • By default, the monitoring feature is disabled and prerequisite checks only happen upon the assignment (or removal) of the role.
    • Upon activating the periodic monitoring feature, self-assignable roles within the selected group are re-checked automatically so that if a user fails the prerequisite checks (e.g. by either having an ignored role, or losing a required role, or having multiple roles from a group in "Single" mode), they will lose the previously acquired role.

Note

Prerequisites checks only happen every 15-30 minutes.

In Single or Multiple mode, you'll also have access to additional, optional settings:

Single Mode Settings

  • Require 1 role in group at all times (after initial assignment): Whether the role is assigned by a 3rd party or self-assigned, users won't be able to self-remove all of the roles in the group.
  • Remove existing role when assigning another role in group: Self-assigning a role within this group will remove any other group role from the user.

Multiple Mode Settings

  • Minimum number of roles: Users won't be able to self-remove a role if the removal would bring them under this threshold of group roles.
  • Maximum number of roles: Users won't be able to self-assign a role if the assignment would bring them over this threshold of group roles.

Warning

One role can be assigned to more than one group. While technically possible, this is generally not recommended unless you know what you are doing. In such cases, you must design your settings to avoid conflicts between the different group settings. Conflicting settings will cause unpredictable behaviors.

Once a role group is configured, two ways of self-assigning a group will be available to users:

  • Role Menus: Interactive menus using Discord buttons to assign and remove roles. Role menus can be created from scratch using bot commands (see below) or "attached" to an existing user message.
  • Manual Commands: /role get and /role drop will always be available to anyone. Specific permissions will need to be handled by using the "Required Roles" and "Ignored Roles" settings.

Here's the full list of available commands for this sub-module:

Role Group Setup

Note

Every role group setting described above - mode, required/ignored roles, prerequisite checks - plus adding and removing roles from a group, is configured from your server's Self-Assignable Roles page on the dashboard. See On the Dashboard below.

/selfroles list

Command Syntax

/selfroles list

Command Description

Prints a list of all role groups and the relative self-assignable groups.

Permissions Needed

  • User: None - this command is always available to everyone, the same way /rules and /emoji submit are (see How Permission Checks Work); the administration module must still not be disabled entirely.

Examples

/selfroles list

Note

Automatically deleting the "public" self-assignable roles-related messages upon using the /role get and /role drop commands is configured from your server's Self-Assignable Roles page on the dashboard - see On the Dashboard below.

/role get

Command Syntax

/role get role:{role}

Command Description

Assigns one role among those that are flagged as self-assignable, provided the requirements are met.

Permissions Needed

  • User: None - this command is always available to everyone (see How Permission Checks Work). Whether a specific role can actually be granted still depends on that role group's Required/Ignored Roles settings.
  • Bot: Manage Roles

Examples

/role get role:Group 1

/role drop

Command Syntax

/role drop role:{role}

Command Description

Removes one role among those that are flagged as self-assignable, provided the requirements are met.

Permissions Needed

Examples

/role drop role:Group 1

/rolemenu create / /rolemenu remove / /rolemenu update

Note

Creating, removing and updating role menus is done with /rolemenu create, /rolemenu remove and /rolemenu update, documented under Utility Commands. The role-group data they operate on still lives on this page's Self-Assignable Roles dashboard page.

Legacy (Reaction-Based) Role Menus

Note

It has not been possible to create role menus with emoji reactions since May 1st, 2022 - all role menus are now buttons-based, created with /rolemenu create. If you still have a legacy reaction-based role menu, recreate it with /rolemenu create (you can customize its content afterward with /send edit).

Emoji Submissions

Through the "Emoji Submissions" sub-module, you can let your members submit new emojis to be used your server.

You can configure one or more roles that will be allowed to submit new emojis. If a user tries to submit an emoji while having more than one role up, only the highest role will be considered in order to avoid unpredictable conflicts.

For each role, you will be able to configure:

  • Whether the role will be allowed to submit emojis without further verification.
    • By setting a verification channel, authorized users (more on that below) will be able to accept or reject an emoji submission before it's actually uploaded.
    • By disabling the verification channel, the emoji will be immediately uploaded without further verification.
    • By default, the additional verification step is disabled.
  • Which roles will be able to accept or reject an emoji submission, provided you enabled the verification channel.
    • These roles will also be mentioned (optional, see below) within the verification channel when a submission is received.
    • Users that are enabled to use the administration module using the Permissions System will always be authorized to accept or reject any emoji submission.
    • By default, no additional roles are enabled to accept or reject emoji submissions.
  • How many emojis (submitted through this system) the role will be allowed to have up at any given time.
    • If the verification step is active, users are virtually allowed to submit any number of emojis. By setting a maximum number of emojis through the dedicated setting, you are locking the maximum number of accepted emojis.
    • By default, there is no limit to how many active emojis a user can have.
  • Whether the periodic monitoring of prerequisites is active for this role.
    • If this option is active, the emojis will be deleted if the user leaves the server and/or if the user loses the role that they "used" to submit the emoji. For example, you can have Nitro Boosters submit one or more emojis, and then have their emoji removed if they stop boosting the server (hence losing the Nitro Boost role).
    • Even if this option is disabled, emojis that are manually deleted will also be removed from this system.
    • By default, this option is disabled.

Note

Prerequisites checks only happen every 15-30 minutes.

  • Whether the authorized role(s) will be mentioned when a new emoji submission is received.
    • By default, this option is enabled.

See also

Every setting above is configured from the dashboard's Emoji Submissions page - see Emoji Submissions for the full field-by-field reference.

Here's the full list of available commands for this sub-module:

/emoji list

Command Syntax

/emoji list [user:{user}]

Command Description

Lists all active/accepted submitted emojis that users submitted through this system.

If this command is used with a user, it will filter the output on emojis submitted by the specified user.

Permissions Needed

  • User: No Discord permission is required at the picker level - gated by the administration module's own authorization rules (Manage Server by default, or an authorized role).

Examples

/emoji list
/emoji list user:@cycloptux

/emoji pending

Command Syntax

/emoji pending [user:{user}]

Command Description

Lists all pending submitted emojis that users submitted through this system, with a quick link to jump to the verification channel message.

If this command is used with a user, it will filter the output on emojis submitted by the specified user.

Permissions Needed

  • User: No Discord permission is required at the picker level - gated by the administration module's own authorization rules (Manage Server by default, or an authorized role).

Examples

/emoji pending
/emoji pending user:@cycloptux

/emoji submit

Command Syntax

/emoji submit name:{emoji name} [image:{attachment}] [source:{existing emoji or image URL}]

Command Description

Lets users submit a new emoji, provided they have at least one of the "emoji submitter" roles.

Note

This command is always available to everyone at the module level (it bypasses the administration module's role/user authorization the same way /selfroles list and /rules do) - actual access is gated instead by holding one of the roles enabled as an "emoji submitter" on the Emoji Submissions dashboard page. By default, no role is set as an emoji submitter role, and this command has no effect until one is configured.

Users won't need "Manage Expressions" (previously called "Manage Emojis and Stickers") permissions to run this command, but GiselleBot will still check for its own "Manage Expressions" permissions to be sure it can upload the emoji upon a successful verification, if any.

The emoji image can be provided by using an existing emoji (this will only work if the bot has access to the emoji from another server), or a valid image URL, or an image provided in forms of an attachment to the submit message. Emoji images must be under 256 KB in size and one of these formats: .jpg, .jpeg, .png, .gif.

Emoji names must be at least 2 characters long (and no more than 32 characters long) and can only contain alphanumeric characters and underscores. You must not include the colon (:) characters in the emoji name. Users are also not allowed to submit an emoji that has the same name of an existing server emoji.

To limit the amount of duplicate emoji submissions, GiselleBot will attempt to check, wherever possible, the ID of the submitted emoji with the IDs of already active server emojis.

In order to avoid unpredictable conflicts, if a user tries to submit an emoji while having more than one "emoji submitter" role up, only the highest role will be considered for the optional limits/configurations.

Permissions Needed

  • User: None at the Discord-permission level - see the Note above.
  • Bot: Manage Expressions (previously called Manage Emojis and Stickers)

Examples

/emoji submit name:amegablobsweats source:https://cdn.discordapp.com/emojis/614486002291048459.gif?v=1

Through the "Image Gallery Channels" sub-module, you can set one or more channels to only "accept" image attachments, hence becoming a virtual gallery.

You can configure one or more channels as image galleries. When a channel is configured as a gallery, only those messages containing image attachments and no text at all will be kept, while everything else will be deleted. This check also happens on edited messages.

Users with Manage Messages, Manage Channels or Administrator permissions (on their role and/or through channel overrides) will be able to post messages that contain text.

Note

Toggling Image Gallery mode on a channel is configured from your server's Settings page on the dashboard - see On the Dashboard below.

On the Dashboard

Administration-related settings are spread across a few dashboard pages, all reachable from the module's landing page:

  • Administration page (the module's main settings page - the "Settings page" referred to elsewhere in these docs): six independent, individually-saved cards -
    • Roles on Join - one or more roles granted to every member as soon as they join.
    • Timed Roles - role/expiry pairs; a role granted this way is automatically removed once its timer runs out. Existing grants keep the expiry they were given when the rule changes.
    • Image Gallery Channels - the channel picker for the Image Gallery Channels feature described above.
    • Emoji Sharing - a list of source server IDs to borrow emoji from with /emojify, plus a toggle to exclude this server's own emoji from being borrowed by others.
    • Currency Emoji - the emoji shown next to currency amounts (leave blank for the default).
    • Giveaway Reaction - the emoji members react with to enter a giveaway (leave blank for the default).
  • Auto-Publish Channels and Auto-React Channels sub-pages (linked from the Administration page): per-channel configuration - publish/react to every message, or restrict to messages from members, bots, and/or webhooks, optionally narrowed further to specific roles.
  • Logger page: per-category (Members, Users, Roles, Channels, Threads, Server, Messages, Voice, Moderation, Warning) target channel or webhook, plus, per category, an ignore list by user ID, role, or channel.
  • Self-Assignable Roles page: the role-group editor described above (name, mode, required/ignored roles, prerequisite-check toggle, and the single/multiple-mode settings), plus a page-wide "Automatically delete self-assign confirmation messages" toggle.
  • Voice Roles page: channel-to-role mappings for the voice-channel auto-role feature.

See also

Full migration mapping for the commands on this page: Migration Guide.