All Classes and Interfaces
Class
Description
Manager providing functionality to update one or more fields for the logged in account.
Represents the type of account that is logged in.
Indicates that an operation is not possible unless the
AccountType
matches the one provided in AccountTypeException.getRequiredType()
Component which supports interactions via
ComponentInteraction
.One row of components.
Represents a Discord
Activity
.The activity being executed, differentiating between, amongst others, playing, listening and streaming.
Emoji for a custom status.
Represents the start and end timestamps for a running match
Enum representing the flags in a
RichPresence
Represents the operations used to whitelist/blacklist mentions.
Implementation for
IEventManager
which checks for SubscribeEvent
annotations on both
static and member methods.Represents a Discord Application from its bot's point of view.
Meta-data for the team of an application.
Options that can be applied to attachments in
MessageAction
.Represents a Guild Channel that is capable of handling audio.
AudioManager deals with creating, managing and severing audio connections to
VoiceChannels
.Controller used by JDA to ensure the native
binaries for opus en-/decoding are available.
Interface used to receive audio from Discord through JDA.
Interface used to send audio to Discord through JDA.
Extension of RestAction to allow setting a reason, only available to accounts of
AccountType.BOT
Plain-Old-Java-Object (POJO) representing a single
change for an
This object holds the
AuditLogEntry
!
This object holds the
old-
and new value
for the
updated field.Single entry for an
AuditLogPaginationAction
.Enum of possible/expected keys that can be provided
to
AuditLogEntry.getChangeByKey(AuditLogEntry.AuditLogKey
.Enum constants for possible options
Providing detailed description of possible occasions and expected types.
Providing detailed description of possible occasions and expected types.
PaginationAction
that paginates the audit logs endpoint.An
InteractionCallbackAction
that can be used to suggest auto-complete choices.The query input for an
auto-complete interaction
.Represents a standard
Guild
MessageChannel
.BaseGuildMessageChannelManager<T extends BaseGuildMessageChannel,M extends BaseGuildMessageChannelManager<T,M>>
Manager providing functionality common for all
BaseGuildMessageChannels
.Represents a Message Button.
Interaction on a
Button
component.Indicates that a custom
Button
on one of the bots messages was clicked by a user.The available styles used for
Buttons
.Flags used to enable cache services for JDA.
Read-only view on internal JDA cache of items.
Basic implementation of
CacheView
interface.Represents a channel category in the official Discord API.
An extension of
ChannelOrderAction
with
similar functionality, but constrained to the bounds of a single Category
.Abstract Channel interface for all
ChannelTypes
.Extension of
RestAction
specifically
designed to create a GuildChannel
.This enum represents the attributes of a channel that can be modified by events.
Manager providing functionality to update one or more fields for a
GuildChannel
.Enum used to differentiate between the different types of Discord channels.
Filter function for member chunking of guilds.
The type of client a user might be active on.
Iterator holding a resource that must be free'd by the consumer.
Constants representing main gateway close codes with association to an explaining message.
Represents a packet of combined audio data from 0 to n Users.
Represents a Discord slash-command.
Predefined choice used for options.
An Option for a command.
An Subcommand for a command.
An Subcommand Group for a command.
Possible command types
Interaction for auto-complete options in slash-commands.
Indicates that a user is typing in a
option
which
supports auto-complete
.Specialized
RestAction
used to create or update commands.Builder for Application Commands.
Specialized
RestAction
used to edit an existing command.Interaction of any Application Command.
Interactions which provide command data.
Specialized
RestAction
used to replace existing commands of a guild or globally.Privilege used to restrict access to a command within a
Guild
.The target type this privilege applies to.
Provides various static factory methods for building commands of different types.
Component of a Message.
The component types
Interaction on a message
ActionComponent
.Compression algorithms that can be used with JDA.
Implementation of
SessionController
which respects concurrent shard login.Used to monitor an audio connection, ping, and speaking users.
Represents the connection status of an audio connection.
Used to pass a context to async exception handling for debugging purposes.
Represents application comments which are invoked as context menu items in the client UI.
The target type, of a context interaction.
Represents a list of values used in communication with the Discord API.
Represents a map of values used in communication with the Discord API.
Enum constants representing possible types for a
DataObject
value.The default implementation of the
IAudioSendFactory
.The default implementation of the
IAudioSendSystem
.JDA's default
ShardManager
implementation.Used to create new instances of JDA's default
ShardManager
implementation.Specialized
CompletableFuture
used in combination with a scheduler.In combination with
Deprecated
specifies when this feature was marked as deprecated.Direct access to internal gateway communication.
Indicates that JDA has been disconnected from the remote server.
Builder system used to build
MessageEmbeds
.Represents the embedded resource type.
Represents a Discord Emoji.
Represents a Custom Emote.
Manager providing functionality to update one or more fields for an
Emote
.Indicates that an
Emote
was removed from a Guild.Indicates that the name of an
Emote
changed.Indicates that the role whitelist for an
Emote
changed.Utility class to simplify error handling with
RestActions
and ErrorResponses
.Constants for easy use in
ErrorResponseException
and ErrorHandler
.Indicates an unhandled error that is returned by Discord API Request using
It holds an
RestAction
It holds an
ErrorResponse
An error for a
ErrorResponseException.SchemaError
.Schema error which supplies more context to a ErrorResponse.
Top-level event type
All events JDA fires are derived from this class.
All events JDA fires are derived from this class.
JDA pushes
GenericEvents
to the registered EventListeners.Indicates that JDA encountered a Throwable that could not be forwarded to another end-user frontend.
Decodes an ETF encoded payload to a java object representation.
Encodes an object into a binary ETF representation.
Tags used for encoding and decoding for external terms.
Functionality annotated with ForRemoval will no longer be supported
and should not be used anymore in new code.
Encoding mode used by the gateway for incoming and outgoing payloads.
Flags which enable or disable specific events from the discord gateway.
Indicates that the gateway ping has been updated by the heartbeat cycle.
Indicates that a user is typing in an auto-complete interactive field.
Indicates that a
CommandInteraction
was used.Indicates that a
ComponentInteraction
was created in a channel.Indicates that a
ContextInteraction
was used.Indicates that an
Emote
was created/removed/updated.Indicates that an
Emote
was updated.Indicates that a
Guild
event is fired.Indicates that a
Guild
member event is fired.Indicates that a
Guild
member event is fired.Indicates that a
Guild
was updated.Indicates that a
Guild
voice event is fired.Requirements
Indicates that an
Interaction
was created.Indicates that a
Message
was created/deleted/changed.Indicates that a MessageReaction was added/removed.
Indicates that a
PermissionOverride
for a GuildChannel
was created, deleted, or updated.Indicates that a
Role
was created/deleted/changed.Indicates that a
Role
was updated.Indicates that a
SelfUser
changed or started an activity.Indicates that a
StageInstance
was created/deleted/changed.Indicates that a
StageInstance
was updated.Indicates that a
User
changed or started an activity.Indicates that the presence of a
User
has changed.Indicates that a user has updated their presence on discord.
Represents a Discord
Guild
.Represents a Ban object.
The boost tier for this guild.
The Explicit-Content-Filter Level of a Guild.
Meta-Data for a Guild
Represents the Multifactor Authentication level required by the Guild.
Represents the Notification-level of the Guild.
Represents the NSFW level for this guild.
Represents the idle time allowed until a user is moved to the
AFK
VoiceChannel
if one is set
(Guild.getAfkChannel()
).Represents the Verification-Level of the Guild.
RestAction
extension
specifically designed to allow for the creation of Guilds
.Indicates that a
Guild
became available.Represents a
Guild
channel.Indicates that you joined a
Guild
.Indicates that you left a
Guild
.Manager providing functionality to update one or more fields for a
Guild
.Indicates that a user was removed from a
Guild
.Fired for every
Member
update, regardless of cache.Indicates that a
Member
has agreed to Membership Screening requirements.Indicates that a
Member
had their time out changed.Represents all message channels present in guilds.
Indicates that a
This event is fired if a guild finished setting up during login phase.
Guild
finished setting up
This event is fired if a guild finished setting up during login phase.
Indicates that a guild failed to ready up and timed out.
Indicates that a
Guild
became unavailable.Indicates that the afk-channel of a
Guild
changed.Indicates that the
AFK-Timeout
of a Guild
changed.Indicates that the
boost count
of a Guild
changed.Indicates that the
boost tier
of a Guild
changed.Indicates that the community updates channel of a
Guild
changed.Indicates that the
description
of a Guild
changed.Indicates that the
ExplicitContentLevel
of a Guild
changed.Indicates that the features of a
Guild
changed.Indicates that the Icon of a
Guild
changed.Indicates that the
maximum member limit
of a Guild
changed.Indicates that the
maximum presences limit
of a Guild
changed.Indicates that the name of a
Guild
changed.Indicates that the
NotificationLevel
of a Guild
changed.Indicates that the owner of a
Guild
changed.Indicates that the rules channel of a
Guild
changed.Indicates that the splash of a
Guild
changed.Indicates that the system channel of a
Guild
changed.Indicates that the
vanity url
of a Guild
changed.Indicates that the
VerificationLevel
of a Guild
changed.Indicates that a
Member
was (un-)deafened.Indicates that a
Member
was (un-)deafened by a moderator.Indicates that a
Member
was (un-)muted by a moderator.Indicates that a
Member
connected to a AudioChannel
.Indicates that a
Member
disconnected from a AudioChannel
.Indicates that a
Member
moves between AudioChannels
.Indicates that a
Member
was (un-)muted.Indicates that a guild member has updated their
Request-to-Speak
.Indicates that a
Member
(un-)deafened itself.Indicates that a
Member
(un-)muted itself.Indicates that a
Member
started or ended a stream.Indicates that a
Member
was (un-)suppressed.Indicates that a
Member
joined or left an AudioChannel
.Indicates that a
Member
turned on their camera.Indicates that a
RestAction
has been executed.Factory interface for the creation of new
IAudioSendSystem
objects.Interface that acts as a UDP audio packet sending loop.
Interactions which allow auto-complete suggestion replies.
Represents a channel that can be a member of a
Category
.ICategorizableChannelManager<T extends ICategorizableChannel,M extends ICategorizableChannelManager<T,M>>
Icon containing a base64 encoded jpeg/png/gif/gifv image.
Supported image types for the Discord API.
Represents a GuildChannel that is capable of being copied.
Interactions which can be deferred.
An interface for JDA's EventManager system.
Represents a
GuildChannel
that can be the target of a Guild's invite.Represents a
GuildChannel
that is capable of containing members.Marks a mentionable entity.
Interactions which allow a target message to be edited on use.
Functionality annotated with Incubating might change in a future release.
Indicates that the user is missing a
Permission
for some action.Abstract representation for any kind of Discord interaction.
A callback action is used to acknowledge an
Interaction
.The possible types of interaction responses.
Exception caused by the failure of
ReplyAction
.Webhook API for an interaction.
Enum for interaction types.
An
IEventManager
implementation
that uses the EventListener
interface for
event listeners.Representation of a Discord Invite.
POJO for the channel information provided by an invite.
POJO for the target application information provided by an invite.
POJO for the group information provided by an invite.
POJO for the guild information provided by an invite.
POJO for the target of this invite.
Enum representing the type of an invite.
A TargetType indicates additional action to be taken by the client on accepting the invite,
typically connecting external services or launching external applications depending on the specific TargetType.
Invite
Builder system created as an extension of RestAction
Provides an easy way to gather and deliver information to Discord to create
Invites
.Represents the connection between a
IAudioSendSystem
and
JDA's internal audio system, providing access to audio packets built from data provided from
AudioSendHandlers
.Represents a
GuildChannel
that uses Permission Overrides
.IPermissionContainerManager<T extends IPermissionContainer,M extends IPermissionContainerManager<T,M>>
Marker for entities that hold Permissions within JDA
Represents a
GuildChannel
that has a position.IPositionableChannelManager<T extends IPositionableChannel,M extends IPositionableChannelManager<T,M>>
Interactions which allow message replies in the channel they were used in.
Marks a snowflake entity.
Component which can be inserted into a
LayoutComponent
.The core of JDA.
Represents the information used to create this shard.
Represents the connection status of JDA and its Main WebSocket.
Used to create new
JDA
instances.Contains information to this specific build of JDA.
Represents a top-level layout used for
ItemComponents
such as Buttons
.Represents an emote retrieved from
Guild.retrieveEmotes()
or Guild.retrieveEmoteById(long)
An abstract implementation of
EventListener
which divides Events
for you.Simple implementation of a
ClosableIterator
that uses a lock.Implements and algorithm that can strip or replace markdown in any supplied string.
Represents a Guild-specific User.
RestAction
extension
specifically designed to allow bots to add Users
to Guilds.Policy which decides whether a member (and respective user) should be kept in cache.
Represents a Text message received from Discord.
Represents a
Message
file attachment.Represents an
Interaction
provided with a Message
.Mention constants, useful for use with
Patterns
Enum representing the flags on a Message.
Extension of a default
RestAction
that allows setting message information before sending!Represents a
Message
activity.An enum representing
MessageActivity
types.Represents the
Application
of a MessageActivity, if it has been set.Builder system used to build
Messages
.Holds the available formatting used in
MessageBuilder.append(java.lang.CharSequence, net.dv8tion.jda.api.MessageBuilder.Formatting...)
Interface to allow custom implementation of Splitting rules for
MessageBuilder.buildAll(SplitPolicy...)
.Default
MessageBuilder.SplitPolicy
implementation.Indicates that a bulk deletion is executed in a
GuildMessageChannel
.Represents a Discord channel that can have
Messages
and files sent to it.Interaction with a message context menu command
Indicates that a message context command was used.
Indicates that a Message was deleted in a
MessageChannel
.A
InteractionCallbackAction
which can be used to edit the message for an interaction.Represents an embed displayed by Discord.
Class that represents the author of content, possibly including an icon
that Discord proxies.
Represents a field in an embed.
Class that represents a footer at the bottom of an embed
Represents the information provided to embed an image.
Multipurpose class that represents a provider of content,
whether directly through creation or indirectly through hosting.
Represents the information Discord provided about a thumbnail image that should be
displayed with an embed message.
Represents the information provided to embed a video.
Indicates that a Message contains an
Embed
in a MessageChannel
.Represents an access point to the
Message
history of a
MessageChannel
.Constructs a MessageHistory object with initially retrieved Messages before or after a certain pivot message id.
PaginationAction
that paginates the message history endpoint.An object representing a single MessageReaction from Discord.
Represents an Emoji/Emote of a MessageReaction
This is used to wrap both emojis and emotes
This is used to wrap both emojis and emotes
Indicates that a user added a reaction to a message
This includes unicode and custom emoji
This includes unicode and custom emoji
Indicates the the reactions of a message have been cleared by a moderator
Indicates that all reactions for a specific emoji/emote were removed by a moderator.
Indicates that a user removed the reaction on a message
Indicates that a Message was received in a
MessageChannel
.An object representing a reference in a Discord message.
An object representing a sticker in a Discord message.
Represents the different types of
Messages
that can be received from Discord.Indicates that a Message was edited in a
MessageChannel
.Indicates that the user is missing the
VIEW_CHANNEL
or VOICE_CONNECT
permission.Represents
BaseGuildMessageChannel
that are News Channels.Represents the online presence of a
Member
.Builder for a Slash-Command option.
Name/Value pair for a
CommandInteraction
option.The available types for
Command
options.A raw OPUS packet received from Discord that can be used for lazy decoding.
Extension of
RestAction
- Type: Void
that allows to modify the order of entities provided as an ArrayList
.RestAction
specification used
to retrieve entities for paginated endpoints (before, after, limit).Iterator implementation for a
PaginationAction
.Represents the bit offsets used by Discord for Permissions.
Indicates that the currently logged in account does not meet the specified
Permission
from PermissionException.getPermission()
Extension of
AuditableRestAction
specifically
designed to create a PermissionOverride
for a GuildChannel
.Indicates that a
PermissionOverride
of a GuildChannel
has been created.Indicates that a
PermissionOverride
of a GuildChannel
has been deleted.Indicates that a
PermissionOverride
of a GuildChannel
has been updated.Manager providing functionality to update one or more fields for a
PermissionOverride
.The Presence associated with the provided JDA instance
Represents the connection used for direct messaging.
Indicates that we received a
429: Too Many Requests
responseWrapper for the raw dispatch event received from discord.
PaginationAction
that paginates the reaction users endpoint.Indicates that JDA finished loading all entities.
Indicates if JDA successfully re-established its connection to the gateway.
Represents the Regions used for Audio connections.
Functionality annotated with ReplaceWith should be replaced immediately
with the mentioned code fragment.
A
InteractionCallbackAction
which can be used to send a message reply for an interaction.A class representing a terminal between the user and the discord API.
Represents a computation or task result.
Indicates that JDA successfully resumed its connection to the gateway.
Used to hold additional information about a users
Activity
relevant to Rich Presence.Used to hold information on images within a Rich Presence profile
Holds information on a player's party
Represents a
Guild
's Role.Tags associated with this role.
Extension of
RestAction
specifically
designed to create a Role
.Indicates that a
Role
was created.Indicates that a
Role
was deleted.An object representing a Role's icon.
Manager providing functionality to update one or more fields for a
Role
.Indicates that a
Role
updated its color.Indicates that a
Role
updated its hoist state.Indicates that the Icon of a
Role
changed.Indicates that a
Role
updated its mentionable state.Indicates that a
Role
updated its name.Indicates that a
Role
updated its permissions.Indicates that a
Role
updated its position.Represents a select menu in a message.
A preconfigured builder for the creation of select menus.
Component Interaction for a
SelectMenu
.Indicates that a custom
SelectMenu
on one of the bots messages was used by a user.One of the possible options provided in a
SelectMenu
.Indicates that the avatar of the current user changed.
Indicates that the discriminator of the current user changed.
Indicates that the mfa level of the current user changed.
Indicates that the name of the current user changed.
Indicates that the verification state of the current user changed.
Represents the currently logged in account.
Allows custom serialization for JSON payloads of an object.
Allows custom serialization for JSON payloads of an object.
Controls states and behaviour of one or multiple
JDA
instances.Represents a WebSocketClient request to start a session.
POJO containing the gateway endpoint and recommended shard total for a shard manager.
Read-only view on internal ShardManager cache of JDA instances.
This class acts as a manager for multiple shards.
Indicates that JDA has fully disconnected from Discord and will not attempt to reconnect again.
Extension of
CommandData
which allows setting slash-command specific settings such as options and subcommands.Interaction with a slash command
Indicates that a slash command was used in a
MessageChannel
.CacheView
implementation
specifically to view ISnowflake
implementations.Specialized
CacheView
for entities that occur in a specified order.Flags representing the speaking modes used by discord users.
Represents a Stage Channel.
A Stage Instance holds information about a live stage.
The privacy level for a stage instance.
Specialized
RestAction
used to create a StageInstance
Indicates that a
StageInstance
was created.Indicates that a
StageInstance
was deleted.Manager providing functionality to update one or more fields for a
StageInstance
.Indicates that a
StageInstance
updated its PrivacyLevel
.Indicates that a
StageInstance
updated its topic
.Indicates that our
Status
changed.Represents a Discord Store GuildChannel.
Builder for a Slash-Command subcommand.
Builder for a Slash-Command group.
Annotation used by the
AnnotatedEventManager
this is only picked up if the event manager implementation has been set to use the AnnotatedEventManager
via JDABuilder.setEventManager(IEventManager)
TargetType for an
This describes what kind of Discord entity is being targeted by an auditable action!
ActionType
This describes what kind of Discord entity is being targeted by an auditable action!
Represents an asynchronous task.
Member of a
ApplicationTeam
.The membership state on the team.
Representation of a Discord Guild Template
This class is immutable.
This class is immutable.
POJO for the channels information provided by a template.
Represents the specific
Role
permission overrides that can be set for channels.POJO for the guild information provided by a template.
Manager providing functionality to update one or more fields for a
Template
.POJO for the roles information provided by a template.
Represents a standard Discord Text GuildChannel.
Manager providing functionality common for all
TextChannels
.The values permitted for the auto archive duration of a
ThreadChannel
.Extension of
RestAction
specifically
designed to create a ThreadChannel
.Manager providing functionality common for all
ThreadChannels
.PaginationAction
that paginates the thread members endpoint.This event is dispatched when a
ThreadChannel
that JDA did have access to is now inaccessible (due to permissions).Thread-Local audit-log reason used automatically by
AuditableRestAction
instances
when no other reason was set.Allows to use try-with-resources blocks for setting reasons
Called by
DefaultShardManager
when building a JDA instance.This event is dispatched when a
ThreadChannel
that JDA didn't previously have access to (due to permissions) is now visible.Utility enum used to provide different markdown styles for timestamps.
Utility class representing Discord Markdown timestamps.
Indicates that you joined a
Guild
that is not yet available.Indicates that you left a
Guild
that is not yet available.Indicates that a value of an entity was updated
Represents a Discord User.
Represents the information contained in a
User
's profile.Represents the bit offsets used by Discord for public flags
Represents a packet of User specific audio.
Interaction with a user context menu command
Indicates that a user context command was used.
Indicates that a
User
started typing.Indicates that the activities of a guild member changed.
Indicates that the Avatar of a
User
changed.Indicates that the discriminator of a
User
changed.Indicates that the username of a
User
changed.Indicates that the
OnlineStatus
of a User
changed.Meta data for the vanity invite of a guild
Represents a Discord Voice GuildChannel.
Interceptor used to handle critical voice dispatches.
Wrapper for a Voice Server Update
Wrapper for a Voice State Update
Abstraction for all relevant voice updates
An object representing Webhooks in Discord
Partial Channel which references the source channel for a follower webhook.
Partial Guild which references the source guild for a follower webhook.
Webhook
Builder system created as an extension of RestAction
Provides an easy way to gather and deliver information to Discord to create
Webhooks
.Interface which allows sending messages through the webhooks API.
Manager providing functionality to update one or more fields for a
Webhook
.Extension of a default
RestAction
that allows setting message information before sending!The WidgetUtil is a class for interacting with various facets of Discord's
guild widgets
Represents the available banner types
Each of these has a different appearance:
Each of these has a different appearance:
Represents the color scheme of the widget
These color themes match Discord's dark and light themes
These color themes match Discord's dark and light themes