Trigger on event
- Listen for a new event
- Parse and validate the payload
- Take an action with the linked tool
165 tools available
Discordbot refers to automated programs on Discord servers, performing tasks like moderation, music playback, and user engagement to enhance community interactions
Connect Discord Bot to Definable to automate repetitive tasks, sync data with the rest of your stack, trigger on real-world events. Personas call Discord Bot's 165 tools directly from chat or scheduled flows. You can wire it into any persona to read, write, and react when an event fires.
Every Discord Bot action below is a callable tool any Definable persona can invoke.
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.
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.
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.
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.
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.
Permanently bans a user from a Discord guild, optionally deleting their recent messages (specify deletion period in seconds OR days, not both).
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.
Atomically bulk deletes messages in a Discord channel for moderation or maintenance; deletion may not be instantaneous and messages are unrecoverable.
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.
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).
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}).
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.
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.
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.
Creates a new Discord channel (text, voice, category, etc.) within a guild, with options for permissions, topic, and type-specific settings.
Creates a new custom emoji in a specified Discord guild, requiring `CREATE_EXPRESSIONS` permission and adherence to guild emoji limits.
Creates a new Discord guild by applying channels, roles, and settings from a specified, valid, and accessible guild template code.
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.
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.
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.
Creates a template of an existing Discord guild's structure (settings, roles, channels) but not its content (e.g., messages, members).
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.
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`.
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.
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.
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).
Creates a webhook in a specified Discord channel for external applications to post messages, provided the caller has 'MANAGE_WEBHOOKS' permission in that channel.
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.
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.
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.
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.
Deletes a specific auto-moderation rule from a Discord guild.
Permanently deletes a Discord channel by its ID; this action is irreversible and the channel must exist and be deletable.
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.
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.
Permanently deletes a specified Discord guild (server); the authenticated user must be the owner of the guild.
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.
Permanently deletes a specified custom emoji from a guild, requiring 'Manage Expressions' permissions; cannot delete default emojis and is irreversible.
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.
Removes (kicks) a member from a Discord guild; the user must be an existing member of the specified guild, and this action is permanent.
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.
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.
Permanently deletes a specific scheduled event from a Discord guild; this action is irreversible.
Permanently deletes a custom sticker from a Discord guild; the specified guild and sticker must exist, and this action is irreversible.
Deletes an existing guild template by its unique code from a specified guild, returning the deleted template's details.
Permanently and irreversibly deletes a message from a specified Discord channel.
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.
Permanently deletes an existing original message posted by a webhook (using its ID and token), optionally within a specific thread.
Deletes the Stage Instance for the given `channel_id`, permanently ending its live audio event.
Removes a user from a specified, unarchived thread in a Discord channel.
Removes a specific user's emoji reaction from a message; requires 'Manage Messages' permission if deleting reactions from other users.
Permanently deletes a specified, existing Discord webhook by its unique ID; this action is irreversible.
Permanently deletes a Discord webhook specified by its ID and token; this action is irreversible.
Deletes a message previously sent by the specified webhook, optionally within a specific thread.
Forwards GitHub event notifications to a Discord channel via a webhook configured for GitHub-formatted payloads (URL ending in `/github`).
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.
Executes a Discord webhook to send messages, embeds, or interactive components to a specific Discord channel or thread.
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).
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.
Retrieves the full details of a Discord application using its unique `application_id`.
Fetches the details of a specific, existing application command, identified by its application Snowflake ID and command Snowflake ID.
Retrieves all role connection metadata records for a given Discord application ID; an empty list is returned if none are configured.
Fetches the role connection object for the current user for a specified Discord application.
Retrieves the complete configuration details of a specific auto-moderation rule within a Discord guild for inspection or verification.
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.
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.
Retrieves the WebSocket URL to connect to Discord's Gateway for receiving real-time events.
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.
Fetches detailed information for a specific application command within a Discord guild, identified by `application_id`, `guild_id`, and `command_id`.
Fetches the permissions for a specific application command within a guild, used to inspect its current access settings.
Fetches the ban details for a specific user in a Discord guild, if that user is currently banned.
Retrieves details for a specific custom emoji within a specified Discord guild, requiring valid and accessible guild and emoji IDs.
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).
Fetches a public preview of a Discord guild by its ID, if the guild has the preview feature enabled.
Retrieves a specific scheduled event from a Discord guild by its ID, optionally including the count of subscribed users.
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.
Retrieves a specific sticker from a Discord guild using the guild and sticker IDs; requires the sticker to exist in the guild.
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.
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.
Retrieves all webhook objects for a specified Discord guild; requires 'MANAGE_WEBHOOKS' permission for the authenticated entity.
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.
Retrieves the public JSON widget data for a Discord guild, if the widget is enabled for that guild.
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.
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`.
Retrieves a specific message from a Discord channel, identified by `channel_id` and `message_id`, if the channel and message exist and are accessible.
Retrieves detailed information about the current authenticated Discord application.
Retrieves detailed information about the OAuth2 application associated with the current authentication; cannot query other applications.
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.
Retrieves Discord's OAuth2 public keys (JWK format) for verifying access tokens; keys may rotate, so refresh caches periodically.
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.
Retrieves a specific Discord sticker by its unique ID.
Retrieves a member from a specified thread using their user ID, optionally including the full guild member object.
Fetches public information for a Discord user, requiring a valid and existing user ID (snowflake).
Retrieves detailed information for an existing Discord webhook, identified by its unique ID, to verify settings or manage the webhook.
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.
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.
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.
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.
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.
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.
Removes the currently authenticated user from a specified, existing, and accessible Discord thread of which they are currently a member.
Fetches all global application commands for the specified Discord application ID; does not fetch guild-specific commands.
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.
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).
Fetches detailed information for all webhooks in a given valid Discord channel, useful for review or auditing purposes.
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.
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.
Retrieves audit log entries (e.g., message deletions, member kicks/bans, role changes) for a specified Discord guild, requiring 'VIEW_AUDIT_LOG' permission.
Fetches a list of users banned from a specified Discord guild; `before`/`after` parameters require user IDs from previous results for correct pagination.
Fetches all channels (e.g., text, voice, category, threads) and their structural information for a specified Discord guild ID; does not include message content.
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.
Lists all integration objects for a specified Discord guild.
Retrieves all currently active invite codes for a specified Discord guild, typically for administration, analytics, or managing guild invitations.
Retrieves members for a Discord guild; requires a valid guild_id for an existing guild.
Fetches all roles in a Discord guild, providing details for each role but not user assignments; `guild_id` must be valid.
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.
Fetches users who have expressed interest in a specific scheduled event, requiring valid guild and event IDs.
Retrieves all custom sticker objects for a Discord guild; does not include standard/Nitro stickers.
Retrieves all guild templates for an existing Discord guild, specified by its ID.
Fetches a list of available voice regions for a specified Discord guild.
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.
Retrieves historical messages from a specified, accessible Discord channel, typically newest first; for real-time messages, use Discord's WebSocket Gateway API.
Retrieves private archived threads from a specified channel that the current user is a member of.
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.
Lists a channel's private archived threads, sorted by most recent archival, requiring view access to them.
Lists public archived threads in an accessible Discord channel, returning an empty list if none exist; does not list private or active threads.
Fetches sticker packs available to Nitro subscribers on Discord, excluding custom or guild-specific ones.
Retrieves members of a specified Discord thread, with an option to include full guild member objects for each.
Lists all available Discord voice regions with their ID, name, operational status (custom, deprecated, optimal), noting that availability may vary by server.
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.
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.
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.
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.
Searches for members in a specific Discord guild, allowing filtering by a query string.
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.
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.
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).
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.
Revokes a ban for a user from a Discord guild, allowing them to rejoin if they choose. Requires BAN_MEMBERS permission.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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).
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.
Updates attributes such as name, description, schedule, status, or location for an existing Discord guild event; only fields in the request body are changed.
Modifies a guild sticker's name, description, or tags. Requires MANAGE_EXPRESSIONS permission (or CREATE_EXPRESSIONS for stickers created by the current user).
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
Updates the default name and/or avatar for an existing Discord webhook, using its ID and token.
Updates a message previously sent by the *same* webhook, allowing partial modification of content, embeds, attachments, or components; will not edit user/bot messages.
Anything Discord Bot exposes through its API. Common team chat workflows on Definable include automate repetitive tasks, sync data with the rest of your stack, trigger on real-world events. Personas can call any of the 165 Discord Bot tools directly, then chain the result into another integration without you writing code.
Discord Bot uses OAUTH2 on Definable. You connect once from the integrations page, scoped to the permissions you choose, and from then on any persona that has the integration enabled can act on your behalf. Tokens are encrypted at rest and rotated automatically.
Yes — every Definable plan, including Starter, includes access to all 165 Discord Bot tools. You only need a separate Discord Bot subscription if Discord Bot itself charges per seat or per API call.
Every call from a persona to Discord Bot is logged with the user, persona, prompt, and response. Tokens never leave Definable's secrets vault, scopes are configurable per persona, and you can revoke access at any time from the integration page.
Sign up for Definable, open the integrations page, find Discord Bot, and connect via OAuth or API key. You can immediately attach Discord Bot to any persona and start running workflows. The free Starter plan includes 5,000 credits/month.
Definable exposes all 165 Discord Bot actions as callable tools — including `Add recipient to group channel`, `Add guild member`, `Assign role to guild member`, plus 162 more. Each tool gets a typed parameter schema so personas know exactly how to call it.
Wire it up in minutes. No coding required.