Skip to main content

Ticket messages

Each option has its own set of messages, all written in the scripting language.
Aliases: msg.

Variables

Plus every standard variable{guild.name}, {channel.mention} and so on.

Examples

A greeting with a container and useful links:
Mention {creator} in {content:} rather than inside an embed. Mentions inside embeds render but don’t notify.

Forms

Forms collect information before the ticket channel is created, as a Discord modal. Instead of a ticket that says “hi”, you get one that already contains everything you’d have had to ask for.
Arguments are the internal name and the title shown at the top of the modal. Requires ticket staff. Forms are reusable across options, so one “report” form can back both a #support panel and a #staff-only panel.
Attach a form to an option, and add or edit its fields, through the interactive interface — !tickets setup. It’s a modal builder; doing it through flat commands would be worse.
Answers are posted into the ticket when it opens, and captured in the transcript.

What to ask for

Keep it short — every field is friction, and Discord caps a modal at five.
  • Who are you reporting? (username or ID)
  • What did they do?
  • When did it happen?
  • Do you have evidence? (links or screenshots)
  • What’s your user ID?
  • Why were you banned?
  • Why should we unban you?
  • How old are you?
  • What’s your timezone?
  • How much time can you commit weekly?
  • Any previous moderation experience?
  • What happened?
  • What did you expect to happen?
  • How do we reproduce it?

Opening tickets without the panel

Members can open a ticket by command. The subject is optional and becomes the initial context. Required roles, blacklists and ticket limits are all still enforced. Useful when someone’s already in a channel and you don’t want to send them to #support.

Command reference