Templates and placeholders
Curly braces in channel names, message texts and embeds are replaced with the ticket's values. An unknown token stays as is; a typo in a channel name template doesn't break opening — the bot falls back to the default template.
Ticket channel name
Category → Behavior: three templates for the “open”, “claimed” and “closed” states. The name is rebuilt from the template, not from the previous name, so the chain “claimed” → unclaimed → closed → reopened doesn’t pile up junk. The exception is an empty “claimed” template: then [{staff}]- is added to the front of the open name, and on transfer to another staff member only the nickname in brackets changes.
{number}- Value
- The ticket number; how many digits is a server setting
- Example
- 0057
{user}- Value
- The author's name as is — with spaces, case and symbols; up to 40 characters
- Example
- John Smith
{panel}- Value
- The name of the panel the ticket was opened from, as is
- Example
- support
{staff}- Value
- The name of the staff member who claimed the ticket (for the “claimed” template); up to 15 characters
- Example
- anna
{closed_by}- Value
- The name of whoever closed it (for the “closed” template); up to 15 characters
- Example
- anna
| State | Default template |
|---|---|
| Open | ticket-{number}-{user} |
| Claimed | [{staff}]- before the open name: [{staff}]-ticket-{number}-{user}. On transfer only the nickname in brackets changes |
| Closed | closed-{number} |
ticket-{number}-{user}# ticket-042-alex[{staff}]-ticket-{number}-{user}# [Maria]-ticket-042-alexclosed-{number}# closed-042Messages
Category → Messages (and the panel’s own message — on its page): the text and embed of each event. The available tokens depend on the event.
{user}- Value
- A mention of the ticket author
- Where it's available
- All events except “Panel”
{number}- Value
- The ticket number with leading zeros
- Where it's available
- All events except “Panel”
{guild}- Value
- The server name
- Where it's available
- All events
{channel}- Value
- A channel mention: the ticket's — or the panel channel in the “Panel” message
- Where it's available
- All events except “Transcript”
{category}- Value
- The ticket category's name (“General” if there is none)
- Where it's available
- All ticket events
{staff}- Value
- A mention of the staff member who did the action (in “closed” — the claimer or the closer)
- Where it's available
- Claim, unclaim, transfer, escalation, close, rating
{reason}- Value
- The close reason (or “—”)
- Where it's available
- Close confirmation, close request, close
{from_category}- Value
- The source category's name
- Where it's available
- Escalation
{to_category}- Value
- The name of the category it moved to
- Where it's available
- Escalation
{moderator}- Value
- A mention of the staff member
- Where it's available
- Member added
{target}- Value
- A mention of the added member or of whoever the ticket was handed to
- Where it's available
- Member added, ticket transfer
{support}- Value
- Mentions of the ticket's support roles (they ping)
- Where it's available
- After the welcome
{messages_count}- Value
- The number of messages in the transcript
- Where it's available
- Transcript
{open}- Value
- How many tickets are already open (for the person, in the category, on the server or for the period)
- Where it's available
- Refusals on opening
{max}- Value
- How many are allowed
- Where it's available
- Refusals on opening
{period}- Value
- The limit's period: “5 min”, “24 h”
- Where it's available
- The “per period” refusal
{wait}- Value
- When it's possible to open again
- Where it's available
- The “per period” refusal
{hours}- Value
- Hours without activity
- Where it's available
- Auto-close reason
All ticket events also take the general ticket placeholders, as in automations: {author}, {user_name}, {staff_name}, {priority}, {age}, {support}, {support_category}, {answers}, {answer1}…{answer5}. In the “Close request” {user} is whoever asks. “Thanks for the rating” also has {rating}.
The category’s welcome (“In the ticket” on the category) takes the same placeholders as the “In the ticket” message.
Custom commands and reply templates
They work in both plain text and an embed. Ticket variables are empty outside its channel.
| Token | Value |
|---|---|
{user} | A mention of whoever called the command (same as {staff}) |
{guild} | The server name |
{channel} | A mention of the channel the command was called in |
{author} | The ticket author — in a ticket channel |
{number} | The ticket number — in a ticket channel |
{category} | The ticket category — in a ticket channel |
{staff_name} | The caller's name, without a mention |
{priority} | The ticket's priority as a word — in a ticket channel |
{age} | How long the ticket has been open — in a ticket channel |
{support} | A mention of the ticket's support roles — in a ticket channel |
Formatting
Texts and embeds support the platform’s markup: **bold**, *italic*, `code`, mentions <@id>, <@&id>, <#id>. Links in embeds — [text](url).
