Almost every message OnyxBot posts for your ticket system can be rewritten on Tickets, then Messages: the welcome inside a new ticket, the closure DM, the staff alerts, the ticket log, the buttons under an AI answer, and more. Each message is a stack of blocks with placeholders for the live values, a locked card for the buttons the bot needs, and a preview of what the recipient will see. Edits apply to messages sent from then on. Nothing already posted changes.
Which messages can you edit?
The Message picker at the top lists them by group. Under Tickets:
- Ticket welcome: the frame around every new ticket. The greeting itself is still set per category on Tickets, then Panels, and fills the
{welcome_message}placeholder. - Closing notice and Resolved notice: posted in the ticket when it closes, or when the member marks an AI answer as the fix.
- Close confirmation: the private "are you sure" prompt with its Close ticket and Cancel buttons.
- Closure DM: what the opener receives in their DMs, with the rating buttons, the comment button, and the transcript link.
- AI answer buttons: the That solved it and Talk to a human row under every AI answer in a ticket.
- Staff briefing: the hand-off posted when a ticket escalates to staff.
- Inactivity warning and Staff attention alert: the two timers from auto-close and working hours.
- Pin notice: what OnyxBot posts in a ticket when staff pin it.
- Deflection offer: the "open a ticket" prompt after the AI cannot answer in a public channel.
- Public review: the review card mirrored to your review channel.
- Ticket log: the summary posted to your ticket logs channel.
Plugins add their own groups once you enable them: the Tebex plugin's payment notification, lookups, claim replies, and coupon and gift card confirmations, and the GitHub plugin's issue activity and fix notice. The ticket panel itself is not here. It has its own builder on Tickets, then Panels.
A message you have changed shows Edited in the picker, and a count of customized messages sits beside it. Each message also carries a tag for where it appears: a channel message, an in-ticket message, a direct message, or a private reply only the recipient sees.
Blocks
A message is a stack of blocks, the same kind the panel builder uses. Drag a block to reorder it, and use Add block for the kinds that message allows:
- Text: Markdown, including headers, bold, lists, and small text.
- Image: up to 10 images shown as a gallery.
- Separator: spacing, with or without a divider line.
- Link buttons: up to 5 buttons that open URLs.
Some messages allow only text and separators. Others take the full set. The meter under the blocks counts components and characters against Discord's limits of 40 components and 4,000 characters per message. Placeholders expand when the message is sent, so the count is approximate, and the editor warns when the example values would push a message over.
Placeholders
Every message declares the values it can carry, and the Variable button in a text block inserts one at the cursor: {counter} for the ticket number, {category}, {mention} for the opener, {staff_mentions}, {transcript_url}, and so on. The list differs per message. The editor only offers what that message can fill in, and a save that references a value the message does not have is rejected.
Two rules save you surprises:
- Optional values drop their line. A placeholder with nothing to show, such as the priority on a ticket that stayed at Normal or the intake answers on a ticket with no form, takes its whole line with it. You never see a blank label.
- Mentions are the pings. Where a placeholder is what notifies someone, removing it stops that notification, and the editor says so under the meter. Delete
{staff_mentions}from the welcome and staff are no longer pinged when a ticket opens.
Protected buttons
Buttons that do something, like Claim and Close, That solved it and Talk to a human, the rating stars, or View transcript on the log, sit in a locked card. You can rename them, change their emoji, change their color where Discord allows it, and move the card up or down the stack. You cannot remove the card or add buttons of your own to it, because the bot wires their behavior when it sends the message. Link buttons you add yourself are plain links.
Preview, save, and reset
The preview on the right renders the message with sample values, buttons included. Save, or Ctrl+S and Cmd+S, stores your version for this server. Reset to default returns to the stock message, and asks first. Messages that come in several variations, such as the Tebex notification with one message per Event type or the claim rejection with one per Reason, are edited and saved one variation at a time. The dropdown above the blocks switches between them, and the editor asks you to save or reset before it lets you switch away from unsaved edits.
Edits apply to messages the bot sends from now on. A ticket that is already open keeps the welcome it was given, and a log already posted stays as it was.