Custom Command
Other

Curl Format

Many functions like $sendMessage or $editChannel accept the curl format. It can be used to style your messages, or to make your code more readable when the function has many arguments.

Usage

The most basic usage is:

{key:value}

But it can also have multiple values:

{key:value1:value2:value3}

When there are more curls inside of one curl option, they use an equal character (=) to split key and value.

Message Formatting

In message functions, you can use it to send embeds, menus, or control other message options.

Member
9/5/2026

!!exec $sendMessage[     {title:Embed Title}     {desc:Embed Description}     {footer:Embed Footer} ]

Custom Command
APP
9/5/2026
Embed Title

Embed Description

Embed Footer

Messages

These tags control the general settings, actions, and behavior of the message itself.

FormatDescription
{content:text}Message content
{reply:Message ID}Replies directly to a specific message ID.
{reply_mention:yes/no}Decides if the reply pings the user.
{attachment:name:url:spoiler (yes/no)}Attaches a file from a web link.
{file:name:content}Creates and attaches a plain text file.
{reactions:emoji,emoji,...}Adds reactions to the message.
{reaction:emoji,emoji,...}Adds reactions to the message.
{suppress:yes/no}Hides embeds sent by the bot.
{delete:time}Deletes the message after a delay (e.g. 10s, 5m).
{edit:time:New Content}Changes message text after a delay (in milliseconds).
{deletecommand}Instantly deletes the user's trigger command.
{deletecommand:time}Deletes the trigger command after a delay (e.g. 5s).
{pin}Pins the message to the channel.
{silent}Sends the message quietly without notifications.
{stickers:id1:id2:id3}Sends up to 3 Discord stickers by ID.
{interaction}Sends the message with the author name above.
{ephemeral:yes/no}Makes the interaction private.
{private}Makes the interaction private.

Embeds

These tags build embeds within your message.

FormatDescription
{author:name:avatar}Adds an author section with name and avatar.
{title:text}Sets the title.
{url:link}Turns the title into a clickable link.
{thumbnail:image url}Shows a small image in the top-right corner.
{description:text}Sets the description.
{desc:text}Sets the description.
{color:hex}Sets the embed border color. (hex code or color name)
{field:title:text:inline (yes/no)}Adds a field with text.
{removefields:field number}Remove a field based on its position. Keep empty to remove all fields.
{image:image url}Adds a large image at the bottom.
{footer:text:avatar url}Adds bottom footer text and optional avatar icon.
{timestamp}Adds Discord timestamp to the footer.
{timestamp:time}Adds Discord timestamp to the footer with specific time set. (in milliseconds)
{embed:Embed Curls}Adds embed to the message. Use when you need to show multiple embeds.

Buttons

Buttons let users click to trigger actions or open web links.

{button:label:style:emoji:id:newline:disabled}

Or

{button:
    {label=Label}
    {style=Style}
    {id=ID}
    {emoji=Emoji}
    {disabled=Is Disabled?}
    {newline=Is on New Line?}
}
  • Optional Argument
    Default: None
    Tooltip
    label
    - The text displayed on the button.
  • Optional Argument
    Default: blue
    Tooltip
    style
    - The button color. Can be blue, green, red or gray. If your button is a link, use url.
  • Optional Argument
    Default: None
    Tooltip
    emoji
    - Emoji or emoji ID that will be displayed on the left side of the button.
  • Required Argument
    Tooltip
    id
    - Button ID for triggering a command or url that will open on click.
  • Optional Argument
    Default: no
    Tooltip
    newline
    - Forces the button on a new row. Can be yes or no.
  • Optional Argument
    Default: no
    Tooltip
    disabled
    - Makes the button disabled and unclickable. Can be yes or no.

Use {removebutton:id} to remove a button from your message. Keep empty to remove all buttons.


Menus create interactive dropdown lists where users can select one or multiple choices.

{menu:
    {id=ID}
    {placeholder=Placeholder}
    {type=Menu Type}

    // Depending on the type:
    {selected=Selected Value ID}
    {selected_user=Selected User ID}
    {selected_role=Selected Role ID}
    {selected_channel=Selected Channel ID}

    {min=Minimum}
    {max=Maximum}

    {label=Label}
    {desc=Description}
    {value=Value}
    {emoji=Emoji}

    // repeat the last 4 curls to add more options:

    {label=Label}
    {desc=Description}
    {value=Value}
    {emoji=Emoji}
}
  • Required Argument
    Tooltip
    id
    - Menu ID for triggering a command.
  • Optional Argument
    Default: Make a selection
    Tooltip
    placeholder
    - Text that is shown before any selection.
  • Optional Argument
    Default: text
    Tooltip
    type
    - The menu type. Can be user, role, channel, mention (roles and users) or text.
  • Optional Argument
    Default: None
    Tooltip
    selected
    - Default selected option. Works across all types but isn't reliable on type mention. To select more options, include this argument multiple times.
  • Optional Argument
    Default: None
    Tooltip
    selected_user
    - Default selected user. Works only when type is user or mention. To select more options, include this argument multiple times.
  • Optional Argument
    Default: None
    Tooltip
    selected_role
    - Default selected option. Works only when type is role. To select more options, include this argument multiple times.
  • Optional Argument
    Default: None
    Tooltip
    selected_channel
    - Default selected option. Works only when type is channel. To select more options, include this argument multiple times.
  • Optional Argument
    Default: None
    Tooltip
    min
    - Minimum number of selections.
  • Optional Argument
    Default: None
    Tooltip
    max
    - Maximum number of selections.
  • Optional Argument
    Default: Option 1
    Tooltip
    label
    - Option label.
  • Optional Argument
    Default: None
    Tooltip
    desc
    - Option description.
  • Optional Argument
    Default: 1
    Tooltip
    value
    - Option value. This value will get returned in your commands.
  • Optional Argument
    Default: None
    Tooltip
    emoji
    - Emoji or emoji ID that will be displayed on the left side of the option.

Use {removemenu:id} to remove a menu from your message. Keep empty to remove all menus.

Polls

This creates a Discord poll where you can select one or multiple answers.

{poll:
    {question=Poll Question}
    {duration=Poll Duration}
    {multiple=Multiple Answers?}

    {answer=Answer Title}
    {emoji=Answer Emoji}

    // repeat last 2 curls to add more options:
    
    {answer=Answer Title}
    {emoji=Answer Emoji}
}
  • Optional Argument
    Default: Poll question
    Tooltip
    question
    - The question/title of your poll.
  • Optional Argument
    Default: 24h
    Tooltip
    duration
    - The poll duration in hours. Must be from 1h to 168h (one week).
  • Optional Argument
    Default: no
    Tooltip
    multiple
    - Determines if user can vote for multiple options. Can be yes or no.
  • Required Argument
    Tooltip
    answer
    - The answer title.
  • Optional Argument
    Default: None
    Tooltip
    emoji
    - Emoji that will display next to the answer.

V2 Components

Using Discord V2 embed-like components.

FormatDescription
{container:V2 Curls}Embed-like background for components
{color:hex}Container border color. (hex or color name)
{text:text}Regular text
{section:Curls}A section can contain {text} with {thumbnail}, {button} or a {spoiler}.
{thumbnail:image url}Small image on the right side of section.
{thumb:image url}Small image on the right side of section.
{gallery:Image Curls}Can display up to 10 {image}'s.
{row:Curls}A row can contain 5 {button}'s or 1 {menu}.
{separator:visible (yes/no):size (1/2)}Displays a separator line.

You can also use {file}, {menu} or {spoiler} inside of Components V2.

Note

Discord V2 components are not required to be inside of {container}.

On this page