Skip to main content
A ticket category is a self-contained support flow: members open a private channel from a panel message, staff claim and work the ticket inside that channel, and closing it archives the conversation into a transcript. A server can have more than one category (for example, a support category and a separate report category), and each one is configured independently - its own staff roles, its own channels, its own questions, its own panel message. This page walks through creating and editing a category, then explains the full lifecycle a ticket goes through once members start using it.

Creating and editing a category

A category doesn’t do anything until it’s created and configured. There are always two steps: create it, then edit it.
1

Create the category

Run /ticket create id:<name>, for example /ticket create id:support. This registers a new, empty category under that identifier. id becomes the category value you’ll pass to every other ticket command, including /ticket edit, so pick something short and clear - you can’t rename it later, only delete and recreate it.
2

Edit the category

Run /ticket edit category:support. This opens an interactive settings menu, not a list of command flags - a dropdown at the bottom of the message switches between five pages (General, Roles, Channels, Voice channels, Questions), and each page has its own buttons, toggles, and select menus for the settings on that page. Every full page reference is in Ticket settings.At minimum, set a staff role (Roles page) so someone besides a server admin can manage tickets, and an open category (Channels page) so new ticket channels have somewhere to be created.
3

Send the panel

Run /ticket send channel:#your-channel. This posts the message members click to open a ticket. You can send the same category’s panel to more than one channel if you want it reachable from multiple places - each send is independent.
A category with no staff role, no open category, or that’s never had its panel sent still technically exists (/ticket edit will show it), it just isn’t usable by members yet.

Lifecycle

Once a category is configured and its panel is sent, this is what happens from a member’s first click to the ticket being archived:
  1. Open. A member clicks the panel’s button, or a staff member runs /open category:<name> member:<user> to open one on someone’s behalf. If the category has questions configured (Questions page), the member answers them in a modal before the channel is created - answering is required to proceed, there’s no way to skip it.
  2. Channel creation. A private channel is created under the category’s open category (a Discord category channel you picked on the Channels page), visible only to the ticket’s author and anyone with one of the category’s staff roles. Nobody else in the server can see it.
  3. Claiming. A staff member runs /claim inside the channel to take ownership of it. This is informational, not exclusive - other staff can still act in the channel - but it records who’s responsible, and if a claim category is set, the channel moves there once claimed. Only the person who claimed it (or a server admin) can /release it back to unclaimed.
  4. Working the ticket. Staff can /add or /remove other members from the channel (useful for pulling in a specific person without giving them access to every ticket), /rename the channel, or /escalate it to move the ticket into a different category entirely (including into or out of jail - see Jail).
  5. Closing. Staff run /close, optionally with a reason. This archives the channel: the message history is exported into a styled HTML transcript, posted (with view/download links) to the category’s transcript channel, and optionally DMed to the ticket’s author if that’s enabled. The transcript is cryptographically signed on export, so anyone can confirm later with /verify that it hasn’t been edited since.
See Commands for the exact options every command in this list takes.

Staff roles vs. server permissions

There are two separate permission systems at play, and it’s easy to mix them up:
  • Category-level actions - claiming, releasing, closing, adding/removing members, renaming, and escalating - are gated by that specific category’s staff roles, set on the Roles page of /ticket edit. A member with the right role can do all of this without being a server admin at all. This is what lets you have, say, a “support-team” role that only manages the support category, separate from a “mod-team” role that manages a reports category.
  • Server-level actions - creating, editing, deleting, and sending a category’s panel - always require the Administrator or Manage Server Discord permission, regardless of any category’s staff roles. These are configuration changes, not day-to-day ticket handling, so they’re locked to server admins on purpose.
Having Administrator or Manage Server also satisfies any category’s staff-role check, so admins can always manage every category even without being explicitly added to its staff role list.

Limits per open

Two independent controls decide who’s allowed to open a ticket and how many at once, both configured per category:
  • Per-user ticket limit (General page) caps how many tickets one member can have open in that category simultaneously - useful for stopping someone from opening five duplicate tickets about the same issue. Staff can be exempted from this with Staff bypass limit.
  • Required / denied roles (Roles page) gate who can open a ticket at all - require a “Member” role to keep tickets locked to verified members, or deny a “Muted” role to stop muted users from opening one.
Full details on both are in Ticket settings.

NSFW toggle

/nsfw, run inside an open ticket channel, toggles Discord’s age-restricted flag on that one channel. It’s a per-channel action taken by staff during a specific ticket (for example, if the conversation needs to include content that requires the restriction), not a category-wide setting - every new ticket in the category still opens un-restricted by default.