Table of Contents

Namespace Discord

Classes

ActionRowBuilder

Represents a class used to build Action rows.

ActionRowComponent

Represents a IMessageComponent Row for child components to live in.

AddGuildUserProperties

Properties that are used to add a new IGuildUser to the guild with the following parameters.

AllowedMentions

Defines which mentions and types of mentions that will notify users from the message content.

ApplicationCommandOptionChoiceProperties

Represents a choice for a IApplicationCommandInteractionDataOption. This class is used when making new commands.

ApplicationCommandOptionProperties

Represents a IApplicationCommandOption for making slash commands.

ApplicationCommandPermission

Application command permissions allow you to enable or disable commands for specific users or roles within a guild.

ApplicationCommandProperties

Represents the base class to create/modify application commands.

ApplicationInstallParams

Represents install parameters for an application.

AsyncEnumerableExtensions

An extension class for squashing IAsyncEnumerable<T>.

Attachment

Represents a message attachment found in a IUserMessage.

AttachmentExtensions
AudioChannelProperties

Provides properties that are used to modify an IAudioChannel with the specified changes.

AutoModRuleAction

Represents an action that will be preformed if a user breaks an IAutoModRule.

AutoModRuleActionProperties

Provides properties used to modify a AutoModRuleAction.

AutoModRuleProperties

Provides properties used to modify a IAutoModRule.

AutocompleteOption

Represents an autocomplete option.

AutocompleteResult

Represents a result to an autocomplete interaction.

BotGateway

Stores the gateway information related to the current bot.

ButtonBuilder

Represents a class used to build ButtonComponent's.

ButtonComponent

Represents a IMessageComponent Button.

CDN

Represents a class containing the strings related to various Content Delivery Networks (CDNs).

ChannelExtensions
ComponentBuilder

Represents a builder for creating a MessageComponent.

CustomStatusGame

A user's activity for their custom status.

DiscordClientExtensions

An extension class for the Discord client.

DiscordComparers

Represents a collection of IEqualityComparer<T> for various Discord objects.

DiscordConfig

Defines various behaviors of Discord.Net.

Embed

Represents an embed object seen in an IUserMessage.

EmbedAuthorBuilder

Represents a builder class for a author field.

EmbedBuilder

Represents a builder class for creating a RichEmbed.

EmbedBuilderExtensions

An extension class for building an embed.

EmbedFieldBuilder

Represents a builder class for an embed field.

EmbedFooterBuilder

Represents a builder class for an embed footer.

Emoji

A Unicode emoji.

Emote

A custom image-based emote.

EmoteProperties

Provides properties that are used to modify an Emote with the specified changes.

Format

A helper class for formatting characters.

ForumChannelProperties
ForumTagBuilder
ForumTagBuilderExtensions
ForumTagProperties
Game

A user's game status.

GameAsset

An asset for a RichGame object containing the text and image.

GameParty

Party information for a RichGame object.

GameSecrets

Party secret for a RichGame object.

GameTimestamps

Timestamps for a RichGame object.

GuildApplicationCommandPermission

Returned when fetching the permissions for a command in a guild.

GuildChannelProperties

Properties that are used to modify an IGuildChannel with the specified changes.

GuildEmote

An image-based emote that is attached to a guild.

GuildExtensions

An extension class for IGuild.

GuildFeatures
GuildIncidentsData
GuildIncidentsDataProperties
GuildOnboardingExtensions
GuildOnboardingPromptOptionProperties

Represents properties used to create or modify guild onboarding prompt option.

GuildOnboardingPromptProperties

Represents properties used to create or modify guild onboarding prompt.

GuildOnboardingProperties

Represents properties used to create or modify guild onboarding.

GuildProperties

Provides properties that are used to modify an IGuild with the specified changes.

GuildScheduledEventsProperties

Provides properties that are used to modify an IGuildScheduledEvent with the specified changes.

GuildUserProperties

Properties that are used to modify an IGuildUser with the following parameters.

GuildWidgetProperties

Provides properties that are used to modify the widget of an IGuild with the specified changes.

MentionUtils

Provides a series of helper methods for parsing mentions.

MessageActivity

An activity object found in a sent message.

MessageApplication
MessageCommandBuilder

A class used to build Message commands.

MessageCommandProperties

A class used to create message commands.

MessageComponent

Represents a component object used to send components with messages.

MessageExtensions

Provides extension methods for IMessage.

MessageInteraction<TUser>

Represents a partial IDiscordInteraction within a message.

MessageProperties

Properties that are used to modify an IUserMessage with the specified changes.

MessageReference

Contains the IDs sent from a crossposted message or inline reply.

MessageResolvedData
MessageRoleSubscriptionData

Represents a role subscription data in IMessage.

Modal

Represents a modal interaction.

ModalBuilder

Represents a builder for creating a Modal.

ModalComponent

Represents a component object used in Modals.

ModalComponentBuilder

Represents a builder for creating a ModalComponent.

ModifyApplicationProperties

Represents properties used to modify current application's bot.

Optional
PartialGuild

Represents a partial guild object.

ReorderChannelProperties

Provides properties that are used to reorder an IGuildChannel.

ReorderRoleProperties

Properties that are used to reorder an IRole.

RequestOptions

Represents options that should be used when sending a request.

RichGame

A user's Rich Presence status.

RoleConnection

Represents the connection object that the user has attached.

RoleConnectionMetadata

Represents the role connection metadata object.

RoleConnectionMetadataProperties

Properties object used to create or modify RoleConnectionMetadata object.

RoleConnectionProperties

Represents the properties used to modify user's RoleConnection.

RoleProperties

Properties that are used to modify an IRole with the specified changes.

RoleTags

Provides tags related to a discord role.

SelectMenuBuilder

Represents a class used to build SelectMenuComponent's.

SelectMenuComponent

Represents a select menu component defined at https://discord.com/developers/docs/interactions/message-components#select-menu-object

SelectMenuOption

Represents a choice for a SelectMenuComponent.

SelectMenuOptionBuilder

Represents a class used to build SelectMenuOption's.

SelfUserProperties

Properties that are used to modify the ISelfUser with the specified changes.

SessionStartLimit

Stores the information related to the gateway identify request.

SlashCommandBuilder

Represents a class used to build slash commands.

SlashCommandOptionBuilder

Represents a class used to build options for the SlashCommandBuilder.

SlashCommandProperties

Represents a class used to create slash commands.

SnowflakeUtils

Provides a series of helper methods for handling snowflake identifiers.

SpotifyGame

A user's activity for listening to a song on Spotify.

StageInstanceProperties

Represents properties to use when modifying a stage instance.

StickerPack<TSticker>

Represents a discord sticker pack.

StickerProperties

Represents a class used to modify stickers.

StreamingGame

A user's activity for streaming on services such as Twitch.

Tag<T>
TextChannelProperties

Provides properties that are used to modify an ITextChannel with the specified changes.

TextInputBuilder
TextInputComponent

Represents a IMessageComponent text input.

ThreadChannelProperties

Provides properties that are used to modify an IThreadChannel with the specified changes.

TokenUtils

Provides a series of helper methods for handling Discord login tokens.

UserCommandBuilder

A class used to build user commands.

UserCommandProperties

A class used to create User commands.

UserExtensions

An extension class for various Discord user objects.

VoiceChannelProperties

Provides properties that are used to modify an IVoiceChannel with the specified changes.

WebhookProperties

Properties used to modify an IWebhook with the specified changes.

WelcomeScreen
WelcomeScreenChannel
WelcomeScreenChannelProperties

Structs

ApplicationCommandInteractionMetadata

Represents the metadata of an application command interaction.

BulkBanResult

Represents a result of a bulk ban.

Cacheable<TEntity, TId>

Represents a cached entity.

Cacheable<TCachedEntity, TDownloadableEntity, TRelationship, TId>
ChannelPermissions
Color

Represents a color used in Discord.

DiscordError

Represents an error with a property.

DiscordJsonError

Represents a generic parsed json error received from discord after performing a rest request.

EmbedAuthor

A author field of an Embed.

EmbedField

A field for an Embed.

EmbedFooter

A footer field for an Embed.

EmbedImage

An image for an Embed.

EmbedProvider

A provider field for an Embed.

EmbedThumbnail

A thumbnail featured in an Embed.

EmbedVideo

A video featured in an Embed.

FileAttachment

Represents an outgoing file attachment used to send a file to discord.

ForumTag

A struct representing a forum channel tag.

GuildInventorySettings
GuildPermissions
Image

An image that will be uploaded to Discord.

LogMessage

Provides a message object used for logging purposes.

MessageComponentInteractionMetadata

Represents the metadata of a component interaction.

ModalSubmitInteractionMetadata

Represents the metadata of a modal interaction.

Optional<T>
Overwrite

Represent a permission object.

OverwritePermissions

Represents a container for a series of overwrite permissions.

ReactionMetadata

A metadata containing reaction information.

SKU
SelectMenuDefaultValue

Represents a default value of an auto-populated select menu.

TimestampTag

Represents a class used to make timestamps in messages. see https://discord.com/developers/docs/reference#message-formatting-timestamp-styles.

Interfaces

IActivity

A user's activity status, typically a Game.

IApplication

Represents a Discord application created via the developer portal.

IApplicationCommand

The base command model that belongs to an application.

IApplicationCommandInteraction

Represents an application command interaction.

IApplicationCommandInteractionData

Represents data of an Interaction Command, see https://discord.com/developers/docs/interactions/slash-commands#interaction-applicationcommandinteractiondata.

IApplicationCommandInteractionDataOption

Represents a option group for a command.

IApplicationCommandOption

Options for the IApplicationCommand.

IApplicationCommandOptionChoice

Specifies choices for command group.

IAttachment

Represents a message attachment found in a IUserMessage.

IAudioChannel

Represents a generic audio channel.

IAuditLogData

Represents data applied to an IAuditLogEntry.

IAuditLogEntry

Represents a generic audit log entry.

IAuditLogInfoModel
IAutoModRule

Represents a auto mod rule within a guild.

IAutocompleteInteraction

Represents a ApplicationCommandAutocomplete.

IAutocompleteInteractionData

Represents data for a slash commands autocomplete interaction.

IBan

Represents a generic ban object.

ICategoryChannel

Represents a generic category channel.

IChannel

Represents a generic channel.

IComponentInteraction

Represents an interaction type for Message Components.

IComponentInteractionData

Represents the data sent with the IComponentInteraction.

IConnection
ICustomSticker

Represents a custom sticker within a guild.

IDMChannel

Represents a generic direct-message channel.

IDeletable

Determines whether the object is deletable or not.

IDiscordClient

Represents a generic Discord client.

IDiscordInteraction

Represents a discord interaction.

IDiscordInteractionData

Represents an interface used to specify classes that they are a valid data type of a IDiscordInteraction class.

IEmbed

Represents a Discord embed object.

IEmote

Represents a general container for any type of emote in a message.

IEntitlement
IEntity<TId>
IForumChannel

Represents a forum channel in a guild that can create posts.

IForumTag

Represents a Discord forum tag

IGroupChannel

Represents a generic private group channel.

IGroupUser

Represents a Discord user that is in a group.

IGuild

Represents a generic guild/server.

IGuildChannel

Represents a generic guild channel.

IGuildOnboarding

Represents the guild onboarding flow.

IGuildOnboardingPrompt

Represents the guild onboarding prompt.

IGuildOnboardingPromptOption

Represents the guild onboarding prompt option.

IGuildScheduledEvent

Represents a generic guild scheduled event.

IGuildUser

Represents a generic guild user.

IIntegration

Holds information for an integration feature. Nullable fields not provided for Discord bot integrations, but are for Twitch etc.

IIntegrationAccount

Provides the account information for an IIntegration.

IIntegrationApplication

Provides the bot/OAuth2 application for an IIntegration.

IIntegrationChannel

Represents a channel in a guild that can create webhooks.

IInteractionContext

Represents the context of an Interaction.

IInvite

Represents a generic invite object.

IInviteMetadata

Represents additional information regarding the generic invite object.

IMediaChannel

Represents a media channel in a guild that can create posts.

IMentionable

Determines whether the object is mentionable or not.

IMessage

Represents a message object.

IMessageChannel

Represents a generic channel that can send and receive messages.

IMessageCommandInteraction

Represents a Message Command interaction.

IMessageCommandInteractionData

Represents the data tied with the IMessageCommandInteraction interaction.

IMessageComponent

Represents a message component on a message.

IMessageInteraction

Represents a partial IDiscordInteraction within a message.

IMessageInteractionMetadata

Represents the metadata of an interaction.

IModalInteraction

Represents an interaction type for Modals.

IModalInteractionData

Represents the data sent with the IModalInteraction.

INestedChannel

Represents a type of guild channel that can be nested within a category.

INewsChannel

Represents a generic news channel in a guild that can send and receive messages.

IPresence

Represents the user's presence status. This may include their online status and their activity.

IPrivateChannel

Represents a generic channel that is private to select recipients.

IRateLimitInfo

Represents a generic ratelimit info.

IReaction

Represents a generic reaction object.

IRestInteractionContext
IRole

Represents a generic role object to be given to a guild user.

IRouteMatchContainer

Represents a container for temporarily storing CustomId wild card matches of a component.

IRouteSegmentMatch

Represents an object for storing a CustomId wild card match.

ISelfUser

Represents the logged-in Discord user.

ISlashCommandInteraction

Represents a slash command interaction.

ISnowflakeEntity

Represents a Discord snowflake entity.

IStageChannel

Represents a generic Stage Channel.

ISticker

Represents a discord sticker.

IStickerItem

Represents a partial sticker item received with a message.

ISystemMessage

Represents a generic message sent by the system.

ITag
ITeam

Represents a Discord Team.

ITeamMember

Represents a Discord Team member.

ITextChannel

Represents a generic channel in a guild that can send and receive messages.

IThreadChannel

Represents a thread channel inside of a guild.

IThreadUser

Represents a Discord thread user.

IUpdateable

Defines whether the object is updateable or not.

IUser

Represents a generic user.

IUserCommandInteraction

Represents a User Command interaction.

IUserCommandInteractionData

Represents the data tied with the IUserCommandInteraction interaction.

IUserGuild
IUserMessage

Represents a generic message sent by a user.

IVoiceChannel

Represents a generic voice channel in a guild.

IVoiceRegion

Represents a region of which the user connects to when using voice.

IVoiceState

Represents a user's voice connection status.

IWebhook

Represents a webhook object on Discord.

IWebhookUser

Represents a Webhook Discord user.

Enums

ActionType

Representing a type of action within an IAuditLogEntry.

ActivityProperties

Flags for the Flags property, that are ORd together. These describe what the activity payload includes.

ActivityType

Specifies a Discord user's activity type.

AllowedMentionTypes

Specifies the type of mentions that will be notified from the message content.

ApplicationCommandOptionType

The option type of the Slash command parameter, See the discord docs.

ApplicationCommandPermissionTarget

Specifies the target of the permission.

ApplicationCommandType

Represents the types of application commands.

ApplicationDiscoverabilityState
ApplicationExplicitContentFilterLevel
ApplicationFlags

Represents public flags for an application.

ApplicationIntegrationType

Defines where an application can be installed.

ApplicationInteractionsVersion
ApplicationMonetizationEligibilityFlags

Gets the monetization eligibility flags for the application combined as a bitfield.

ApplicationMonetizationState
ApplicationRpcState
ApplicationStoreState
ApplicationVerificationState
AttachmentFlags
AutoModActionType
AutoModEventType

An enum indecating in what event context a rule should be checked.

AutoModTriggerType

An enum representing the type of content which can trigger the rule.

ButtonStyle

Represents different styles to use with buttons. You can see an example of the different styles at https://discord.com/developers/docs/interactions/message-components#buttons-button-styles

CacheMode

Specifies the cache mode that should be used.

ChannelFlags

Represents public flags for a channel.

ChannelPermission

Defines the available permissions for a channel.

ChannelType

Defines the types of channels.

ClientType

Defines the types of clients a user can be active on.

ComponentType

Represents a type of a component.

ConnectionState

Specifies the connection state of a client.

ConnectionVisibility

The visibility of the connected account.

DefaultApplications
DefaultMessageNotifications

Specifies the default message notification behavior the guild uses.

Direction

Specifies the direction of where entities (e.g. bans/messages) should be retrieved from.

DiscordErrorCode

Represents a set of json error codes received by discord.

DiscoveryEligibilityFlags

Gets the discovery eligibility flags for the application combined as a bitfield.

EmbedType

Specifies the type of embed.

EntitlementType
ExplicitContentFilterLevel
ForumLayout

Represents the layout type used to display posts in a forum channel.

ForumSortOrder

Defines the rule used to order posts in forum channels.

GatewayIntents
GuildFeature
GuildOnboardingMode

Defines the criteria used to satisfy Onboarding constraints that are required for enabling.

GuildOnboardingPromptType

Represents the guild onboarding option type.

GuildPermission

Defines the available permissions for a channel.

GuildScheduledEventPrivacyLevel

Represents the privacy level of a guild scheduled event.

GuildScheduledEventStatus

Represents the status of a guild event.

GuildScheduledEventType

Represents the type of a guild scheduled event.

GuildUserFlags

Represents public flags for a guild member.

ImageFormat

Specifies the type of format the image should return in.

IntegrationExpireBehavior

The behavior of expiring subscribers for an IIntegration.

InteractionContextType

Represents a context in Discord where an interaction can be used.

InteractionResponseType

The response type for an IDiscordInteraction.

InteractionType

Represents a type of Interaction from discord.

KeywordPresetTypes

An enum representing preset filter types.

LogSeverity

Specifies the severity of the log message.

LoginState

Specifies the state of the client's login status.

MembershipState

Represents the membership state of a team member.

MessageActivityType
MessageFlags
MessageSource

Specifies the source of the Discord message.

MessageType

Specifies the type of message.

MfaLevel

Specifies the guild's Multi-Factor Authentication (MFA) level requirement.

NsfwLevel
PermValue

Specifies the permission value.

PermissionTarget

Specifies the target of the permission.

PremiumTier
PremiumType

Specifies the type of subscription a user is subscribed to.

ReactionType
RetryMode

Specifies how a request should act in the case of an error.

RoleConnectionMetadataType

Represents the type of Application Role Connection Metadata.

RoleFlags
SKUFlags
SKUType
SelectDefaultValueType

Type of a SelectDefaultValueType.

StagePrivacyLevel

Represents the privacy level of a stage.

StickerFormatType

Defines the types of formats for stickers.

StickerType

Represents a type of sticker..

SubscriptionOwnerType
SystemChannelMessageDeny
TagHandling

Specifies the handling type the tag should use.

TagType

Specifies the type of Discord tag.

TargetUserType
TextInputStyle
ThreadArchiveDuration

Represents the thread auto archive duration.

ThreadType

Represents types of threads.

TimestampTagStyles

Represents a set of styles to use with a TimestampTag

TokenType

Specifies the type of token to use with the client.

UserProperties
UserStatus

Defines the available Discord user status.

VerificationLevel

Specifies the verification level the guild uses.

VideoQualityMode

Represents a video quality mode for voice channels.

WebhookType

Represents the type of a webhook.