Skip to content
Scalekit Docs
Talk to an EngineerDashboard

Discord Bot connector

API KeyCommunicationCollaboration

Connect to Discord as a bot. Manage guilds, channels, members, messages, roles, webhooks, and more using a Discord Bot Token.

Discord Bot connector

  1. Terminal window
    npm install @scalekit-sdk/node

    Full SDK reference: Node.js | Python

  2. Add your Scalekit credentials to your .env file. Find values in app.scalekit.com > Developers > API Credentials.

    .env
    SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
    SCALEKIT_CLIENT_ID=<your-client-id>
    SCALEKIT_CLIENT_SECRET=<your-client-secret>
  3. Register your Discord Bot credentials with Scalekit so it can authenticate requests on your behalf. You do this once per environment.

    Dashboard setup steps

    Register your Discord bot token with Scalekit so it can authenticate and proxy requests on behalf of your users. Discord Bot uses Bearer Token authentication — there is no redirect URI or OAuth flow.

    1. Create a Discord application and bot user

      • Go to the Discord Developer Portal and sign in with your Discord account.
      • Click New Application, enter a name (for example, Agent Auth), accept the terms, and click Create.
      • Open your application and go to Bot in the left sidebar.
    2. Get your bot token

      • On the Bot page, under Token, click Reset Token to generate a new bot token and copy it immediately — Discord shows the full token only once.

        Discord application Bot page showing the Username, Token, and Authorization Flow settings

    3. Invite the bot to a server

      • Go to OAuth2 > URL Generator in the left sidebar.

      • Under Scopes, select bot.

      • Under Bot Permissions, select the permissions your agent needs.

        Discord Bot Permissions page showing General, Text, and Voice permission checkboxes

      • Copy the generated URL at the bottom of the page, open it in a browser, and select a server to add the bot to.

    4. Create a connection in Scalekit

      • In the Scalekit dashboard, go to AgentKitConnectionsCreate Connection.
      • Search for Discord Bot and click Create.
      • Note the Connection name — use this as connection_name in your code (e.g., discordbot).
    5. Add a connected account

      Connected accounts link a specific user identifier in your system to a Discord bot token. Add them via the dashboard for testing, or via the Scalekit API in production.

      Via dashboard (for testing)

      • Open the connection and click the Connected Accounts tab → Add account.
      • Fill in Your User’s ID and Bot Token, then click Save.

      Via API (for production)

      await scalekit.connect.upsertConnectedAccount({
      connectionName: 'discordbot',
      identifier: 'user@example.com',
      credentials: { apiKey: 'your-discord-bot-token' },
      })
  4. quickstart.ts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENV_URL,
    process.env.SCALEKIT_CLIENT_ID,
    process.env.SCALEKIT_CLIENT_SECRET,
    )
    const actions = scalekit.actions
    const connector = 'discordbot'
    const identifier = 'user_123'
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'discordbot_get_current_application',
    toolInput: {},
    })
    console.log(result)

Connect this agent connector to let your agent:

  • Member add guild, add lobby, add thread — Add a user to a guild using their OAuth2 access token with the guilds.join scope
  • Role add guild member, modify guild, remove guild member — Add a role to a guild member
  • Prune begin guild — Begin a prune operation to kick inactive members
  • Delete bulk, all reactions, all reactions for emoji — Delete multiple messages in a Discord channel in a single request (2-100 messages)
  • Ban bulk guild, remove guild — Ban up to 200 users from a guild and optionally delete their recent messages
  • Commands bulk overwrite global application, bulk overwrite guild application — Bulk overwrite all global application commands

Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.

discordbot_add_guild_member#Add a user to a guild using their OAuth2 access token with the guilds.join scope. Returns 201 if the user was added, or 204 if already a member.7 params

Add a user to a guild using their OAuth2 access token with the guilds.join scope. Returns 201 if the user was added, or 204 if already a member.

NameTypeRequiredDescription
access_tokenstringrequiredOAuth2 access token of the user to add, with guilds.join scope.
guild_idstringrequiredThe ID of the guild to add the user to.
user_idstringrequiredThe ID of the user to add to the guild.
deafbooleanoptionalWhether the user should be server-deafened on join.
mutebooleanoptionalWhether the user should be server-muted on join.
nickstringoptionalNickname to assign to the user in the guild.
rolesarrayoptionalArray of role IDs to assign to the user on join.
discordbot_add_guild_member_role#Add a role to a guild member. Requires MANAGE_ROLES permission. Returns 204 No Content on success.3 params

Add a role to a guild member. Requires MANAGE_ROLES permission. Returns 204 No Content on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild.
role_idstringrequiredThe ID of the role to add to the member.
user_idstringrequiredThe ID of the guild member to add the role to.
discordbot_add_lobby_member#Add the specified user to a Discord lobby. If the user is already a member, updates their metadata and flags instead. Returns the lobby member object.4 params

Add the specified user to a Discord lobby. If the user is already a member, updates their metadata and flags instead. Returns the lobby member object.

NameTypeRequiredDescription
lobby_idstringrequiredThe ID of the lobby to add the member to.
user_idstringrequiredThe ID of the user to add to the lobby.
flagsintegeroptionalLobby member flags combined as a bitfield (1 = CanLinkLobby).
metadataobjectoptionalOptional dictionary of string key/value pairs for the member. Max total length 1000.
discordbot_add_thread_member#Add another user to a thread. Requires the thread to not be archived. Returns 204 No Content on success.2 params

Add another user to a thread. Requires the thread to not be archived. Returns 204 No Content on success.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the thread channel.
user_idstringrequiredThe ID of the user to add to the thread.
discordbot_begin_guild_prune#Begin a prune operation to kick inactive members. Requires KICK_MEMBERS permission. Returns a pruned object with the count of kicked members (or null if compute_prune_count is false).5 params

Begin a prune operation to kick inactive members. Requires KICK_MEMBERS permission. Returns a pruned object with the count of kicked members (or null if compute_prune_count is false).

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to prune members from.
compute_prune_countbooleanoptionalWhether to compute and return the number of pruned members (default true; set false for large guilds).
daysintegeroptionalNumber of days of inactivity to prune for (1-30, default 7).
include_rolesarrayoptionalArray of role IDs to include in the prune operation.
reasonstringoptionalReason for the prune (for audit log).
discordbot_bulk_delete_messages#Delete multiple messages in a Discord channel in a single request (2-100 messages). Messages older than 2 weeks cannot be deleted this way. Requires MANAGE_MESSAGES permission.2 params

Delete multiple messages in a Discord channel in a single request (2-100 messages). Messages older than 2 weeks cannot be deleted this way. Requires MANAGE_MESSAGES permission.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to delete messages from.
messagesarrayrequiredArray of message IDs to delete (2-100 messages). Messages older than 2 weeks cannot be deleted.
discordbot_bulk_guild_ban#Ban up to 200 users from a guild and optionally delete their recent messages. Requires both BAN_MEMBERS and MANAGE_GUILD permissions. Returns object with banned_users and failed_users arrays.3 params

Ban up to 200 users from a guild and optionally delete their recent messages. Requires both BAN_MEMBERS and MANAGE_GUILD permissions. Returns object with banned_users and failed_users arrays.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to ban members from.
user_idsarrayrequiredArray of user IDs to ban (up to 200).
delete_message_secondsintegeroptionalNumber of seconds of messages to delete from banned users (0-604800).
discordbot_bulk_overwrite_global_application_commands#Bulk overwrite all global application commands. Takes a full list of commands to replace existing ones. Any commands not included will be deleted. Returns an array of application command objects.2 params

Bulk overwrite all global application commands. Takes a full list of commands to replace existing ones. Any commands not included will be deleted. Returns an array of application command objects.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
commandsarrayrequiredArray of application command objects to set as global commands.
discordbot_bulk_overwrite_guild_application_commands#Bulk overwrite all application commands registered in a guild. Commands not included will be deleted. Returns an array of application command objects.3 params

Bulk overwrite all application commands registered in a guild. Commands not included will be deleted. Returns an array of application command objects.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
commandsarrayrequiredArray of application command objects to set as guild commands.
guild_idstringrequiredThe ID of the guild.
discordbot_bulk_update_lobby_members#Add, update, or remove up to 25 members from a Discord lobby in a single request. Members with remove_member false (the default) are upserted; members with remove_member true are removed. Users unknown to Discord return a 404 error. Users that fail permission checks, or that already reached the maximum lobbies per application, are silently dropped from the upsert set. Returns an array of lobby member objects for the upserted members; removed members are not included.2 params

Add, update, or remove up to 25 members from a Discord lobby in a single request. Members with remove_member false (the default) are upserted; members with remove_member true are removed. Users unknown to Discord return a 404 error. Users that fail permission checks, or that already reached the maximum lobbies per application, are silently dropped from the upsert set. Returns an array of lobby member objects for the upserted members; removed members are not included.

NameTypeRequiredDescription
lobby_idstringrequiredThe ID of the lobby to bulk update members for.
membersarrayrequiredArray of 1 to 25 member objects to add, update, or remove from the lobby.
discordbot_consume_entitlement#For one-time purchase consumable SKUs, mark a given entitlement for the user as consumed. The entitlement will have consumed: true when listed afterward. This action cannot be undone. Returns 204 No Content on success.2 params

For one-time purchase consumable SKUs, mark a given entitlement for the user as consumed. The entitlement will have consumed: true when listed afterward. This action cannot be undone. Returns 204 No Content on success.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application that owns the entitlement.
entitlement_idstringrequiredThe ID of the entitlement to mark as consumed.
discordbot_create_application_emoji#Create a new emoji owned by a Discord application (app emoji). Returns the new emoji object.3 params

Create a new emoji owned by a Discord application (app emoji). Returns the new emoji object.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application to create the emoji for.
imagestringrequiredBase64 encoded image data URI for the 128x128 emoji (PNG, JPG, GIF supported).
namestringrequiredName of the emoji (2-32 characters, alphanumeric and underscores).
discordbot_create_auto_moderation_rule#Create a new Auto Moderation rule for a guild. Requires the MANAGE_GUILD permission. Fires an Auto Moderation Rule Create Gateway event. Returns the new auto moderation rule object on success.10 params

Create a new Auto Moderation rule for a guild. Requires the MANAGE_GUILD permission. Fires an Auto Moderation Rule Create Gateway event. Returns the new auto moderation rule object on success.

NameTypeRequiredDescription
actionsarrayrequiredThe actions which will execute when the rule is triggered. Each action is an object with a 'type' (1=BLOCK_MESSAGE, 2=SEND_ALERT_MESSAGE, 3=TIMEOUT, 4=BLOCK_MEMBER_INTERACTION) and optional 'metadata'.
event_typeintegerrequiredThe rule event type: 1=MESSAGE_SEND (when a member sends or edits a message), 2=MEMBER_UPDATE (when a member edits their profile).
guild_idstringrequiredThe ID of the guild to create the Auto Moderation rule in.
namestringrequiredThe rule name.
trigger_typeintegerrequiredThe rule trigger type: 1=KEYWORD, 3=SPAM, 4=KEYWORD_PRESET, 5=MENTION_SPAM, 6=MEMBER_PROFILE.
enabledbooleanoptionalWhether the rule is enabled. False by default.
exempt_channelsarrayoptionalChannel IDs that should not be affected by the rule (maximum of 50).
exempt_rolesarrayoptionalRole IDs that should not be affected by the rule (maximum of 20).
reasonstringoptionalReason for creating the rule, shown in the guild's audit log.
trigger_metadataobjectoptionalAdditional data used to determine whether the rule triggers, relevant fields depend on trigger_type (e.g. keyword_filter, regex_patterns, presets, allow_list, mention_total_limit, mention_raid_protection_enabled). Can be omitted for trigger types that need no metadata.
discordbot_create_channel_invite#Create a new invite for a Discord channel. Requires CREATE_INSTANT_INVITE permission. Returns an invite object.9 params

Create a new invite for a Discord channel. Requires CREATE_INSTANT_INVITE permission. Returns an invite object.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to create an invite for.
max_ageintegeroptionalDuration in seconds before the invite expires (0 for never). Default is 86400 (24 hours). Max is 604800 (7 days).
max_usesintegeroptionalMaximum number of times the invite can be used (0 for unlimited). Max is 100.
role_idsarrayoptionalThe role ID(s) for roles in the guild given to the users that accept this invite. Requires the MANAGE_ROLES permission and cannot assign roles with higher permissions than the sender.
target_application_idstringoptionalApplication ID for embedded activity target types.
target_typeintegeroptionalThe type of invite target (1 for STREAM, 2 for EMBEDDED_APPLICATION).
target_user_idstringoptionalThe user ID whose stream to display for STREAM target type.
temporarybooleanoptionalWhether this invite grants temporary membership. Default is false.
uniquebooleanoptionalIf true, tries to create a unique invite. Default is false.
discordbot_create_dm#Create a new DM channel with a user. Returns a DM channel object. If a DM channel already exists with the user, it is returned.1 param

Create a new DM channel with a user. Returns a DM channel object. If a DM channel already exists with the user, it is returned.

NameTypeRequiredDescription
recipient_idstringrequiredThe ID of the user to open a DM channel with.
discordbot_create_global_application_command#Create a new global application command. If a command with the same name already exists, it will be overwritten. Returns the created command object.13 params

Create a new global application command. If a command with the same name already exists, it will be overwritten. Returns the created command object.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
namestringrequiredCommand name (1-32 characters).
typeintegerrequiredCommand type: 1=CHAT_INPUT (slash command), 2=USER, 3=MESSAGE.
contextsarrayoptionalInstallation context(s) where the command is available. 0=GUILD, 1=BOT_DM, 2=PRIVATE_CHANNEL.
default_member_permissionsstringoptionalSet of permissions represented as a bit set string that a user must have to use the command.
default_permissionbooleanoptionalWhether the command is enabled by default (deprecated, use default_member_permissions).
descriptionstringoptionalCommand description (1-100 characters) for CHAT_INPUT commands.
description_localizationsobjectoptionalLocalization dictionary for description field.
dm_permissionbooleanoptionalWhether the command is available in DMs (deprecated, use contexts).
integration_typesarrayoptionalInstallation context(s): 0=GUILD_INSTALL, 1=USER_INSTALL.
name_localizationsobjectoptionalLocalization dictionary for name field.
nsfwbooleanoptionalWhether the command is age-restricted.
optionsarrayoptionalArray of command option objects (for CHAT_INPUT type, up to 25 options).
discordbot_create_group_dm#Create a new group DM channel with multiple users using their OAuth2 access tokens (granted the gdm.join scope). Returns a DM channel object. This endpoint was intended to be used with the now-deprecated GameBridge SDK and is limited to 10 active group DMs. Fires a Channel Create Gateway event.2 params

Create a new group DM channel with multiple users using their OAuth2 access tokens (granted the gdm.join scope). Returns a DM channel object. This endpoint was intended to be used with the now-deprecated GameBridge SDK and is limited to 10 active group DMs. Fires a Channel Create Gateway event.

NameTypeRequiredDescription
access_tokensarrayrequiredAccess tokens of users that have granted your app the gdm.join scope.
nicksobjectoptionalA dictionary of user ids to their respective nicknames.
discordbot_create_guild_application_command#Create a new application command for a specific guild. Guild commands are only available in the guild they are created in. Returns the created command object.11 params

Create a new application command for a specific guild. Guild commands are only available in the guild they are created in. Returns the created command object.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
guild_idstringrequiredThe ID of the guild to create the command in.
namestringrequiredCommand name (1-32 characters).
typeintegerrequiredCommand type: 1=CHAT_INPUT, 2=USER, 3=MESSAGE.
default_member_permissionsstringoptionalPermissions required to use the command as a bitfield string.
default_permissionbooleanoptionalWhether the command is enabled by default (deprecated).
descriptionstringoptionalCommand description (1-100 characters) for CHAT_INPUT commands.
description_localizationsobjectoptionalLocalization dictionary for description field.
name_localizationsobjectoptionalLocalization dictionary for name field.
nsfwbooleanoptionalWhether the command is age-restricted.
optionsarrayoptionalArray of command option objects (up to 25 options).
discordbot_create_guild_ban#Ban a user from a Discord guild. Requires BAN_MEMBERS permission. Optionally delete recent messages from the banned user.3 params

Ban a user from a Discord guild. Requires BAN_MEMBERS permission. Optionally delete recent messages from the banned user.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to ban the user from.
user_idstringrequiredThe ID of the user to ban.
delete_message_secondsintegeroptionalNumber of seconds to delete messages for (0-604800, i.e., 0 to 7 days).
discordbot_create_guild_channel#Create a new channel in a guild. Requires MANAGE_CHANNELS permission. Returns the new channel object. Each permission_overwrites entry may specify 'allow_names'/'deny_names' (arrays of named permission flags) instead of raw 'allow'/'deny' integers — the correct bitfield is computed automatically.20 params

Create a new channel in a guild. Requires MANAGE_CHANNELS permission. Returns the new channel object. Each permission_overwrites entry may specify 'allow_names'/'deny_names' (arrays of named permission flags) instead of raw 'allow'/'deny' integers — the correct bitfield is computed automatically.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to create the channel in.
namestringrequiredName of the channel (1-100 characters).
available_tagsarrayoptionalArray of tag objects for forum channels.
bitrateintegeroptionalBitrate in bits for voice channels.
default_auto_archive_durationintegeroptionalDefault thread auto-archive duration in minutes: 60, 1440, 4320, or 10080.
default_forum_layoutintegeroptionalDefault forum layout. 0=NOT_SET, 1=LIST_VIEW, 2=GALLERY_VIEW.
default_reaction_emojiobjectoptionalDefault reaction emoji for forum posts.
default_sort_orderintegeroptionalDefault sort order for forum posts. 0=LATEST_ACTIVITY, 1=CREATION_DATE.
default_thread_rate_limit_per_userintegeroptionalDefault slowmode for new threads in forum/media channels.
flagsintegeroptionalChannel flags combined as a bitfield. Currently only supported for Text, Voice, Announcement, Forum, and Media channels.
nsfwbooleanoptionalWhether the channel is NSFW.
parent_idstringoptionalID of the parent category channel.
permission_overwritesarrayoptionalArray of permission overwrite objects.
positionintegeroptionalSorting position of the channel.
rate_limit_per_userintegeroptionalSlowmode rate limit in seconds (0-21600).
rtc_regionstringoptionalVoice region for voice/stage channels.
topicstringoptionalChannel topic (0-1024 characters, or 0-4096 for forums).
typeintegeroptionalChannel type: 0=text, 2=voice, 4=category, 5=announcement, 13=stage, 15=forum, 16=media.
user_limitintegeroptionalMaximum number of users in a voice channel (0=unlimited, 1-99).
video_quality_modeintegeroptionalVideo quality mode for voice channels. 1=AUTO, 2=FULL.
discordbot_create_guild_emoji#Create a new emoji for a guild. Requires CREATE_GUILD_EXPRESSIONS permission. Returns the new emoji object.4 params

Create a new emoji for a guild. Requires CREATE_GUILD_EXPRESSIONS permission. Returns the new emoji object.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to create the emoji in.
imagestringrequiredBase64 encoded image data URI for the emoji (PNG, JPG, GIF supported).
namestringrequiredName of the emoji (2-32 characters, alphanumeric and underscores).
rolesarrayoptionalArray of role IDs allowed to use the emoji (empty array means everyone can).
discordbot_create_guild_role#Create a new role for a guild. Requires MANAGE_ROLES permission. Returns the new role object. Full permission flag reference (name=decimal value, OR multiple together): CREATE_INSTANT_INVITE=1, KICK_MEMBERS=2, BAN_MEMBERS=4, ADMINISTRATOR=8, MANAGE_CHANNELS=16, MANAGE_GUILD=32, ADD_REACTIONS=64, VIEW_AUDIT_LOG=128, PRIORITY_SPEAKER=256, STREAM=512, VIEW_CHANNEL=1024, SEND_MESSAGES=2048, SEND_TTS_MESSAGES=4096, MANAGE_MESSAGES=8192, EMBED_LINKS=16384, ATTACH_FILES=32768, READ_MESSAGE_HISTORY=65536, MENTION_EVERYONE=131072, USE_EXTERNAL_EMOJIS=262144, VIEW_GUILD_INSIGHTS=524288, CONNECT=1048576, SPEAK=2097152, MUTE_MEMBERS=4194304, DEAFEN_MEMBERS=8388608, MOVE_MEMBERS=16777216, USE_VAD=33554432, CHANGE_NICKNAME=67108864, MANAGE_NICKNAMES=134217728, MANAGE_ROLES=268435456, MANAGE_WEBHOOKS=536870912, MANAGE_GUILD_EXPRESSIONS=1073741824, USE_APPLICATION_COMMANDS=2147483648, REQUEST_TO_SPEAK=4294967296, MANAGE_EVENTS=8589934592, MANAGE_THREADS=17179869184, CREATE_PUBLIC_THREADS=34359738368, CREATE_PRIVATE_THREADS=68719476736, USE_EXTERNAL_STICKERS=137438953472, SEND_MESSAGES_IN_THREADS=274877906944, USE_EMBEDDED_ACTIVITIES=549755813888, MODERATE_MEMBERS=1099511627776, VIEW_CREATOR_MONETIZATION_ANALYTICS=2199023255552, USE_SOUNDBOARD=4398046511104, CREATE_GUILD_EXPRESSIONS=8796093022208, CREATE_EVENTS=17592186044416, USE_EXTERNAL_SOUNDS=35184372088832, SEND_VOICE_MESSAGES=70368744177664, SET_VOICE_CHANNEL_STATUS=281474976710656, SEND_POLLS=562949953421312, USE_EXTERNAL_APPS=1125899906842624, PIN_MESSAGES=2251799813685248, BYPASS_SLOWMODE=4503599627370496. Or use a calculator like discordapi.com/permissions.htm. Optionally provide 'permissions_names' (array of named permission flags, e.g. ["SEND_MESSAGES"]) instead of a raw 'permissions' integer — the correct bitfield is computed automatically.10 params

Create a new role for a guild. Requires MANAGE_ROLES permission. Returns the new role object. Full permission flag reference (name=decimal value, OR multiple together): CREATE_INSTANT_INVITE=1, KICK_MEMBERS=2, BAN_MEMBERS=4, ADMINISTRATOR=8, MANAGE_CHANNELS=16, MANAGE_GUILD=32, ADD_REACTIONS=64, VIEW_AUDIT_LOG=128, PRIORITY_SPEAKER=256, STREAM=512, VIEW_CHANNEL=1024, SEND_MESSAGES=2048, SEND_TTS_MESSAGES=4096, MANAGE_MESSAGES=8192, EMBED_LINKS=16384, ATTACH_FILES=32768, READ_MESSAGE_HISTORY=65536, MENTION_EVERYONE=131072, USE_EXTERNAL_EMOJIS=262144, VIEW_GUILD_INSIGHTS=524288, CONNECT=1048576, SPEAK=2097152, MUTE_MEMBERS=4194304, DEAFEN_MEMBERS=8388608, MOVE_MEMBERS=16777216, USE_VAD=33554432, CHANGE_NICKNAME=67108864, MANAGE_NICKNAMES=134217728, MANAGE_ROLES=268435456, MANAGE_WEBHOOKS=536870912, MANAGE_GUILD_EXPRESSIONS=1073741824, USE_APPLICATION_COMMANDS=2147483648, REQUEST_TO_SPEAK=4294967296, MANAGE_EVENTS=8589934592, MANAGE_THREADS=17179869184, CREATE_PUBLIC_THREADS=34359738368, CREATE_PRIVATE_THREADS=68719476736, USE_EXTERNAL_STICKERS=137438953472, SEND_MESSAGES_IN_THREADS=274877906944, USE_EMBEDDED_ACTIVITIES=549755813888, MODERATE_MEMBERS=1099511627776, VIEW_CREATOR_MONETIZATION_ANALYTICS=2199023255552, USE_SOUNDBOARD=4398046511104, CREATE_GUILD_EXPRESSIONS=8796093022208, CREATE_EVENTS=17592186044416, USE_EXTERNAL_SOUNDS=35184372088832, SEND_VOICE_MESSAGES=70368744177664, SET_VOICE_CHANNEL_STATUS=281474976710656, SEND_POLLS=562949953421312, USE_EXTERNAL_APPS=1125899906842624, PIN_MESSAGES=2251799813685248, BYPASS_SLOWMODE=4503599627370496. Or use a calculator like discordapi.com/permissions.htm. Optionally provide 'permissions_names' (array of named permission flags, e.g. ["SEND_MESSAGES"]) instead of a raw 'permissions' integer — the correct bitfield is computed automatically.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to create the role in.
colorintegeroptionalDeprecated. RGB color value of the role as an integer. Still returned by the API, but using 'colors' is recommended when making requests.
colorsobjectoptionalThe role's colors object (recommended replacement for the deprecated 'color' field). Contains primary_color, and optionally secondary_color and tertiary_color for gradient/holographic roles.
hoistbooleanoptionalWhether the role should be displayed separately in the member list.
iconstringoptionalBase64 encoded role icon image (requires ROLE_ICONS guild feature).
mentionablebooleanoptionalWhether the role should be mentionable by everyone.
namestringoptionalName of the role (1-100 characters, default 'new role').
permissionsstringoptionalBitwise permission value for the role as a string.
permissions_namesarrayoptionalNamed permission flags to OR together, as a more reliable alternative to specifying 'permissions' as a raw bitwise integer string — no manual bit math required. If both 'permissions_names' and 'permissions' are given, 'permissions_names' takes precedence.
unicode_emojistringoptionalRole's unicode emoji as a standard emoji (requires ROLE_ICONS guild feature).
discordbot_create_guild_scheduled_event#Create a new scheduled event in a Discord guild. Entity type determines the event location: 1=STAGE_INSTANCE, 2=VOICE (requires channel_id), 3=EXTERNAL (requires entity_metadata with location and scheduled_end_time).11 params

Create a new scheduled event in a Discord guild. Entity type determines the event location: 1=STAGE_INSTANCE, 2=VOICE (requires channel_id), 3=EXTERNAL (requires entity_metadata with location and scheduled_end_time).

NameTypeRequiredDescription
entity_typeintegerrequiredThe type of the scheduled event entity: 1=STAGE_INSTANCE, 2=VOICE, 3=EXTERNAL.
guild_idstringrequiredThe ID of the guild to create the scheduled event in.
namestringrequiredThe name of the scheduled event (1-100 characters).
privacy_levelintegerrequiredPrivacy level for the event. Must be 2 (GUILD_ONLY).
scheduled_start_timestringrequiredISO8601 timestamp for when the event starts.
channel_idstringoptionalThe channel ID for STAGE_INSTANCE or VOICE entity types. Not required for EXTERNAL events.
descriptionstringoptionalDescription of the scheduled event (up to 1000 characters).
entity_metadataobjectoptionalAdditional metadata for the event. Required for EXTERNAL events: provide {"location": "venue name"}.
imagestringoptionalBase64 encoded cover image for the event (data URI format).
recurrence_ruleobjectoptionalRecurrence rule object for repeating events.
scheduled_end_timestringoptionalISO8601 timestamp for when the event ends. Required for EXTERNAL events.
discordbot_create_guild_soundboard_sound#Create a new soundboard sound for the guild. Requires the CREATE_GUILD_EXPRESSIONS permission. Sounds have a max file size of 512kb and a max duration of 5.2 seconds. Fires a Guild Soundboard Sound Create Gateway event. Returns the new soundboard sound object on success.7 params

Create a new soundboard sound for the guild. Requires the CREATE_GUILD_EXPRESSIONS permission. Sounds have a max file size of 512kb and a max duration of 5.2 seconds. Fires a Guild Soundboard Sound Create Gateway event. Returns the new soundboard sound object on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to create the soundboard sound in.
namestringrequiredName of the soundboard sound (2-32 characters).
soundstringrequiredThe mp3 or ogg sound data, base64 encoded as a data URI, similar to image data.
emoji_idstringoptionalThe ID of the custom emoji for the soundboard sound.
emoji_namestringoptionalThe unicode character of a standard emoji for the soundboard sound.
reasonstringoptionalReason for creating the sound, shown in the guild's audit log.
volumenumberoptionalThe volume of the soundboard sound, from 0 to 1. Defaults to 1.
discordbot_create_guild_template#Create a template from a guild's current state. Requires the MANAGE_GUILD permission. Returns the created guild template object on success.3 params

Create a template from a guild's current state. Requires the MANAGE_GUILD permission. Returns the created guild template object on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to create the template from.
namestringrequiredName of the template (1-100 characters).
descriptionstringoptionalDescription for the template (0-120 characters).
discordbot_create_interaction_response#Respond to an interaction from Discord. Must be called within 3 seconds of receiving the interaction. Type determines the response kind: 1=PONG, 4=CHANNEL_MESSAGE_WITH_SOURCE, 5=DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE, 6=DEFERRED_UPDATE_MESSAGE, 7=UPDATE_MESSAGE, 8=APPLICATION_COMMAND_AUTOCOMPLETE_RESULT, 9=MODAL.4 params

Respond to an interaction from Discord. Must be called within 3 seconds of receiving the interaction. Type determines the response kind: 1=PONG, 4=CHANNEL_MESSAGE_WITH_SOURCE, 5=DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE, 6=DEFERRED_UPDATE_MESSAGE, 7=UPDATE_MESSAGE, 8=APPLICATION_COMMAND_AUTOCOMPLETE_RESULT, 9=MODAL.

NameTypeRequiredDescription
dataobjectrequiredResponse data object. Content depends on type (e.g., message data for type 4, modal data for type 9).
interaction_idstringrequiredThe ID of the interaction to respond to.
interaction_tokenstringrequiredThe token of the interaction.
typeintegerrequiredInteraction callback type: 1=PONG, 4=message, 5=deferred message, 6=deferred update, 7=update message, 8=autocomplete, 9=modal.
discordbot_create_lobby#Create a new Discord lobby for matchmaking, optionally adding members to it. Discord Social SDK clients cannot join or leave a lobby created via this API. Returns a lobby object.3 params

Create a new Discord lobby for matchmaking, optionally adding members to it. Discord Social SDK clients cannot join or leave a lobby created via this API. Returns a lobby object.

NameTypeRequiredDescription
idle_timeout_secondsintegeroptionalSeconds to wait before shutting down the lobby after it becomes idle. Between 5 and 604800 (7 days).
membersarrayoptionalArray of up to 25 lobby member objects to add to the lobby on creation. Each requires a user id and may include metadata and flags.
metadataobjectoptionalOptional dictionary of string key/value pairs to attach to the lobby. Max total length 1000.
discordbot_create_lobby_channel_invite_for_self#Create a single-use guild invite to a lobby's linked channel, targeted at the calling user. The lobby must have a linked channel and the caller must be a member of the lobby. The invite expires after one hour. Returns a lobby invite object.1 param

Create a single-use guild invite to a lobby's linked channel, targeted at the calling user. The lobby must have a linked channel and the caller must be a member of the lobby. The invite expires after one hour. Returns a lobby invite object.

NameTypeRequiredDescription
lobby_idstringrequiredThe ID of the lobby to create a channel invite for.
discordbot_create_lobby_channel_invite_for_user#Create a single-use guild invite to a lobby's linked channel on behalf of an application, targeted at the specified user. The lobby must have a linked channel. The invite expires after one hour. Uses a Bot token for authorization. Returns a lobby invite object.2 params

Create a single-use guild invite to a lobby's linked channel on behalf of an application, targeted at the specified user. The lobby must have a linked channel. The invite expires after one hour. Uses a Bot token for authorization. Returns a lobby invite object.

NameTypeRequiredDescription
lobby_idstringrequiredThe ID of the lobby to create a channel invite for.
user_idstringrequiredThe ID of the user to target with the invite.
discordbot_create_message#Send a message to a Discord channel. At least one of content, embeds, sticker_ids, or components must be provided. Supports rich embeds, message references for replies, and components.13 params

Send a message to a Discord channel. At least one of content, embeds, sticker_ids, or components must be provided. Supports rich embeds, message references for replies, and components.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to send the message to.
allowed_mentionsobjectoptionalControls which mentions are allowed in the message. Example: {"parse": ["users", "roles"]}
componentsarrayoptionalArray of message component objects (buttons, select menus, etc.).
contentstringoptionalThe text content of the message (up to 2000 characters).
embedsarrayoptionalArray of embed objects to attach to the message (up to 10 embeds).
enforce_noncebooleanoptionalIf true and nonce is present, the nonce is checked for uniqueness in the past few minutes. If another message was created by the same author with the same nonce, that message is returned and no new message is created.
flagsintegeroptionalMessage flags. Use 64 for SUPPRESS_EMBEDS or 4096 for SUPPRESS_NOTIFICATIONS.
message_referenceobjectoptionalMessage reference object for replying to a message. Example: {"message_id": "123"}
noncestringoptionalA nonce value (string or integer) used for message deduplication.
pollobjectoptionalA poll request object to attach to the message.
shared_client_themeobjectoptionalThe custom client-side theme to share via the message.
sticker_idsarrayoptionalArray of sticker IDs to attach to the message (up to 3 stickers).
ttsbooleanoptionalWhether the message should be sent as text-to-speech.
discordbot_create_or_join_lobby#Create a new lobby identified by a secret, or join the calling user to the existing lobby with that secret if one already exists. Updates lobby metadata and the calling member's metadata on join. Returns a lobby object.4 params

Create a new lobby identified by a secret, or join the calling user to the existing lobby with that secret if one already exists. Updates lobby metadata and the calling member's metadata on join. Returns a lobby object.

NameTypeRequiredDescription
secretstringrequiredSecret used to identify the lobby. If a lobby for this application already exists with this secret, the caller joins it; otherwise a new lobby is created. Max 250 characters.
idle_timeout_secondsintegeroptionalSeconds to wait before shutting down the lobby after it becomes idle. Between 5 and 604800 (7 days).
lobby_metadataobjectoptionalOptional dictionary of string key/value pairs to set on the lobby. Max total length 1000. Overwrites any existing lobby metadata.
member_metadataobjectoptionalOptional dictionary of string key/value pairs to set on the calling user's lobby member. Max total length 1000.
discordbot_create_reaction#Add a reaction to a message in a Discord channel. The emoji parameter should be URL-encoded (e.g., a Unicode emoji like %F0%9F%94%A5 for 🔥, or name:id for custom emojis).3 params

Add a reaction to a message in a Discord channel. The emoji parameter should be URL-encoded (e.g., a Unicode emoji like %F0%9F%94%A5 for 🔥, or name:id for custom emojis).

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel containing the message.
emojistringrequiredThe emoji to react with. Use URL-encoded Unicode for standard emojis (e.g., %F0%9F%94%A5) or name:id format for custom emojis.
message_idstringrequiredThe ID of the message to react to.
discordbot_create_stage_instance#Create a new Stage instance associated with a Stage channel, making the channel go live. Requires the user to be a moderator of the Stage channel (MANAGE_CHANNELS, MUTE_MEMBERS, and MOVE_MEMBERS permissions). Fires a Stage Instance Create Gateway event. Returns the new Stage instance object.6 params

Create a new Stage instance associated with a Stage channel, making the channel go live. Requires the user to be a moderator of the Stage channel (MANAGE_CHANNELS, MUTE_MEMBERS, and MOVE_MEMBERS permissions). Fires a Stage Instance Create Gateway event. Returns the new Stage instance object.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the Stage channel to create the Stage instance for.
topicstringrequiredThe topic of the Stage instance (1-120 characters).
guild_scheduled_event_idstringoptionalThe ID of the guild scheduled event to associate with this Stage instance.
privacy_levelintegeroptionalThe privacy level of the Stage instance: 1=PUBLIC (deprecated), 2=GUILD_ONLY. Defaults to GUILD_ONLY (2) if omitted.
reasonstringoptionalReason for creating the Stage instance, shown in the guild's audit log.
send_start_notificationbooleanoptionalWhether to notify @everyone that a Stage instance has started. The stage moderator must have the MENTION_EVERYONE permission for the notification to be sent.
discordbot_create_test_entitlement#Create a test entitlement to a given SKU for a given guild or user. Discord will act as though that user or guild has entitlement to your premium offering. After creating a test entitlement, reload your Discord client to see the server or user gain premium access. Returns a partial entitlement object — it does not contain subscription_id, starts_at, or ends_at, since it's valid in perpetuity.4 params

Create a test entitlement to a given SKU for a given guild or user. Discord will act as though that user or guild has entitlement to your premium offering. After creating a test entitlement, reload your Discord client to see the server or user gain premium access. Returns a partial entitlement object — it does not contain subscription_id, starts_at, or ends_at, since it's valid in perpetuity.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application to create the test entitlement for.
owner_idstringrequiredThe ID of the guild or user to grant the entitlement to.
owner_typeintegerrequiredThe type of owner to grant the entitlement to: 1 for a guild subscription, 2 for a user subscription.
sku_idstringrequiredThe ID of the SKU to grant the entitlement to.
discordbot_create_webhook#Create a new webhook for a Discord channel. Requires MANAGE_WEBHOOKS permission. Returns the newly created webhook object with its token.3 params

Create a new webhook for a Discord channel. Requires MANAGE_WEBHOOKS permission. Returns the newly created webhook object with its token.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to create the webhook in.
namestringrequiredThe name of the webhook (1-80 characters). Cannot be 'clyde'.
avatarstringoptionalBase64 encoded avatar image for the webhook (data URI format, e.g., data:image/png;base64,...).
discordbot_crosspost_message#Crosspost a message in an announcement channel to all following channels. Requires SEND_MESSAGES permission if the current user wrote the message, or MANAGE_MESSAGES if they did not.2 params

Crosspost a message in an announcement channel to all following channels. Requires SEND_MESSAGES permission if the current user wrote the message, or MANAGE_MESSAGES if they did not.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the announcement channel containing the message.
message_idstringrequiredThe ID of the message to crosspost.
discordbot_delete_all_reactions#Delete all reactions on a message. Requires MANAGE_MESSAGES permission. Returns 204 No Content on success.2 params

Delete all reactions on a message. Requires MANAGE_MESSAGES permission. Returns 204 No Content on success.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel containing the message.
message_idstringrequiredThe ID of the message to clear all reactions from.
discordbot_delete_all_reactions_for_emoji#Delete all reactions for a specific emoji on a message. Requires MANAGE_MESSAGES permission. Use URL-encoded emoji format. Returns 204 No Content on success.3 params

Delete all reactions for a specific emoji on a message. Requires MANAGE_MESSAGES permission. Use URL-encoded emoji format. Returns 204 No Content on success.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel containing the message.
emojistringrequiredThe emoji whose reactions to remove. For custom emoji use name:id format. For unicode emoji use the URL-encoded character.
message_idstringrequiredThe ID of the message to remove emoji reactions from.
discordbot_delete_application_emoji#Delete an emoji owned by a Discord application. Returns 204 No Content on success.2 params

Delete an emoji owned by a Discord application. Returns 204 No Content on success.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application that owns the emoji.
emoji_idstringrequiredThe ID of the emoji to delete.
discordbot_delete_auto_moderation_rule#Delete an Auto Moderation rule for a guild. Requires the MANAGE_GUILD permission. Fires an Auto Moderation Rule Delete Gateway event. Returns 204 No Content on success.3 params

Delete an Auto Moderation rule for a guild. Requires the MANAGE_GUILD permission. Fires an Auto Moderation Rule Delete Gateway event. Returns 204 No Content on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild the rule belongs to.
rule_idstringrequiredThe ID of the Auto Moderation rule to delete.
reasonstringoptionalReason for deleting the rule, shown in the guild's audit log.
discordbot_delete_channel#Delete a channel or close a private message. For guild channels, requires MANAGE_CHANNELS permission. Deleting a category does not delete its child channels. Returns the deleted channel object.1 param

Delete a channel or close a private message. For guild channels, requires MANAGE_CHANNELS permission. Deleting a category does not delete its child channels. Returns the deleted channel object.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to delete.
discordbot_delete_channel_invite#Delete an invite by its code. Requires MANAGE_CHANNELS permission for guild channel invites or MANAGE_GUILD. Returns the deleted invite object.2 params

Delete an invite by its code. Requires MANAGE_CHANNELS permission for guild channel invites or MANAGE_GUILD. Returns the deleted invite object.

NameTypeRequiredDescription
invite_codestringrequiredThe invite code to delete.
reasonstringoptionalReason for deleting the invite, shown in the guild's audit log.
discordbot_delete_channel_permission#Delete a channel permission overwrite for a user or role in a channel. Requires MANAGE_ROLES permission. Returns 204 No Content on success.2 params

Delete a channel permission overwrite for a user or role in a channel. Requires MANAGE_ROLES permission. Returns 204 No Content on success.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to delete permissions from.
overwrite_idstringrequiredThe ID of the role or user permission overwrite to delete.
discordbot_delete_global_application_command#Delete a global application command. Returns 204 No Content on success.2 params

Delete a global application command. Returns 204 No Content on success.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
command_idstringrequiredThe ID of the command to delete.
discordbot_delete_guild_application_command#Delete a guild application command. Returns 204 No Content on success.3 params

Delete a guild application command. Returns 204 No Content on success.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
command_idstringrequiredThe ID of the command to delete.
guild_idstringrequiredThe ID of the guild.
discordbot_delete_guild_emoji#Delete a guild emoji. Requires MANAGE_GUILD_EXPRESSIONS permission. Returns 204 No Content on success.2 params

Delete a guild emoji. Requires MANAGE_GUILD_EXPRESSIONS permission. Returns 204 No Content on success.

NameTypeRequiredDescription
emoji_idstringrequiredThe ID of the emoji to delete.
guild_idstringrequiredThe ID of the guild.
discordbot_delete_guild_integration#Delete an attached integration for a guild. Deletes any associated webhooks and kicks the associated bot if there is one. Requires MANAGE_GUILD permission. Returns 204 No Content on success.3 params

Delete an attached integration for a guild. Deletes any associated webhooks and kicks the associated bot if there is one. Requires MANAGE_GUILD permission. Returns 204 No Content on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild.
integration_idstringrequiredThe ID of the integration to delete.
reasonstringoptionalReason for deleting the integration, shown in the guild's audit log.
discordbot_delete_guild_invite#Delete an invite by its code. Requires the MANAGE_CHANNELS permission on the channel this invite belongs to, or MANAGE_GUILD to remove any invite across the guild. Discord's invite-deletion endpoint is not guild-scoped in the URL — the invite code alone identifies it. Returns the deleted invite object.2 params

Delete an invite by its code. Requires the MANAGE_CHANNELS permission on the channel this invite belongs to, or MANAGE_GUILD to remove any invite across the guild. Discord's invite-deletion endpoint is not guild-scoped in the URL — the invite code alone identifies it. Returns the deleted invite object.

NameTypeRequiredDescription
invite_codestringrequiredThe invite code to delete.
reasonstringoptionalReason for deleting the invite, shown in the guild's audit log.
discordbot_delete_guild_role#Delete a guild role. Requires MANAGE_ROLES permission. Returns 204 No Content on success.2 params

Delete a guild role. Requires MANAGE_ROLES permission. Returns 204 No Content on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild.
role_idstringrequiredThe ID of the role to delete.
discordbot_delete_guild_scheduled_event#Delete a guild scheduled event. Requires MANAGE_EVENTS permission. Returns 204 No Content on success.2 params

Delete a guild scheduled event. Requires MANAGE_EVENTS permission. Returns 204 No Content on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild.
guild_scheduled_event_idstringrequiredThe ID of the scheduled event to delete.
discordbot_delete_guild_soundboard_sound#Delete the given guild soundboard sound. For sounds created by the current user, requires either the CREATE_GUILD_EXPRESSIONS or MANAGE_GUILD_EXPRESSIONS permission. For other sounds, requires the MANAGE_GUILD_EXPRESSIONS permission. Fires a Guild Soundboard Sound Delete Gateway event. Returns 204 No Content on success.3 params

Delete the given guild soundboard sound. For sounds created by the current user, requires either the CREATE_GUILD_EXPRESSIONS or MANAGE_GUILD_EXPRESSIONS permission. For other sounds, requires the MANAGE_GUILD_EXPRESSIONS permission. Fires a Guild Soundboard Sound Delete Gateway event. Returns 204 No Content on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild the soundboard sound belongs to.
sound_idstringrequiredThe ID of the soundboard sound to delete.
reasonstringoptionalReason for deleting the sound, shown in the guild's audit log.
discordbot_delete_guild_sticker#Delete a guild sticker. Requires MANAGE_GUILD_EXPRESSIONS permission. Returns 204 No Content on success.2 params

Delete a guild sticker. Requires MANAGE_GUILD_EXPRESSIONS permission. Returns 204 No Content on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild.
sticker_idstringrequiredThe ID of the sticker to delete.
discordbot_delete_guild_template#Delete a guild template. Requires the MANAGE_GUILD permission. Returns the deleted guild template object on success.2 params

Delete a guild template. Requires the MANAGE_GUILD permission. Returns the deleted guild template object on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild the template belongs to.
template_codestringrequiredThe template code to delete.
discordbot_delete_lobby#Delete a Discord lobby if it exists. Safe to call even if the lobby is already deleted. Returns nothing.1 param

Delete a Discord lobby if it exists. Safe to call even if the lobby is already deleted. Returns nothing.

NameTypeRequiredDescription
lobby_idstringrequiredThe ID of the lobby to delete.
discordbot_delete_message#Permanently delete a message from a Discord channel. This action is irreversible. Requires MANAGE_MESSAGES permission for messages sent by others.2 params

Permanently delete a message from a Discord channel. This action is irreversible. Requires MANAGE_MESSAGES permission for messages sent by others.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel containing the message.
message_idstringrequiredThe ID of the message to delete.
discordbot_delete_original_interaction_response#Delete the initial response to an interaction. Returns 204 No Content on success.2 params

Delete the initial response to an interaction. Returns 204 No Content on success.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
interaction_tokenstringrequiredThe token of the interaction.
discordbot_delete_own_reaction#Remove the current user's own reaction from a Discord message. The emoji parameter should be URL-encoded.3 params

Remove the current user's own reaction from a Discord message. The emoji parameter should be URL-encoded.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel containing the message.
emojistringrequiredThe emoji reaction to remove. Use URL-encoded Unicode for standard emojis or name:id for custom emojis.
message_idstringrequiredThe ID of the message to remove the reaction from.
discordbot_delete_stage_instance#Delete the Stage instance for a Stage channel, ending the live Stage. Requires the user to be a moderator of the Stage channel (MANAGE_CHANNELS, MUTE_MEMBERS, and MOVE_MEMBERS permissions). Fires a Stage Instance Delete Gateway event. Returns 204 No Content on success.2 params

Delete the Stage instance for a Stage channel, ending the live Stage. Requires the user to be a moderator of the Stage channel (MANAGE_CHANNELS, MUTE_MEMBERS, and MOVE_MEMBERS permissions). Fires a Stage Instance Delete Gateway event. Returns 204 No Content on success.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the Stage channel whose Stage instance should be deleted.
reasonstringoptionalReason for deleting the Stage instance, shown in the guild's audit log.
discordbot_delete_test_entitlement#Delete a currently-active test entitlement. Discord will act as though that user or guild no longer has entitlement to your premium offering. Returns 204 No Content on success.2 params

Delete a currently-active test entitlement. Discord will act as though that user or guild no longer has entitlement to your premium offering. Returns 204 No Content on success.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application that owns the entitlement.
entitlement_idstringrequiredThe ID of the test entitlement to delete.
discordbot_delete_user_reaction#Delete a reaction made by a specific user on a message. Requires MANAGE_MESSAGES permission. Use URL-encoded emoji format (e.g., %F0%9F%94%A5 for fire emoji, or name:id for custom emoji).4 params

Delete a reaction made by a specific user on a message. Requires MANAGE_MESSAGES permission. Use URL-encoded emoji format (e.g., %F0%9F%94%A5 for fire emoji, or name:id for custom emoji).

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel containing the message.
emojistringrequiredThe emoji to remove. For custom emoji use name:id format. For unicode emoji use the URL-encoded character.
message_idstringrequiredThe ID of the message to remove the reaction from.
user_idstringrequiredThe ID of the user whose reaction to remove.
discordbot_delete_webhook#Permanently delete a Discord webhook. Requires MANAGE_WEBHOOKS permission. This action is irreversible.1 param

Permanently delete a Discord webhook. Requires MANAGE_WEBHOOKS permission. This action is irreversible.

NameTypeRequiredDescription
webhook_idstringrequiredThe ID of the webhook to delete.
discordbot_delete_webhook_message#Delete a previously sent webhook message. Returns 204 No Content on success.4 params

Delete a previously sent webhook message. Returns 204 No Content on success.

NameTypeRequiredDescription
message_idstringrequiredThe ID of the message to delete.
webhook_idstringrequiredThe ID of the webhook.
webhook_tokenstringrequiredThe token of the webhook.
thread_idstringoptionalID of the thread the message is in (if applicable).
discordbot_delete_webhook_with_token#Delete a webhook using its token instead of OAuth authentication. Returns 204 No Content on success.2 params

Delete a webhook using its token instead of OAuth authentication. Returns 204 No Content on success.

NameTypeRequiredDescription
webhook_idstringrequiredThe ID of the webhook to delete.
webhook_tokenstringrequiredThe token of the webhook.
discordbot_edit_channel_permissions#Edit the channel permission overwrites for a user or role in a channel. Only usable for guild channels. Requires MANAGE_ROLES permission. Returns 204 No Content on success. Full permission flag reference (name=decimal value, OR multiple together): CREATE_INSTANT_INVITE=1, KICK_MEMBERS=2, BAN_MEMBERS=4, ADMINISTRATOR=8, MANAGE_CHANNELS=16, MANAGE_GUILD=32, ADD_REACTIONS=64, VIEW_AUDIT_LOG=128, PRIORITY_SPEAKER=256, STREAM=512, VIEW_CHANNEL=1024, SEND_MESSAGES=2048, SEND_TTS_MESSAGES=4096, MANAGE_MESSAGES=8192, EMBED_LINKS=16384, ATTACH_FILES=32768, READ_MESSAGE_HISTORY=65536, MENTION_EVERYONE=131072, USE_EXTERNAL_EMOJIS=262144, VIEW_GUILD_INSIGHTS=524288, CONNECT=1048576, SPEAK=2097152, MUTE_MEMBERS=4194304, DEAFEN_MEMBERS=8388608, MOVE_MEMBERS=16777216, USE_VAD=33554432, CHANGE_NICKNAME=67108864, MANAGE_NICKNAMES=134217728, MANAGE_ROLES=268435456, MANAGE_WEBHOOKS=536870912, MANAGE_GUILD_EXPRESSIONS=1073741824, USE_APPLICATION_COMMANDS=2147483648, REQUEST_TO_SPEAK=4294967296, MANAGE_EVENTS=8589934592, MANAGE_THREADS=17179869184, CREATE_PUBLIC_THREADS=34359738368, CREATE_PRIVATE_THREADS=68719476736, USE_EXTERNAL_STICKERS=137438953472, SEND_MESSAGES_IN_THREADS=274877906944, USE_EMBEDDED_ACTIVITIES=549755813888, MODERATE_MEMBERS=1099511627776, VIEW_CREATOR_MONETIZATION_ANALYTICS=2199023255552, USE_SOUNDBOARD=4398046511104, CREATE_GUILD_EXPRESSIONS=8796093022208, CREATE_EVENTS=17592186044416, USE_EXTERNAL_SOUNDS=35184372088832, SEND_VOICE_MESSAGES=70368744177664, SET_VOICE_CHANNEL_STATUS=281474976710656, SEND_POLLS=562949953421312, USE_EXTERNAL_APPS=1125899906842624, PIN_MESSAGES=2251799813685248, BYPASS_SLOWMODE=4503599627370496. Or use a calculator like discordapi.com/permissions.htm. Optionally provide 'allow_names'/'deny_names' (arrays of named permission flags) instead of raw 'allow'/'deny' integers — the correct bitfield is computed automatically.7 params

Edit the channel permission overwrites for a user or role in a channel. Only usable for guild channels. Requires MANAGE_ROLES permission. Returns 204 No Content on success. Full permission flag reference (name=decimal value, OR multiple together): CREATE_INSTANT_INVITE=1, KICK_MEMBERS=2, BAN_MEMBERS=4, ADMINISTRATOR=8, MANAGE_CHANNELS=16, MANAGE_GUILD=32, ADD_REACTIONS=64, VIEW_AUDIT_LOG=128, PRIORITY_SPEAKER=256, STREAM=512, VIEW_CHANNEL=1024, SEND_MESSAGES=2048, SEND_TTS_MESSAGES=4096, MANAGE_MESSAGES=8192, EMBED_LINKS=16384, ATTACH_FILES=32768, READ_MESSAGE_HISTORY=65536, MENTION_EVERYONE=131072, USE_EXTERNAL_EMOJIS=262144, VIEW_GUILD_INSIGHTS=524288, CONNECT=1048576, SPEAK=2097152, MUTE_MEMBERS=4194304, DEAFEN_MEMBERS=8388608, MOVE_MEMBERS=16777216, USE_VAD=33554432, CHANGE_NICKNAME=67108864, MANAGE_NICKNAMES=134217728, MANAGE_ROLES=268435456, MANAGE_WEBHOOKS=536870912, MANAGE_GUILD_EXPRESSIONS=1073741824, USE_APPLICATION_COMMANDS=2147483648, REQUEST_TO_SPEAK=4294967296, MANAGE_EVENTS=8589934592, MANAGE_THREADS=17179869184, CREATE_PUBLIC_THREADS=34359738368, CREATE_PRIVATE_THREADS=68719476736, USE_EXTERNAL_STICKERS=137438953472, SEND_MESSAGES_IN_THREADS=274877906944, USE_EMBEDDED_ACTIVITIES=549755813888, MODERATE_MEMBERS=1099511627776, VIEW_CREATOR_MONETIZATION_ANALYTICS=2199023255552, USE_SOUNDBOARD=4398046511104, CREATE_GUILD_EXPRESSIONS=8796093022208, CREATE_EVENTS=17592186044416, USE_EXTERNAL_SOUNDS=35184372088832, SEND_VOICE_MESSAGES=70368744177664, SET_VOICE_CHANNEL_STATUS=281474976710656, SEND_POLLS=562949953421312, USE_EXTERNAL_APPS=1125899906842624, PIN_MESSAGES=2251799813685248, BYPASS_SLOWMODE=4503599627370496. Or use a calculator like discordapi.com/permissions.htm. Optionally provide 'allow_names'/'deny_names' (arrays of named permission flags) instead of raw 'allow'/'deny' integers — the correct bitfield is computed automatically.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to edit permissions for.
overwrite_idstringrequiredThe ID of the role or user to set permissions for.
typeintegerrequiredType of overwrite: 0 for role, 1 for member. Required by Discord's API.
allowstringoptionalBitwise value of all allowed permissions as a string.
allow_namesarrayoptionalNamed permission flags to OR together for 'allow', as a more reliable alternative to a raw bitwise integer string — no manual bit math required. If both 'allow_names' and 'allow' are given, 'allow_names' takes precedence.
denystringoptionalBitwise value of all denied permissions as a string.
deny_namesarrayoptionalNamed permission flags to OR together for 'deny', as a more reliable alternative to a raw bitwise integer string — no manual bit math required. If both 'deny_names' and 'deny' are given, 'deny_names' takes precedence.
discordbot_edit_current_application#Edit properties of the app associated with the requesting bot user. Only properties that are passed are updated. Returns the updated application object on success.13 params

Edit properties of the app associated with the requesting bot user. Only properties that are passed are updated. Returns the updated application object on success.

NameTypeRequiredDescription
cover_imagestringoptionalBase64 encoded image data URI for the app's default rich presence invite cover image, or null to remove it.
custom_install_urlstringoptionalDefault custom authorization URL for the app, if enabled.
descriptionstringoptionalDescription of the app.
event_webhooks_statusintegeroptionalWhether event webhooks are enabled for the app. Use 1 to disable and 2 to enable.
event_webhooks_typesarrayoptionalList of webhook event types to subscribe to.
event_webhooks_urlstringoptionalEvent webhooks URL for the app to receive webhook events.
flagsintegeroptionalApp's public flags. Only limited intent flags (GATEWAY_PRESENCE_LIMITED, GATEWAY_GUILD_MEMBERS_LIMITED, and GATEWAY_MESSAGE_CONTENT_LIMITED) can be updated via the API.
iconstringoptionalBase64 encoded image data URI for the icon of the app, or null to remove it.
install_paramsobjectoptionalSettings for the app's default in-app authorization link, if enabled. An object with 'scopes' (array of strings) and 'permissions' (string).
integration_types_configobjectoptionalDefault scopes and permissions for each supported installation context, keyed by application integration type (0 for guild install, 1 for user install).
interactions_endpoint_urlstringoptionalInteractions endpoint URL for the app. Discord validates this URL by sending a PING interaction before accepting the update.
role_connections_verification_urlstringoptionalRole connection verification URL for the app.
tagsarrayoptionalList of tags describing the content and functionality of the app. Max of 20 characters per tag, and a max of 5 tags.
discordbot_edit_global_application_command#Edit a global application command. Returns the updated command object.11 params

Edit a global application command. Returns the updated command object.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
command_idstringrequiredThe ID of the command to edit.
default_member_permissionsstringoptionalPermissions required to use the command as a bitfield string.
default_permissionbooleanoptionalWhether the command is enabled by default (deprecated).
descriptionstringoptionalNew command description (1-100 characters).
description_localizationsobjectoptionalLocalization dictionary for description field.
dm_permissionbooleanoptionalWhether the command is available in DMs (deprecated).
namestringoptionalNew command name (1-32 characters).
name_localizationsobjectoptionalLocalization dictionary for name field.
nsfwbooleanoptionalWhether the command is age-restricted.
optionsarrayoptionalNew array of command option objects.
discordbot_edit_guild_application_command#Edit a guild application command. Returns the updated command object.11 params

Edit a guild application command. Returns the updated command object.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
command_idstringrequiredThe ID of the command to edit.
guild_idstringrequiredThe ID of the guild.
default_member_permissionsstringoptionalPermissions required to use the command as a bitfield string.
default_permissionbooleanoptionalWhether the command is enabled by default (deprecated).
descriptionstringoptionalNew command description.
description_localizationsobjectoptionalLocalization dictionary for description field.
namestringoptionalNew command name.
name_localizationsobjectoptionalLocalization dictionary for name field.
nsfwbooleanoptionalWhether the command is age-restricted.
optionsarrayoptionalNew array of command option objects.
discordbot_edit_message#Edit a previously sent message in a Discord channel. Only the author of the message can edit it. Supports updating content, embeds, flags, allowed mentions, components, and attachments.8 params

Edit a previously sent message in a Discord channel. Only the author of the message can edit it. Supports updating content, embeds, flags, allowed mentions, components, and attachments.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel containing the message.
message_idstringrequiredThe ID of the message to edit.
allowed_mentionsobjectoptionalControls which mentions are allowed in the edited message.
attachmentsarrayoptionalArray of attachment objects to keep or modify on the message.
componentsarrayoptionalArray of updated message component objects.
contentstringoptionalNew text content for the message (up to 2000 characters). Pass null to remove content.
embedsarrayoptionalArray of updated embed objects. Pass empty array to remove all embeds.
flagsintegeroptionalUpdated message flags. Use 64 to suppress embeds.
discordbot_edit_original_interaction_response#Edit the initial response to an interaction. Returns the updated message object.8 params

Edit the initial response to an interaction. Returns the updated message object.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
interaction_tokenstringrequiredThe token of the interaction.
allowed_mentionsobjectoptionalAllowed mentions object.
attachmentsarrayoptionalArray of attachment objects.
componentsarrayoptionalArray of message component objects.
contentstringoptionalUpdated message content.
embedsarrayoptionalArray of embed objects.
flagsintegeroptionalMessage flags.
discordbot_edit_webhook_message#Edit a previously sent webhook message. Returns the updated message object.12 params

Edit a previously sent webhook message. Returns the updated message object.

NameTypeRequiredDescription
message_idstringrequiredThe ID of the message to edit.
webhook_idstringrequiredThe ID of the webhook.
webhook_tokenstringrequiredThe token of the webhook.
allowed_mentionsobjectoptionalAllowed mentions object controlling which mentions are processed.
attachmentsarrayoptionalArray of attachment objects to include with the message.
componentsarrayoptionalArray of message component objects.
contentstringoptionalNew message content (up to 2000 characters).
embedsarrayoptionalArray of embed objects.
flagsintegeroptionalMessage flags (only SUPPRESS_EMBEDS can be set/unset).
pollobjectoptionalA poll request object to attach to the message. Polls can only be added when editing a deferred interaction response.
thread_idstringoptionalID of the thread the message is in (query parameter).
with_componentsbooleanoptionalWhether to respect the components field of the request (defaults to false). When enabled, allows application-owned webhooks to use all components and non-owned webhooks to use non-interactive components.
discordbot_end_poll#Immediately end an active poll in a Discord message. You cannot end polls created by other users.2 params

Immediately end an active poll in a Discord message. You cannot end polls created by other users.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel containing the poll message.
message_idstringrequiredThe ID of the poll message to end.
discordbot_execute_github_compatible_webhook#Send a GitHub webhook event payload to a Discord webhook, for use as the Payload URL when configuring a GitHub repository webhook. Supports the commit_comment, create, delete, fork, issue_comment, issues, member, public, pull_request, pull_request_review, pull_request_review_comment, push, release, watch, check_run, check_suite, discussion, and discussion_comment GitHub events.24 params

Send a GitHub webhook event payload to a Discord webhook, for use as the Payload URL when configuring a GitHub repository webhook. Supports the commit_comment, create, delete, fork, issue_comment, issues, member, public, pull_request, pull_request_review, pull_request_review_comment, push, release, watch, check_run, check_suite, discussion, and discussion_comment GitHub events.

NameTypeRequiredDescription
senderobjectrequiredThe GitHub user object that triggered the event.
webhook_idstringrequiredThe ID of the webhook to execute.
webhook_tokenstringrequiredThe token of the webhook.
actionstringoptionalThe GitHub event action, such as opened, closed, or created.
answerobjectoptionalThe GitHub discussion answer comment object, present for discussion answer events.
check_runobjectoptionalThe GitHub check run object, present for check_run events.
check_suiteobjectoptionalThe GitHub check suite object, present for check_suite events.
commentobjectoptionalThe GitHub comment object, present for comment_comment, issue_comment, pull_request_review_comment, and discussion_comment events.
commitsarrayoptionalArray of GitHub commit objects included in a push event.
comparestringoptionalURL to compare the before and after states of a push event.
discussionobjectoptionalThe GitHub discussion object, present for discussion events.
forcedbooleanoptionalWhether the push event was a force push.
forkeeobjectoptionalThe GitHub repository object for the new fork, present for fork events.
head_commitobjectoptionalThe head GitHub commit object for a push event.
issueobjectoptionalThe GitHub issue object, present for issues and issue_comment events.
memberobjectoptionalThe GitHub user object for the affected member, present for member events.
pull_requestobjectoptionalThe GitHub pull request object, present for pull_request, pull_request_review, and pull_request_review_comment events.
refstringoptionalThe full git ref that was pushed, created, or deleted, such as refs/heads/main.
ref_typestringoptionalThe type of ref affected, such as branch or tag, present for create and delete events.
releaseobjectoptionalThe GitHub release object, present for release events.
repositoryobjectoptionalThe GitHub repository object the event occurred in.
reviewobjectoptionalThe GitHub pull request review object, present for pull_request_review events.
thread_idstringoptionalID of the thread to send the message in.
waitbooleanoptionalWaits for server confirmation of message send before responding. Defaults to true; when false, a message that fails to save does not return an error.
discordbot_execute_slack_compatible_webhook#Send a message to a Discord webhook using a Slack-compatible payload format, so tools that only speak Slack's incoming webhook format can post into Discord. Discord does not support Slack's channel, icon_emoji, mrkdwn, or mrkdwn_in properties.8 params

Send a message to a Discord webhook using a Slack-compatible payload format, so tools that only speak Slack's incoming webhook format can post into Discord. Discord does not support Slack's channel, icon_emoji, mrkdwn, or mrkdwn_in properties.

NameTypeRequiredDescription
webhook_idstringrequiredThe ID of the webhook to execute.
webhook_tokenstringrequiredThe token of the webhook.
attachmentsarrayoptionalArray of Slack-style attachment objects to include with the message.
icon_urlstringoptionalURL of an image to use as the icon for this message, overriding the webhook's default avatar.
textstringoptionalThe message text content (up to 2000 characters).
thread_idstringoptionalID of the thread to send the message in.
usernamestringoptionalOverride the webhook's default username for this message.
waitbooleanoptionalWaits for server confirmation of message send before responding. Defaults to true; when false, a message that fails to save does not return an error.
discordbot_execute_webhook#Send a message via a Discord webhook. Supports custom username, avatar, embeds, and components. File attachments (multipart/form-data) are not supported by this tool. Use the wait query parameter to receive the created message object in the response.17 params

Send a message via a Discord webhook. Supports custom username, avatar, embeds, and components. File attachments (multipart/form-data) are not supported by this tool. Use the wait query parameter to receive the created message object in the response.

NameTypeRequiredDescription
webhook_idstringrequiredThe ID of the webhook to execute.
webhook_tokenstringrequiredThe token of the webhook.
allowed_mentionsobjectoptionalAllowed mentions object to control mention behavior.
applied_tagsarrayoptionalArray of tag IDs to apply to the thread (requires the webhook channel to be a forum or media channel).
attachmentsarrayoptionalArray of partial attachment request objects providing metadata for the attachments on this message.
avatar_urlstringoptionalURL of the avatar image to use instead of the webhook's default avatar.
componentsarrayoptionalArray of message component objects.
contentstringoptionalThe message text content (up to 2000 characters).
embedsarrayoptionalArray of embed objects to include in the message (up to 10).
flagsintegeroptionalMessage flags. Use 64 for SUPPRESS_EMBEDS.
pollobjectoptionalA poll request object to attach to the message.
thread_idstringoptionalSend the message to this thread within a forum or media channel.
thread_namestringoptionalName of the thread to create (only for forum/media channels).
ttsbooleanoptionalWhether the message should be sent as text-to-speech.
usernamestringoptionalOverride the webhook's default username for this message.
waitbooleanoptionalIf true, waits for the message to be created and returns the message object.
with_componentsbooleanoptionalWhether to respect the components field of the request. When enabled, allows application-owned webhooks to use all components and non-owned webhooks to use non-interactive components. Defaults to false.
discordbot_follow_announcement_channel#Follow an announcement channel to send messages to a target channel. Requires MANAGE_WEBHOOKS permission in the target channel. Returns a followed channel object.2 params

Follow an announcement channel to send messages to a target channel. Requires MANAGE_WEBHOOKS permission in the target channel. Returns a followed channel object.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the announcement channel to follow.
webhook_channel_idstringrequiredThe ID of the target channel to receive crossposted messages.
discordbot_get_answer_voters#Retrieve a list of users who voted for a specific answer in a Discord poll.5 params

Retrieve a list of users who voted for a specific answer in a Discord poll.

NameTypeRequiredDescription
answer_idstringrequiredThe ID of the poll answer to get voters for.
channel_idstringrequiredThe ID of the channel containing the poll message.
message_idstringrequiredThe ID of the poll message.
afterstringoptionalGet users after this user ID (snowflake) for pagination.
limitintegeroptionalMaximum number of voters to return (1-100). Default is 25.
discordbot_get_application_activity_instance#Retrieve a serialized activity instance for an application, if it exists. Useful for preventing unwanted activity sessions.2 params

Retrieve a serialized activity instance for an application, if it exists. Useful for preventing unwanted activity sessions.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application that owns the activity instance.
instance_idstringrequiredThe ID of the activity instance to retrieve.
discordbot_get_application_emoji#Retrieve a specific emoji owned by a Discord application by its emoji ID.2 params

Retrieve a specific emoji owned by a Discord application by its emoji ID.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application that owns the emoji.
emoji_idstringrequiredThe ID of the emoji to retrieve.
discordbot_get_application_role_connection_metadata#Fetch the list of application role connection metadata records configured for an application. Returns an array of application role connection metadata objects, each describing a comparison type, dictionary key, name, and description used to verify a user's role connection.1 param

Fetch the list of application role connection metadata records configured for an application. Returns an array of application role connection metadata objects, each describing a comparison type, dictionary key, name, and description used to verify a user's role connection.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
discordbot_get_auto_moderation_rule#Get a single Auto Moderation rule for a guild by its ID. Requires the MANAGE_GUILD permission. Returns an auto moderation rule object.2 params

Get a single Auto Moderation rule for a guild by its ID. Requires the MANAGE_GUILD permission. Returns an auto moderation rule object.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild the rule belongs to.
rule_idstringrequiredThe ID of the Auto Moderation rule to retrieve.
discordbot_get_channel#Retrieve a Discord channel by its ID. Returns channel information including type, name, topic, permissions, and other metadata.1 param

Retrieve a Discord channel by its ID. Returns channel information including type, name, topic, permissions, and other metadata.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to retrieve.
discordbot_get_channel_invites#Retrieve a list of invites for a Discord channel. Requires MANAGE_CHANNELS permission. Returns invite objects with metadata.1 param

Retrieve a list of invites for a Discord channel. Requires MANAGE_CHANNELS permission. Returns invite objects with metadata.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to retrieve invites for.
discordbot_get_channel_message#Retrieve a specific message from a Discord channel by its message ID.2 params

Retrieve a specific message from a Discord channel by its message ID.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel containing the message.
message_idstringrequiredThe ID of the message to retrieve.
discordbot_get_channel_webhooks#Retrieve all webhooks for a Discord channel. Requires MANAGE_WEBHOOKS permission.1 param

Retrieve all webhooks for a Discord channel. Requires MANAGE_WEBHOOKS permission.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to retrieve webhooks for.
discordbot_get_current_application#Retrieve the full application object associated with the requesting bot user, including installation settings, integration type configuration, and webhook event configuration.0 params

Retrieve the full application object associated with the requesting bot user, including installation settings, integration type configuration, and webhook event configuration.

discordbot_get_current_bot_application#Retrieve the bot's own application object, including its public Client ID, name, icon, and description. Per Discord's official OpenAPI spec, this endpoint is Bot Token only.0 params

Retrieve the bot's own application object, including its public Client ID, name, icon, and description. Per Discord's official OpenAPI spec, this endpoint is Bot Token only.

discordbot_get_current_user_voice_state#Retrieve the current user's (the bot's) voice state in a guild, including the connected voice channel, mute and deafen status, and stage speaking request timestamp.1 param

Retrieve the current user's (the bot's) voice state in a guild, including the connected voice channel, mute and deafen status, and stage speaking request timestamp.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to get the current user's voice state for.
discordbot_get_entitlement#Retrieve a single entitlement for an application by ID. Use to check whether a specific entitlement is active, its type, and its expiration window.2 params

Retrieve a single entitlement for an application by ID. Use to check whether a specific entitlement is active, its type, and its expiration window.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application that owns the entitlement.
entitlement_idstringrequiredThe ID of the entitlement to retrieve.
discordbot_get_global_application_command#Fetch a specific global application command. Returns the application command object.2 params

Fetch a specific global application command. Returns the application command object.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
command_idstringrequiredThe ID of the command to retrieve.
discordbot_get_global_application_commands#Fetch all global commands for an application. Returns an array of application command objects.2 params

Fetch all global commands for an application. Returns an array of application command objects.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
with_localizationsbooleanoptionalWhether to include localizations in the response.
discordbot_get_guild#Retrieve a Discord guild (server) by its ID. Optionally include approximate member and presence counts.2 params

Retrieve a Discord guild (server) by its ID. Optionally include approximate member and presence counts.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to retrieve.
with_countsbooleanoptionalWhen true, returns approximate_member_count and approximate_presence_count.
discordbot_get_guild_application_command#Fetch a specific application command registered in a guild. Returns the application command object.3 params

Fetch a specific application command registered in a guild. Returns the application command object.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
command_idstringrequiredThe ID of the command to retrieve.
guild_idstringrequiredThe ID of the guild.
discordbot_get_guild_application_command_permissions#Fetch permissions for all commands in a guild. Returns an array of guild application command permissions objects.2 params

Fetch permissions for all commands in a guild. Returns an array of guild application command permissions objects.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
guild_idstringrequiredThe ID of the guild.
discordbot_get_guild_application_commands#Fetch all application commands registered in a specific guild. Returns an array of application command objects.3 params

Fetch all application commands registered in a specific guild. Returns an array of application command objects.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
guild_idstringrequiredThe ID of the guild to get commands for.
with_localizationsbooleanoptionalWhether to include localizations in the response.
discordbot_get_guild_audit_log#Retrieve the audit log for a Discord guild. Returns a list of audit log entries with details about administrative actions. Requires VIEW_AUDIT_LOG permission.6 params

Retrieve the audit log for a Discord guild. Returns a list of audit log entries with details about administrative actions. Requires VIEW_AUDIT_LOG permission.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to retrieve the audit log for.
action_typeintegeroptionalFilter by audit log event type (e.g., 1=GUILD_UPDATE, 10=CHANNEL_CREATE, 20=MEMBER_KICK).
afterstringoptionalReturn entries after this audit log entry ID for pagination.
beforestringoptionalReturn entries before this audit log entry ID for pagination.
limitintegeroptionalNumber of entries to return (1-100). Default is 50.
user_idstringoptionalFilter audit log entries by the user who performed the action.
discordbot_get_guild_ban#Retrieve the ban record for a specific user in a Discord guild. Requires BAN_MEMBERS permission.2 params

Retrieve the ban record for a specific user in a Discord guild. Requires BAN_MEMBERS permission.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild.
user_idstringrequiredThe ID of the banned user to retrieve information for.
discordbot_get_guild_bans#Retrieve a list of ban objects for users banned from a Discord guild. Requires BAN_MEMBERS permission. Supports pagination via before and after.4 params

Retrieve a list of ban objects for users banned from a Discord guild. Requires BAN_MEMBERS permission. Supports pagination via before and after.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to retrieve bans for.
afterstringoptionalReturn bans after this user ID (snowflake) for pagination.
beforestringoptionalReturn bans before this user ID (snowflake) for pagination.
limitintegeroptionalNumber of bans to return (1-1000). Default is 1000.
discordbot_get_guild_emoji#Retrieve a specific custom emoji from a Discord guild by its emoji ID.2 params

Retrieve a specific custom emoji from a Discord guild by its emoji ID.

NameTypeRequiredDescription
emoji_idstringrequiredThe ID of the emoji to retrieve.
guild_idstringrequiredThe ID of the guild containing the emoji.
discordbot_get_guild_integrations#Retrieve a list of integration objects for a Discord guild. Requires MANAGE_GUILD permission. Returns a maximum of 50 integrations.1 param

Retrieve a list of integration objects for a Discord guild. Requires MANAGE_GUILD permission. Returns a maximum of 50 integrations.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to retrieve integrations for.
discordbot_get_guild_invites#Retrieve a list of all active invites for a Discord guild. Requires MANAGE_GUILD permission. Returns invite objects with metadata.1 param

Retrieve a list of all active invites for a Discord guild. Requires MANAGE_GUILD permission. Returns invite objects with metadata.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to retrieve invites for.
discordbot_get_guild_member#Retrieve a specific member of a Discord guild by their user ID. Returns the guild member object including roles, nickname, and join date.2 params

Retrieve a specific member of a Discord guild by their user ID. Returns the guild member object including roles, nickname, and join date.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild.
user_idstringrequiredThe ID of the user to retrieve guild member information for.
discordbot_get_guild_onboarding#Get the onboarding configuration for a guild. Returns the guild onboarding object.1 param

Get the onboarding configuration for a guild. Returns the guild onboarding object.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to get onboarding information for.
discordbot_get_guild_preview#Retrieve a preview of a Discord guild. For public guilds this is accessible without being a member. Returns guild name, description, icon, emojis, stickers, and approximate counts.1 param

Retrieve a preview of a Discord guild. For public guilds this is accessible without being a member. Returns guild name, description, icon, emojis, stickers, and approximate counts.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to preview.
discordbot_get_guild_prune_count#Get the number of members that would be removed by a prune operation. Requires KICK_MEMBERS permission.3 params

Get the number of members that would be removed by a prune operation. Requires KICK_MEMBERS permission.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to check prune count for.
daysintegeroptionalNumber of days of inactivity to check for (1-30, default 7).
include_rolesstringoptionalComma-separated list of role IDs to include in the prune count.
discordbot_get_guild_role#Retrieve a specific role object from a Discord guild by its role ID.2 params

Retrieve a specific role object from a Discord guild by its role ID.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild containing the role.
role_idstringrequiredThe ID of the role to retrieve.
discordbot_get_guild_role_member_counts#Retrieve a map of role IDs to the number of guild members with that role. Does not include the @everyone role.1 param

Retrieve a map of role IDs to the number of guild members with that role. Does not include the @everyone role.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to retrieve role member counts for.
discordbot_get_guild_scheduled_event#Retrieve a specific scheduled event in a Discord guild by its event ID.3 params

Retrieve a specific scheduled event in a Discord guild by its event ID.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild containing the scheduled event.
guild_scheduled_event_idstringrequiredThe ID of the scheduled event to retrieve.
with_user_countbooleanoptionalInclude the user subscription count for the event.
discordbot_get_guild_scheduled_event_users#Get a list of users subscribed to a guild scheduled event. Returns a list of guild scheduled event user objects.6 params

Get a list of users subscribed to a guild scheduled event. Returns a list of guild scheduled event user objects.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild.
guild_scheduled_event_idstringrequiredThe ID of the scheduled event.
afterstringoptionalGet users after this user ID (for pagination).
beforestringoptionalGet users before this user ID (for pagination).
limitintegeroptionalMaximum number of users to return (1-100, default 100).
with_memberbooleanoptionalWhether to include guild member objects for each user.
discordbot_get_guild_soundboard_sound#Retrieve a soundboard sound object for the given sound id in a guild. Includes the user field if the bot has the CREATE_GUILD_EXPRESSIONS or MANAGE_GUILD_EXPRESSIONS permission.2 params

Retrieve a soundboard sound object for the given sound id in a guild. Includes the user field if the bot has the CREATE_GUILD_EXPRESSIONS or MANAGE_GUILD_EXPRESSIONS permission.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild containing the soundboard sound.
sound_idstringrequiredThe ID of the soundboard sound to retrieve.
discordbot_get_guild_sticker#Retrieve a specific custom sticker from a Discord guild by its sticker ID.2 params

Retrieve a specific custom sticker from a Discord guild by its sticker ID.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild containing the sticker.
sticker_idstringrequiredThe ID of the sticker to retrieve.
discordbot_get_guild_vanity_url#Get the vanity URL for a guild. Requires MANAGE_GUILD permission. The guild must have the VANITY_URL feature enabled. Returns a partial invite object with code and uses.1 param

Get the vanity URL for a guild. Requires MANAGE_GUILD permission. The guild must have the VANITY_URL feature enabled. Returns a partial invite object with code and uses.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to get the vanity URL for.
discordbot_get_guild_voice_regions#Get a list of voice regions available for a guild. Returns optimal regions that can be used when updating a guild or voice channel's region.1 param

Get a list of voice regions available for a guild. Returns optimal regions that can be used when updating a guild or voice channel's region.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to get voice regions for.
discordbot_get_guild_webhooks#Retrieve all webhooks for a Discord guild. Requires MANAGE_WEBHOOKS permission.1 param

Retrieve all webhooks for a Discord guild. Requires MANAGE_WEBHOOKS permission.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to retrieve webhooks for.
discordbot_get_guild_welcome_screen#Retrieve the welcome screen for a Discord guild. The welcome screen is shown to new members when they join.1 param

Retrieve the welcome screen for a Discord guild. The welcome screen is shown to new members when they join.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to retrieve the welcome screen for.
discordbot_get_guild_widget_settings#Get the widget settings for a guild. Requires MANAGE_GUILD permission. Returns the guild widget settings object.1 param

Get the widget settings for a guild. Requires MANAGE_GUILD permission. Returns the guild widget settings object.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to get widget settings for.
discordbot_get_invite_target_users#Get the users allowed to see and accept an invite. Response is a CSV file with the header user_id and each user ID from the file originally passed to invite create, one per line. Requires the caller to be the inviter, or have MANAGE_GUILD permission, or have VIEW_AUDIT_LOG permission.1 param

Get the users allowed to see and accept an invite. Response is a CSV file with the header user_id and each user ID from the file originally passed to invite create, one per line. Requires the caller to be the inviter, or have MANAGE_GUILD permission, or have VIEW_AUDIT_LOG permission.

NameTypeRequiredDescription
invite_codestringrequiredThe invite code to get the target users for.
discordbot_get_invite_target_users_job_status#Check the status of the asynchronous job that processes target users from a CSV when creating or updating an invite. Requires the caller to be the inviter, or have MANAGE_GUILD permission, or have VIEW_AUDIT_LOG permission. Status values: 0=UNSPECIFIED, 1=PROCESSING, 2=COMPLETED, 3=FAILED (see error_message for details).1 param

Check the status of the asynchronous job that processes target users from a CSV when creating or updating an invite. Requires the caller to be the inviter, or have MANAGE_GUILD permission, or have VIEW_AUDIT_LOG permission. Status values: 0=UNSPECIFIED, 1=PROCESSING, 2=COMPLETED, 3=FAILED (see error_message for details).

NameTypeRequiredDescription
invite_codestringrequiredThe invite code to check the target users job status for.
discordbot_get_lobby#Retrieve a Discord lobby object for the specified lobby id, if it exists.1 param

Retrieve a Discord lobby object for the specified lobby id, if it exists.

NameTypeRequiredDescription
lobby_idstringrequiredThe ID of the lobby to retrieve.
discordbot_get_lobby_messages#Retrieve the most recent messages in a Discord lobby. The calling user must be a member of the lobby. Returns an array of lobby message objects.2 params

Retrieve the most recent messages in a Discord lobby. The calling user must be a member of the lobby. Returns an array of lobby message objects.

NameTypeRequiredDescription
lobby_idstringrequiredThe ID of the lobby to retrieve messages from.
limitintegeroptionalMaximum number of messages to return (1-200). Defaults to 50.
discordbot_get_original_interaction_response#Get the initial response to an interaction. Returns the message object.3 params

Get the initial response to an interaction. Returns the message object.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
interaction_tokenstringrequiredThe token of the interaction.
thread_idstringoptionalID of the thread the message is in.
discordbot_get_pinned_messages#Retrieve pinned messages in a Discord channel using Discord's current paginated pins endpoint (introduced June 2025, replacing the deprecated /channels/{channel.id}/pins). Returns pinned messages ordered most-recently-pinned first.3 params

Retrieve pinned messages in a Discord channel using Discord's current paginated pins endpoint (introduced June 2025, replacing the deprecated /channels/{channel.id}/pins). Returns pinned messages ordered most-recently-pinned first.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to retrieve pinned messages from.
beforestringoptionalISO8601 timestamp; only returns pins created before this time. Used for paginating through channels with many pins.
limitintegeroptionalMaximum number of pins to return (1-50, default 50).
discordbot_get_reactions#Retrieve a list of users who reacted to a Discord message with a specific emoji.6 params

Retrieve a list of users who reacted to a Discord message with a specific emoji.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel containing the message.
emojistringrequiredThe emoji to get reactions for. Use URL-encoded Unicode or name:id format.
message_idstringrequiredThe ID of the message to get reactions for.
afterstringoptionalGet users after this user ID (snowflake) for pagination.
limitintegeroptionalMaximum number of users to return (1-100). Default is 25.
typeintegeroptionalThe type of reaction (0 for normal, 1 for burst/super reactions).
discordbot_get_sku_subscription#Retrieve a single subscription for a SKU by its ID. Returns a subscription object with its status, current billing period, and the entitlements it grants.3 params

Retrieve a single subscription for a SKU by its ID. Returns a subscription object with its status, current billing period, and the entitlements it grants.

NameTypeRequiredDescription
sku_idstringrequiredThe ID of the SKU the subscription belongs to.
subscription_idstringrequiredThe ID of the subscription to retrieve.
user_idstringoptionalOptional user ID to verify the subscription belongs to.
discordbot_get_stage_instance#Retrieve the Stage instance associated with a Stage channel, if one exists (the channel is currently live).1 param

Retrieve the Stage instance associated with a Stage channel, if one exists (the channel is currently live).

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the Stage channel to look up the Stage instance for.
discordbot_get_sticker#Retrieve a Discord sticker by its ID. Returns sticker information including name, description, format type, and pack details.1 param

Retrieve a Discord sticker by its ID. Returns sticker information including name, description, format type, and pack details.

NameTypeRequiredDescription
sticker_idstringrequiredThe ID of the sticker to retrieve.
discordbot_get_sticker_pack#Retrieve a Discord standard sticker pack by its ID. Returns the sticker pack including its name, description, contained stickers, cover sticker, and banner asset.1 param

Retrieve a Discord standard sticker pack by its ID. Returns the sticker pack including its name, description, contained stickers, cover sticker, and banner asset.

NameTypeRequiredDescription
pack_idstringrequiredThe ID of the sticker pack to retrieve.
discordbot_get_thread_member#Get a member of a thread. Returns a thread member object.3 params

Get a member of a thread. Returns a thread member object.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the thread channel.
user_idstringrequiredThe ID of the thread member to retrieve.
with_memberbooleanoptionalWhether to include a guild member object for the thread member.
discordbot_get_user#Retrieve information about any Discord user by ID. Pass '@me' as user_id to fetch the bot's own user profile. Returns username, avatar, discriminator, locale, and premium status.1 param

Retrieve information about any Discord user by ID. Pass '@me' as user_id to fetch the bot's own user profile. Returns username, avatar, discriminator, locale, and premium status.

NameTypeRequiredDescription
user_idstringrequiredThe ID of the user to retrieve, or '@me' to fetch the bot's own user profile.
discordbot_get_user_voice_state#Retrieve the specified user's voice state in a guild, including the connected voice channel, mute and deafen status, and stage speaking request timestamp. If the user is connected to a voice channel, the bot must have permission to connect to that channel.2 params

Retrieve the specified user's voice state in a guild, including the connected voice channel, mute and deafen status, and stage speaking request timestamp. If the user is connected to a voice channel, the bot must have permission to connect to that channel.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to get the user's voice state for.
user_idstringrequiredThe ID of the user to retrieve the voice state for.
discordbot_get_webhook#Retrieve a Discord webhook by its ID. Returns the webhook object including name, channel, guild, and token.1 param

Retrieve a Discord webhook by its ID. Returns the webhook object including name, channel, guild, and token.

NameTypeRequiredDescription
webhook_idstringrequiredThe ID of the webhook to retrieve.
discordbot_get_webhook_message#Get a previously sent webhook message. Returns the message object.4 params

Get a previously sent webhook message. Returns the message object.

NameTypeRequiredDescription
message_idstringrequiredThe ID of the message to retrieve.
webhook_idstringrequiredThe ID of the webhook.
webhook_tokenstringrequiredThe token of the webhook.
thread_idstringoptionalID of the thread the message is in (if in a forum/thread channel).
discordbot_get_webhook_with_token#Retrieve a Discord webhook using both its ID and token. Does not require bot authentication. Returns the webhook object without the user field.2 params

Retrieve a Discord webhook using both its ID and token. Does not require bot authentication. Returns the webhook object without the user field.

NameTypeRequiredDescription
webhook_idstringrequiredThe ID of the webhook to retrieve.
webhook_tokenstringrequiredThe token of the webhook.
discordbot_group_dm_add_recipient#Add a recipient to a Group DM using their OAuth2 access token, which must have been granted the gdm.join scope. Returns 201 if the user was added, or 204 if already a recipient.4 params

Add a recipient to a Group DM using their OAuth2 access token, which must have been granted the gdm.join scope. Returns 201 if the user was added, or 204 if already a recipient.

NameTypeRequiredDescription
access_tokenstringrequiredOAuth2 access token of the user to add, granted with the gdm.join scope.
channel_idstringrequiredThe ID of the Group DM channel to add the recipient to.
user_idstringrequiredThe ID of the user to add to the Group DM.
nickstringoptionalNickname to assign to the user being added.
discordbot_group_dm_remove_recipient#Remove a recipient from a Group DM. Returns 204 No Content on success.2 params

Remove a recipient from a Group DM. Returns 204 No Content on success.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the Group DM channel to remove the recipient from.
user_idstringrequiredThe ID of the user to remove from the Group DM.
discordbot_join_thread#Add the current user to a thread. Requires the thread to not be archived. Returns 204 No Content on success.1 param

Add the current user to a thread. Requires the thread to not be archived. Returns 204 No Content on success.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the thread channel to join.
discordbot_kick_guild_member#Remove (kick) a member from a Discord guild. The user can rejoin via a new invite. Requires KICK_MEMBERS permission.2 params

Remove (kick) a member from a Discord guild. The user can rejoin via a new invite. Requires KICK_MEMBERS permission.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to kick the member from.
user_idstringrequiredThe ID of the member to kick.
discordbot_leave_guild#Remove the bot from a guild it belongs to. Returns 204 No Content on success.1 param

Remove the bot from a guild it belongs to. Returns 204 No Content on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to leave.
discordbot_leave_lobby#Remove the calling user from the specified Discord lobby. Safe to call even if the user is no longer a member, but fails if the lobby does not exist. Returns nothing.1 param

Remove the calling user from the specified Discord lobby. Safe to call even if the user is no longer a member, but fails if the lobby does not exist. Returns nothing.

NameTypeRequiredDescription
lobby_idstringrequiredThe ID of the lobby to leave.
discordbot_leave_thread#Remove the current user from a thread. Requires the thread to not be archived. Returns 204 No Content on success.1 param

Remove the current user from a thread. Requires the thread to not be archived. Returns 204 No Content on success.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the thread channel to leave.
discordbot_list_active_guild_threads#List all active threads in a guild, including public and private threads. Returns a list of channel objects and thread member objects for the current user.1 param

List all active threads in a guild, including public and private threads. Returns a list of channel objects and thread member objects for the current user.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to list active threads from.
discordbot_list_application_emojis#Retrieve all emojis owned by a Discord application (app emojis). Returns an object containing a list of emoji objects under the items key.1 param

Retrieve all emojis owned by a Discord application (app emojis). Returns an object containing a list of emoji objects under the items key.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application to retrieve emojis for.
discordbot_list_auto_moderation_rules#Get a list of all Auto Moderation rules currently configured for a guild. Requires the MANAGE_GUILD permission. Returns a list of auto moderation rule objects.1 param

Get a list of all Auto Moderation rules currently configured for a guild. Requires the MANAGE_GUILD permission. Returns a list of auto moderation rule objects.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to list Auto Moderation rules for.
discordbot_list_channel_messages#Retrieve a list of messages from a Discord channel. Supports pagination using around, before, and after message IDs with a configurable limit.5 params

Retrieve a list of messages from a Discord channel. Supports pagination using around, before, and after message IDs with a configurable limit.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to retrieve messages from.
afterstringoptionalGet messages after this message ID (snowflake).
aroundstringoptionalGet messages around this message ID (snowflake).
beforestringoptionalGet messages before this message ID (snowflake).
limitintegeroptionalMaximum number of messages to return (1-100). Default is 50.
discordbot_list_default_soundboard_sounds#Retrieve an array of default soundboard sound objects that can be used by all users.0 params

Retrieve an array of default soundboard sound objects that can be used by all users.

discordbot_list_guild_channels#Retrieve all channels in a Discord guild (server). Returns a list of channel objects including text channels, voice channels, categories, and threads.1 param

Retrieve all channels in a Discord guild (server). Returns a list of channel objects including text channels, voice channels, categories, and threads.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to retrieve channels for.
discordbot_list_guild_emojis#Retrieve all custom emojis for a Discord guild. Returns a list of emoji objects.1 param

Retrieve all custom emojis for a Discord guild. Returns a list of emoji objects.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to retrieve emojis for.
discordbot_list_guild_members#Retrieve a list of members in a Discord guild. Requires the GUILD_MEMBERS privileged intent or appropriate bot permissions. Supports pagination via the after parameter.3 params

Retrieve a list of members in a Discord guild. Requires the GUILD_MEMBERS privileged intent or appropriate bot permissions. Supports pagination via the after parameter.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to list members for.
afterstringoptionalReturn members after this user ID (snowflake) for pagination.
limitintegeroptionalMaximum number of members to return (1-1000). Default is 1.
discordbot_list_guild_roles#Retrieve all roles in a Discord guild. Returns a list of role objects including permissions, color, and position.1 param

Retrieve all roles in a Discord guild. Returns a list of role objects including permissions, color, and position.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to retrieve roles for.
discordbot_list_guild_scheduled_events#Retrieve a list of scheduled events for a Discord guild. Optionally include user subscription counts.2 params

Retrieve a list of scheduled events for a Discord guild. Optionally include user subscription counts.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to retrieve scheduled events for.
with_user_countbooleanoptionalInclude the user count for each scheduled event.
discordbot_list_guild_soundboard_sounds#Retrieve the guild's soundboard sounds. Includes user fields if the bot has the CREATE_GUILD_EXPRESSIONS or MANAGE_GUILD_EXPRESSIONS permission. Returns an object with an items array of soundboard sound objects.1 param

Retrieve the guild's soundboard sounds. Includes user fields if the bot has the CREATE_GUILD_EXPRESSIONS or MANAGE_GUILD_EXPRESSIONS permission. Returns an object with an items array of soundboard sound objects.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to retrieve soundboard sounds for.
discordbot_list_guild_stickers#Retrieve all custom stickers for a Discord guild. Returns a list of sticker objects.1 param

Retrieve all custom stickers for a Discord guild. Returns a list of sticker objects.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to retrieve stickers for.
discordbot_list_guild_templates#Retrieve all guild templates for a guild. Requires the MANAGE_GUILD permission. Returns a list of guild template objects.1 param

Retrieve all guild templates for a guild. Requires the MANAGE_GUILD permission. Returns a list of guild template objects.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to retrieve templates for.
discordbot_list_joined_private_archived_threads#List private archived threads in a channel that the current user has joined. Returns threads in descending order of archive timestamp.3 params

List private archived threads in a channel that the current user has joined. Returns threads in descending order of archive timestamp.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to list joined private archived threads from.
beforestringoptionalReturns threads archived before this thread ID (snowflake).
limitintegeroptionalMaximum number of threads to return.
discordbot_list_private_archived_threads#List all private archived threads in a channel. Requires MANAGE_THREADS permission and READ_MESSAGE_HISTORY permission. Returns threads in descending order of archive timestamp.3 params

List all private archived threads in a channel. Requires MANAGE_THREADS permission and READ_MESSAGE_HISTORY permission. Returns threads in descending order of archive timestamp.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to list private archived threads from.
beforestringoptionalReturns threads archived before this timestamp (ISO8601 format).
limitintegeroptionalMaximum number of threads to return.
discordbot_list_public_archived_threads#List all public archived threads in a channel. Returns threads in descending order of archive timestamp. Requires READ_MESSAGE_HISTORY permission.3 params

List all public archived threads in a channel. Returns threads in descending order of archive timestamp. Requires READ_MESSAGE_HISTORY permission.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to list archived threads from.
beforestringoptionalReturns threads archived before this timestamp (ISO8601 format).
limitintegeroptionalMaximum number of threads to return.
discordbot_list_sku_subscriptions#Retrieve all subscriptions containing a given SKU, filtered by user. Returns a list of subscription objects representing recurring payments for that SKU. With Bot Token auth, user_id is required since the bot has no implicit 'current user' context. Supports cursor-based pagination via before/after and limit.5 params

Retrieve all subscriptions containing a given SKU, filtered by user. Returns a list of subscription objects representing recurring payments for that SKU. With Bot Token auth, user_id is required since the bot has no implicit 'current user' context. Supports cursor-based pagination via before/after and limit.

NameTypeRequiredDescription
sku_idstringrequiredThe ID of the SKU to list subscriptions for.
user_idstringrequiredThe ID of the user to return subscriptions for. Required for Bot Token requests.
afterstringoptionalList subscriptions after this subscription ID (for pagination).
beforestringoptionalList subscriptions before this subscription ID (for pagination).
limitintegeroptionalNumber of results to return (1-100). Defaults to 50.
discordbot_list_skus#Retrieve all SKUs (stock-keeping units) for a given Discord application. SKUs represent premium offerings, such as subscriptions, that can be made available to the application's users or guilds. Returns an array of SKU objects.1 param

Retrieve all SKUs (stock-keeping units) for a given Discord application. SKUs represent premium offerings, such as subscriptions, that can be made available to the application's users or guilds. Returns an array of SKU objects.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application to retrieve SKUs for.
discordbot_list_thread_members#List all members of a thread. Returns an array of thread member objects. When with_member is true, results are paginated using after and limit.4 params

List all members of a thread. Returns an array of thread member objects. When with_member is true, results are paginated using after and limit.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the thread channel.
afterstringoptionalGet thread members after this user ID (for pagination when with_member is true).
limitintegeroptionalMaximum number of thread members to return (1-100, default 100).
with_memberbooleanoptionalWhether to include guild member objects for each thread member.
discordbot_list_threads#Retrieve archived public threads in a Discord channel. Returns threads in descending order by archive timestamp. Requires READ_MESSAGE_HISTORY permission. Note: Discord has no single endpoint that lists every thread type at once — this tool calls the same public-archived-threads endpoint as discordbot_list_public_archived_threads. Use discordbot_list_active_guild_threads for active (non-archived) threads across a guild, or discordbot_list_private_archived_threads for archived private threads.3 params

Retrieve archived public threads in a Discord channel. Returns threads in descending order by archive timestamp. Requires READ_MESSAGE_HISTORY permission. Note: Discord has no single endpoint that lists every thread type at once — this tool calls the same public-archived-threads endpoint as discordbot_list_public_archived_threads. Use discordbot_list_active_guild_threads for active (non-archived) threads across a guild, or discordbot_list_private_archived_threads for archived private threads.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to retrieve archived threads from.
beforestringoptionalReturns threads archived before this ISO8601 timestamp.
limitintegeroptionalMaximum number of threads to return.
discordbot_list_voice_regions#Retrieve a list of all available voice regions on Discord. Returns region IDs, names, and whether they are optimal or deprecated.0 params

Retrieve a list of all available voice regions on Discord. Returns region IDs, names, and whether they are optimal or deprecated.

discordbot_modify_application_emoji#Modify the name of an emoji owned by a Discord application. Returns the updated emoji object.3 params

Modify the name of an emoji owned by a Discord application. Returns the updated emoji object.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application that owns the emoji.
emoji_idstringrequiredThe ID of the emoji to modify.
namestringrequiredNew name for the emoji (2-32 characters, alphanumeric and underscores).
discordbot_modify_auto_moderation_rule#Modify an existing Auto Moderation rule for a guild. Requires the MANAGE_GUILD permission. All parameters are optional. Fires an Auto Moderation Rule Update Gateway event. Returns the updated auto moderation rule object on success.10 params

Modify an existing Auto Moderation rule for a guild. Requires the MANAGE_GUILD permission. All parameters are optional. Fires an Auto Moderation Rule Update Gateway event. Returns the updated auto moderation rule object on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild the rule belongs to.
rule_idstringrequiredThe ID of the Auto Moderation rule to modify.
actionsarrayoptionalThe actions which will execute when the rule is triggered. Each action is an object with a 'type' (1=BLOCK_MESSAGE, 2=SEND_ALERT_MESSAGE, 3=TIMEOUT, 4=BLOCK_MEMBER_INTERACTION) and optional 'metadata'.
enabledbooleanoptionalWhether the rule is enabled.
event_typeintegeroptionalThe rule event type: 1=MESSAGE_SEND (when a member sends or edits a message), 2=MEMBER_UPDATE (when a member edits their profile).
exempt_channelsarrayoptionalChannel IDs that should not be affected by the rule (maximum of 50).
exempt_rolesarrayoptionalRole IDs that should not be affected by the rule (maximum of 20).
namestringoptionalThe rule name.
reasonstringoptionalReason for modifying the rule, shown in the guild's audit log.
trigger_metadataobjectoptionalAdditional data used to determine whether the rule triggers, relevant fields depend on the rule's trigger_type (e.g. keyword_filter, regex_patterns, presets, allow_list, mention_total_limit, mention_raid_protection_enabled).
discordbot_modify_channel#Modify a channel's settings. Supports text, voice, announcement, stage, and forum channels. Returns the updated channel object. Each permission_overwrites entry may specify 'allow_names'/'deny_names' (arrays of named permission flags) instead of raw 'allow'/'deny' integers — the correct bitfield is computed automatically.25 params

Modify a channel's settings. Supports text, voice, announcement, stage, and forum channels. Returns the updated channel object. Each permission_overwrites entry may specify 'allow_names'/'deny_names' (arrays of named permission flags) instead of raw 'allow'/'deny' integers — the correct bitfield is computed automatically.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to modify.
applied_tagsarrayoptionalIDs of tags (from the forum/media channel's available_tags) applied to this thread. Only valid when modifying a thread in a forum or media channel; maximum of 5 tags.
archivedbooleanoptionalWhether the thread is archived. Unarchiving with locked also false only requires the SEND_MESSAGES permission; otherwise requires MANAGE_THREADS.
auto_archive_durationintegeroptionalDuration in minutes of inactivity after which this thread auto-archives: 60, 1440, 4320, or 10080.
available_tagsarrayoptionalArray of tag objects available in a forum channel.
bitrateintegeroptionalBitrate in bits for voice channels (8000-96000, or up to 128000 for VIP servers).
default_auto_archive_durationintegeroptionalDefault duration (in minutes) for auto-archiving threads: 60, 1440, 4320, or 10080.
default_forum_layoutintegeroptionalDefault layout for forum channels. 0=NOT_SET, 1=LIST_VIEW, 2=GALLERY_VIEW.
default_reaction_emojiobjectoptionalDefault emoji for reactions in forum posts. Object with emoji_id or emoji_name.
default_sort_orderintegeroptionalDefault sort order for forum posts. 0=LATEST_ACTIVITY, 1=CREATION_DATE.
default_thread_rate_limit_per_userintegeroptionalDefault slowmode rate limit (in seconds) for new threads in the channel.
flagsintegeroptionalChannel flags as a bitfield.
invitablebooleanoptionalWhether non-moderators can add other non-moderators to a private thread. Only applies to private threads.
lockedbooleanoptionalWhether the thread is locked. When locked, only users with the MANAGE_THREADS permission can unarchive it.
namestringoptionalNew name for the channel (1-100 characters).
nsfwbooleanoptionalWhether the channel is NSFW (not safe for work).
parent_idstringoptionalID of the new parent category for the channel.
permission_overwritesarrayoptionalArray of permission overwrite objects for the channel.
positionintegeroptionalSorting position of the channel.
rate_limit_per_userintegeroptionalSlowmode rate limit in seconds (0-21600). Users can send one message per this many seconds.
rtc_regionstringoptionalVoice region for voice/stage channels. null for automatic.
topicstringoptionalChannel topic (0-4096 characters for forum/media channels, 0-1024 for others).
typeintegeroptionalChannel type. Can convert between text (0) and announcement (5) channels.
user_limitintegeroptionalMaximum number of users in a voice channel (0 for unlimited, 1-99).
video_quality_modeintegeroptionalCamera video quality mode for voice channels. 1=AUTO, 2=FULL.
discordbot_modify_current_member#Modify the current user's guild member attributes. Returns the updated guild member object.5 params

Modify the current user's guild member attributes. Returns the updated guild member object.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild.
avatarstringoptionalAvatar image to set for the current user in the guild, as a base64 data URI (null to reset).
bannerstringoptionalBanner image to set for the current user in the guild, as a base64 data URI (null to reset).
biostringoptionalBio to set for the current user in the guild (null to reset).
nickstringoptionalNickname to set for the current user in the guild (null to reset).
discordbot_modify_current_user#Modify the bot's own username, avatar, or banner. Returns the updated user object.3 params

Modify the bot's own username, avatar, or banner. Returns the updated user object.

NameTypeRequiredDescription
avatarstringoptionalBase64 encoded image data URI for the user's avatar (or null to remove).
bannerstringoptionalBase64 encoded image data URI for the user's banner (or null to remove).
usernamestringoptionalNew username for the account (changing username may require a discriminator change).
discordbot_modify_current_user_nick#Deprecated in favor of Modify Current Member. Modifies the nickname of the current user in a guild. Requires CHANGE_NICKNAME permission. Returns a 200 with the nickname on success.3 params

Deprecated in favor of Modify Current Member. Modifies the nickname of the current user in a guild. Requires CHANGE_NICKNAME permission. Returns a 200 with the nickname on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild.
nickstringoptionalValue to set the current user's nickname to (null to reset).
reasonstringoptionalReason for changing the nickname, shown in the guild's audit log.
discordbot_modify_current_user_voice_state#Update the current user's (the bot's) voice state in a stage channel. Returns 204 No Content on success. channel_id must currently point to a stage channel the bot has already joined. MUTE_MEMBERS permission is required to unsuppress; REQUEST_TO_SPEAK permission is required to request to speak, but the bot can always suppress itself or clear its own speak request.4 params

Update the current user's (the bot's) voice state in a stage channel. Returns 204 No Content on success. channel_id must currently point to a stage channel the bot has already joined. MUTE_MEMBERS permission is required to unsuppress; REQUEST_TO_SPEAK permission is required to request to speak, but the bot can always suppress itself or clear its own speak request.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to modify the current user's voice state in.
channel_idstringoptionalThe ID of the stage channel the current user is currently in. Must currently point to a stage channel already joined.
request_to_speak_timestampstringoptionalISO8601 timestamp for when the current user requested to speak (any present or future time). Requires the REQUEST_TO_SPEAK permission; the bot can always clear its own request.
suppressbooleanoptionalToggles the current user's suppress state. Requires the MUTE_MEMBERS permission to unsuppress; the bot can always suppress itself.
discordbot_modify_guild#Modify a guild's settings. Requires MANAGE_GUILD permission. Returns the updated guild object.21 params

Modify a guild's settings. Requires MANAGE_GUILD permission. Returns the updated guild object.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to modify.
afk_channel_idstringoptionalID of the AFK channel (null to remove).
afk_timeoutintegeroptionalAFK timeout in seconds (60, 300, 900, 1800, 3600).
bannerstringoptionalBase64 encoded guild banner image (requires BANNER feature).
default_message_notificationsintegeroptionalDefault message notification level: 0=ALL_MESSAGES, 1=ONLY_MENTIONS.
descriptionstringoptionalGuild description (for discoverable guilds).
discovery_splashstringoptionalBase64 encoded discovery splash image (requires DISCOVERABLE feature).
explicit_content_filterintegeroptionalExplicit content filter level: 0=DISABLED, 1=MEMBERS_WITHOUT_ROLES, 2=ALL_MEMBERS.
featuresarrayoptionalArray of guild features to enable/disable.
iconstringoptionalBase64 encoded guild icon image.
namestringoptionalNew name for the guild (2-100 characters).
preferred_localestringoptionalPreferred locale for the guild (e.g., en-US, de).
premium_progress_bar_enabledbooleanoptionalWhether the guild has the premium progress bar enabled.
public_updates_channel_idstringoptionalID of the channel where admins and moderators receive Discord updates.
regionstringoptionalVoice region ID (deprecated).
rules_channel_idstringoptionalID of the channel for community guilds' rules.
safety_alerts_channel_idstringoptionalID of the channel where Discord sends safety alerts.
splashstringoptionalBase64 encoded guild splash image (requires INVITE_SPLASH feature).
system_channel_flagsintegeroptionalSystem channel flags bitfield.
system_channel_idstringoptionalID of the channel for system messages.
verification_levelintegeroptionalVerification level: 0=NONE, 1=LOW, 2=MEDIUM, 3=HIGH, 4=VERY_HIGH.
discordbot_modify_guild_channel_positions#Modify the positions of channels in a guild. Requires MANAGE_CHANNELS permission. Only channels to be modified need to be included. Returns 204 No Content on success.2 params

Modify the positions of channels in a guild. Requires MANAGE_CHANNELS permission. Only channels to be modified need to be included. Returns 204 No Content on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to modify channel positions in.
positionsarrayrequiredArray of objects with channel id (required) and optional position, lock_permissions (boolean), and parent_id (string).
discordbot_modify_guild_emoji#Modify a guild emoji. Requires MANAGE_GUILD_EXPRESSIONS permission. Returns the updated emoji object.4 params

Modify a guild emoji. Requires MANAGE_GUILD_EXPRESSIONS permission. Returns the updated emoji object.

NameTypeRequiredDescription
emoji_idstringrequiredThe ID of the emoji to modify.
guild_idstringrequiredThe ID of the guild.
namestringoptionalNew name for the emoji.
rolesarrayoptionalArray of role IDs allowed to use the emoji (null to allow everyone).
discordbot_modify_guild_incident_actions#Modify the incident actions of a guild, used to temporarily disable invites or direct messages during a raid or spam incident. Requires MANAGE_GUILD permission. Both fields can be enabled for a maximum of 24 hours in the future; supplying null disables the action. Returns the updated incidents data object.3 params

Modify the incident actions of a guild, used to temporarily disable invites or direct messages during a raid or spam incident. Requires MANAGE_GUILD permission. Both fields can be enabled for a maximum of 24 hours in the future; supplying null disables the action. Returns the updated incidents data object.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to modify incident actions for.
dms_disabled_untilstringoptionalISO8601 timestamp until which direct messages will be disabled for the guild (max 24 hours in the future). Null disables the action.
invites_disabled_untilstringoptionalISO8601 timestamp until which invites will be disabled for the guild (max 24 hours in the future). Null disables the action.
discordbot_modify_guild_member#Modify attributes of a guild member. Returns the updated guild member object.9 params

Modify attributes of a guild member. Returns the updated guild member object.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild.
user_idstringrequiredThe ID of the guild member to modify.
channel_idstringoptionalMove member to a different voice channel (null to disconnect).
communication_disabled_untilstringoptionalISO8601 timestamp until which the member is timed out (null to remove timeout).
deafbooleanoptionalWhether the member should be server-deafened.
flagsintegeroptionalGuild member flags as a bitfield.
mutebooleanoptionalWhether the member should be server-muted.
nickstringoptionalNickname to set for the member (null to reset).
rolesarrayoptionalArray of role IDs to assign to the member.
discordbot_modify_guild_onboarding#Modify the onboarding configuration of a guild. Requires MANAGE_GUILD and MANAGE_ROLES permissions. Onboarding enforces constraints when enabled: at least 7 default channels, at least 5 of which allow sending messages to @everyone. Returns the updated guild onboarding object.6 params

Modify the onboarding configuration of a guild. Requires MANAGE_GUILD and MANAGE_ROLES permissions. Onboarding enforces constraints when enabled: at least 7 default channels, at least 5 of which allow sending messages to @everyone. Returns the updated guild onboarding object.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to modify onboarding for.
default_channel_idsarrayoptionalChannel IDs that members get opted into automatically.
enabledbooleanoptionalWhether onboarding is enabled in the guild.
modeintegeroptionalThe onboarding mode: 0 for ONBOARDING_DEFAULT (counts only default channels), 1 for ONBOARDING_ADVANCED (counts default channels and questions).
promptsarrayoptionalPrompts shown during onboarding and in customize community. Each prompt object has id, type, options, title, single_select, required, and in_onboarding fields.
reasonstringoptionalReason for modifying onboarding, shown in the guild's audit log.
discordbot_modify_guild_role#Modify a guild role's settings. Requires MANAGE_ROLES permission. Returns the updated role object. Full permission flag reference (name=decimal value, OR multiple together): CREATE_INSTANT_INVITE=1, KICK_MEMBERS=2, BAN_MEMBERS=4, ADMINISTRATOR=8, MANAGE_CHANNELS=16, MANAGE_GUILD=32, ADD_REACTIONS=64, VIEW_AUDIT_LOG=128, PRIORITY_SPEAKER=256, STREAM=512, VIEW_CHANNEL=1024, SEND_MESSAGES=2048, SEND_TTS_MESSAGES=4096, MANAGE_MESSAGES=8192, EMBED_LINKS=16384, ATTACH_FILES=32768, READ_MESSAGE_HISTORY=65536, MENTION_EVERYONE=131072, USE_EXTERNAL_EMOJIS=262144, VIEW_GUILD_INSIGHTS=524288, CONNECT=1048576, SPEAK=2097152, MUTE_MEMBERS=4194304, DEAFEN_MEMBERS=8388608, MOVE_MEMBERS=16777216, USE_VAD=33554432, CHANGE_NICKNAME=67108864, MANAGE_NICKNAMES=134217728, MANAGE_ROLES=268435456, MANAGE_WEBHOOKS=536870912, MANAGE_GUILD_EXPRESSIONS=1073741824, USE_APPLICATION_COMMANDS=2147483648, REQUEST_TO_SPEAK=4294967296, MANAGE_EVENTS=8589934592, MANAGE_THREADS=17179869184, CREATE_PUBLIC_THREADS=34359738368, CREATE_PRIVATE_THREADS=68719476736, USE_EXTERNAL_STICKERS=137438953472, SEND_MESSAGES_IN_THREADS=274877906944, USE_EMBEDDED_ACTIVITIES=549755813888, MODERATE_MEMBERS=1099511627776, VIEW_CREATOR_MONETIZATION_ANALYTICS=2199023255552, USE_SOUNDBOARD=4398046511104, CREATE_GUILD_EXPRESSIONS=8796093022208, CREATE_EVENTS=17592186044416, USE_EXTERNAL_SOUNDS=35184372088832, SEND_VOICE_MESSAGES=70368744177664, SET_VOICE_CHANNEL_STATUS=281474976710656, SEND_POLLS=562949953421312, USE_EXTERNAL_APPS=1125899906842624, PIN_MESSAGES=2251799813685248, BYPASS_SLOWMODE=4503599627370496. Or use a calculator like discordapi.com/permissions.htm. Optionally provide 'permissions_names' (array of named permission flags, e.g. ["SEND_MESSAGES"]) instead of a raw 'permissions' integer — the correct bitfield is computed automatically.11 params

Modify a guild role's settings. Requires MANAGE_ROLES permission. Returns the updated role object. Full permission flag reference (name=decimal value, OR multiple together): CREATE_INSTANT_INVITE=1, KICK_MEMBERS=2, BAN_MEMBERS=4, ADMINISTRATOR=8, MANAGE_CHANNELS=16, MANAGE_GUILD=32, ADD_REACTIONS=64, VIEW_AUDIT_LOG=128, PRIORITY_SPEAKER=256, STREAM=512, VIEW_CHANNEL=1024, SEND_MESSAGES=2048, SEND_TTS_MESSAGES=4096, MANAGE_MESSAGES=8192, EMBED_LINKS=16384, ATTACH_FILES=32768, READ_MESSAGE_HISTORY=65536, MENTION_EVERYONE=131072, USE_EXTERNAL_EMOJIS=262144, VIEW_GUILD_INSIGHTS=524288, CONNECT=1048576, SPEAK=2097152, MUTE_MEMBERS=4194304, DEAFEN_MEMBERS=8388608, MOVE_MEMBERS=16777216, USE_VAD=33554432, CHANGE_NICKNAME=67108864, MANAGE_NICKNAMES=134217728, MANAGE_ROLES=268435456, MANAGE_WEBHOOKS=536870912, MANAGE_GUILD_EXPRESSIONS=1073741824, USE_APPLICATION_COMMANDS=2147483648, REQUEST_TO_SPEAK=4294967296, MANAGE_EVENTS=8589934592, MANAGE_THREADS=17179869184, CREATE_PUBLIC_THREADS=34359738368, CREATE_PRIVATE_THREADS=68719476736, USE_EXTERNAL_STICKERS=137438953472, SEND_MESSAGES_IN_THREADS=274877906944, USE_EMBEDDED_ACTIVITIES=549755813888, MODERATE_MEMBERS=1099511627776, VIEW_CREATOR_MONETIZATION_ANALYTICS=2199023255552, USE_SOUNDBOARD=4398046511104, CREATE_GUILD_EXPRESSIONS=8796093022208, CREATE_EVENTS=17592186044416, USE_EXTERNAL_SOUNDS=35184372088832, SEND_VOICE_MESSAGES=70368744177664, SET_VOICE_CHANNEL_STATUS=281474976710656, SEND_POLLS=562949953421312, USE_EXTERNAL_APPS=1125899906842624, PIN_MESSAGES=2251799813685248, BYPASS_SLOWMODE=4503599627370496. Or use a calculator like discordapi.com/permissions.htm. Optionally provide 'permissions_names' (array of named permission flags, e.g. ["SEND_MESSAGES"]) instead of a raw 'permissions' integer — the correct bitfield is computed automatically.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild.
role_idstringrequiredThe ID of the role to modify.
colorintegeroptionalDeprecated. RGB color value of the role as an integer. Still returned by the API, but using 'colors' is recommended when making requests.
colorsobjectoptionalThe role's colors object (recommended replacement for the deprecated 'color' field). Contains primary_color, and optionally secondary_color and tertiary_color for gradient/holographic roles.
hoistbooleanoptionalWhether the role should be displayed separately in the member list.
iconstringoptionalBase64 encoded role icon image (requires ROLE_ICONS guild feature).
mentionablebooleanoptionalWhether the role should be mentionable by everyone.
namestringoptionalNew name for the role.
permissionsstringoptionalBitwise permission value for the role as a string.
permissions_namesarrayoptionalNamed permission flags to OR together, as a more reliable alternative to specifying 'permissions' as a raw bitwise integer string — no manual bit math required. If both 'permissions_names' and 'permissions' are given, 'permissions_names' takes precedence.
unicode_emojistringoptionalRole's unicode emoji (requires ROLE_ICONS guild feature).
discordbot_modify_guild_role_positions#Modify the positions of roles in a guild. Requires MANAGE_ROLES permission. Returns a list of all guild role objects.2 params

Modify the positions of roles in a guild. Requires MANAGE_ROLES permission. Returns a list of all guild role objects.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to modify role positions in.
positionsarrayrequiredArray of objects with role id (required) and optional position (integer).
discordbot_modify_guild_scheduled_event#Modify a guild scheduled event. Requires MANAGE_EVENTS permission. To start or end an event, modify the status field. Returns the modified scheduled event object.13 params

Modify a guild scheduled event. Requires MANAGE_EVENTS permission. To start or end an event, modify the status field. Returns the modified scheduled event object.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild.
guild_scheduled_event_idstringrequiredThe ID of the scheduled event to modify.
channel_idstringoptionalChannel ID of the event (required for STAGE_INSTANCE and VOICE entity types).
descriptionstringoptionalDescription of the event (up to 1000 characters).
entity_metadataobjectoptionalEntity metadata for the event. For EXTERNAL type, include location string.
entity_typeintegeroptionalEntity type: 1=STAGE_INSTANCE, 2=VOICE, 3=EXTERNAL.
imagestringoptionalBase64 encoded cover image for the event.
namestringoptionalName of the scheduled event (1-100 characters).
privacy_levelintegeroptionalPrivacy level: 2=GUILD_ONLY.
recurrence_ruleobjectoptionalRecurrence rule object for repeating events. Set to null to clear an existing recurrence rule.
scheduled_end_timestringoptionalISO8601 timestamp for when the event ends.
scheduled_start_timestringoptionalISO8601 timestamp for when the event starts.
statusintegeroptionalEvent status: 1=SCHEDULED, 2=ACTIVE, 3=COMPLETED, 4=CANCELED.
discordbot_modify_guild_soundboard_sound#Modify the given guild soundboard sound. For sounds created by the current user, requires either the CREATE_GUILD_EXPRESSIONS or MANAGE_GUILD_EXPRESSIONS permission. For other sounds, requires the MANAGE_GUILD_EXPRESSIONS permission. All parameters are optional. Fires a Guild Soundboard Sound Update Gateway event. Returns the updated soundboard sound object on success.7 params

Modify the given guild soundboard sound. For sounds created by the current user, requires either the CREATE_GUILD_EXPRESSIONS or MANAGE_GUILD_EXPRESSIONS permission. For other sounds, requires the MANAGE_GUILD_EXPRESSIONS permission. All parameters are optional. Fires a Guild Soundboard Sound Update Gateway event. Returns the updated soundboard sound object on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild the soundboard sound belongs to.
sound_idstringrequiredThe ID of the soundboard sound to modify.
emoji_idstringoptionalThe ID of the custom emoji for the soundboard sound.
emoji_namestringoptionalThe unicode character of a standard emoji for the soundboard sound.
namestringoptionalNew name for the soundboard sound (2-32 characters).
reasonstringoptionalReason for modifying the sound, shown in the guild's audit log.
volumenumberoptionalThe volume of the soundboard sound, from 0 to 1.
discordbot_modify_guild_sticker#Modify a guild sticker's details. Requires MANAGE_GUILD_EXPRESSIONS permission. Returns the updated sticker object.5 params

Modify a guild sticker's details. Requires MANAGE_GUILD_EXPRESSIONS permission. Returns the updated sticker object.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild.
sticker_idstringrequiredThe ID of the sticker to modify.
descriptionstringoptionalNew description for the sticker (2-100 characters).
namestringoptionalNew name for the sticker (2-30 characters).
tagsstringoptionalNew autocomplete tags for the sticker (max 200 characters).
discordbot_modify_guild_template#Modify a guild template's metadata. Requires the MANAGE_GUILD permission. Returns the guild template object on success.4 params

Modify a guild template's metadata. Requires the MANAGE_GUILD permission. Returns the guild template object on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild the template belongs to.
template_codestringrequiredThe template code to modify.
descriptionstringoptionalNew description for the template (0-120 characters).
namestringoptionalNew name for the template (1-100 characters).
discordbot_modify_guild_welcome_screen#Modify the welcome screen of a Community guild. Requires MANAGE_GUILD permission. Returns the updated welcome screen object.4 params

Modify the welcome screen of a Community guild. Requires MANAGE_GUILD permission. Returns the updated welcome screen object.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to modify the welcome screen for.
descriptionstringoptionalThe server description shown in the welcome screen.
enabledbooleanoptionalWhether the welcome screen is enabled.
welcome_channelsarrayoptionalArray of welcome channel objects with channel_id, description, and optional emoji_id/emoji_name.
discordbot_modify_guild_widget#Modify the widget settings for a guild. Requires MANAGE_GUILD permission. Returns the updated guild widget settings object.3 params

Modify the widget settings for a guild. Requires MANAGE_GUILD permission. Returns the updated guild widget settings object.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to modify the widget for.
channel_idstringoptionalThe channel ID to generate an invite for the widget. Set to null to disable.
enabledbooleanoptionalWhether the widget is enabled.
discordbot_modify_lobby#Modify a Discord lobby with new values, if provided. When members is provided, it replaces the full member list — any current member not included is removed from the lobby. Returns the updated lobby object.4 params

Modify a Discord lobby with new values, if provided. When members is provided, it replaces the full member list — any current member not included is removed from the lobby. Returns the updated lobby object.

NameTypeRequiredDescription
lobby_idstringrequiredThe ID of the lobby to modify.
idle_timeout_secondsintegeroptionalSeconds to wait before shutting down the lobby after it becomes idle. Between 5 and 604800 (7 days).
membersarrayoptionalOptional array of up to 25 lobby member objects to replace the lobby members with. Members not included in this list are removed from the lobby.
metadataobjectoptionalOptional dictionary of string key/value pairs. Max total length 1000. Overwrites any existing metadata.
discordbot_modify_stage_instance#Update fields of an existing Stage instance. Requires the user to be a moderator of the Stage channel (MANAGE_CHANNELS, MUTE_MEMBERS, and MOVE_MEMBERS permissions). Fires a Stage Instance Update Gateway event. Returns the updated Stage instance object.4 params

Update fields of an existing Stage instance. Requires the user to be a moderator of the Stage channel (MANAGE_CHANNELS, MUTE_MEMBERS, and MOVE_MEMBERS permissions). Fires a Stage Instance Update Gateway event. Returns the updated Stage instance object.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the Stage channel whose Stage instance should be updated.
privacy_levelintegeroptionalThe privacy level of the Stage instance: 1=PUBLIC (deprecated), 2=GUILD_ONLY.
reasonstringoptionalReason for updating the Stage instance, shown in the guild's audit log.
topicstringoptionalThe new topic of the Stage instance (1-120 characters).
discordbot_modify_user_voice_state#Update another user's voice state in a stage channel. Returns 204 No Content on success. channel_id must currently point to a stage channel the user has already joined. Requires the MUTE_MEMBERS permission. When unsuppressed, non-bot users have their request_to_speak_timestamp set to the current time; bot users do not. When suppressed, the user's request_to_speak_timestamp is removed.4 params

Update another user's voice state in a stage channel. Returns 204 No Content on success. channel_id must currently point to a stage channel the user has already joined. Requires the MUTE_MEMBERS permission. When unsuppressed, non-bot users have their request_to_speak_timestamp set to the current time; bot users do not. When suppressed, the user's request_to_speak_timestamp is removed.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to modify the user's voice state in.
user_idstringrequiredThe ID of the user whose voice state to modify.
channel_idstringoptionalThe ID of the stage channel the user is currently in. Must currently point to a stage channel already joined.
suppressbooleanoptionalToggles the user's suppress state. Requires the MUTE_MEMBERS permission.
discordbot_modify_webhook#Modify a webhook. Requires MANAGE_WEBHOOKS permission. Returns the updated webhook object.4 params

Modify a webhook. Requires MANAGE_WEBHOOKS permission. Returns the updated webhook object.

NameTypeRequiredDescription
webhook_idstringrequiredThe ID of the webhook to modify.
avatarstringoptionalBase64 encoded avatar image for the webhook.
channel_idstringoptionalID of the channel to move the webhook to.
namestringoptionalNew default name for the webhook.
discordbot_modify_webhook_with_token#Modify a webhook using its token instead of OAuth authentication. Does not support channel_id field. Returns the updated webhook object (without token).4 params

Modify a webhook using its token instead of OAuth authentication. Does not support channel_id field. Returns the updated webhook object (without token).

NameTypeRequiredDescription
webhook_idstringrequiredThe ID of the webhook to modify.
webhook_tokenstringrequiredThe token of the webhook.
avatarstringoptionalBase64 encoded avatar image for the webhook.
namestringoptionalNew default name for the webhook.
discordbot_pin_message#Pin a message in a Discord channel using Discord's current pins endpoint (introduced June 2025, replacing the deprecated /channels/{channel.id}/pins/{message.id}). Requires PIN_MESSAGES permission. A channel can have up to 50 pinned messages.2 params

Pin a message in a Discord channel using Discord's current pins endpoint (introduced June 2025, replacing the deprecated /channels/{channel.id}/pins/{message.id}). Requires PIN_MESSAGES permission. A channel can have up to 50 pinned messages.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel containing the message to pin.
message_idstringrequiredThe ID of the message to pin.
discordbot_remove_guild_ban#Remove a ban for a user in a Discord guild, allowing them to rejoin. Requires BAN_MEMBERS permission.2 params

Remove a ban for a user in a Discord guild, allowing them to rejoin. Requires BAN_MEMBERS permission.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to remove the ban from.
user_idstringrequiredThe ID of the user to unban.
discordbot_remove_guild_member_role#Remove a role from a guild member. Requires MANAGE_ROLES permission. Returns 204 No Content on success.3 params

Remove a role from a guild member. Requires MANAGE_ROLES permission. Returns 204 No Content on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild.
role_idstringrequiredThe ID of the role to remove from the member.
user_idstringrequiredThe ID of the guild member to remove the role from.
discordbot_remove_lobby_member#Remove the specified user from a Discord lobby. Safe to call even if the user is no longer a member of the lobby, but fails if the lobby does not exist. Returns nothing.2 params

Remove the specified user from a Discord lobby. Safe to call even if the user is no longer a member of the lobby, but fails if the lobby does not exist. Returns nothing.

NameTypeRequiredDescription
lobby_idstringrequiredThe ID of the lobby to remove the member from.
user_idstringrequiredThe ID of the user to remove from the lobby.
discordbot_remove_thread_member#Remove a user from a thread. Requires MANAGE_THREADS permission or that the current user is the creator of the thread. Returns 204 No Content on success.2 params

Remove a user from a thread. Requires MANAGE_THREADS permission or that the current user is the creator of the thread. Returns 204 No Content on success.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the thread channel.
user_idstringrequiredThe ID of the user to remove from the thread.
discordbot_search_guild_members#Search for guild members in a Discord guild whose username or nickname starts with the given query string.3 params

Search for guild members in a Discord guild whose username or nickname starts with the given query string.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to search members in.
querystringrequiredQuery string to match against usernames and nicknames. Returns members whose username or nickname starts with this string.
limitintegeroptionalMaximum number of members to return (1-1000). Default is 1.
discordbot_search_guild_messages#Search for messages matching a query across a Discord guild. Returns matching messages without the reactions key. Requires the READ_MESSAGE_HISTORY permission and access is restricted according to whether the MESSAGE_CONTENT privileged intent is enabled for the application. If the searched entity is not yet indexed, Discord returns a 202 response instead of results.25 params

Search for messages matching a query across a Discord guild. Returns matching messages without the reactions key. Requires the READ_MESSAGE_HISTORY permission and access is restricted according to whether the MESSAGE_CONTENT privileged intent is enabled for the application. If the searched entity is not yet indexed, Discord returns a 202 response instead of results.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild to search messages in.
attachment_extensionarrayoptionalFilter messages by attachment extension, e.g. txt (max 256 characters per entry, max 100 entries).
attachment_filenamearrayoptionalFilter messages by attachment filename (max 1024 characters per entry, max 100 entries).
author_idarrayoptionalFilter messages by these author user IDs (max 100).
author_typearrayoptionalFilter messages by author type. Prefix a value with - to negate it, e.g. -bot.
channel_idarrayoptionalFilter messages by these channel IDs (max 500).
contentstringoptionalFilter messages by content (max 1024 characters).
embed_providerarrayoptionalFilter messages by embed provider name, case-sensitive, e.g. Tenor (max 256 characters per entry, max 100 entries).
embed_typearrayoptionalFilter messages by embed type (max 5 entries).
hasarrayoptionalFilter messages by whether they have specific things. Prefix a value with - to negate it, e.g. -embed.
include_nsfwbooleanoptionalWhether to include results from age-restricted channels. Defaults to false.
limitintegeroptionalMax number of messages to return (1-25). Default is 25.
link_hostnamearrayoptionalFilter messages by link hostname, e.g. discordapp.com (max 256 characters per entry, max 100 entries).
max_idstringoptionalGet messages before this message ID.
mention_everyonebooleanoptionalFilter messages by whether they do or do not mention @everyone.
mentionsarrayoptionalFilter messages that mention these user IDs (max 100).
mentions_role_idarrayoptionalFilter messages that mention these role IDs (max 100).
min_idstringoptionalGet messages after this message ID.
offsetintegeroptionalNumber to offset the returned messages by (max 9975).
pinnedbooleanoptionalFilter messages by whether they are or are not pinned.
replied_to_message_idarrayoptionalFilter messages that reply to these message IDs (max 100).
replied_to_user_idarrayoptionalFilter messages that reply to these user IDs (max 100).
slopintegeroptionalMax number of words to skip between matching tokens in the search content (max 100, default 2).
sort_bystringoptionalThe sorting algorithm to use: timestamp (default) or relevance. Sort order is not respected when sorting by relevance.
sort_orderstringoptionalThe direction to sort: asc or desc. Defaults to desc.
discordbot_send_lobby_message#Send a message to a Discord lobby. The calling user must be a member of the lobby. If the lobby has a linked channel, the message is also forwarded there; if forwarding fails (for example due to AutoMod), the lobby message is still delivered to other lobby members. Returns the created lobby message object.4 params

Send a message to a Discord lobby. The calling user must be a member of the lobby. If the lobby has a linked channel, the message is also forwarded there; if forwarding fails (for example due to AutoMod), the lobby message is still delivered to other lobby members. Returns the created lobby message object.

NameTypeRequiredDescription
contentstringrequiredMessage content. Must be non-empty.
lobby_idstringrequiredThe ID of the lobby to send the message to.
flagsintegeroptionalOptional message flags combined as a bitfield. Only flags creatable by the Social SDK are accepted.
metadataobjectoptionalOptional dictionary of string key/value pairs delivered alongside the message to active clients via the Social SDK. Not persisted on the linked channel message.
discordbot_send_soundboard_sound#Send a soundboard sound to a voice channel the user is connected to. Requires the SPEAK and USE_SOUNDBOARD permissions, and also USE_EXTERNAL_SOUNDS if the sound is from a different guild. The user must be connected to the voice channel with a voice state that has deaf, self_deaf, mute, and suppress all disabled. Fires a Voice Channel Effect Send Gateway event. Returns 204 No Content on success.3 params

Send a soundboard sound to a voice channel the user is connected to. Requires the SPEAK and USE_SOUNDBOARD permissions, and also USE_EXTERNAL_SOUNDS if the sound is from a different guild. The user must be connected to the voice channel with a voice state that has deaf, self_deaf, mute, and suppress all disabled. Fires a Voice Channel Effect Send Gateway event. Returns 204 No Content on success.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the voice channel to send the soundboard sound to.
sound_idstringrequiredThe ID of the soundboard sound to play.
source_guild_idstringoptionalThe ID of the guild the soundboard sound is from. Required to play sounds from a different guild than the voice channel's guild.
discordbot_set_voice_channel_status#Set a voice channel's status. Requires the SET_VOICE_CHANNEL_STATUS permission, and additionally the MANAGE_CHANNELS permission if the current user is not connected to the voice channel. Returns 204 No Content on success. Fires a Voice Channel Status Update Gateway event.2 params

Set a voice channel's status. Requires the SET_VOICE_CHANNEL_STATUS permission, and additionally the MANAGE_CHANNELS permission if the current user is not connected to the voice channel. Returns 204 No Content on success. Fires a Voice Channel Status Update Gateway event.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the voice channel to set the status for.
statusstringrequiredThe new voice channel status, up to 500 characters. Pass null to clear the current status.
discordbot_start_thread_from_message#Create a new thread from an existing message in a channel. The thread is a public thread by default. Requires CREATE_PUBLIC_THREADS permission. Returns the new thread channel object.5 params

Create a new thread from an existing message in a channel. The thread is a public thread by default. Requires CREATE_PUBLIC_THREADS permission. Returns the new thread channel object.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel containing the message.
message_idstringrequiredThe ID of the message to create the thread from.
namestringrequiredThe name of the thread (1-100 characters).
auto_archive_durationintegeroptionalDuration in minutes to auto-archive the thread: 60, 1440, 4320, or 10080.
rate_limit_per_userintegeroptionalSlowmode rate limit in seconds for thread members (0-21600).
discordbot_start_thread_in_forum_channel#Create a new post (thread) in a forum or media channel, along with its first message. At least one of content, embeds, or sticker_ids must be provided for the message. The current user must have the SEND_MESSAGES permission. Returns the new thread channel object with a nested message object.9 params

Create a new post (thread) in a forum or media channel, along with its first message. At least one of content, embeds, or sticker_ids must be provided for the message. The current user must have the SEND_MESSAGES permission. Returns the new thread channel object with a nested message object.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the forum or media channel to post in.
namestringrequiredThe name of the post/thread (1-100 characters).
allowed_mentionsobjectoptionalControls which mentions are allowed in the first message. Example: {"parse": ["users", "roles"]}
applied_tagsarrayoptionalIDs of the available_tags to apply to this post (forum/media channel tags).
auto_archive_durationintegeroptionalDuration in minutes to auto-archive the thread: 60, 1440, 4320, or 10080.
contentstringoptionalThe text content of the first message (up to 2000 characters).
embedsarrayoptionalArray of embed objects to attach to the first message (up to 10 embeds).
rate_limit_per_userintegeroptionalSlowmode rate limit in seconds for the thread (0-21600).
sticker_idsarrayoptionalArray of sticker IDs to attach to the first message (up to 3 stickers).
discordbot_start_thread_without_message#Create a new thread that is not attached to an existing message. Type 10=ANNOUNCEMENT_THREAD (in announcement channel), 11=PUBLIC_THREAD, 12=PRIVATE_THREAD. Returns the new thread channel object.6 params

Create a new thread that is not attached to an existing message. Type 10=ANNOUNCEMENT_THREAD (in announcement channel), 11=PUBLIC_THREAD, 12=PRIVATE_THREAD. Returns the new thread channel object.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to create the thread in.
namestringrequiredThe name of the thread (1-100 characters).
typeintegerrequiredThe type of thread. 10=ANNOUNCEMENT_THREAD, 11=PUBLIC_THREAD, 12=PRIVATE_THREAD.
auto_archive_durationintegeroptionalDuration in minutes to auto-archive the thread: 60, 1440, 4320, or 10080.
invitablebooleanoptionalWhether non-moderators can add other users to the private thread.
rate_limit_per_userintegeroptionalSlowmode rate limit in seconds for thread members (0-21600).
discordbot_sync_guild_template#Sync a template to the guild's current state. Requires the MANAGE_GUILD permission. Returns the guild template object on success.2 params

Sync a template to the guild's current state. Requires the MANAGE_GUILD permission. Returns the guild template object on success.

NameTypeRequiredDescription
guild_idstringrequiredThe ID of the guild the template belongs to.
template_codestringrequiredThe template code to sync.
discordbot_trigger_typing#Post a typing indicator to a Discord channel. The typing indicator lasts for 10 seconds or until a message is sent. Useful for indicating that a bot is processing a request.1 param

Post a typing indicator to a Discord channel. The typing indicator lasts for 10 seconds or until a message is sent. Useful for indicating that a bot is processing a request.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel to show the typing indicator in.
discordbot_unpin_message#Unpin a previously pinned message from a Discord channel using Discord's current pins endpoint (introduced June 2025, replacing the deprecated /channels/{channel.id}/pins/{message.id}). Requires PIN_MESSAGES permission.2 params

Unpin a previously pinned message from a Discord channel using Discord's current pins endpoint (introduced June 2025, replacing the deprecated /channels/{channel.id}/pins/{message.id}). Requires PIN_MESSAGES permission.

NameTypeRequiredDescription
channel_idstringrequiredThe ID of the channel containing the pinned message.
message_idstringrequiredThe ID of the message to unpin.
discordbot_update_application_role_connection_metadata#Update and return the list of application role connection metadata records for an application. Takes a full list of metadata objects to replace the existing ones; any records not included are removed. An application can have a maximum of 5 metadata records.2 params

Update and return the list of application role connection metadata records for an application. Takes a full list of metadata objects to replace the existing ones; any records not included are removed. An application can have a maximum of 5 metadata records.

NameTypeRequiredDescription
application_idstringrequiredThe ID of the application.
recordsarrayrequiredFull list of application role connection metadata objects (max 5) to replace the existing records. Each object requires type, key, name, and description; name_localizations and description_localizations are optional.
discordbot_update_lobby_message_moderation_metadata#Set the moderation metadata for a lobby message. The metadata is app-scoped and delivered to active game clients via the Social SDK as a realtime message update. Uses a Bot token for authorization. Returns HTTP 204 No Content on success.3 params

Set the moderation metadata for a lobby message. The metadata is app-scoped and delivered to active game clients via the Social SDK as a realtime message update. Uses a Bot token for authorization. Returns HTTP 204 No Content on success.

NameTypeRequiredDescription
lobby_idstringrequiredThe ID of the lobby the message belongs to.
message_idstringrequiredThe ID of the lobby message to set moderation metadata on.
moderation_metadataobjectrequiredFree-form key/value pairs describing the moderation decision. Up to 5 keys; key length up to 1024 characters; value length up to 2000 characters. This object is sent as the entire request body.