Commands¶
Manager¶
- class CommandManager(client: HTTPClient, storage: CacheStorage, application_id: int, commands_data: dict[str, tuple[int, PartialApplicationCommand]])¶
Bases:
BaseManagerManager used to manage
ApplicationCommand.- async fetch_all(*, guild_id: int | None = None, with_localizations: bool = True) list[ApplicationCommand]¶
Fetches a list of all application commands from the Discord API.
- Parameters:
guild_id (
int, optional) – The guild ID for fetching commands scoped by guild.with_localizations (
bool, optional) – Whethername_localizationsanddescription_localizationsshould be fetched. Defaults toTrue.
- Raises:
Unauthorized – You are not authorized. Your token may be invalid.
HTTPException – A HTTP error occured.
- get_all(*, guild_id: int | None = None) list[ApplicationCommand]¶
Gets a list of ApplicationCommand frok the internal cache. Can be empty if the commands are not fetched atleast once.
- Parameters:
guild_id (
int) – The Guild ID of the Guild for getting commands scoped by guild.
- async add(command: PartialApplicationCommand, *, guild_id: int | None = None) ApplicationCommand¶
Adds a specific command object to the Application.
- Parameters:
command (
PartialApplicationCommand) – The command to sync.guild_id (
int, optional) – The Guild ID to add to if scoped by guild.
- Raises:
Unauthorized – You are not authorized. Your token may be invalid.
HTTPException – A HTTP error occured.
- async fetch(command_id: int, *, guild_id: int | None = None) ApplicationCommand¶
Fetches an application command from the Discord API.
- Parameters:
- Raises:
NotFound – The command you tried to fetch does not exist.
Unauthorized – You are not authorized. Your token may be invalid.
HTTPException – A HTTP error occured.
- async sync_all() list[ApplicationCommand]¶
Syncs registered commands via
@Bot.command()to the Application. This will override all commands currently synced.- Raises:
Unauthorized – You are not authorized. Your token may be invalid.
HTTPException – A HTTP error occured.
- async sync_bulk(commands: list[PartialApplicationCommand], *, guild_id: int | None = None) list[ApplicationCommand]¶
Syncs given commands to the Application. This will override all commands currently synced.
- Parameters:
commands (list[
PartialApplicationCommand]) – The new list of commands.guild_id (
int, optional) – The Guild ID of the Guild to PUT to if scoped by guild.
- Raises:
Unauthorized – You are not authorized. Your token may be invalid.
HTTPException – A HTTP error occured.
- async edit(command_id: int, *, guild_id: int, name: str = _MISSING, name_localizations: Localization | None = _MISSING, description: str = _MISSING, description_localizations: Localization | None = _MISSING, options: list[ApplicationCommandOption] = _MISSING, default_member_permissions: Permissions | None = _MISSING, nsfw: bool = _MISSING) ApplicationCommand¶
- async edit(command_id: int, *, name: str = _MISSING, name_localizations: Localization | None = _MISSING, description: str = _MISSING, description_localizations: Localization | None = _MISSING, options: list[ApplicationCommandOption] = _MISSING, default_member_permissions: Permissions | None = _MISSING, integration_types: list[ApplicationIntegrationType] = _MISSING, contexts: list[InteractionContextType] = _MISSING, nsfw: bool = _MISSING) ApplicationCommand
Edits an application command. All parameters to this method besides
command_idare optional.- Parameters:
command_id (
int) – The ID of the command to edit.guild_id (
int) – The Guild ID of the Guild, if editing command scoped by guild.name (
str) – The name of the command.name_localizations (
Localization) – The localizations for the name of the command.description (
str) – The description of the command.description_localizations (
Localization) – The localizations for the description of the command.options (list[
ApplicationCommandOption]) – The options (parameters or sub-commands) of the command.default_member_permissions (
Permissions) – The default member permissions of the command.integration_types (list[
ApplicationIntegrationType]) – The installation contexts where the command is available.contexts (list[
InteractionContextType]) – The installation contexts where the command can be used.nsfw (
bool) – Whether the command is NSFW.
- Raises:
NotFound – The command you tried to edit does not exist.
Unauthorized – You are not authorized. Your token may be invalid.
HTTPException – A HTTP error occured.
- async delete(command_id: int, *, guild_id: int | None = None) None¶
Deletes an application command.
- Parameters:
- Raises:
NotFound – The command you tried to edit does not exist.
Unauthorized – You are not authorized. Your token may be invalid.
HTTPException – A HTTP error occured.
Objects¶
- class Localization(data: LocalizationPayload)¶
Bases:
object- id¶
- da¶
- de¶
- en_gb¶
- en_us¶
- es_es¶
- es_419¶
- fr¶
- hr¶
- it¶
- lt¶
- hu¶
- nl¶
- no¶
- pl¶
- pt_br¶
- ro¶
- fi¶
- sv_se¶
- vi¶
- tr¶
- cs¶
- el¶
- bg¶
- ru¶
- uk¶
- hi¶
- th¶
- zh_cn¶
- ja¶
- zh_tw¶
- ko¶
- class ApplicationCommandOption(data: CommandOptionPayload)¶
Bases:
object- type¶
- name¶
- name_localizations¶
- description¶
- description_localizations¶
- required¶
- choices¶
- options¶
- channel_types¶
- min_value¶
- max_value¶
- min_length¶
- max_length¶
- autocomplete¶
- classmethod new(*, type: Literal[CommandOptionType.SUB_COMMAND, CommandOptionType.SUB_COMMAND_GROUP], name: str, name_localizations: Localization = _MISSING, description: str, description_localizations: Localization = _MISSING, options: list[ApplicationCommandOption] = _MISSING) Self¶
- classmethod new(*, type: Literal[CommandOptionType.STRING], name: str, name_localizations: Localization = _MISSING, description: str, description_localizations: Localization = _MISSING, required: bool = False, choices: list[ApplicationCommandChoice] = _MISSING, min_length: int = _MISSING, max_length: int = _MISSING, autocomplete: bool = _MISSING) Self
- classmethod new(*, type: Literal[CommandOptionType.INTEGER], name: str, name_localizations: Localization = _MISSING, description: str, description_localizations: Localization = _MISSING, required: bool = False, choices: list[ApplicationCommandChoice] = _MISSING, min_value: int = _MISSING, max_value: int = _MISSING, autocomplete: bool = _MISSING) Self
- classmethod new(*, type: Literal[CommandOptionType.BOOLEAN, CommandOptionType.USER, CommandOptionType.ROLE, CommandOptionType.MENTIONABLE, CommandOptionType.ATTACHMENT], name: str, name_localizations: Localization = _MISSING, description: str, description_localizations: Localization = _MISSING, required: bool = False) Self
- classmethod new(*, type: Literal[CommandOptionType.CHANNEL], name: str, name_localizations: Localization = _MISSING, description: str, description_localizations: Localization = _MISSING, required: bool = False, channel_types: list[ChannelType] = _MISSING) Self
- classmethod new(*, type: Literal[CommandOptionType.NUMBER], name: str, name_localizations: Localization = _MISSING, description: str, description_localizations: Localization = _MISSING, required: bool = False, choices: list[ApplicationCommandChoice] = _MISSING, min_value: float = _MISSING, max_value: float = _MISSING, autocomplete: bool = _MISSING) Self
- class ApplicationCommandChoice(data: CommandChoicePayload)¶
Bases:
object- name¶
- name_localizations¶
- value¶
- class PartialApplicationCommand(data: PartialApplicationCommandPayload, callback: CoroFunc | None)¶
Bases:
BaseApplicationCommand- description¶
- default_member_permissions¶
- classmethod new(*, name: str, name_localizations: Localization = <mizuki._utils.Missing object>, description: str = <mizuki._utils.Missing object>, description_localizations: Localization = <mizuki._utils.Missing object>, options: list[ApplicationCommandOption] = <mizuki._utils.Missing object>, default_member_permissions: Permissions = <mizuki._utils.Missing object>, integration_types: list[ApplicationIntegrationType] = <mizuki._utils.Missing object>, contexts: list[InteractionContextType] = <mizuki._utils.Missing object>, type: ApplicationCommandType = ApplicationCommandType.CHAT_INPUT, nsfw: bool = False, callback: CoroFunc = <mizuki._utils.Missing object>) Self¶
- contexts¶
- description_localizations¶
- integration_types¶
- name¶
- name_localizations¶
- nsfw¶
- options¶
- type¶
Enums¶
- class CommandOptionType(*values)¶
- SUB_COMMAND = 1¶
- SUB_COMMAND_GROUP = 2¶
- STRING = 3¶
- INTEGER = 4¶
- BOOLEAN = 5¶
- USER = 6¶
- CHANNEL = 7¶
- ROLE = 8¶
- MENTIONABLE = 9¶
- NUMBER = 10¶
- ATTACHMENT = 11¶