Building

Slash commands

Names, options, permissions, responses and ephemeral replies.

A command has a name, description, options, permissions and a response.

Options support string, integer, number, boolean, user, channel, role, mentionable and attachment types. Mark an option required when the command cannot run without it; optional options must come after required ones.

Responses can be:
plain text,
an embed from the Design tab,
a message with components,
a modal that collects input before replying.

Ephemeral replies are only visible to the person who ran the command — good for settings, tickets and errors.

Rules: names are lowercase, 1–32 characters, no spaces. Discord can take up to an hour to propagate global commands the first time you register them.