Configuration
Main configuration
Features
- Enable or disable modmail for your Discord server.
- Configure categories, channels, and roles to organize your tickets.
- Enable AI summaries to receive an automatically generated summary after a ticket is closed.
- Configure additional options to get full control over your modmail.
Setup
- Create a category for new tickets and a private text channel for ticket logs on your Discord server.
- Create the relevant roles on your Discord server that should later get access to tickets.
- Visit the Main configuration section in your dashboard.
- Configure the available options.
Commands
Understand the documentation
In these docs,
name:<Type> is an option of a slash-command with name name and the type Type. Options that not required, are described as [name:<Type>]. If the action of a command is vastly different between required and not-required options, we might list them separately.Examples
/moderate ban user:<Member>: This command (/moderate ban) has an required option with the name "user" that only accepts one member as a value./moderate ban victim:<Member> reason:<Text>: This command (/moderate ban) has an required option with the name "victim" that only accepts one member as a value and another required option with the name "reason" that accepts any text as an value./moderate ban victim:<Member> reason:<Text> [proof:<Attachment>]: This command (/moderate ban) has an required option with the name "victim" that only accepts one member as a value, another required option with the name "reason" that accepts any text as an value and a not-required option with the name "proof" which allows one attachment as its value.
| Command | Description |
|---|---|
/ticket admin-open | Only available if “Allow staff to open tickets on behalf of a user?” is enabled. Allows team members to create new tickets with specific users. |
/ticket close | Allows team members (and users, if configured) to close the ticket in the current channel. |
/ticket form | Sends a specific form in the ticket. |
/ticket open | Only available if “Allow users to open tickets via command?” is enabled. Opens a new ticket (with a specific topic) on your Discord server. |
Configuration
| Field | Description |
|---|---|
| Enable modmail feature? | Enables or disables the modmail system for your Discord server. |
| Category for new tickets | New tickets are created in this category by default.NoteYou can set different categories for different ticket topics on the Ticket topics page in your dashboard. More info here. |
| Default ticket access permissions | Users with these permissions or roles will be able to see tickets and will be pinged when a new ticket is created. Choose between syncing with the category permissions, selecting custom roles, or restricting access to admins only. |
| Roles with default access permissions | These roles get access to tickets by default and are mentioned when a new ticket is created.RequirementOnly available if “Selected roles” is selected for “Default ticket access permissions”. NoteYou can set different roles for different ticket topics on the Ticket topics page in your dashboard. More info here. |
| Log channel | Your bot will automatically send all support-relevant messages to this channel by default.NoteYou can set different log channels for different ticket topics on the Ticket topics page in your dashboard. More info here. |
| Ticket welcome message | This message is sent by default when a user opens a new ticket.NoteYou can set different messages for different ticket topics on the Ticket topics page in your dashboard. More info here. |
| Ticket close message | This message is sent by default when a ticket is closed. |
| New thread ping | Choose who gets pinged when a new ticket is created. Options: “None”, “@here”, “@everyone”, or specific roles. |
| Roles to ping | These roles are mentioned when a new ticket is created.RequirementOnly available if “Specific roles” is selected for “New thread ping”. |
| Allow staff to edit each other’s messages? | If enabled, team members can edit or delete messages sent by other team members in ticket channels. |
| Enable maintenance mode? | If enabled, no ticket actions can be performed (such as creating/editing/closing tickets).NoteMessages can still be sent in already opened tickets. |
| Maintenance mode message | This message is sent when a user tries to open a ticket during maintenance mode.RequirementOnly available if “Enable maintenance mode?” is enabled. |
| Allow non-member messages? | If enabled, users who are not members of your server can still open tickets by messaging the bot. |
| Allow users to open tickets via command? | If enabled, your users can create tickets not only via buttons and dropdown menus, but also with the /ticket open command. |
| Allow staff to open tickets on behalf of a user? | If enabled, team members can create a ticket with a user using the /ticket admin-open command.NoteRestrictions like multiple open tickets or opening hours are bypassed. |
| Staff-opened welcome message | This message is sent when a team member opens a ticket on behalf of a user. Use a different welcome message to inform the user that a team member initiated the conversation.RequirementOnly available if "Allow staff to open tickets on behalf of a user?" is enabled. |
| Allow only one ticket per user (global) | If enabled, a user can have at most one ticket open at a time. |
| AI summary of ticket transcripts | If enabled, after a ticket is closed your bot will automatically send an AI-generated summary of the ticket to the configured log channel.NoteThis uses your server’s AI credits and shares certain data with “modmail.net” (a SCNX product). You can find our privacy policy here. |
| Allow team members to rename tickets? | If enabled, team members can rename tickets with the /ticket rename or /modmail rename command (depending on your prefix setting).NoteAfter a manual rename, the bot can no longer automatically change the ticket name when transferring it (if enabled in ticket topics). |
| Show rename button under ticket message? | If enabled, a button is added under the ticket message so team members can rename the ticket faster.RequirementOnly available if “Allow team members to rename tickets?” is enabled. |
| Rename button text | This text is shown on the button under the ticket message.RequirementOnly available if “Show rename button under ticket message?” is enabled. |
| Ticket rename message | This message is sent into the ticket channel when a ticket is renamed.RequirementOnly available if “Allow team members to rename tickets?” is enabled. |
| Add /modmail prefix? | If enabled, Modmail commands use the /modmail prefix (e.g. /modmail close) instead of the /ticket prefix for easier distinction. |
Ticket opening messages
Features
- Let your users create new tickets easily via buttons or dropdown menus.
- Send multiple ticket opening messages with different ticket topics into different channels to spread ticket creation across multiple channels.
- Choose between buttons or dropdown menus for each message to provide the best user experience.
Setup
- Visit the Ticket opening messages section in your dashboard.
- Click the blue “Add ticket opening message” button to create a new ticket opening message.
- Configure the available options.
Configuration
| Field | Description |
|---|---|
| Channel to send the message to | Your configured message is sent to this channel. |
| Message | Your bot sends this message into the selected channel. |
| Show only specific ticket topics? | If enabled, your bot will only use selected ticket topics. If you want to use buttons, you can select at most one topic here. |
| Use buttons? | If enabled, your bot will use buttons instead of the default dropdown menu. |
Ticket closing
Features
- Add a close button to the ticket message so tickets can be closed with one click.
- Allow tickets to be closed by the ticket creator (instead of only by team members).
- Enable close requests to prevent team members from closing tickets immediately.
- Require or allow close reasons to document why a ticket was closed. Define custom close reasons for consistency.
- Enable silent ticket closing to close tickets without notifying the user.
- Choose between deleting the ticket channel or archiving it to a separate category after closing.
- Allow users to reopen archived tickets or let team members delete them manually.
- Attach the ticket transcript to the log channel message for easy reference.
Setup
- Visit the Ticket closing section in your dashboard.
- Configure the available options.
Commands
Understand the documentation
In these docs,
name:<Type> is an option of a slash-command with name name and the type Type. Options that not required, are described as [name:<Type>]. If the action of a command is vastly different between required and not-required options, we might list them separately.Examples
/moderate ban user:<Member>: This command (/moderate ban) has an required option with the name "user" that only accepts one member as a value./moderate ban victim:<Member> reason:<Text>: This command (/moderate ban) has an required option with the name "victim" that only accepts one member as a value and another required option with the name "reason" that accepts any text as an value./moderate ban victim:<Member> reason:<Text> [proof:<Attachment>]: This command (/moderate ban) has an required option with the name "victim" that only accepts one member as a value, another required option with the name "reason" that accepts any text as an value and a not-required option with the name "proof" which allows one attachment as its value.
| Command | Description |
|---|---|
/ticket close [close-reason:<Text>] [silent:<Boolean>] [force:<Boolean>] | Closes the current ticket. Optionally specify a close reason (if enabled), close silently without notifying the user (if enabled), or force-close despite an open close request (if enabled). |
/ticket close-schedule | Allows team members to schedule closing tickets instead of closing them immediately.RequirementOnly available if “Can team members manually schedule when tickets should be closed?” is enabled. |
Configuration
| Field | Description |
|---|---|
| Show ticket close button in the ticket message? | If enabled, a button is added to the ticket message that team members (or users, if enabled) can use to close the ticket. Otherwise they must use the /ticket close command. |
| Close button text | Only available if “Show ticket close button in the ticket message?” is enabled. This text is shown on the button under the ticket message. |
| Allow users to close their own tickets? | If enabled, users can close their own tickets in addition to team members. |
| Require team member confirmation before closing the ticket? | Only available if “Allow users to close their own tickets?” is enabled. If enabled, the user must create a close request before the ticket can be closed. |
| User confirmation message for close request | Only available if “Allow users to close their own tickets?” and “Require team member confirmation before closing the ticket?” are enabled. This message is sent into the ticket channel when a user creates a close request. |
| Send a DM confirmation when a ticket is closed? | If enabled, your bot sends a DM to the user after the ticket is closed. |
| Ticket close confirmation DM message | Only available if “Send a DM confirmation when a ticket is closed?” is enabled. Customize the message the bot sends to the user after closing the ticket. |
| Attach transcript to the ticket close DM? | Only available if “Send a DM confirmation when a ticket is closed?” is enabled. If enabled, the bot attaches a transcript of the ticket to the DM. |
| Require user confirmation before the ticket is closed? | If enabled, instead of immediately closing a ticket, the team member sends a close request to the user, which the user must confirm to close the ticket permanently. |
| Message for ticket close request by a team member | Only available if “Require user confirmation before the ticket is closed?” is enabled. This message is sent when a team member creates a close request in the ticket. |
| Timeout for the close request | Only available if “Require user confirmation before the ticket is closed?” is enabled. Within this period, the user must respond to the close request before the ticket is closed automatically. Learn how to set durations in SCNX here. |
| Allow team members to close tickets without confirmation? | Only available if “Require user confirmation before the ticket is closed?” is enabled. If enabled, team members can close a ticket despite an open close request using the /ticket close [force:<Boolean>] command. |
| Can team members manually schedule when tickets should be closed? | If enabled, team members can schedule closing tickets with the /ticket close-schedule command. |
| Scheduled close message | This message is sent into the ticket channel as soon as a team member runs the command.RequirementOnly available if “Can team members manually schedule when tickets should be closed?” is enabled. |
| Attach log/transcript to the log channel message? | If enabled, the ticket transcript is attached to the message posted in the log channel when a ticket is closed. |
| Allow close reasons? | If enabled, team members can specify a reason when closing a ticket using the /ticket close command. Close reasons are included in the log channel message. |
| Force close reason? | If enabled, team members are required to provide a close reason when closing a ticket — the reason field becomes mandatory.RequirementOnly available if “Allow close reasons?” is enabled. |
| Custom close reasons? | If enabled, you can define a list of predefined close reasons that team members can choose from via autocomplete. Team members can still type custom reasons if needed.RequirementOnly available if “Allow close reasons?” is enabled. |
| Default close reasons | A list of predefined close reasons that team members can choose from when closing a ticket. These appear as autocomplete suggestions in the close command.RequirementOnly available if “Custom close reasons?” is enabled. |
| Allow silent ticket close? | If enabled, team members can close a ticket silently using the /ticket close command — the user will not receive a DM or close notification. |
| Delete ticket after close? | If enabled, the ticket channel is immediately deleted after the ticket is closed. If disabled, the channel is kept and can optionally be archived. |
| Archive category | Closed ticket channels are moved to this category. Use this to keep closed tickets accessible for review.RequirementOnly available if “Delete ticket after close?” is disabled. |
| Archived message | This message is sent into the ticket channel after it is archived.RequirementOnly available if “Delete ticket after close?” is disabled. |
| Allow users to reopen closed tickets? | If enabled, users can reopen their closed (archived) tickets by clicking a button on the archived ticket message.RequirementOnly available if “Delete ticket after close?” is disabled. |
| Allow team members to delete closed tickets? | If enabled, team members can manually delete archived ticket channels by clicking a button on the archived ticket message.RequirementOnly available if “Delete ticket after close?” is disabled. |
Additional ticket members
Features
- Add additional (team) members to a ticket (or remove them) to resolve issues more easily.
- Configure whether the ticket owner can add new members themselves.
- Notify the user with a message when users are added or removed.
- Add a button to the ticket message so members can be added with one click.
Setup
- Visit the Additional ticket members section in your dashboard.
- Configure the available options.
Commands
Understand the documentation
In these docs,
name:<Type> is an option of a slash-command with name name and the type Type. Options that not required, are described as [name:<Type>]. If the action of a command is vastly different between required and not-required options, we might list them separately.Examples
/moderate ban user:<Member>: This command (/moderate ban) has an required option with the name "user" that only accepts one member as a value./moderate ban victim:<Member> reason:<Text>: This command (/moderate ban) has an required option with the name "victim" that only accepts one member as a value and another required option with the name "reason" that accepts any text as an value./moderate ban victim:<Member> reason:<Text> [proof:<Attachment>]: This command (/moderate ban) has an required option with the name "victim" that only accepts one member as a value, another required option with the name "reason" that accepts any text as an value and a not-required option with the name "proof" which allows one attachment as its value.
| Command | Description |
|---|---|
/ticket users add | Adds a new user to the ticket. |
/ticket users remove existing-additional-ticket-user:<User> | Removes a previously added user from the ticket. |
Configuration
| Field | Description |
|---|---|
| Allow additional ticket members? | Enables or disables the feature for your modmail. |
| Show “add additional users” button in the ticket message | If enabled, a button is added to the ticket message to add ticket members. Otherwise, users must use the /ticket users add command. |
| Add-user button text | Only available if “Show “add additional users” button in the ticket message” is enabled. Customize the text displayed on the button. |
| Can the ticket owner add additional users? | If enabled, users can add additional members to their tickets (in addition to team members). |
| Message for selecting additional users | This message is shown to the user when they click the add-user button or run the command. |
| Message when a user is removed | This message is sent when a member is removed from the ticket. |
| Message when a user is added | This message is sent when a member is added to the ticket. |
Auto close tickets
Features
- Automatically close tickets after user inactivity to keep your ticket list tidy.
- Send a warning before automatic closing to remind the user about their ticket.
- Automatically mark tickets as resolved when the user leaves the server.
Setup
- Visit the Auto close tickets section in your dashboard.
- Configure the available options.
Configuration
| Field | Description |
|---|---|
| Automatically close ticket when a user leaves the server | If enabled, your bot automatically closes the ticket if the user leaves your server. |
| Send inactivity notification? | If enabled, your bot sends a warning to the user before automatically closing the ticket, so they have a chance to respond. |
| Notification message | Only available if “Send inactivity notification?” is enabled. Customize the warning message your bot sends. |
| Notification period | Only available if “Send inactivity notification?” is enabled. Set how long the user must be inactive before the warning is sent. Learn the SCNX duration format here. |
| Automatically close inactive tickets | If enabled, your bot automatically closes the ticket after user inactivity. |
| Time window for automatically closing tickets | Only available if “Automatically close inactive tickets” is enabled. Set how long the user must be inactive before the ticket is closed automatically. Learn the SCNX duration format here. |
Ticket reminders
Features
- Send an automatic reminder if a team member is inactive in their ticket.
- Mention unhandled tickets in your reminder channel to draw attention to tickets without a response.
Setup
- Create a private text channel for reminder notifications on your Discord server.
- Visit the Ticket reminders section in your dashboard.
- Configure the available options.
Configuration
| Field | Description |
|---|---|
| Reminder channel | Your bot sends reminders to this channel. |
| Remind the last (or assigned) team member? | If enabled, your bot sends a reminder message for the responsible team member. |
| Last team member reminder period | Only available if “Remind the last (or assigned) team member?” is enabled. Set how long the team member must be inactive before a reminder is sent. Learn the SCNX duration format here. |
| Reminder message for the last team member | Only available if “Remind the last (or assigned) team member?” is enabled. Customize the reminder message that is sent. |
| Mention again if a ticket hasn’t received a team member response yet | If enabled, your bot sends a reminder message about tickets that haven’t been handled yet. |
| Period before reminding about an unassigned ticket | Only available if “Mention again if a ticket hasn’t received a team member response yet” is enabled. Set how long tickets must remain unhandled before a reminder is sent. Learn the SCNX duration format here. |
| Unassigned ticket reminder message | Only available if “Mention again if a ticket hasn’t received a team member response yet” is enabled. Customize the reminder message that is sent for unhandled tickets. |
| Push reminders inside opening hours? | If enabled, reminders are delayed until your configured opening hours start.RequirementOnly available if opening hours are enabled. |
Ticket hold
Features
- Put a ticket into hold mode to forward it to other team members or groups.
- Inform the user with a message when hold is enabled/disabled in their ticket.
- Lock the channel so members cannot write while the ticket is on hold.
- As soon as a ticket is on hold, Auto close tickets is disabled for that ticket.
Setup
- Visit the Ticket hold section in your dashboard.
- Configure the available options.
Commands
Understand the documentation
In these docs,
name:<Type> is an option of a slash-command with name name and the type Type. Options that not required, are described as [name:<Type>]. If the action of a command is vastly different between required and not-required options, we might list them separately.Examples
/moderate ban user:<Member>: This command (/moderate ban) has an required option with the name "user" that only accepts one member as a value./moderate ban victim:<Member> reason:<Text>: This command (/moderate ban) has an required option with the name "victim" that only accepts one member as a value and another required option with the name "reason" that accepts any text as an value./moderate ban victim:<Member> reason:<Text> [proof:<Attachment>]: This command (/moderate ban) has an required option with the name "victim" that only accepts one member as a value, another required option with the name "reason" that accepts any text as an value and a not-required option with the name "proof" which allows one attachment as its value.
| Command | Description |
|---|---|
/ticket hold | Enables or disables the hold status for the current ticket. |
Configuration
| Field | Description |
|---|---|
| Enable ticket hold command? | If enabled, ticket hold is enabled in your modmail. |
| Lock ticket when it is put on hold? | If enabled, the ticket channel is locked automatically as soon as the ticket is put on hold. |
| Hold message | This message is sent when hold is enabled. |
| Unhold message | This message is sent when hold is disabled. |
Advanced message configuration
Features
- Define the formatting of ticket channel names so tickets can be clearly identified.
- Configure various messages to perfectly match your server.
- Change the ticket ID generation type to use a different variant for the ticket ID in the channel name.
Setup
- Visit the Advanced message configuration section in your dashboard.
- Configure the available options.
Configuration
| Field | Description |
|---|---|
| Relay user typing to team? | If enabled, typing indicators from the user are relayed to the ticket channel. |
| Display past tickets button? | If enabled, a button to view the user's past tickets is shown in the ticket channel. |
| Relay staff typing to user? | If enabled, typing indicators from team members are relayed to the user's DMs. |
| Message received reaction | This reaction is added to the user's message when it is received in the ticket channel. |
| Staff-to-user message | This message format is used when a team member sends a message to the user. |
| Anonymous staff-to-user message | This message format is used when a team member sends an anonymous message to the user. |
| Anonymous staff in channel | This message format is shown in the ticket channel when a team member sends an anonymous message. |
| Staff in channel | This message format is shown in the ticket channel when a team member sends a message. |
| User to team | This message format is shown in the ticket channel when a user sends a message. |
| Edited user to team | This message format is shown in the ticket channel when a user edits a message. |
| Deleted user to team | This message format is shown in the ticket channel when a user deletes a message. |
| Ticket channel name format | This format is used by your bot to create names for new ticket channels.NoteYou can set different formats for different ticket topics on the Ticket topics page in your dashboard. More info here. |
| Error message: user already has an open ticket | This message is sent when a user tries to open another ticket while they already have an active one.RequirementOnly shown if "Allow only one ticket per user (global)" is enabled. |
| Error: ticket not found | This message is sent when a team member tries to claim a ticket that has already been closed or deleted. |
| Error: command used outside of ticket channels | This message is sent when a team member runs ticket commands outside a ticket channel. |
| Ticket-by-command confirmation message | This message is sent when a user opens a new ticket via /ticket open.RequirementOnly shown if "Allow users to open tickets via command?" is enabled. |
| Error: insufficient permissions to add users to a ticket | This message is sent when a user without the required permissions tries to add/remove a user to/from a ticket.RequirementOnly shown if "Allow additional ticket members?" is enabled. |
| Error: user has already been added to the ticket | This message is sent when trying to add a user who already has access to the ticket.RequirementOnly shown if "Allow additional ticket members?" is enabled. |
| Ticket ID generator | This ID is used by your bot for the ticket channel name. |
Statistics channels
Features
- Display different statistics in different channels to provide information about your modmail.
- Add the statistics you want and adjust the channel name accordingly.
Setup
- Create at least one voice channel for statistics on your Discord server.
- Visit the Statistics channels section in your dashboard.
- Click the blue “Add statistics channel” button to create a new item.
- Configure the available options.
Configuration
| Field | Description |
|---|---|
| Channel | This voice channel is used for the statistics item. |
| Include only tickets with specific ticket topics | If enabled, only selected ticket topics are included in the statistics. |
| Channel name | This text is used as the channel name. |