Use Discord to manage messages, threads, channels, roles, members, invites, and webhooks. Authenticate with a bot token and grant the bot access to the servers and channels the workflow needs.
Open the Discord Developer Portal and create an application.
Open Bot , create the bot if needed, and copy its token.
Under Privileged Gateway Intents , enable Message Content Intent when the workflow needs message content.
Invite the bot to your servers with the permissions required by its operations.
Discord restricts content, embeds, attachments, and components when the Message Content intent is unavailable, with exceptions such as messages sent by the bot, direct messages, and messages that mention it. Verified apps may need approval for this intent. See Discord's Message Content requirements .
Manage Discord messages, threads, channels, roles, members, invites, and webhooks.
Send a message to a Discord channel
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication channelIdstring Yes The Discord channel ID to send the message to, e.g., 123456789012345678 contentstring No The text content of the message serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678 filesfile[] No Files to attach to the message
Parameter Type Description messagestring Success or error message filesfile[] Files attached to the message dataobject Discord message data ↳ id string Message ID ↳ content string Message content ↳ channel_id string Channel ID where message was sent ↳ author object Message author information ↳ id string Author user ID ↳ username string Author username ↳ avatar string Author avatar hash ↳ bot boolean Whether author is a bot ↳ timestamp string Message timestamp ↳ edited_timestamp string Message edited timestamp ↳ embeds array Message embeds ↳ attachments array Message attachments ↳ mentions array User mentions in message ↳ mention_roles array Role mentions in message ↳ mention_everyone boolean Whether message mentions everyone
Retrieve messages from a Discord channel
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication channelIdstring Yes The Discord channel ID to retrieve messages from, e.g., 123456789012345678 limitnumber No Maximum number of messages to retrieve (default: 10, max: 100)
Parameter Type Description messagestring Success or error message dataobject Container for messages data ↳ messages array Array of Discord messages with full metadata ↳ id string Message ID ↳ content string Message content ↳ channel_id string Channel ID ↳ author object Message author information ↳ id string Author user ID ↳ username string Author username ↳ avatar string Author avatar hash ↳ bot boolean Whether author is a bot ↳ timestamp string Message timestamp ↳ edited_timestamp string Message edited timestamp ↳ embeds array Message embeds ↳ attachments array Message attachments ↳ mentions array User mentions in message ↳ mention_roles array Role mentions in message ↳ mention_everyone boolean Whether message mentions everyone ↳ channel_id string Channel ID
Retrieve information about a Discord server (guild)
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataobject Discord server (guild) information ↳ id string Server ID ↳ name string Server name ↳ icon string Server icon hash ↳ description string Server description ↳ owner_id string Server owner user ID ↳ roles array Server roles ↳ approximate_member_count number Approximate total member count ↳ approximate_presence_count number Approximate online member count
Retrieve information about a Discord user
Inputs and outputsParameter Type Required Description botTokenstring Yes Discord bot token for authentication userIdstring Yes The Discord user ID, e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataobject Discord user information ↳ id string User ID ↳ username string Username ↳ discriminator string User discriminator (4-digit number) ↳ avatar string User avatar hash ↳ bot boolean Whether user is a bot ↳ system boolean Whether user is a system user ↳ email string User email (if available) ↳ verified boolean Whether user email is verified
Edit an existing message in a Discord channel
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication channelIdstring Yes The Discord channel ID containing the message, e.g., 123456789012345678 messageIdstring Yes The ID of the message to edit, e.g., 123456789012345678 contentstring No The new text content for the message serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataobject Updated Discord message data ↳ id string Message ID ↳ content string Updated message content ↳ channel_id string Channel ID ↳ edited_timestamp string Message edited timestamp
Delete a message from a Discord channel
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication channelIdstring Yes The Discord channel ID containing the message, e.g., 123456789012345678 messageIdstring Yes The ID of the message to delete, e.g., 123456789012345678 serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message
Delete 2-100 messages from a Discord channel in a single request
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication channelIdstring Yes The Discord channel ID to delete messages from, e.g., 123456789012345678 messageIdsjson Yes Array of 2-100 message IDs to delete. Messages older than 2 weeks cannot be bulk deleted. serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message
Add a reaction emoji to a Discord message
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication channelIdstring Yes The Discord channel ID containing the message, e.g., 123456789012345678 messageIdstring Yes The ID of the message to react to, e.g., 123456789012345678 emojistring Yes The emoji to react with (unicode emoji or custom emoji in name:id format) serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message
Remove a reaction from a Discord message
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication channelIdstring Yes The Discord channel ID containing the message, e.g., 123456789012345678 messageIdstring Yes The ID of the message with the reaction, e.g., 123456789012345678 emojistring Yes The emoji to remove (unicode emoji or custom emoji in name:id format) userIdstring No The user ID whose reaction to remove (omit to remove bot's own reaction), e.g., 123456789012345678 serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message
Pin a message in a Discord channel
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication channelIdstring Yes The Discord channel ID containing the message, e.g., 123456789012345678 messageIdstring Yes The ID of the message to pin, e.g., 123456789012345678 serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message
Unpin a message in a Discord channel
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication channelIdstring Yes The Discord channel ID containing the message, e.g., 123456789012345678 messageIdstring Yes The ID of the message to unpin, e.g., 123456789012345678 serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message
Retrieve all pinned messages in a Discord channel
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication channelIdstring Yes The Discord channel ID to retrieve pinned messages from, e.g., 123456789012345678 limitnumber No Maximum number of pins to return per page (1-50). Defaults to 50. beforestring No Return pins created before this ISO8601 timestamp, for paging past the first 50 results
Parameter Type Description messagestring Success or error message dataarray Array of pinned Discord messages ↳ id string Message ID ↳ content string Message content ↳ channel_id string Channel ID ↳ timestamp string Message timestamp ↳ pinned_at string When the message was pinned ↳ author object Message author information ↳ id string Author user ID ↳ username string Author username hasMoreboolean Whether more pinned messages exist beyond this page
Create a thread in a Discord channel
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication channelIdstring Yes The Discord channel ID to create the thread in, e.g., 123456789012345678 namestring Yes The name of the thread (1-100 characters) messageIdstring No The message ID to create a thread from (if creating from existing message), e.g., 123456789012345678 autoArchiveDurationnumber No Duration in minutes to auto-archive the thread (60, 1440, 4320, 10080) isPublicboolean No Whether the standalone thread is public (visible to everyone in the channel) or private. Ignored when creating a thread from an existing message, which always inherits the parent channel visibility. Defaults to public if omitted. serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataobject Created thread data ↳ id string Thread ID ↳ name string Thread name ↳ type number Thread channel type ↳ guild_id string Server ID ↳ parent_id string Parent channel ID
Join a thread in Discord
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication threadIdstring Yes The thread ID to join, e.g., 123456789012345678 serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message
Leave a thread in Discord
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication threadIdstring Yes The thread ID to leave, e.g., 123456789012345678 serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message
Archive or unarchive a thread in Discord
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication threadIdstring Yes The thread ID to archive/unarchive, e.g., 123456789012345678 archivedboolean Yes Whether to archive (true) or unarchive (false) the thread serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataobject Updated thread data ↳ id string Thread ID ↳ archived boolean Whether thread is archived
Create a new channel in a Discord server
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678 namestring Yes The name of the channel (1-100 characters) typenumber No Channel type (0=text, 2=voice, 4=category, 5=announcement, 13=stage) topicstring No Channel topic (0-1024 characters) parentIdstring No Parent category ID for the channel, e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataobject Created channel data ↳ id string Channel ID ↳ name string Channel name ↳ type number Channel type ↳ guild_id string Server ID
Update a Discord channel
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication channelIdstring Yes The Discord channel ID to update, e.g., 123456789012345678 namestring No The new name for the channel topicstring No The new topic for the channel serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataobject Updated channel data ↳ id string Channel ID ↳ name string Channel name ↳ type number Channel type ↳ topic string Channel topic
Delete a Discord channel
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication channelIdstring Yes The Discord channel ID to delete, e.g., 123456789012345678 serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataobject The deleted channel, as returned by Discord ↳ id string Channel ID ↳ name string Channel name ↳ type number Channel type ↳ guild_id string Server ID
Get information about a Discord channel
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication channelIdstring Yes The Discord channel ID to retrieve, e.g., 123456789012345678 serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataobject Channel data ↳ id string Channel ID ↳ name string Channel name ↳ type number Channel type ↳ topic string Channel topic ↳ guild_id string Server ID
List all channels in a Discord server
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataarray Array of Discord channels in the server ↳ id string Channel ID ↳ name string Channel name ↳ type number Channel type ↳ topic string Channel topic ↳ parent_id string Parent category ID ↳ position number Sort position within the channel list
Create a new role in a Discord server
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678 namestring Yes The name of the role colornumber No RGB color value as integer (e.g., 0xFF0000 for red) hoistboolean No Whether to display role members separately from online members mentionableboolean No Whether the role can be mentioned
Parameter Type Description messagestring Success or error message dataobject Created role data ↳ id string Role ID ↳ name string Role name ↳ color number Role color ↳ hoist boolean Whether role is hoisted ↳ mentionable boolean Whether role is mentionable
Update a role in a Discord server
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678 roleIdstring Yes The role ID to update, e.g., 123456789012345678 namestring No The new name for the role colornumber No RGB color value as integer hoistboolean No Whether to display role members separately mentionableboolean No Whether the role can be mentioned
Parameter Type Description messagestring Success or error message dataobject Updated role data ↳ id string Role ID ↳ name string Role name ↳ color number Role color
Delete a role from a Discord server
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678 roleIdstring Yes The role ID to delete, e.g., 123456789012345678
Parameter Type Description messagestring Success or error message
Assign a role to a member in a Discord server
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678 userIdstring Yes The user ID to assign the role to, e.g., 123456789012345678 roleIdstring Yes The role ID to assign, e.g., 123456789012345678
Parameter Type Description messagestring Success or error message
Remove a role from a member in a Discord server
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678 userIdstring Yes The user ID to remove the role from, e.g., 123456789012345678 roleIdstring Yes The role ID to remove, e.g., 123456789012345678
Parameter Type Description messagestring Success or error message
List all roles in a Discord server
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataarray Array of Discord roles in the server ↳ id string Role ID ↳ name string Role name ↳ color number Role color ↳ hoist boolean Whether role is hoisted ↳ position number Role position in the hierarchy ↳ mentionable boolean Whether role is mentionable
Kick a member from a Discord server
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678 userIdstring Yes The user ID to kick, e.g., 123456789012345678 reasonstring No Reason for kicking the member
Parameter Type Description messagestring Success or error message
Ban a member from a Discord server
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678 userIdstring Yes The user ID to ban, e.g., 123456789012345678 reasonstring No Reason for banning the member deleteMessageSecondsnumber No Seconds of message history to delete, 0-604800 (7 days)
Parameter Type Description messagestring Success or error message
Unban a member from a Discord server
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678 userIdstring Yes The user ID to unban, e.g., 123456789012345678 reasonstring No Reason for unbanning the member
Parameter Type Description messagestring Success or error message
Get information about a member in a Discord server
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678 userIdstring Yes The user ID to retrieve, e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataobject Member data ↳ user object User information ↳ id string User ID ↳ username string Username ↳ avatar string Avatar hash ↳ nick string Server nickname ↳ roles array Array of role IDs ↳ joined_at string When the member joined
Update a member in a Discord server (e.g., change nickname)
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678 userIdstring Yes The user ID to update, e.g., 123456789012345678 nickstring No New nickname for the member (null to remove) muteboolean No Whether to mute the member in voice channels deafboolean No Whether to deafen the member in voice channels
Parameter Type Description messagestring Success or error message dataobject Updated member data ↳ nick string Server nickname ↳ mute boolean Voice mute status ↳ deaf boolean Voice deaf status
Create an invite link for a Discord channel
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication channelIdstring Yes The Discord channel ID to create an invite for, e.g., 123456789012345678 maxAgenumber No Duration of invite in seconds (0 = never expires, default 86400) maxUsesnumber No Max number of uses (0 = unlimited, default 0) temporaryboolean No Whether invite grants temporary membership serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataobject Created invite data ↳ code string Invite code ↳ url string Full invite URL ↳ max_age number Max age in seconds ↳ max_uses number Max uses ↳ temporary boolean Whether temporary
Get information about a Discord invite
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication inviteCodestring Yes The invite code to retrieve serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataobject Invite data ↳ code string Invite code ↳ guild object Server information ↳ channel object Channel information ↳ approximate_member_count number Approximate member count ↳ approximate_presence_count number Approximate online count
Delete a Discord invite
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication inviteCodestring Yes The invite code to delete serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message
Create a webhook in a Discord channel
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication channelIdstring Yes The Discord channel ID to create the webhook in, e.g., 123456789012345678 namestring Yes Name of the webhook (1-80 characters) serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataobject Created webhook data ↳ id string Webhook ID ↳ name string Webhook name ↳ token string Webhook token ↳ url string Webhook URL ↳ channel_id string Channel ID
Execute a Discord webhook to send a message
Inputs and outputsParameter Type Required Description webhookIdstring Yes The webhook ID, e.g., 123456789012345678 webhookTokenstring Yes The webhook token contentstring Yes The message content to send usernamestring No Override the default username of the webhook serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataobject Message sent via webhook ↳ id string Message ID ↳ content string Message content ↳ channel_id string Channel ID ↳ timestamp string Message timestamp
Get information about a Discord webhook
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication webhookIdstring Yes The webhook ID to retrieve, e.g., 123456789012345678 serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message dataobject Webhook data ↳ id string Webhook ID ↳ name string Webhook name ↳ channel_id string Channel ID ↳ guild_id string Server ID ↳ token string Webhook token
Delete a Discord webhook
Inputs and outputsParameter Type Required Description botTokenstring Yes The bot token for authentication webhookIdstring Yes The webhook ID to delete, e.g., 123456789012345678 serverIdstring Yes The Discord server ID (guild ID), e.g., 123456789012345678
Parameter Type Description messagestring Success or error message