Skip to content

A Discord ticket bot, built from blocks

A ticket system opens a private channel for each support request and closes it when the case is solved. In Bot Creator it is two small flows: one that opens the ticket, one that closes it.

How to build it

  1. Create a private category on your server where @everyone cannot view channels, and give your staff and the bot access.
  2. Flow 1, a Slash command /ticket: Create Channel under that category (give it the Action Key ticket_chan), then Edit Channel Permissions so the member who ran the command can view the channel, send messages and read history.
  3. Still in flow 1: Send Message to ((action.ticket_chan)) with a welcome embed and a red Close Ticket button (custom ID close_ticket), then Respond with Message with a private reply that links the new channel.
  4. Flow 2, an Event trigger on interactionCreate with the custom ID filter close_ticket: Respond with Message to confirm, Wait a few seconds, then Remove Channel.

Blocks you will use

Block names are the ones of the app; each links to its entry in the dictionary.

  • Create Channel — Creates the ticket channel; its Action Key lets later blocks read the new channel's ID.
  • Edit Channel Permissions — Lets the member see the private channel.
  • Send Message — Posts the welcome embed and the close button in the new channel.
  • Respond with Message — Answers the command or the click, privately if you tick the option.
  • Wait — Pauses the flow before the channel is deleted.
  • Remove Channel — Deletes the ticket channel.

What to know

  • The close flow of the guide does not check who clicked the button; add a condition if only staff should close tickets.
  • There is no transcript block.
  • The bot needs the Manage Channels permission.

Go further

Other things you can build