JDA 5.2.1 API
Welcome to the documentation of the Java Discord API (JDA) library!
If you are new to JDA, you can check some of our official guides to get started:
There are also a few examples available to get inspired:
Other useful resources:
Package
Description
Annotations used for documentation.
The API features of JDA.
The audio API for Discord.
Audio send factories that can be implemented to generate
custom audio send packages to be provided to Discord.
Listeners that can be used to monitor
the
ConnectionStatus
or
ping of an existing audio connection.Implementation for
AuditLogEntry
and all utilities needed for its structure.Entities representing Discord API objects like Users and Channels
Types and enums related to AutoMod.
Configurations for AutoMod rules and triggers.
Top-level abstractions related to Discord channel types.
Marker interfaces for specific channel features.
Concrete channel types in Discord.
Types relevant for forum channels and forum posts.
Abstractions for higher-level features in channels, such as sending messages or audio.
Union types used for simple casting to more concrete types.
Types relating to unicode and custom emoji as used in the API.
Types relevant for custom guild stickers and nitro stickers.
Types relevant for guild templates.
The core events that are fired by this library, informing
the end-user about the state of the current JDA instance.
Events related to the configuration of AutoMod rules or AutoMod rules being triggered.
Events indicating that a new channel (MessageChannel / GuildChannel)
was either modified, created or deleted.
Events related to forum tags.
Events related to forum tags being modified.
Events indicating that a specific channel property was updated.
Events that track
added emojis
and removed emojis
.Events that track updates for existing
Custom Emojis
Events that indicate that a
Entitlement
is either created, updated, or deleted.Events for the state of
Guilds
such as whether the current logged in account joins/leaves a Guild.Events relating to invites being created or deleted in a guild.
Events for
Member
updates.Events for
PermissionOverride
updates.Gateway events for
ScheduledEvents
.Events for
ScheduleEvent
updates.Events indicating that a setting for a
Guild
has been updated.Events fired in the context of HTTP requests being processed.
Abstractions for interaction events.
Interaction events related to application commands.
Interaction events related to message components.
Events that are fired for
Messages
in
a MessageChannel
.Events indicating the
MessageReactions
of a Message
changed.Events that indicate that a
Role
is either created or deleted.Events that indicate that a
Role
has been updated with a new setting.Events indicating that one of the currently logged in
account's settings has been modified.
Events about the current gateway connection state.
Events indicating when a stage instance is created or deleted.
Events for stage instance updates.
Events that track
added stickers
and removed stickers
.Events that track updates for existing
GuildStickers
.Events related to thread visibility.
Events related to updates of the thread member list.
Events that indicate that a
User
presence has been updated, such as its avatar or game.Events related to user updates, such as the name or avatar.
All custom exceptions of the JDA library
EventManager and EventListener implementations and interfaces.
Abstractions for interaction types.
Types of interaction responses, like message replies or message edits.
Abstractions for application commands and related interactions.
Types and utilities for building application commands.
Interactions related to context menus.
Utilities for localization of application commands.
Types related to application command privileges, often referred to as command permissions.
Abstraction types for message and modal components.
Button components.
Select menu components, also known as dropdowns.
Text input components.
Modals used for interactions.
Managers that allow to modify (PATCH) existing entities
with either an update task or atomic setters.
Top-level channel manager.
Channel managers for specific attributes or channel features.
Concrete channel manager types for actual channel types.
Channel managers for higher level channel features, such as audio related settings.
Discord API communication features.
Extensions of
RestAction
that can be used to operate on a specific case before executing the request.RestAction types related to interaction responses.
RestAction
extensions
specifically designed to change the order of discord entities.Extensions of
RestAction
that allow
to access paginated discord endpoints like the message history of a MessageChannel
.Implementations for
ShardManager
which enable
auto-sharding.Package which contains all utilities for the JDA library.
Interfaces for read-only access to internal JDA cache.
Implementations for threading related functionality such as Thread-Factories.
Serialization features used for communication with Discord.
Utility classes to decode and encode Erlang External Term Format (ETF)
Utilities for message building and formatting.