# Discord

An instant messaging and VoIP social platform.

- **Category:** team chat
- **Auth:** OAUTH2
- **Composio Managed App Available?** Yes
- **Tools:** 28
- **Triggers:** 1
- **Slug:** `DISCORD`
- **Version:** 20260429_00

## Tools

### Consume Entitlement

**Slug:** `DISCORD_CONSUME_ENTITLEMENT`

Marks a one-time purchase consumable entitlement as consumed for a given application. Only applicable to entitlements backed by one-time purchase consumable SKUs.

### Delete Test Entitlement

**Slug:** `DISCORD_DELETE_TEST_ENTITLEMENT`

Deletes a currently active test entitlement for a given application. Use this to clean up test entitlements that are no longer needed.

### Delete User Application Role Connection

**Slug:** `DISCORD_DELETE_USER_APPLICATION_ROLE_CONNECTION`

Deletes the current user's application role connection for the specified application. Removes the platform metadata and linked role connection.

### Edit Application Command Permissions

**Slug:** `DISCORD_EDIT_APPLICATION_COMMAND_PERMISSIONS`

Edits the permissions for a specific application command in a guild. Requires OAuth2 Bearer token (bot tokens will error). The authorizing user must have MANAGE_GUILD and MANAGE_ROLES permissions in the target guild.

### Get Application Command Permissions

**Slug:** `DISCORD_GET_APPLICATION_COMMAND_PERMISSIONS`

Retrieves the permissions for a specific application command in a guild. Requires OAuth2 Bearer token (bot tokens will error). The authorizing user must have MANAGE_GUILD and MANAGE_ROLES permissions in the target guild.

### Get Batch Application Command Permissions

**Slug:** `DISCORD_GET_BATCH_APPLICATION_COMMAND_PERMISSIONS`

Retrieves permissions for all commands of an application in a guild. Returns a list of permission objects for each command. Requires OAuth2 Bearer token (Bot tokens will error).

### Get Current User Application Entitlements

**Slug:** `DISCORD_GET_CURRENT_USER_APPLICATION_ENTITLEMENTS`

Tool to retrieve entitlements for the current user for a given application. Use when you need to check what premium offerings or subscriptions the authenticated user has access to.

### Get Gateway

**Slug:** `DISCORD_GET_GATEWAY`

Tool to retrieve a valid WebSocket (wss) URL for establishing a Gateway connection to Discord. Use when you need to connect to the Discord Gateway for real-time events.

### Get Guild Template

**Slug:** `DISCORD_GET_GUILD_TEMPLATE`

Tool to retrieve information about a Discord guild template using its unique template code. Use when you need to get details about a guild template for creating new servers.

### Get Guild Widget

**Slug:** `DISCORD_GET_GUILD_WIDGET`

Tool to retrieve the guild widget in JSON format. Use when you need to get public information about a Discord guild's widget that can be displayed on external websites. The widget must be enabled in the guild's server settings.

### Get Guild Widget PNG

**Slug:** `DISCORD_GET_GUILD_WIDGET_PNG`

Tool to retrieve a PNG image widget for a Discord guild. Use when you need a visual representation of the guild widget that can be displayed on external websites. The widget must be enabled in the guild's server settings.

### Get Invite (Deprecated)

**Slug:** `DISCORD_GET_INVITE`

DEPRECATED: Use DISCORD_INVITE_RESOLVE instead. Tool to retrieve information about a specific invite code. Use when you need to get details about a guild or channel associated with an invite. Response may be null or partial for expired, revoked, or inaccessible invites; do not infer guild membership or channel access from the response.

### Get my guild member

**Slug:** `DISCORD_GET_MY_GUILD_MEMBER`

Retrieves the guild member object for the currently authenticated user within a specified guild, including roles, nickname, join date, and permissions.

### Get my OAuth2 authorization

**Slug:** `DISCORD_GET_MY_OAUTH2_AUTHORIZATION`

Retrieves current OAuth2 authorization details for the application, including app info, scopes, token expiration, and user data (contingent on scopes like 'identify').

### Get My User

**Slug:** `DISCORD_GET_MY_USER`

Fetches comprehensive profile information for the currently authenticated Discord user, including email if the 'email' scope is granted.

### Get OpenID Connect userinfo

**Slug:** `DISCORD_GET_OPENID_CONNECT_USERINFO`

Retrieve OpenID Connect compliant user information for the authenticated user. Returns standardized OIDC user claims (sub, email, nickname, picture, locale, etc.) following the OpenID Connect specification. Requires OAuth2 access token with 'openid' scope; additional fields require 'identify' and 'email' scopes.

### Get Public Keys

**Slug:** `DISCORD_GET_PUBLIC_KEYS`

Tool to retrieve Discord OAuth2 public keys. Use when you need to verify OAuth2 tokens or access public keys for cryptographic operations.

### Get SKU Subscription

**Slug:** `DISCORD_GET_SKU_SUBSCRIPTION`

Retrieves a specific subscription by ID for a given SKU. Use to check details of a single user subscription.

### Get User

**Slug:** `DISCORD_GET_USER`

Retrieve information about a Discord user. With OAuth Bearer token authentication, this returns the authenticated user's information (use '@me'). With Bot token authentication, you can query any user by their ID. Use this when you need user details like username, avatar, email (if email scope is granted), locale, premium status, or other profile information.

### Get User Application Role Connection

**Slug:** `DISCORD_GET_USER_APPLICATION_ROLE_CONNECTION`

Retrieves the application role connection for the currently authenticated user for a specified application. Requires the role_connections.write OAuth2 scope.

### Resolve Invite

**Slug:** `DISCORD_INVITE_RESOLVE`

Tool to resolve and retrieve information about a Discord invite code. Use when you need to get details about a guild, channel, or event associated with an invite code.

### Leave Guild

**Slug:** `DISCORD_LEAVE_GUILD`

Leaves a Discord guild (server) on behalf of the currently authenticated user.

### List My Connections

**Slug:** `DISCORD_LIST_MY_CONNECTIONS`

Retrieves a list of the authenticated user's connected third-party accounts on Discord.

### List My Guilds

**Slug:** `DISCORD_LIST_MY_GUILDS`

Lists the current user's guilds, returning partial data for each; primarily used for displaying server lists or verifying memberships.

### List SKU Subscriptions

**Slug:** `DISCORD_LIST_SKU_SUBSCRIPTIONS`

Lists all subscriptions for a given SKU. When using a Bot token, the user_id query parameter is required. Returns paginated subscription objects.

### List Sticker Packs

**Slug:** `DISCORD_LIST_STICKER_PACKS`

Tool to retrieve all available Discord Nitro sticker packs. Use when you need to list or browse official Discord sticker packs.

### Modify Current User

**Slug:** `DISCORD_MODIFY_CURRENT_USER`

Modifies the currently authenticated Discord user's profile. Can update username (limited to 2 changes per hour) and avatar.

### Update User Application Role Connection

**Slug:** `DISCORD_UPDATE_USER_APPLICATION_ROLE_CONNECTION`

Updates the application role connection for the currently authenticated user for a specified application. Requires the role_connections.write OAuth2 scope.


## Triggers

### New Discord Message Trigger

**Slug:** `DISCORD_NEW_MESSAGE_TRIGGER`

Polls a specific Discord channel for new messages.
