Class SlashCommandProperties
Slash commands are application commands that are invoked by typing a slash (/) in the chat input box. They allow users to interact with your application.
public class SlashCommandProperties : ApplicationCommandProperties, IJsonSerializable
- Inheritance
-
SlashCommandProperties
- Implements
- Inherited Members
Constructors
SlashCommandProperties(string, string)
Slash commands are application commands that are invoked by typing a slash (/) in the chat input box. They allow users to interact with your application.
public SlashCommandProperties(string name, string description)
Parameters
name
stringName of the command (1-32 characters). Must be lowercase.description
stringDescription of the command (1-100 characters).
Properties
Description
Description of the command (1-100 characters).
[JsonPropertyName("description")]
public string Description { get; set; }
Property Value
DescriptionLocalizations
Localizations of Description (1-100 characters each).
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
[JsonPropertyName("description_localizations")]
public IReadOnlyDictionary<string, string>? DescriptionLocalizations { get; set; }
Property Value
Options
Parameters for the command (max 25).
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
[JsonPropertyName("options")]
public IEnumerable<ApplicationCommandOptionProperties>? Options { get; set; }
Property Value
Methods
AddContexts(params IEnumerable<InteractionContextType>)
Interaction context(s) where the command can be used.
public SlashCommandProperties AddContexts(params IEnumerable<InteractionContextType> contexts)
Parameters
contexts
IEnumerable<InteractionContextType>
Returns
AddIntegrationTypes(params IEnumerable<ApplicationIntegrationType>)
Installation context(s) where the command is available.
public SlashCommandProperties AddIntegrationTypes(params IEnumerable<ApplicationIntegrationType> integrationTypes)
Parameters
integrationTypes
IEnumerable<ApplicationIntegrationType>
Returns
AddOptions(params IEnumerable<ApplicationCommandOptionProperties>)
Parameters for the command (max 25).
public SlashCommandProperties AddOptions(params IEnumerable<ApplicationCommandOptionProperties> options)
Parameters
Returns
WithContexts(IEnumerable<InteractionContextType>?)
Interaction context(s) where the command can be used.
public SlashCommandProperties WithContexts(IEnumerable<InteractionContextType>? contexts)
Parameters
contexts
IEnumerable<InteractionContextType>
Returns
WithDMPermission(bool?)
Indicates whether the command is available in DMs with the app.
[Obsolete("Replaced by 'Contexts'.")]
public SlashCommandProperties WithDMPermission(bool? dMPermission = true)
Parameters
dMPermission
bool?
Returns
WithDefaultGuildUserPermissions(Permissions?)
Default required permissions to use the command.
public SlashCommandProperties WithDefaultGuildUserPermissions(Permissions? defaultGuildUserPermissions)
Parameters
defaultGuildUserPermissions
Permissions?
Returns
WithDefaultPermission(bool?)
Indicates whether the command is enabled by default when the app is added to a guild.
[Obsolete("Replaced by 'DefaultGuildUserPermissions'.")]
public SlashCommandProperties WithDefaultPermission(bool? defaultPermission = true)
Parameters
defaultPermission
bool?
Returns
WithDescription(string)
Description of the command (1-100 characters).
public SlashCommandProperties WithDescription(string description)
Parameters
description
string
Returns
WithDescriptionLocalizations(IReadOnlyDictionary<string, string>?)
Localizations of Description (1-100 characters each).
public SlashCommandProperties WithDescriptionLocalizations(IReadOnlyDictionary<string, string>? descriptionLocalizations)
Parameters
descriptionLocalizations
IReadOnlyDictionary<string, string>
Returns
WithIntegrationTypes(IEnumerable<ApplicationIntegrationType>?)
Installation context(s) where the command is available.
public SlashCommandProperties WithIntegrationTypes(IEnumerable<ApplicationIntegrationType>? integrationTypes)
Parameters
integrationTypes
IEnumerable<ApplicationIntegrationType>
Returns
WithName(string)
Name of the command (1-32 characters).
public SlashCommandProperties WithName(string name)
Parameters
name
string
Returns
WithNameLocalizations(IReadOnlyDictionary<string, string>?)
Localizations of Name (1-32 characters each).
public SlashCommandProperties WithNameLocalizations(IReadOnlyDictionary<string, string>? nameLocalizations)
Parameters
nameLocalizations
IReadOnlyDictionary<string, string>
Returns
WithNsfw(bool)
Indicates whether the command is age-restricted.
public SlashCommandProperties WithNsfw(bool nsfw = true)
Parameters
nsfw
bool
Returns
WithOptions(IEnumerable<ApplicationCommandOptionProperties>?)
Parameters for the command (max 25).
public SlashCommandProperties WithOptions(IEnumerable<ApplicationCommandOptionProperties>? options)
Parameters
Returns
WriteTo(Utf8JsonWriter)
public override void WriteTo(Utf8JsonWriter writer)
Parameters
writer
Utf8JsonWriter