Connect Discord Bot to Definable AI
Discordbot refers to automated programs on Discord servers, performing tasks like moderation, music playback, and user engagement to enhance community interactions
About Discord Bot
Discord Bot is a productivity tool. Connect it to Definable AI with one-click OAuth2 — no API keys or custom code required.
What you can automate with Discord Bot
Use Definable AI's agent platform to trigger workflows from Discord Bot, process results with 50+ AI models, and sync data across 900+ connected apps.
Tools & Actions (166 available)
- Add follower to channel via webhook: Follows an Announcement Channel (News Channel) to relay its messages to a target channel via webhook. The bot must have MANAGE_WEBHOOKS permission in the target channel (`webhook_channel_id`). The source channel must be an Announcement Channel (requires server to have Community features enabled).
- Add guild member: Adds a user (who is not already a member) to a guild using their `access_token` (which must have `guilds.join` scope), optionally setting nickname, roles, mute/deaf status, or flags.
- Add reaction to message: Adds an emoji reaction (Unicode or custom) from the authenticated bot to a specific message in a Discord channel. Returns 204 No Content on success. Requires READ_MESSAGE_HISTORY permission, and ADD_REACTIONS permission if no one else has reacted with this emoji yet. Supports both Unicode emojis (e.g., 👍) and custom server emojis using 'name:id' format.
- Add recipient to group channel: Adds a user to a Discord group Direct Message (DM) channel. IMPORTANT: This action requires a user OAuth2 access token with the 'gdm.join' scope in the access_token parameter. Bot tokens cannot be used for this endpoint as bots cannot join or manage group DMs per Discord's API limitations. The user being added must also have authorized your application with the gdm.join scope. Note: This endpoint was designed for the deprecated GameBridge SDK and may have limited functionality.
- Add thread member: Adds a user to a specific, unarchived thread; the user must have access to the thread's parent channel, and for private threads, the bot must already be a member.
- Assign role to guild member: Assigns a role to a guild member, provided the bot has 'Manage Roles' permission in the guild and the role to be assigned is hierarchically lower than the bot's highest role.
- Ban user from guild: Permanently bans a user from a Discord guild, optionally deleting their recent messages (specify deletion period in seconds OR days, not both).
- Bulk ban users in guild with message deletion option: Bans up to 200 users from a Discord guild, optionally deleting their recent messages; the bot must have 'Ban Members' permission in the guild, and this action is irreversible.
- Bulk delete messages in channel: Atomically bulk deletes messages in a Discord channel for moderation or maintenance; deletion may not be instantaneous and messages are unrecoverable.
- Create Channel Invite: Creates a new invite link for the specified Discord channel. The bot must have 'CREATE_INSTANT_INVITE' permission for that channel. Optionally configure the invite's expiration time, usage limit, and other properties. Returns the invite code and details including a shareable invite URL (format: https://discord.gg/{code}).
- Create Stage Instance: Creates a new Stage instance in a Stage channel (channel type 13) for hosting live audio events with speakers and listeners. Requires MANAGE_CHANNELS, MUTE_MEMBERS, and MOVE_MEMBERS permissions. A Stage channel can only have one active Stage instance at a time.
- Create application command objects: Creates a new global Discord application command, accessible across guilds and in DMs (if `dm_permission` is true), noting global commands can take up to an hour to propagate and have registration limits; for guild-specific commands, use a different action.
- Create channel webhook: Creates a webhook in a specified Discord channel for external applications to post messages, provided the caller has 'MANAGE_WEBHOOKS' permission in that channel.
- Create guild application command: Creates a new guild-specific application command (slash, user, or message) in Discord; command name must be unique per type within the guild (max 100 total commands), and client UI updates may take up to an hour.
- Create guild auto moderation rule: Creates a new auto moderation rule for a Discord guild to automatically moderate content. Requires 'MANAGE_GUILD' permission. Use this to set up filters for profanity, spam, excessive mentions, or custom keywords. Each rule has a trigger type (what to look for), trigger metadata (specific configuration), and actions (what to do when triggered).
- Create guild channel: Creates a new Discord channel (text, voice, category, etc.) within a guild, with options for permissions, topic, and type-specific settings.
- Create guild emoji: Creates a new custom emoji in a specified Discord guild, requiring `CREATE_EXPRESSIONS` permission and adherence to guild emoji limits.
- Create guild scheduled event: Creates a new scheduled event in a Discord guild. Events can be hosted in stage channels, voice channels, or external locations. Required fields vary by entity_type: STAGE_INSTANCE/VOICE require channel_id, while EXTERNAL requires entity_metadata with a location and scheduled_end_time.
- Create guild sticker: Uploads a PNG, APNG, or Lottie JSON file (max 512KB) as a new custom sticker to the specified Discord guild; requires 'Manage Expressions' permissions and sufficient server boost level for sticker slots.
- Create guild template: Creates a template of an existing Discord guild's structure (settings, roles, channels) but not its content (e.g., messages, members).
- Create new guild object: Creates a new Discord guild (server) with the specified name, roles, and channels; icon must be a base64 encoded 128x128 image, and if `afk_channel_id` is set, `afk_timeout` must also be set.
- Create new thread in channel: Creates a new thread in a text or announcement Discord channel; requires a 'name' and optionally other details (e.g., 'auto_archive_duration', an initial 'message') in the request body.
- Create role with guild id: Creates a new role in a Discord guild with customizable name, permissions, color, hoist, mentionability, and icon; `icon` (custom image hash) and `unicode_emoji` (standard emoji) are mutually exclusive.
- Create thread from message: Creates a new thread from a specific message in a Discord channel, requiring `CREATE_PUBLIC_THREADS` permission (and `SEND_MESSAGES` if in a forum/media channel).
- Crosspost channel message: Crossposts a message from an announcement channel to all following channels, provided the message has not been previously crossposted and is not a system message or a message sent by a webhook.
- Delete all reactions from message: Deletes all reactions from a message in a Discord channel. This removes reactions from all users, not just the bot. Requires the bot to have the 'MANAGE_MESSAGES' permission in the channel. Returns HTTP 204 No Content on success.
- Delete application command: Permanently deletes a global application command (slash command, user command, or message command) from your Discord bot. This action is irreversible and removes the command globally. The command will no longer appear in Discord clients. To delete guild-specific commands, use the delete_guild_application_command action instead. Note: This deletes global commands which can take up to 1 hour to fully propagate across all Discord clients.
- Delete channel by id: Permanently deletes a Discord channel by its ID; this action is irreversible and the channel must exist and be deletable.
- Delete channel message: Permanently and irreversibly deletes a message from a specified Discord channel.
- Delete channel message reaction by emoji: Removes all reactions for a specific emoji from a message in a Discord channel. This action deletes all user reactions for a given emoji on a specific message. It requires the bot to have the MANAGE_MESSAGES permission in the channel. The operation is irreversible and will fire a Message Reaction Remove Emoji Gateway event. Common use cases: - Cleaning up unwanted reactions from a specific emoji - Managing reactions in moderation scenarios - Resetting poll or voting mechanisms that use reactions Note: This removes ALL user reactions for the specified emoji, not just the bot's reaction. To remove only the bot's reaction, use the delete_my_message_reaction action instead.
- Delete channel permission override: Removes channel-specific permission overwrites for a user or role, reverting them to default permissions inherited from the server or category. Requires MANAGE_ROLES permission. Only works for guild channels (not DMs). Use this to revoke special channel access or restrictions previously set via permission overwrites. Fires a Channel Update Gateway event. Returns 204 No Content on success. This action is irreversible - to restore permissions, you must recreate the overwrite.
- Delete channel thread member: Removes a user from a specified, unarchived thread in a Discord channel.
- Delete guild auto moderation rule: Deletes a specific auto-moderation rule from a Discord guild.
- Delete guild by id: Permanently deletes a specified Discord guild (server); the authenticated user must be the owner of the guild.
- Delete guild command: Permanently deletes a specific application command (e.g., slash, user, or message) for an application from a Discord guild, used to remove outdated or unnecessary commands.
- Delete guild emoji by id: Permanently deletes a specified custom emoji from a guild, requiring 'Manage Expressions' permissions; cannot delete default emojis and is irreversible.
- Delete guild integration: Permanently deletes a specific integration from a Discord guild, removing any associated webhooks and kicking the bot if present. Requires MANAGE_GUILD permission. Important: Bots can only delete their own integration; attempting to delete other integrations returns 403 Missing Access.
- Delete guild member by id: Removes (kicks) a member from a Discord guild; the user must be an existing member of the specified guild, and this action is permanent.
- Delete guild member role: Removes a specified role from a member of a Discord guild. This action requires the bot to have the MANAGE_ROLES permission in the guild, and the role being removed must be hierarchically lower than the bot's highest role. The operation is idempotent - it succeeds (HTTP 204) even if the member does not currently have the specified role. Fires a Guild Member Update Gateway event when successful.
- Delete guild scheduled event: Permanently deletes a specific scheduled event from a Discord guild; this action is irreversible.
- Delete guild sticker: Permanently deletes a custom sticker from a Discord guild; the specified guild and sticker must exist, and this action is irreversible.
- Delete guild template by code: Deletes an existing guild template by its unique code from a specified guild, returning the deleted template's details.
- Delete invite via code: Revokes a Discord server invite using its unique code, permanently preventing new joins via this link (does not affect existing members); requires 'Manage Server' or 'Manage Invites' permissions on the server.
- Delete original webhook message: Permanently deletes an existing original message posted by a webhook (using its ID and token), optionally within a specific thread.
- Delete role from guild: Permanently deletes a specified role from a Discord guild, revoking it from all members; requires 'Manage Roles' permission and the target role must be lower in hierarchy than the bot's highest role.
- Delete stage instance by channel id: Deletes the Stage Instance for the given `channel_id`, permanently ending its live audio event.
- Delete user reaction from message: Removes a specific user's emoji reaction from a message; requires 'Manage Messages' permission if deleting reactions from other users.
- Delete user reaction on message: Removes the authenticated user's own emoji reaction, which they must have previously added, from a specific message in a Discord channel; this action is irreversible and cannot remove others' reactions.
- Delete webhook by id: Permanently deletes a specified, existing Discord webhook by its unique ID; this action is irreversible.
- Delete webhook message: Deletes a message previously sent by the specified webhook, optionally within a specific thread.
- Delete webhook using id and token: Permanently deletes a Discord webhook specified by its ID and token; this action is irreversible.
- Fetch application command by id: Fetches the details of a specific, existing application command, identified by its application Snowflake ID and command Snowflake ID.
- Fetch emoji by guild and id: Retrieves details for a specific custom emoji within a specified Discord guild, requiring valid and accessible guild and emoji IDs.
- Fetch guild application command by id: Fetches detailed information for a specific application command within a Discord guild, identified by `application_id`, `guild_id`, and `command_id`.
- Fetch guild commands via application id: Fetches all application command definitions (slash, user, and message types) for a specific application within a given Discord guild, optionally including localizations; does not return permissions or usage statistics.
- Fetch messages from channel: Retrieves historical messages from a specified, accessible Discord channel, typically newest first; for real-time messages, use Discord's WebSocket Gateway API.
- Fetch voice regions list: Lists all available Discord voice regions with their ID, name, operational status (custom, deprecated, optimal), noting that availability may vary by server.
- Get Guild Welcome Screen: Retrieves the configured welcome screen for a Discord guild, showing the welcome message and channel recommendations displayed to new members when they join. Requires the guild to have the WELCOME_SCREEN_ENABLED feature.
- Get application guild command permissions: Call this action to retrieve all explicitly set guild-level permission settings for all commands of a specific application within a given guild, typically for auditing or troubleshooting command access.
- Get archived private threads by channel id: Lists a channel's private archived threads, sorted by most recent archival, requiring view access to them.
- Get archived public threads by channel id: Lists public archived threads in an accessible Discord channel, returning an empty list if none exist; does not list private or active threads.
- Get channel message reaction by emoji: Fetches a list of users who reacted to a specific message with a given emoji in a Discord channel; retrieves users for one emoji at a time.
- Get gateway details: Retrieves the WebSocket URL to connect to Discord's Gateway for receiving real-time events.
- Get guild audit logs by guild id: Retrieves audit log entries (e.g., message deletions, member kicks/bans, role changes) for a specified Discord guild, requiring 'VIEW_AUDIT_LOG' permission.
- Get guild members: Retrieves members for a Discord guild; requires a valid guild_id for an existing guild.
- Get guild onboarding by id: Retrieves the onboarding settings for a specified Discord guild, including prompts, options, default channels, and enabled status, to examine its new member guidance process when the guild_id is known and accessible.
- Get guild scheduled event by id: Retrieves a specific scheduled event from a Discord guild by its ID, optionally including the count of subscribed users.
- Get guild templates by guild id: Retrieves all guild templates for an existing Discord guild, specified by its ID.
- Get guild widget png: Retrieves the widget PNG image for a Discord guild. Returns a PNG shield-style badge showing guild information. Use when you need to display guild widget as an image. The widget must be enabled for the guild.
- Get oauth2 applications for current user: Retrieves detailed information about the OAuth2 application associated with the current authentication; cannot query other applications.
- Get oauth2 keys: Retrieves Discord's OAuth2 public keys (JWK format) for verifying access tokens; keys may rotate, so refresh caches periodically.
- Get private archived threads for user: Retrieves private archived threads from a specified channel that the current user is a member of.
- Get user role connection: Fetches the role connection object for the current user for a specified Discord application.
- Get your applications: Retrieves detailed information about the current authenticated Discord application.
- Github action webhooks processing: Forwards GitHub event notifications to a Discord channel via a webhook configured for GitHub-formatted payloads (URL ending in `/github`).
- Initiate user channel with recipient: Creates a new direct message (DM) channel or retrieves an existing one, using `recipient_id` for a 1-on-1 DM or `access_tokens` for a group DM; this action only establishes or fetches the channel and does not send messages.
- Join thread: Joins the authenticated user to a thread specified by `channel_id`; use this when the user is not already a member, for archived threads, or for threads requiring explicit joining, provided the thread is joinable, not locked or full, and the user has permissions.
- Leave Guild: Enables the bot to leave a specified Discord guild (server) of which it is a member but not the owner; this action is irreversible and the bot must be re-invited to rejoin.
- List Channel Invites: Fetches all active invites for a given Discord channel (read-only). Requires MANAGE_CHANNELS permission. Returns a list of invite objects with metadata (uses, max_uses, creator, timestamps, etc.). Response structures vary by invite type (guild, DM, stage instance, scheduled event).
- List active threads in guild: Retrieves all active (non-archived) threads in a Discord guild that the bot can access. Returns both public and private threads that are currently active, along with thread member information for threads the bot has joined. Archived threads are excluded from results.
- List commands for application: Fetches all global application commands for the specified Discord application ID; does not fetch guild-specific commands.
- List guild bans: Fetches a list of users banned from a specified Discord guild; `before`/`after` parameters require user IDs from previous results for correct pagination.
- List guild integrations: Lists all integration objects for a specified Discord guild.
- List guild regions: Fetches a list of available voice regions for a specified Discord guild.
- List guild roles: Fetches all roles in a Discord guild, providing details for each role but not user assignments; `guild_id` must be valid.
- List sticker packs: Fetches sticker packs available to Nitro subscribers on Discord, excluding custom or guild-specific ones.
- List thread members in channel: Retrieves members of a specified Discord thread, with an option to include full guild member objects for each.
- Modify application by id: Updates a Discord application's settings using its `application_id`; `max_participants` requires the `APPLICATION_EMBEDDED_ACTIVITIES` flag, and `team_id`, `type`, or `install_params` must be `null` if specified.
- Modify channel permissions: Updates or creates a permission overwrite for a role (type `0`) or member (type `1`) specified by `overwrite_id` within an existing Discord channel (`channel_id`), using `allow` and `deny` bitwise values to precisely control permissions.
- Modify guild auto moderation rule: Updates an existing auto-moderation rule, identified by `guild_id` and `rule_id` in the path, with new values for rule properties (e.g., `name`, `event_type`) provided in the request body. All body parameters are optional - only include the fields you want to update.
- Modify guild member details: Updates a guild member's attributes including nickname, roles, voice state (mute/deaf/channel), timeout status, and flags. All parameters are optional - only provided fields will be updated. Returns the updated guild member object on success. Requires appropriate permissions for each operation (e.g., MANAGE_NICKNAMES, MANAGE_ROLES, MUTE_MEMBERS, DEAFEN_MEMBERS, MODERATE_MEMBERS).
- Modify guild role: Updates a Discord guild role's attributes (name, permissions, color, etc.); requires `MANAGE_ROLES` permission, and the `ROLE_ICONS` guild feature if using `unicode_emoji`; unspecified attributes remain unchanged.
- Modify guild voice state for me: Updates the bot's voice state in a guild Stage channel (e.g., suppress/unsuppress audio, request to speak). Requires the bot to already be connected to a stage channel via Gateway API. Cannot be used to join, switch, or disconnect from voice channels.
- Patch command for application: Updates specified properties of a Discord application command (e.g., name, description); omitted properties remain unchanged, and the `options` field, if provided, overwrites all existing options.
- Patch guild template information: Updates a Discord guild template's `name` and/or `description` given its `guild_id` and template `code`; omitted fields retain current values, and an empty string for `description` clears it.
- Patch guild voice state: Updates another user's voice state in a Discord stage channel. IMPORTANT: This endpoint ONLY works for stage channels (not regular voice channels). Primary use is toggling the 'suppress' state to control speaking permissions. Requires the user to already be in the specified stage channel and the bot must have MUTE_MEMBERS permission. Returns 204 No Content on success.
- Patch webhook original message: Updates the original editable message previously sent by a webhook, allowing partial modification of its content (max 2000 chars), embeds (max 10), attachments (kept by `id`, metadata updatable), components, allowed mentions, and flags.
- Pin message in channel: Pins a message in a Discord channel for increased visibility. Requires the 'Pin Messages' permission (separate from 'Manage Messages' as of Jan 2026). Channel pin limit is 250 messages. Returns HTTP 204 on success. Fails with 403 if missing permissions or 400 if pin limit exceeded.
- Post guild template by code: Creates a new Discord guild by applying channels, roles, and settings from a specified, valid, and accessible guild template code.
- Post interaction callback: Sends a response to a Discord interaction (e.g., slash command, component); ensure response type is context-appropriate and initial reply is within 3 seconds.
- Post message to channel: Sends a message to a specified Discord channel (text, embeds, stickers, components, attachments); requires `SEND_MESSAGES` permission and one of `content`, `embeds`, `sticker_ids`, or `attachments`.
- Post to slack webhook: Sends richly formatted messages to Discord via its Slack-compatible webhook endpoint; requires at least one of `text` or `attachments` and adherence to content limits.
- Post webhook with embeds and components: Executes a Discord webhook to send messages, embeds, or interactive components to a specific Discord channel or thread.
- Preview guild by id: Fetches a public preview of a Discord guild by its ID, if the guild has the preview feature enabled.
- Prune inactive guild members: Removes inactive members from a Discord guild. Requires 'KICK_MEMBERS' permission. Set compute_prune_count=false for large guilds to avoid timeouts (returns null instead of count). To preview the prune count without removing members, use the preview_prune_guild action instead.
- Remove current user from thread: Removes the currently authenticated user from a specified, existing, and accessible Discord thread of which they are currently a member.
- Remove guild ban: Revokes a ban for a user from a Discord guild, allowing them to rejoin if they choose. Requires BAN_MEMBERS permission.
- Remove user from group DM: Remove a recipient from a Discord group DM channel. Removes a user from a group DM channel (type 3), revoking their access. This action fires a Channel Recipient Remove Gateway event when successful. **Important**: This endpoint requires OAuth2 user access tokens with the 'gdm.join' scope. Bot tokens cannot access group DM functionality as Discord bots cannot participate in group DM channels. Only the group DM owner or managing application can remove recipients.
- Retrieve application details: Retrieves the full details of a Discord application using its unique `application_id`.
- Retrieve application role metadata: Retrieves all role connection metadata records for a given Discord application ID; an empty list is returned if none are configured.
- Retrieve auto moderation rule: Retrieves the complete configuration details of a specific auto-moderation rule within a Discord guild for inspection or verification.
- Retrieve bot gateway: Retrieves the WSS URL, recommended shard count, and session start limits, which are prerequisite for a bot to connect to the Discord Gateway and receive events.
- Retrieve channel details: Retrieves detailed metadata for a specific Discord channel using its `channel_id`, which must be a valid and accessible channel ID; note that this action returns only channel metadata, not message content or member lists.
- Retrieve channel webhooks: Fetches detailed information for all webhooks in a given valid Discord channel, useful for review or auditing purposes.
- Retrieve guild auto moderation rules: Fetches all auto moderation rules for a specified Discord guild to review or audit its configuration; requires `VIEW_AUDIT_LOG` permissions and the action does not modify rules.
- Retrieve guild channels: Fetches all channels (e.g., text, voice, category, threads) and their structural information for a specified Discord guild ID; does not include message content.
- Retrieve guild command permissions: Fetches the permissions for a specific application command within a guild, used to inspect its current access settings.
- Retrieve guild details: Retrieves detailed information for a specified Discord guild (server) by its `guild_id`, optionally including approximate member and presence counts if `with_counts` is true.
- Retrieve guild emojis: Fetches all custom emoji objects for a specified Discord guild if the bot has access; returns only custom guild emojis, not standard Unicode or Nitro emojis.
- Retrieve guild invites by id: Retrieves all currently active invite codes for a specified Discord guild, typically for administration, analytics, or managing guild invitations.
- Retrieve guild member by user id: Retrieves detailed information for a specific member of a Discord guild, provided the bot belongs to the guild and has necessary permissions (e.g., GUILD_MEMBERS intent).
- Retrieve guild prune info: Previews the number of members that would be pruned from a Discord guild based on inactivity days and optional roles; this action only returns a count and does not remove members.
- Retrieve guild scheduled events: Retrieves a list of scheduled events for a specified Discord guild, optionally including subscribed user counts, provided the authenticated user/bot has access to the guild.
- Retrieve guild stickers: Retrieves all custom sticker objects for a Discord guild; does not include standard/Nitro stickers.
- Retrieve guild template with code: Retrieves the complete structure and details of a Discord guild template using its unique code; the code must be valid and refer to an existing, accessible template.
- Retrieve guild user ban details: Fetches the ban details for a specific user in a Discord guild, if that user is currently banned.
- Retrieve guild vanity url: Retrieves the vanity URL invite code and usage count for a Discord guild. The guild must have the VANITY_URL feature enabled (available for partnered, verified, or Level 3 boosted servers), and the bot must have MANAGE_GUILD permission. Returns the vanity URL code (or null if not set) and the number of times the vanity invite has been used.
- Retrieve guild webhooks: Retrieves all webhook objects for a specified Discord guild; requires 'MANAGE_WEBHOOKS' permission for the authenticated entity.
- Retrieve guild welcome screen: Retrieves the welcome screen configuration for a Discord guild with the Community feature enabled. Returns the welcome screen description and up to 5 suggested channels. If the welcome screen is disabled, the bot requires MANAGE_GUILD permission to view it.
- Retrieve guild widget information: Retrieves the widget settings for a specified Discord guild, indicating if the widget is enabled and its configured channel ID; requires a valid `guild_id`.
- Retrieve guild widget json: Retrieves the public JSON widget data for a Discord guild, if the widget is enabled for that guild.
- Retrieve invite by code: Resolves a Discord invite code to get its details, optionally including member counts or data for a specific guild scheduled event; visibility of some details may depend on bot permissions.
- Retrieve message from channel: Retrieves a specific message from a Discord channel, identified by `channel_id` and `message_id`, if the channel and message exist and are accessible.
- Retrieve original webhook message: Retrieves the initial response message from a Discord interaction webhook (slash commands, buttons, etc.) or regular webhook. This fetches the '@original' message, which is the first message sent when responding to an interaction or executing a webhook with wait=true. For interaction responses, the interaction token is valid for 15 minutes after the interaction was created.
- Retrieve pinned messages in channel: Retrieves all currently pinned messages from a Discord channel. Returns up to 50 pinned messages (Discord's maximum) in the channel. The bot must have permission to view the channel and read message history. Returns an empty list if no messages are pinned.
- Retrieve stage instance by channel id: Gets the active stage instance associated with a stage channel (type 13). Returns the stage instance object if one exists, or a 404 error if the channel has no active stage instance. A stage instance represents a live stage event with a topic, privacy level, and optional scheduled event association.
- Retrieve sticker by id: Retrieves a specific Discord sticker by its unique ID.
- Retrieve sticker from guild: Retrieves a specific sticker from a Discord guild using the guild and sticker IDs; requires the sticker to exist in the guild.
- Retrieve thread member by id: Retrieves a member from a specified thread using their user ID, optionally including the full guild member object.
- Retrieve user by id: Fetches public information for a Discord user, requiring a valid and existing user ID (snowflake).
- Retrieve users for scheduled event: Fetches users who have expressed interest in a specific scheduled event, requiring valid guild and event IDs.
- Retrieve webhook by id: Retrieves detailed information for an existing Discord webhook, identified by its unique ID, to verify settings or manage the webhook.
- Retrieve webhook information: Fetches a Discord webhook's configuration details (e.g., name, avatar, channel ID) using its ID and token; this excludes message history or usage statistics.
- Retrieve webhook message by id: Retrieves a specific message previously sent by a Discord webhook using its `message_id`, requiring `thread_id` if the message is part of a thread.
- Search guild members by username or nickname: Searches for members in a specific Discord guild, allowing filtering by a query string.
- Test bot token authentication: Tool to validate the configured Discord bot token by fetching the current authenticated bot user. Use when diagnosing repeated 401 errors to determine if the issue is an invalid token (this endpoint returns 401) or missing guild membership/permissions/wrong channel_id (this endpoint returns 200 but other operations fail).
- Trigger typing indicator: Shows the bot is 'typing' in a Discord channel, typically before sending a message; indicator stops after 10 seconds or upon message send, so use when actively preparing a response.
- Unpin message from channel: Unpins a message that is currently pinned in a specified Discord channel; the message itself is not deleted, only removed from the pinned messages list.
- Update Guild Widget Settings: Updates an existing Discord guild's widget settings, such as its enabled state or invite channel. Requires MANAGE_GUILD permission. Widget settings control the public widget that can be embedded on external websites to show server information.
- Update application description: Modifies settings for the current authenticated Discord application (e.g., description, icon, interaction URLs); setting `team_id` to `null` (None) transfers team ownership, while `null` (None) for `type` or `install_params` clears/resets them.
- Update application guild command: Updates a specific Discord application command's properties (like name, description, options, or permissions) within a given guild; `application_id`, `guild_id`, and `command_id` must refer to valid entities.
- Update bot's nickname in guild: Modifies the current bot's member profile (nickname) in a Discord guild. This endpoint allows the bot to change its own nickname in the specified guild. The bot must be a member of the guild to use this endpoint.
- Update channel message: Updates a message previously sent by the bot in a Discord channel, by modifying its content, embeds, components, flags, or attachment metadata (new attachments cannot be uploaded); only provide fields to change, using null or an empty list to clear existing values.
- Update channel settings: Updates a Discord channel's settings (name, topic, permissions, etc.). Requires MANAGE_CHANNELS permission. All body parameters are optional - only include fields you want to change. Different parameters apply to different channel types (text, voice, forum, etc.). Fires a Channel Update event on success.
- Update current bot user profile: Updates the current bot user's Discord username and/or avatar. This endpoint only works with bot tokens, not OAuth2 user tokens. At least one field (username or avatar) must be provided to update the profile. Username changes are rate-limited to 2 per hour per account.
- Update discord message with webhook: Updates a message previously sent by the *same* webhook, allowing partial modification of content, embeds, attachments, or components; will not edit user/bot messages.
- Update guild emoji: Updates a custom emoji's name and/or role restrictions in a Discord guild; cannot create or delete emojis, and role updates for managed emojis may be restricted by their integration.
- Update guild onboarding configuration: Configures or updates a Discord guild's new member onboarding flow, including defining prompts with options, assigning roles/channels, setting default channels, and managing the flow's active status.
- Update guild scheduled event: Updates attributes such as name, description, schedule, status, or location for an existing Discord guild event; only fields in the request body are changed.
- Update guild settings: Updates settings for a Discord guild (server), such as name, region, icon, verification level, and notification settings. Requires the MANAGE_GUILD permission. Transferring ownership requires being the current owner. Managing features or certain visual elements (e.g., banners, splashes) may require specific guild features like 'COMMUNITY' or 'VIP'. All parameters are optional - only include the settings you want to change.
- Update guild sticker info: Modifies a guild sticker's name, description, or tags. Requires MANAGE_EXPRESSIONS permission (or CREATE_EXPRESSIONS for stickers created by the current user).
- Update guild template by code: Synchronizes a guild template (by `code`) with its source guild (`guild_id`), updating it to match the source's current configuration; this does not affect guilds already created from this template.
- Update guild welcome screen: Updates a guild's welcome screen configuration, including description, enabled status, and up to 5 welcome channels. Requires MANAGE_GUILD permission and the guild must have the COMMUNITY feature enabled. All parameters are optional - you can update individual fields without providing all values. When specifying channel emojis, use `emoji_name` (unicode emoji like '👋' or custom emoji name) while `emoji_id` must be `null` if sent.
- Update user application role connection: Updates the current user's application role connection metadata for Discord's Linked Roles feature. This endpoint requires OAuth2 authentication with the 'role_connections.write' scope - it cannot be used with a Bot token. The application must have role connection metadata configured before users can update their connection data. Use case: Update user metadata (e.g., subscription tier, account level) that Discord servers can use as requirements for linked roles.
- Update webhook details patch: Updates properties (e.g., name, avatar, channel ID) of an existing Discord webhook; the webhook and any new channel (if specified) must exist, with the new channel being in the same server.
- Update webhook name and avatar: Updates the default name and/or avatar for an existing Discord webhook, using its ID and token.
How to connect Discord Bot
- Sign in to Definable AI and go to Apps
- Search for Discord Bot and click Connect
- Authorize via OAuth2 — takes under 30 seconds
- Use Discord Bot actions in your AI agents and workflows