dsc.bot / docs
DocsBot listings

Commands

Show people what your bot can do by adding its Discord application commands to the listing.

How listing commands work

Commands saved on dsc.bot appear in the public Commands tab. Entries show their type, name, description, options, and availability. Subcommands are expanded into complete paths so visitors can understand how to invoke them.

Open command management

Open your bot’s management dashboard and choose Commands. The table shows saved commands, descriptions, option counts, supported contexts, and command types. Search can match a command name, description, ID, or option name.

Get commands from Discord

Fetch the application’s global commands from Discord’s API using your application ID and bot token. Send the token in the Authorization header with the Bot authentication scheme:

bashFetch global application commands
curl "https://discord.com/api/v10/applications/YOUR_APPLICATION_ID/commands"   --header "Authorization: Bot YOUR_BOT_TOKEN"

Replace YOUR_APPLICATION_ID with the bot’s Discord application ID and YOUR_BOT_TOKEN with its bot token. The endpoint returns a JSON array of application command objects; copy that response into the dsc.bot command importer.

Import commands

Use Import commands to add multiple commands at once. Paste a non-empty JSON array of Discord application command response objects. Using the response from your application-command request is the least error-prone approach.

jsoncommands.json
[
  {
    "id": "123456789012345678",
    "application_id": "987654321098765432",
    "version": "123456789012345679",
    "type": 1,
    "name": "ping",
    "description": "Check whether the bot is responding",
    "dm_permission": true
  }
]

The importer rejects invalid JSON, an empty array, or command objects without the required fields.

Command JSON

Each command requires:

  • id, application_id, and version from Discord.
  • type: 1 for slash, 2 for user, 3 for message, or 4 for a primary entry-point command.
  • name and description for the public command entry.

Keep useful optional fields such as localizations, permissions, contexts, integration types, NSFW status, and options in the payload.

Subcommands and options

Include options to document parameters and nested commands. dsc.bot expands subcommands and groups into paths such as /settings notifications enable.

jsonCommand with an option
{
  "id": "123456789012345678",
  "application_id": "987654321098765432",
  "version": "123456789012345679",
  "type": 1,
  "name": "welcome",
  "description": "Configure welcome messages",
  "options": [
    {
      "type": 7,
      "name": "channel",
      "description": "The channel that receives welcome messages",
      "required": true
    }
  ]
}

Discord supports subcommand, subcommand group, string, integer, boolean, user, channel, role, mentionable, number, and attachment option types.

Availability

Availability comes from contexts. Guild context is shown as Servers; bot and private-channel contexts are shown as Direct messages. Older payloads without contexts use dm_permission for direct-message availability and otherwise assume server availability.

Edit or remove commands

Use the edit action to update a command’s JSON, or delete it after confirming removal. Neither action changes the command registered with Discord.

The public command list

Visitors browse saved commands from the listing’s Commands tab. It displays each command path, description, type, and visible options. If no commands are stored, the tab displays an empty state.