Create custom slash commands

Ask for a command and get a real Discord slash command with typed arguments and per-role access, registered in your server.

custom slash commands · data & storage

How the conversation goes.

One sentence, in the channel you already use.

  • @Bond Make a /rank command that shows my level

A prefix command like !rank is not an option. Bond does not hold Discord's Message Content intent, so it cannot read the text of ordinary messages. A slash command gives you autocomplete, typed arguments and per-role access instead, and members stop guessing the prefix. More on what Bond can and cannot do

What Bond does after the first message.

It reads the server first, so it reuses what you already have instead of building a second copy of it.

Create a custom slash command for this server, such as /rank, /daily or /profile.

create_custom_command

List every custom slash command this server has, with its kind, enabled state, Discord registration status and usage counts.

list_custom_commands

Get the full definition of one custom slash command: what it runs, its options, who may use it, whether Discord has it registered, and its last few runs.

get_custom_command

Update an existing custom slash command's description, body, options, access restrictions, ephemeral setting, confirmation step or enabled state.

update_custom_command

Delete a custom slash command from this server and unregister it from Discord.

delete_custom_command

Dry-run a custom slash command before it is saved, so a broken one is caught first.

test_custom_command

Read one document from this server's data store by collection and ID.

get_document

Create a document in this server's data store, or replace one whole.

set_document

Merge fields into a document (shallow), keeping the fields you do not mention; creates it if missing.

merge_document

Delete a document from this server's data store.

delete_document

Browse a collection: its documents with their IDs and data, paged, optionally narrowed by one field comparison.

list_documents

Get one field of a document by dot path.

get_field

Ask for it in one sentence.

Free to start. Bond never needs Administrator, and it names everything it is about to change before it changes it.