Skip to main content

Message Builder

System for sending custom embed messages from saved templates. Templates are created and edited in the dashboard — commands are used for sending and browsing.

Commands

/embed send

Sends a saved embed template to a selected channel.

ParameterTypeRequiredDescription
template_namestringYesTemplate name (autocomplete — suggestions from the list)
channelTextChannelNoTarget channel (default: current channel)

Permissions: Configurable (moderation_roles / custom)

Example: /embed send template_name:Rules channel:#rules

Success:

  • Embed from template sent to the selected channel (publicly visible)
  • Optional content text displayed above the embed
  • Ephemeral confirmation with template name and channel
  • Saved last_sent_channel_id and last_sent_message_id in the template
  • Log in "message_builder" module

Errors:

  • Missing sending permissions
  • Template not found (case-insensitive)
  • Template without title and description (empty — edit in dashboard)
  • Channel not on the allowed list (if allowed_channels configured)
  • Bot doesn't have permission to write in the target channel
Autocomplete

The template_name parameter supports autocomplete — after typing a few letters, Discord will suggest matching templates (max 25 suggestions).


/embed list

Displays a list of all saved embed templates for the server.

ParameterTypeRequiredDescription
(none)

Permissions: Everyone

Example: /embed list

Success: Ephemeral embed with template list (name + title preview) and total count
Errors:

  • No saved templates (info message)

Creating Templates

Templates are created exclusively in the dashboard using the visual editor:

  1. Dashboard → Cog "Message Builder" → Edit
  2. Side panel with template list (create/edit/delete)
  3. Main area — inline embed editor (editor = preview)
  4. content field above the embed (text displayed before the embed)
  5. Color: presets + custom picker
  6. Images: clickable placeholders → paste URL
  7. Fields: "Add Field" button

Template Structure

{
"name": "Rules",
"content": "Read the server rules:",
"embed": {
"title": "Server Rules",
"description": "1. Respect others\n2. No spam...",
"color": "#5865F2",
"thumbnail": "https://...",
"image": "https://...",
"author_name": "ArcBot",
"author_icon": "https://...",
"footer": "Last updated: 2026-06-12",
"fields": [
{ "name": "Penalties", "value": "For violations...", "inline": false }
]
},
"last_sent_channel_id": "123456789",
"last_sent_message_id": "987654321"
}

Configuration

OptionDescriptionDefault Value
send_permissionWho can send embedsmoderation_roles
send_rolesRoles for custom permissionnone
allowed_channelsAllowed channels (empty = all)none (no restrictions)
templatesList of saved templates[]
Tracking

After each template send, the bot saves last_sent_channel_id and last_sent_message_id. This enables future editing/updating of sent messages from the dashboard.