Table of Contents

Entity Types

A list of all Discord.Net entities, what they can be cast to and what their properties are.

Note

All interfaces have the same inheritance tree for both Socket and Rest entities. Entities with that have been marked red are exclusive to the project they source from.

Channels

IChannelChart

Message Channels

  • A Text Channel (ITextChannel) is a message channel from a Guild.
  • A Thread Channel (IThreadChannel) is a thread channel from a Guild.
  • A News Channel (INewsChannel) (also goes as announcement channel) is a news channel from a Guild.
  • A DM Channel (IDMChannel) is a message channel from a DM.
  • A Group Channel (IGroupChannel) is a message channel from a Group.
    • This is rarely used due to the bot's inability to join groups.
  • A Private Channel (IPrivateChannel) is a DM or a Group.
  • A Message Channel (IMessageChannel) can be any of the above.

Misc Channels

  • A Guild Channel (IGuildChannel) is a guild channel in a guild.
    • This can be any channels that may exist in a guild.
  • A Voice Channel (IVoiceChannel) is a voice channel in a guild.
  • A Stage Channel (IStageChannel) is a stage channel in a guild.
  • A Category Channel (ICategoryChannel) is a category that holds one or more sub-channels.
  • A Nested Channel (INestedChannel) is a channel that can exist under a category.

Messages

IMessageChart

  • A Rest Followup Message (RestFollowupMessage) is a message returned by followup on on an interaction.
  • A Rest Interaction Message (RestInteractionMessage) is a message returned by the interaction's original response.
  • A Rest User Message (RestUserMessage) is a message sent over rest; it can be any of the above.
  • An User Message (IUserMessage) is a message sent by a user.
  • A System Message (ISystemMessage) is a message sent by Discord itself.
  • A Message (IMessage) can be any of the above.

Users

IUserChart

  • A Guild User (IGuildUser) is a user available inside a guild.
  • A Group User (IGroupUser) is a user available inside a group.
    • This is rarely used due to the bot's inability to join groups.
  • A Self User (ISelfUser) is the bot user the client is currently logged in as.
  • An User (IUser) can be any of the above.

Interactions

IInteractionChart

Other types:

Emoji

  • An Emote (Emote) is a custom emote from a guild.
    • Example: <:dotnet:232902710280716288>
  • An Emoji (Emoji) is a Unicode emoji.
    • Example: 👍

Stickers

  • A Sticker (ISticker) is a standard Discord sticker.
  • A Custom Sticker (ICustomSticker) is a Guild-unique sticker.

Activity

  • A Game (Game) refers to a user's game activity.
  • A Rich Presence (RichGame) refers to a user's detailed gameplay status.
  • A Streaming Status (StreamingGame) refers to user's activity for streaming on services such as Twitch.
  • A Spotify Status (SpotifyGame) (2.0+) refers to a user's activity for listening to a song on Spotify.