Interface Command
- All Superinterfaces:
ISnowflake
Represents a Discord slash-command.
This can be used to edit or delete the command.
This can be used to edit or delete the command.
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic class
Predefined choice used for options.static class
An Option for a command.static class
An Subcommand for a command.static class
An Subcommand Group for a command.static enum
Possible command types -
Method Summary
Modifier and TypeMethodDescriptiondelete()
Delete this command.Edit this command.default String
The id of the application this command belongs to.long
The id of the application this command belongs to.The description of this command.getJDA()
Returns theJDA
instance of this CommandgetName()
The name of this command.TheOptions
of this command.TheSubcommandGroups
of this command.TheSubcommands
of this command.default OffsetDateTime
The time this command was updated last.getType()
TheCommand.Type
of commandlong
The version of this command.boolean
Whether this command is enabled for everyone by default.retrievePrivileges
(Guild guild) Retrieves theCommandPrivileges
for this command.updatePrivileges
(Guild guild, Collection<? extends CommandPrivilege> privileges) Updates the list ofCommandPrivileges
for this command.updatePrivileges
(Guild guild, CommandPrivilege... privileges) Updates the list ofCommandPrivileges
for this command.Methods inherited from interface net.dv8tion.jda.api.entities.ISnowflake
getId, getIdLong, getTimeCreated
-
Method Details
-
delete
Delete this command.
If this is a global command it may take up to 1 hour to vanish from all clients.- Returns:
RestAction
- Throws:
IllegalStateException
- If this command is not owned by this bot
-
editCommand
Edit this command.
This can be used to change the command attributes such as name or description.- Returns:
CommandEditAction
- Throws:
IllegalStateException
- If this command is not owned by this bot
-
retrievePrivileges
@Nonnull @CheckReturnValue RestAction<List<CommandPrivilege>> retrievePrivileges(@Nonnull Guild guild) Retrieves theCommandPrivileges
for this command.
This is a shortcut forGuild.retrieveCommandPrivilegesById(String)
.These privileges are used to restrict who can use commands through Role/User whitelists/blacklists.
If there is no command with the provided ID, this RestAction fails with
ErrorResponse.UNKNOWN_COMMAND
- Parameters:
guild
- The target guild from which to retrieve the privileges- Returns:
RestAction
- Type:List
ofCommandPrivilege
- Throws:
IllegalArgumentException
- If the guild is null
-
updatePrivileges
@Nonnull @CheckReturnValue RestAction<List<CommandPrivilege>> updatePrivileges(@Nonnull Guild guild, @Nonnull Collection<? extends CommandPrivilege> privileges) Updates the list ofCommandPrivileges
for this command.
Note that commands are enabled by default for all members of a guild, which means you can only blacklist roles and members using this method. To change this behavior, useCommandData.setDefaultEnabled(boolean)
on your command.These privileges are used to restrict who can use commands through Role/User whitelists/blacklists.
If there is no command with the provided ID, this RestAction fails with
ErrorResponse.UNKNOWN_COMMAND
- Parameters:
guild
- The target guild from which to update the privilegesprivileges
- Complete list ofCommandPrivileges
for this command- Returns:
RestAction
- Type:List
orCommandPrivilege
The updated list of privileges for this command.- Throws:
IllegalArgumentException
- If null is providedIllegalStateException
- If this command is not owned by this bot
-
updatePrivileges
@Nonnull @CheckReturnValue RestAction<List<CommandPrivilege>> updatePrivileges(@Nonnull Guild guild, @Nonnull CommandPrivilege... privileges) Updates the list ofCommandPrivileges
for this command.
Note that commands are enabled by default for all members of a guild, which means you can only blacklist roles and members using this method. To change this behavior, useCommandData.setDefaultEnabled(boolean)
on your command.These privileges are used to restrict who can use commands through Role/User whitelists/blacklists.
If there is no command with the provided ID, this RestAction fails with
ErrorResponse.UNKNOWN_COMMAND
- Parameters:
guild
- The target guild from which to update the privilegesprivileges
- Complete list ofCommandPrivileges
for this command- Returns:
RestAction
- Type:List
orCommandPrivilege
The updated list of privileges for this command.- Throws:
IllegalArgumentException
- If null is providedIllegalStateException
- If this command is not owned by this bot
-
getJDA
Returns theJDA
instance of this Command- Returns:
- the corresponding JDA instance
-
getType
TheCommand.Type
of command- Returns:
- The command type
-
getName
The name of this command.- Returns:
- The name
-
getDescription
The description of this command.- Returns:
- The description, empty for context menu commands
-
isDefaultEnabled
boolean isDefaultEnabled()Whether this command is enabled for everyone by default.- Returns:
- True, if everyone can use this command by default.
-
getOptions
TheOptions
of this command.- Returns:
- Immutable list of command options
-
getSubcommands
TheSubcommands
of this command.- Returns:
- Immutable list of subcommands
-
getSubcommandGroups
TheSubcommandGroups
of this command.- Returns:
- Immutable list of subcommand groups
-
getApplicationIdLong
long getApplicationIdLong()The id of the application this command belongs to.- Returns:
- The application id
-
getApplicationId
The id of the application this command belongs to.- Returns:
- The application id
-
getVersion
long getVersion()The version of this command.
This changes when a command is updated throughupsertCommand
,updateCommands
, oreditCommandById
Useful for checking if command cache is outdated- Returns:
- The version of the command as a snowflake id.
- See Also:
-
getTimeModified
The time this command was updated last.- Returns:
- Time this command was updated last.
- See Also:
-