Skip to content
Scalekit Docs

Slack

scalekit91 toolsOAuth 2.0CommunicationCollaboration

Connect to Slack workspace. Send Messages as Bots or on behalf of users

Slack 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 Slack credentials with Scalekit so it handles the token lifecycle. You do this once per environment.

    Dashboard setup steps

    Register your Scalekit environment with the Slack connector so Scalekit handles the authentication flow and token lifecycle for you. The connection name you create will be used to identify and invoke the connection programmatically. Then complete the configuration in your application as follows:

    1. Set up auth redirects

      • In Scalekit dashboard, go to AgentKit > Connections > Create Connection. Find Slack and click Create. Copy the redirect URI. It looks like https://<SCALEKIT_ENVIRONMENT_URL>/sso/v1/oauth/<CONNECTION_ID>/callback.

        Copy redirect URI from Scalekit dashboard

      • Log in to api.slack.com/apps and click Create New App.

      • Select From scratch, enter an app name, and select your workspace.

      • Go to OAuth & Permissions and scroll to Redirect URLs.

      • Click Add New Redirect URL and paste the redirect URI from Scalekit. Click Add.

        Add redirect URL in Slack

    2. Enable distribution

      • In your Slack app settings, go to Manage Distribution.

      • Under Share Your App with Other Workspaces, complete the checklist Slack shows for your app. This can include accepting Slack’s distribution agreement, adding support and privacy URLs, and confirming that the redirect URL you added above is valid.

      • Click Activate Public Distribution.

        Slack app distribution must be active before users can authorize the app from external workspaces. If distribution is not active, OAuth can succeed in your development workspace but fail when a user tries to connect a second workspace.

        Enable Slack app distribution

      • From Basic Information, copy the Client ID and Client Secret.

    3. Add credentials in Scalekit

      • In Scalekit dashboard, go to AgentKit > Connections and open the connection you created.

      Choose Bot scope for most agents, including agents that read channel history or send messages as your Slack app. Bot scope makes the agent act as the Slack app or bot; use User scope only when the agent must act as the authorizing Slack user.

  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 = 'slack'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Slack:', link)
    process.stdout.write('Press Enter after authorizing...')
    await new Promise(r => process.stdin.once('data', r))
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'slack_get_bot_info',
    toolInput: {},
    })
    console.log(result)

Connect this agent connector to let your agent:

  • Send messages — post to channels, DMs, and threads on behalf of your users
  • Read conversations — retrieve channel history, thread replies, and direct messages
  • Manage channels — create channels, invite members, and update channel settings
  • Look up users — search for team members by name, email, or username
  • Upload files — share files and attachments into any conversation
Proxy API call
const result = await actions.request({
connectionName: 'slack',
identifier: 'user_123',
path: '/api/auth.test',
method: 'POST',
});
console.log(result);
// If you use slack_fetch_conversation_history, message text can contain
// Slack mention tokens like <@U09NZ1V7KPF>. Resolve the user ID with
// slack_get_user_info before showing messages to end users.
Execute a tool
const result = await actions.executeTool({
connector: 'slack',
identifier: 'user_123',
toolName: 'slack_add_reaction',
toolInput: {},
});
console.log(result);

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.

slack_add_bookmark#Add a bookmark to a Slack channel, such as a link. Requires a valid Slack OAuth2 connection with the bookmarks:write scope.6 params

Add a bookmark to a Slack channel, such as a link. Requires a valid Slack OAuth2 connection with the bookmarks:write scope.

NameTypeRequiredDescription
channel_idstringrequiredChannel to add the bookmark to.
titlestringrequiredTitle for the bookmark.
typestringrequiredType of the bookmark, e.g. 'link'.
emojistringoptionalEmoji to display alongside the bookmark, e.g. ':pushpin:'.
entity_idstringoptionalID of the entity being bookmarked. Only applies to 'message' or 'file' bookmark types.
linkstringoptionalURL to bookmark. Required when type is 'link'.
slack_add_reaction#Add an emoji reaction to a Slack message. Returns ok. Use add_reaction to react. Use remove_reaction to take it off. Use get_reactions to read reactions on one item.3 params

Add an emoji reaction to a Slack message. Returns ok. Use add_reaction to react. Use remove_reaction to take it off. Use get_reactions to read reactions on one item.

NameTypeRequiredDescription
channelstringrequiredChannel ID or channel name where the message exists
namestringrequiredEmoji name to react with (without colons)
timestampstringrequiredTimestamp of the message to add reaction to
slack_add_reminder#Create a Slack reminder for a user. Requires a valid Slack OAuth2 connection with the reminders:write scope.3 params

Create a Slack reminder for a user. Requires a valid Slack OAuth2 connection with the reminders:write scope.

NameTypeRequiredDescription
textstringrequiredThe content of the reminder.
timestringrequiredWhen this reminder should happen: a UNIX timestamp, the number of seconds until the reminder, or a natural-language string like 'in 15 minutes' or 'every Thursday'.
userstringoptionalThe user who will receive the reminder. Defaults to the reminder's creator if omitted.
slack_archive_channel#Archive a Slack channel. Requires a valid Slack OAuth2 connection with channels:manage (bot) or channels:write (user) scope, or groups:write for private channels.1 param

Archive a Slack channel. Requires a valid Slack OAuth2 connection with channels:manage (bot) or channels:write (user) scope, or groups:write for private channels.

NameTypeRequiredDescription
channelstringrequiredID of the channel to archive
slack_archive_conversation#Archive a public or private Slack channel. Requires a valid Slack OAuth2 connection with the conversations:write scope.1 param

Archive a public or private Slack channel. Requires a valid Slack OAuth2 connection with the conversations:write scope.

NameTypeRequiredDescription
channelstringrequiredID of the conversation to archive.
slack_auth_test#Verify the current Slack connection's authentication and identity. Returns the connected team, user, and bot identity for the active token.0 params

Verify the current Slack connection's authentication and identity. Returns the connected team, user, and bot identity for the active token.

slack_close_conversation#Close a direct message or multi-person direct message conversation in Slack. Requires a valid Slack OAuth2 connection with the im:write or mpim:write scope.1 param

Close a direct message or multi-person direct message conversation in Slack. Requires a valid Slack OAuth2 connection with the im:write or mpim:write scope.

NameTypeRequiredDescription
channelstringrequiredConversation to close.
slack_complete_reminder#Mark a Slack reminder as complete. Requires a valid Slack OAuth2 connection with the reminders:write scope.1 param

Mark a Slack reminder as complete. Requires a valid Slack OAuth2 connection with the reminders:write scope.

NameTypeRequiredDescription
reminderstringrequiredThe ID of the reminder to mark as complete.
slack_complete_upload_external#Step 2 of Slack's current file-upload flow: finalize file(s) previously uploaded to the URL returned by slack_get_upload_url_external, and optionally share them to a channel or thread. Requires a valid Slack OAuth2 connection with the files:write scope.4 params

Step 2 of Slack's current file-upload flow: finalize file(s) previously uploaded to the URL returned by slack_get_upload_url_external, and optionally share them to a channel or thread. Requires a valid Slack OAuth2 connection with the files:write scope.

NameTypeRequiredDescription
filesarrayrequiredArray of uploaded files to finalize. Each item must have 'id' (the file_id from slack_get_upload_url_external) and may include 'title'.
channel_idstringoptionalChannel ID to share the completed files to.
initial_commentstringoptionalMessage text to introduce the uploaded file(s) with.
thread_tsstringoptionalTimestamp of the parent message, to share the file(s) as a threaded reply.
slack_create_canvas#Create a new standalone Canvas, or one tabbed in a channel. The entire Canvases feature is otherwise uncovered by this connector. Requires a valid Slack OAuth2 connection with the canvases:write scope.3 params

Create a new standalone Canvas, or one tabbed in a channel. The entire Canvases feature is otherwise uncovered by this connector. Requires a valid Slack OAuth2 connection with the canvases:write scope.

NameTypeRequiredDescription
channel_idstringoptionalChannel ID to tab this canvas in. Required for free/standard workspaces to create a canvas.
document_contentobjectoptionalStructure describing the initial content, e.g. {"type": "markdown", "markdown": "# Hello"}. Markdown content is limited to 1 MiB.
titlestringoptionalTitle of the newly created canvas.
slack_create_channel#Creates a new public or private channel in a Slack workspace. Requires a valid Slack OAuth2 connection with channels:manage scope for public channels or groups:write scope for private channels.3 params

Creates a new public or private channel in a Slack workspace. Requires a valid Slack OAuth2 connection with channels:manage scope for public channels or groups:write scope for private channels.

NameTypeRequiredDescription
namestringrequiredName of the channel to create (without # prefix)
is_privatebooleanoptionalCreate a private channel instead of public
team_idstringoptionalEncoded team ID to create channel in (if using org tokens)
slack_create_usergroup#Create a new Slack User Group (@handle group) for mentioning a set of users at once. Requires a valid Slack OAuth2 connection with the usergroups:write scope.5 params

Create a new Slack User Group (@handle group) for mentioning a set of users at once. Requires a valid Slack OAuth2 connection with the usergroups:write scope.

NameTypeRequiredDescription
namestringrequiredA name for the User Group. Must be unique among User Groups.
channelsstringoptionalComma-separated string of encoded channel IDs the User Group uses as its default channels.
descriptionstringoptionalA short description of the User Group.
handlestringoptionalA mention handle. Must be unique among channels, users, and User Groups.
include_countbooleanoptionalInclude the number of users in the User Group in the response.
slack_delete_file#Delete a file uploaded to Slack. Requires a valid Slack OAuth2 connection with the files:write scope.1 param

Delete a file uploaded to Slack. Requires a valid Slack OAuth2 connection with the files:write scope.

NameTypeRequiredDescription
filestringrequiredID of the file to delete.
slack_delete_message#Delete an existing Slack message by channel and timestamp. Returns ok and the deleted timestamp. Use delete_message to remove a posted message. Use update_message to change its text.2 params

Delete an existing Slack message by channel and timestamp. Returns ok and the deleted timestamp. Use delete_message to remove a posted message. Use update_message to change its text.

NameTypeRequiredDescription
channelstringrequiredChannel ID, channel name (#general), or user ID for DM where the message was sent
tsstringrequiredTimestamp of the message to delete
slack_delete_reminder#Delete a Slack reminder. Requires a valid Slack OAuth2 connection with the reminders:write scope.1 param

Delete a Slack reminder. Requires a valid Slack OAuth2 connection with the reminders:write scope.

NameTypeRequiredDescription
reminderstringrequiredThe ID of the reminder to delete.
slack_delete_scheduled_message#Cancel a queued Slack message before it sends. Returns ok. Use delete_scheduled_message on a scheduled_message_id from list_scheduled_messages or schedule_rich_message.3 params

Cancel a queued Slack message before it sends. Returns ok. Use delete_scheduled_message on a scheduled_message_id from list_scheduled_messages or schedule_rich_message.

NameTypeRequiredDescription
channelstringrequiredThe channel the scheduled message is posting to.
scheduled_message_idstringrequiredThe scheduled_message_id returned from a prior call to slack_schedule_rich_message.
as_userbooleanoptionalPass true to delete the message as the authed user, requires the chat:write:user scope.
slack_disable_usergroup#Disable an existing Slack User Group. Requires a valid Slack OAuth2 connection with the usergroups:write scope.2 params

Disable an existing Slack User Group. Requires a valid Slack OAuth2 connection with the usergroups:write scope.

NameTypeRequiredDescription
usergroupstringrequiredThe encoded ID of the User Group to disable.
include_countbooleanoptionalInclude the number of users in the User Group in the response.
slack_edit_bookmark#Edit an existing Slack channel bookmark's title, link, or emoji. Requires a valid Slack OAuth2 connection with the bookmarks:write scope.5 params

Edit an existing Slack channel bookmark's title, link, or emoji. Requires a valid Slack OAuth2 connection with the bookmarks:write scope.

NameTypeRequiredDescription
bookmark_idstringrequiredID of the bookmark to update.
channel_idstringrequiredChannel where the bookmark resides.
emojistringoptionalNew emoji to associate with the bookmark, e.g. ':pushpin:'.
linkstringoptionalNew URL for the bookmark.
titlestringoptionalNew display title for the bookmark.
slack_edit_canvas#Apply a list of change operations to an existing Slack Canvas (insert_at_end, insert_at_start, or replace, each with markdown document_content). Requires a valid Slack OAuth2 connection with canvases:write scope.2 params

Apply a list of change operations to an existing Slack Canvas (insert_at_end, insert_at_start, or replace, each with markdown document_content). Requires a valid Slack OAuth2 connection with canvases:write scope.

NameTypeRequiredDescription
canvas_idstringrequiredID of the canvas to edit
changesarrayrequiredArray of change operation objects to apply, e.g. [{"operation": "insert_at_end", "document_content": {"type": "markdown", "markdown": "## New section"}}]
slack_enable_usergroup#Enable a previously disabled Slack User Group. Requires a valid Slack OAuth2 connection with the usergroups:write scope.2 params

Enable a previously disabled Slack User Group. Requires a valid Slack OAuth2 connection with the usergroups:write scope.

NameTypeRequiredDescription
usergroupstringrequiredThe encoded ID of the User Group to enable.
include_countbooleanoptionalInclude the number of users in the User Group in the response.
slack_end_dnd_snooze#End the current Slack user's active Do Not Disturb snooze early. Requires a valid Slack OAuth2 connection with the dnd:write scope.0 params

End the current Slack user's active Do Not Disturb snooze early. Requires a valid Slack OAuth2 connection with the dnd:write scope.

slack_fetch_conversation_history#Page messages in one Slack channel or DM in time order. Returns messages and a next_cursor. Use fetch_conversation_history to read a channel. Use search_messages to find text across the workspace. Use get_conversation_replies for one thread.5 params

Page messages in one Slack channel or DM in time order. Returns messages and a next_cursor. Use fetch_conversation_history to read a channel. Use search_messages to find text across the workspace. Use get_conversation_replies for one thread.

NameTypeRequiredDescription
channelstringrequiredChannel ID, channel name (#general), or user ID for DM
cursorstringoptionalPaginate through collections by cursor for pagination
lateststringoptionalEnd of time range of messages to include in results
limitintegeroptionalNumber of messages to return (1-1000, default 100)
oldeststringoptionalStart of time range of messages to include in results
slack_get_bot_info#Retrieve information about a bot user in Slack, such as its name and icons. Requires a valid Slack OAuth2 connection with the users:read scope.1 param

Retrieve information about a bot user in Slack, such as its name and icons. Requires a valid Slack OAuth2 connection with the users:read scope.

NameTypeRequiredDescription
botstringoptionalBot user to get info on. Defaults to the calling bot's own identity if omitted.
slack_get_conversation_info#Get metadata for one Slack channel, including settings and optional member count. Returns the channel object. Use get_conversation_info for one known channel. Use list_channels when you do not have the id.3 params

Get metadata for one Slack channel, including settings and optional member count. Returns the channel object. Use get_conversation_info for one known channel. Use list_channels when you do not have the id.

NameTypeRequiredDescription
channelstringrequiredChannel ID, channel name (#general), or user ID for DM
include_localebooleanoptionalSet to true to include the locale for this conversation
include_num_membersbooleanoptionalSet to true to include the member count for the conversation
slack_get_conversation_replies#Page replies in one Slack thread by parent timestamp. Returns messages and a next_cursor. Use get_conversation_replies for a thread. Use fetch_conversation_history for the channel's main timeline.7 params

Page replies in one Slack thread by parent timestamp. Returns messages and a next_cursor. Use get_conversation_replies for a thread. Use fetch_conversation_history for the channel's main timeline.

NameTypeRequiredDescription
channelstringrequiredChannel ID, channel name (#general), or user ID for DM
tsstringrequiredTimestamp of the parent message to get replies for
cursorstringoptionalPagination cursor for retrieving next page of results
inclusivebooleanoptionalInclude messages with latest or oldest timestamp in results
lateststringoptionalEnd of time range of messages to include in results
limitintegeroptionalNumber of messages to return (default 100, max 1000)
oldeststringoptionalStart of time range of messages to include in results
slack_get_dnd_info#Retrieve a Slack user's current Do Not Disturb status, including whether it is active and when it ends. Requires a valid Slack OAuth2 connection with the dnd:read scope.1 param

Retrieve a Slack user's current Do Not Disturb status, including whether it is active and when it ends. Requires a valid Slack OAuth2 connection with the dnd:read scope.

NameTypeRequiredDescription
userstringoptionalUser to fetch Do Not Disturb status for. Defaults to the authenticated user.
slack_get_file_info#Get metadata and comments for one Slack file by id. Returns the file object. Use get_file_info for a known file id. Use list_files or search_files when you do not have the id.3 params

Get metadata and comments for one Slack file by id. Returns the file object. Use get_file_info for a known file id. Use list_files or search_files when you do not have the id.

NameTypeRequiredDescription
filestringrequiredSpecify a file by providing its ID.
cursorstringoptionalPagination cursor from a previous call's response_metadata.next_cursor.
limitintegeroptionalThe maximum number of items to return.
slack_get_reactions#Read emoji reactions on one Slack message, file, or file comment. Returns the item and its reactions. Use get_reactions for one item. Use list_reactions for items a user has reacted to.5 params

Read emoji reactions on one Slack message, file, or file comment. Returns the item and its reactions. Use get_reactions for one item. Use list_reactions for items a user has reacted to.

NameTypeRequiredDescription
channelstringoptionalChannel where the message to get reactions for was posted. Required when looking up a message.
filestringoptionalFile to get reactions for.
file_commentstringoptionalFile comment to get reactions for.
fullbooleanoptionalIf true, always return the complete reaction list.
timestampstringoptionalTimestamp of the message to get reactions for. Required when looking up a message.
slack_get_reminder_info#Retrieve details about a specific Slack reminder by its ID. Requires a valid Slack OAuth2 connection with the reminders:read scope.1 param

Retrieve details about a specific Slack reminder by its ID. Requires a valid Slack OAuth2 connection with the reminders:read scope.

NameTypeRequiredDescription
reminderstringrequiredThe ID of the reminder to look up.
slack_get_team_dnd_info#Retrieve the Do Not Disturb status for up to 50 users on a Slack team at once. Requires a valid Slack OAuth2 connection with the dnd:read scope.1 param

Retrieve the Do Not Disturb status for up to 50 users on a Slack team at once. Requires a valid Slack OAuth2 connection with the dnd:read scope.

NameTypeRequiredDescription
usersstringrequiredComma-separated list of user IDs to fetch Do Not Disturb status for (up to 50).
slack_get_team_info#Retrieve information about the current Slack team/workspace, such as its name, domain, and icon. Requires a valid Slack OAuth2 connection with the team:read scope.1 param

Retrieve information about the current Slack team/workspace, such as its name, domain, and icon. Requires a valid Slack OAuth2 connection with the team:read scope.

NameTypeRequiredDescription
teamstringoptionalTeam to get info on. If omitted, returns information about the current team.
slack_get_upload_url_external#Step 1 of Slack's current file-upload flow: request an upload URL and file ID for a given filename and size. Use slack_complete_upload_external afterward to finalize and share the uploaded file. The classic files.upload method was sunset on 2025-11-12; this is the only way to upload new file content today. Requires a valid Slack OAuth2 connection with the files:write scope.4 params

Step 1 of Slack's current file-upload flow: request an upload URL and file ID for a given filename and size. Use slack_complete_upload_external afterward to finalize and share the uploaded file. The classic files.upload method was sunset on 2025-11-12; this is the only way to upload new file content today. Requires a valid Slack OAuth2 connection with the files:write scope.

NameTypeRequiredDescription
filenamestringrequiredName of the file being uploaded.
lengthintegerrequiredSize of the file to upload, in bytes.
alt_txtstringoptionalDescription of the image for accessibility, max 1000 characters.
snippet_typestringoptionalSyntax type of the snippet being uploaded, if any (e.g. python, json).
slack_get_user_info#Retrieves detailed information about a specific Slack user, including profile data, status, and workspace information. Requires a valid Slack OAuth2 connection with users:read scope.2 params

Retrieves detailed information about a specific Slack user, including profile data, status, and workspace information. Requires a valid Slack OAuth2 connection with users:read scope.

NameTypeRequiredDescription
userstringrequiredUser ID to get information about
include_localebooleanoptionalSet to true to include locale information for the user
slack_get_user_presence#Gets the current presence status of a Slack user (active, away, etc.). Indicates whether the user is currently online and available. Requires a valid Slack OAuth2 connection with users:read scope.1 param

Gets the current presence status of a Slack user (active, away, etc.). Indicates whether the user is currently online and available. Requires a valid Slack OAuth2 connection with users:read scope.

NameTypeRequiredDescription
userstringrequiredUser ID to check presence for
slack_get_user_profile#Retrieve detailed profile information for a Slack user, including custom profile fields. Requires a valid Slack OAuth2 connection with the users.profile:read scope.2 params

Retrieve detailed profile information for a Slack user, including custom profile fields. Requires a valid Slack OAuth2 connection with the users.profile:read scope.

NameTypeRequiredDescription
include_labelsbooleanoptionalInclude labels for each custom profile field ID.
userstringoptionalUser to retrieve profile info for. Defaults to the authenticated user if omitted.
slack_invite_users_to_channel#Invites one or more users to a Slack channel. Requires a valid Slack OAuth2 connection with channels:write scope for public channels or groups:write for private channels.2 params

Invites one or more users to a Slack channel. Requires a valid Slack OAuth2 connection with channels:write scope for public channels or groups:write for private channels.

NameTypeRequiredDescription
channelstringrequiredChannel ID or channel name (#general) to invite users to
usersstringrequiredComma-separated list of user IDs to invite to the channel
slack_join_conversation#Joins an existing Slack channel. The authenticated user will become a member of the channel. Requires a valid Slack OAuth2 connection with channels:write scope for public channels.1 param

Joins an existing Slack channel. The authenticated user will become a member of the channel. Requires a valid Slack OAuth2 connection with channels:write scope for public channels.

NameTypeRequiredDescription
channelstringrequiredChannel ID or channel name (#general) to join
slack_kick_from_conversation#Remove a user from a Slack conversation. Requires a valid Slack OAuth2 connection with the conversations:write scope.2 params

Remove a user from a Slack conversation. Requires a valid Slack OAuth2 connection with the conversations:write scope.

NameTypeRequiredDescription
channelstringrequiredID of the conversation to remove the user from.
userstringrequiredUser ID to be removed.
slack_kick_user_from_channel#Remove a user from a Slack channel. Requires a valid Slack OAuth2 connection with channels:manage (bot) or channels:write (user) scope, or groups:write for private channels.2 params

Remove a user from a Slack channel. Requires a valid Slack OAuth2 connection with channels:manage (bot) or channels:write (user) scope, or groups:write for private channels.

NameTypeRequiredDescription
channelstringrequiredID of the channel to remove the user from
userstringrequiredID of the user to remove
slack_leave_conversation#Leaves a Slack channel. The authenticated user will be removed from the channel and will no longer receive messages from it. Requires a valid Slack OAuth2 connection with channels:write scope for public channels or groups:write for private channels.1 param

Leaves a Slack channel. The authenticated user will be removed from the channel and will no longer receive messages from it. Requires a valid Slack OAuth2 connection with channels:write scope for public channels or groups:write for private channels.

NameTypeRequiredDescription
channelstringrequiredChannel ID or channel name (#general) to leave
slack_list_bookmarks#List the bookmarks on a Slack channel. Requires a valid Slack OAuth2 connection with the bookmarks:read scope.1 param

List the bookmarks on a Slack channel. Requires a valid Slack OAuth2 connection with the bookmarks:read scope.

NameTypeRequiredDescription
channel_idstringrequiredChannel whose bookmarks should be listed.
slack_list_channel_members#List the member user IDs of a Slack channel. Requires a valid Slack OAuth2 connection with channels:read (public) or groups:read (private) scope.3 params

List the member user IDs of a Slack channel. Requires a valid Slack OAuth2 connection with channels:read (public) or groups:read (private) scope.

NameTypeRequiredDescription
channelstringrequiredChannel ID or channel name to list members for
cursorstringoptionalPagination cursor from a previous response's response_metadata.next_cursor
limitintegeroptionalMaximum number of members to return per page
slack_list_channels#List public and private Slack channels the caller can see. Returns channels and a next_cursor. Use list_channels to browse the workspace. Use list_user_conversations for one user's membership. Use get_conversation_info for one channel's metadata.5 params

List public and private Slack channels the caller can see. Returns channels and a next_cursor. Use list_channels to browse the workspace. Use list_user_conversations for one user's membership. Use get_conversation_info for one channel's metadata.

NameTypeRequiredDescription
cursorstringoptionalPagination cursor for retrieving next page of results
exclude_archivedbooleanoptionalExclude archived channels from the list
limitintegeroptionalNumber of channels to return (default 100, max 1000)
team_idstringoptionalEncoded team ID to list channels for (optional)
typesstringoptionalMix and match channel types (public_channel, private_channel, mpim, im)
slack_list_emoji#List the custom emoji available for a Slack team. Requires a valid Slack OAuth2 connection with the emoji:read scope.0 params

List the custom emoji available for a Slack team. Requires a valid Slack OAuth2 connection with the emoji:read scope.

slack_list_files#List Slack files, optionally filtered by user, channel, type, or time range. Returns files and paging fields. Use list_files to browse with filters. Use search_files for a text query. Use get_file_info for one file id.7 params

List Slack files, optionally filtered by user, channel, type, or time range. Returns files and paging fields. Use list_files to browse with filters. Use search_files for a text query. Use get_file_info for one file id.

NameTypeRequiredDescription
channelstringoptionalFilter files appearing in a specific channel, indicated by its ID.
countintegeroptionalNumber of items to return per page.
pageintegeroptionalPage number of results to return.
ts_fromstringoptionalFilter files created after this UNIX timestamp (inclusive).
ts_tostringoptionalFilter files created before this UNIX timestamp (inclusive).
typesstringoptionalComma-separated list of file types to filter by (e.g., images, pdfs, docs).
userstringoptionalFilter files created by a single user.
slack_list_pinned_items#List the messages and files pinned to a Slack channel. Requires a valid Slack OAuth2 connection with the pins:read scope.1 param

List the messages and files pinned to a Slack channel. Requires a valid Slack OAuth2 connection with the pins:read scope.

NameTypeRequiredDescription
channelstringrequiredChannel to get pinned items for.
slack_list_reactions#List Slack items a user has reacted to. Returns items and a next_cursor. Use list_reactions for a user's reaction history. Use get_reactions for one message or file.4 params

List Slack items a user has reacted to. Returns items and a next_cursor. Use list_reactions for a user's reaction history. Use get_reactions for one message or file.

NameTypeRequiredDescription
cursorstringoptionalPagination cursor from a previous call's response_metadata.next_cursor.
fullbooleanoptionalIf true, always return the complete reaction list for each item.
limitintegeroptionalThe maximum number of items to return.
userstringoptionalShow reactions made by this user. Defaults to the authenticated user.
slack_list_reminders#List all reminders created by or for the authenticated Slack user. Requires a valid Slack OAuth2 connection with the reminders:read scope.0 params

List all reminders created by or for the authenticated Slack user. Requires a valid Slack OAuth2 connection with the reminders:read scope.

slack_list_scheduled_messages#List Slack messages waiting to send, optionally filtered by channel or time. Returns scheduled_messages and a next_cursor. Use list_scheduled_messages to browse the queue. Use search_messages for text already posted.5 params

List Slack messages waiting to send, optionally filtered by channel or time. Returns scheduled_messages and a next_cursor. Use list_scheduled_messages to browse the queue. Use search_messages for text already posted.

NameTypeRequiredDescription
channelstringoptionalThe channel of the scheduled messages. Omit to list across all channels.
cursorstringoptionalPagination cursor from a previous call's response_metadata.next_cursor.
lateststringoptionalA UNIX timestamp of the latest value in the time range.
limitintegeroptionalMaximum number of original entries to return.
oldeststringoptionalA UNIX timestamp of the oldest value in the time range.
slack_list_user_conversations#List Slack conversations one user belongs to. Returns channels and a next_cursor. Use list_user_conversations for one member. Use list_channels to browse the whole workspace.5 params

List Slack conversations one user belongs to. Returns channels and a next_cursor. Use list_user_conversations for one member. Use list_channels to browse the whole workspace.

NameTypeRequiredDescription
cursorstringoptionalPagination cursor from a previous call's next_cursor value.
exclude_archivedbooleanoptionalSet to true to exclude archived channels from the list.
limitintegeroptionalThe maximum number of items to return.
typesstringoptionalComma-separated list of channel types to include (public_channel, private_channel, mpim, im).
userstringoptionalBrowse conversations by a specific user ID's membership. Defaults to the authenticated user if omitted.
slack_list_usergroup_users#List all users belonging to a Slack User Group. Requires a valid Slack OAuth2 connection with the usergroups:read scope.2 params

List all users belonging to a Slack User Group. Requires a valid Slack OAuth2 connection with the usergroups:read scope.

NameTypeRequiredDescription
usergroupstringrequiredThe encoded ID of the User Group to list members for.
include_disabledbooleanoptionalAllow results for disabled User Groups.
slack_list_usergroups#List all User Groups (@handle groups) for a Slack team. Requires a valid Slack OAuth2 connection with the usergroups:read scope.3 params

List all User Groups (@handle groups) for a Slack team. Requires a valid Slack OAuth2 connection with the usergroups:read scope.

NameTypeRequiredDescription
include_countbooleanoptionalInclude the number of users in each User Group.
include_disabledbooleanoptionalInclude disabled User Groups in the results.
include_usersbooleanoptionalInclude the list of users for each User Group.
slack_list_users#Lists all users in a Slack workspace, including information about their status, profile, and presence. Requires a valid Slack OAuth2 connection with users:read scope.4 params

Lists all users in a Slack workspace, including information about their status, profile, and presence. Requires a valid Slack OAuth2 connection with users:read scope.

NameTypeRequiredDescription
cursorstringoptionalPagination cursor for fetching additional pages of users
include_localebooleanoptionalSet to true to include locale information for each user
limitnumberoptionalNumber of users to return (1-1000)
team_idstringoptionalEncoded team ID to list users for (if using org tokens)
slack_lookup_user_by_email#Find a user by their registered email address in a Slack workspace. Requires a valid Slack OAuth2 connection with users:read.email scope. Cannot be used by custom bot users.1 param

Find a user by their registered email address in a Slack workspace. Requires a valid Slack OAuth2 connection with users:read.email scope. Cannot be used by custom bot users.

NameTypeRequiredDescription
emailstringrequiredEmail address to search for users by
slack_mark_conversation_read#Set the read cursor in a Slack channel or conversation to a given message, marking everything up to and including it as read. Requires a valid Slack OAuth2 connection with the conversations:write scope.2 params

Set the read cursor in a Slack channel or conversation to a given message, marking everything up to and including it as read. Requires a valid Slack OAuth2 connection with the conversations:write scope.

NameTypeRequiredDescription
channelstringrequiredChannel or conversation to set the read cursor for.
tsstringrequiredUnique identifier (timestamp) of the message marked as most recently seen in this conversation.
slack_open_conversation#Open or resume a direct message or multi-person direct message in Slack. Provide either an existing im/mpim channel ID to resume, or a list of user IDs to start a new one. Requires a valid Slack OAuth2 connection with the im:write scope.3 params

Open or resume a direct message or multi-person direct message in Slack. Provide either an existing im/mpim channel ID to resume, or a list of user IDs to start a new one. Requires a valid Slack OAuth2 connection with the im:write scope.

NameTypeRequiredDescription
channelstringoptionalResume a conversation by supplying an existing im or mpim channel ID. Provide this or users, not both.
return_imbooleanoptionalIf true, the response includes the full IM channel definition even if the channel already existed.
usersstringoptionalComma-separated list of user IDs. If only one user is included, this creates a 1:1 DM.
slack_open_view#Open a modal view for a Slack user in response to a trigger (e.g., a slash command or button click). Requires a valid Slack OAuth2 connection.2 params

Open a modal view for a Slack user in response to a trigger (e.g., a slash command or button click). Requires a valid Slack OAuth2 connection.

NameTypeRequiredDescription
trigger_idstringrequiredExchange a trigger to post the view to the user. Trigger IDs expire after 3 seconds.
viewobjectrequiredA view payload object describing the modal to display.
slack_pin_message#Pin a message to a Slack channel. Pinned messages are highlighted and easily accessible to channel members. Requires a valid Slack OAuth2 connection with pins:write scope.2 params

Pin a message to a Slack channel. Pinned messages are highlighted and easily accessible to channel members. Requires a valid Slack OAuth2 connection with pins:write scope.

NameTypeRequiredDescription
channelstringrequiredChannel ID or channel name where the message exists
timestampstringrequiredTimestamp of the message to pin
slack_publish_view#Publish a static App Home view for a specific Slack user. Requires a valid Slack OAuth2 connection.3 params

Publish a static App Home view for a specific Slack user. Requires a valid Slack OAuth2 connection.

NameTypeRequiredDescription
user_idstringrequiredThe id of the user you want to publish the App Home view to.
viewobjectrequiredA view payload object of type 'home' describing the App Home content.
hashstringoptionalA string representing view state, used to protect against race conditions between multiple publishes.
slack_push_view#Push a new modal view onto the stack of an existing root modal view for a Slack user. Requires a valid Slack OAuth2 connection.2 params

Push a new modal view onto the stack of an existing root modal view for a Slack user. Requires a valid Slack OAuth2 connection.

NameTypeRequiredDescription
trigger_idstringrequiredExchange a trigger to post the view to the user. Trigger IDs expire after 3 seconds.
viewobjectrequiredA view payload object describing the modal to push onto the stack.
slack_remove_bookmark#Remove a bookmark from a Slack channel. Requires a valid Slack OAuth2 connection with the bookmarks:write scope.2 params

Remove a bookmark from a Slack channel. Requires a valid Slack OAuth2 connection with the bookmarks:write scope.

NameTypeRequiredDescription
bookmark_idstringrequiredID of the bookmark to remove.
channel_idstringrequiredChannel where the bookmark resides.
slack_remove_pin#Un-pin a message from a Slack channel. Requires a valid Slack OAuth2 connection with the pins:write scope.2 params

Un-pin a message from a Slack channel. Requires a valid Slack OAuth2 connection with the pins:write scope.

NameTypeRequiredDescription
channelstringrequiredChannel where the item is pinned.
timestampstringoptionalTimestamp of the message to un-pin.
slack_remove_reaction#Remove an emoji reaction from a Slack message. Returns ok. Use remove_reaction to clear a reaction. Use add_reaction to add one.3 params

Remove an emoji reaction from a Slack message. Returns ok. Use remove_reaction to clear a reaction. Use add_reaction to add one.

NameTypeRequiredDescription
channelstringrequiredChannel ID or channel name where the message exists
namestringrequiredEmoji name to remove (without colons)
timestampstringrequiredTimestamp of the message to remove reaction from
slack_rename_channel#Rename a Slack channel. Requires a valid Slack OAuth2 connection with channels:manage (bot) or channels:write (user) scope, or groups:write for private channels.2 params

Rename a Slack channel. Requires a valid Slack OAuth2 connection with channels:manage (bot) or channels:write (user) scope, or groups:write for private channels.

NameTypeRequiredDescription
channelstringrequiredID of the channel to rename
namestringrequiredNew name for the channel (lowercase letters, numbers, hyphens, underscores; max 80 characters)
slack_rename_conversation#Rename an existing Slack channel. Requires a valid Slack OAuth2 connection with the conversations:write scope.2 params

Rename an existing Slack channel. Requires a valid Slack OAuth2 connection with the conversations:write scope.

NameTypeRequiredDescription
channelstringrequiredID of the conversation to rename.
namestringrequiredNew name for the conversation.
slack_revoke_file_public_url#Revoke public, external sharing access for a file uploaded to Slack, disabling its public URL. Requires a valid Slack OAuth2 connection with the files:write scope.1 param

Revoke public, external sharing access for a file uploaded to Slack, disabling its public URL. Requires a valid Slack OAuth2 connection with the files:write scope.

NameTypeRequiredDescription
filestringrequiredFile to revoke public sharing for.
slack_schedule_rich_message#Schedule a Slack message, including Block Kit, for a future Unix time. Returns scheduled_message_id and post_at. Use schedule_rich_message for later delivery. Use send_rich_message to post now.9 params

Schedule a Slack message, including Block Kit, for a future Unix time. Returns scheduled_message_id and post_at. Use schedule_rich_message for later delivery. Use send_rich_message to post now.

NameTypeRequiredDescription
channelstringrequiredChannel ID, channel name (#general), or user ID for DM
post_atintegerrequiredUnix timestamp (seconds) for when the message should be sent
textstringrequiredFallback message text, shown in notifications and clients that can't render blocks/attachments
attachmentsarrayoptionalArray of legacy attachment objects for additional message formatting
blocksarrayoptionalArray of Block Kit block elements for rich message formatting
reply_broadcastbooleanoptionalUsed in conjunction with thread_ts to broadcast reply to channel
thread_tsstringoptionalTimestamp of parent message to reply in thread
unfurl_linksbooleanoptionalEnable or disable link previews
unfurl_mediabooleanoptionalEnable or disable media link previews
slack_search_all#Search for both messages and files across the Slack workspace matching a query in a single call. Requires a valid Slack OAuth2 connection with search:read scope (user-token authorization; not available to bot tokens).6 params

Search for both messages and files across the Slack workspace matching a query in a single call. Requires a valid Slack OAuth2 connection with search:read scope (user-token authorization; not available to bot tokens).

NameTypeRequiredDescription
querystringrequiredSearch query. Supports Slack search modifiers like from:, in:, before:, after:
countintegeroptionalNumber of results to return per page
highlightbooleanoptionalEnable query highlight markers in results
pageintegeroptionalPage number of results to return
sortstringoptionalSort results by relevance score or by timestamp
sort_dirstringoptionalSort direction
slack_search_files#Search Slack files by query text and Slack modifiers. Returns matching files with pagination. Use search_files to find files by text. Use list_files to browse with filters. Needs a user token with search:read.7 params

Search Slack files by query text and Slack modifiers. Returns matching files with pagination. Use search_files to find files by text. Use list_files to browse with filters. Needs a user token with search:read.

NameTypeRequiredDescription
querystringrequiredSearch query. Supports Slack search modifiers such as from:, in:, and before:.
countintegeroptionalNumber of results to return per page.
highlightbooleanoptionalEnable query highlight markers in the returned results.
pageintegeroptionalPage number of results to return.
sortstringoptionalReturn matches sorted by either score (relevance) or timestamp (recency).
sort_dirstringoptionalSort direction: ascending (asc) or descending (desc).
team_idstringoptionalEncoded team ID to search in. Required if using an org-wide token.
slack_search_messages#Search posted Slack messages by query text and Slack modifiers (from:, in:, before:). Returns matching messages with pagination. Use search_messages to find text. Use fetch_conversation_history to page one channel in time order. Needs a user token with search:read.6 params

Search posted Slack messages by query text and Slack modifiers (from:, in:, before:). Returns matching messages with pagination. Use search_messages to find text. Use fetch_conversation_history to page one channel in time order. Needs a user token with search:read.

NameTypeRequiredDescription
querystringrequiredSearch query. Supports Slack search modifiers such as from:, in:, and before:.
countintegeroptionalNumber of results to return per page. Maximum of 100.
highlightbooleanoptionalEnable query highlight markers in the returned message text.
pageintegeroptionalPage number of results to return.
sortstringoptionalReturn matches sorted by either score (relevance) or timestamp (recency).
sort_dirstringoptionalSort direction: ascending (asc) or descending (desc).
slack_send_ephemeral_message#Send a Slack message that only one user can see in a channel. Returns channel and message timestamp. Use send_ephemeral_message for a private in-channel notice. Use send_message when everyone in the channel should see it.6 params

Send a Slack message that only one user can see in a channel. Returns channel and message timestamp. Use send_ephemeral_message for a private in-channel notice. Use send_message when everyone in the channel should see it.

NameTypeRequiredDescription
channelstringrequiredChannel ID or channel name where the ephemeral message should appear
textstringrequiredFallback message text, shown in notifications and clients that can't render blocks/attachments
userstringrequiredUser ID of the user who should see the ephemeral message
attachmentsarrayoptionalArray of legacy attachment objects for additional message formatting
blocksarrayoptionalArray of Block Kit block elements for rich message formatting
thread_tsstringoptionalTimestamp of parent message to post the ephemeral message in a thread
slack_send_me_message#Send an italic /me-style action line to a Slack channel. Returns channel and message timestamp. Use send_me_message for an action line. Use send_message for a normal chat line.2 params

Send an italic /me-style action line to a Slack channel. Returns channel and message timestamp. Use send_me_message for an action line. Use send_message for a normal chat line.

NameTypeRequiredDescription
channelstringrequiredChannel to send the message to. Can be a public channel, private group, or IM channel.
textstringrequiredText of the message to send.
slack_send_message#Send plain text to a Slack channel or DM, optionally in a thread. Returns channel and message timestamp. Use send_message for text. Use send_rich_message when the message needs Block Kit or attachments.10 params

Send plain text to a Slack channel or DM, optionally in a thread. Returns channel and message timestamp. Use send_message for text. Use send_rich_message when the message needs Block Kit or attachments.

NameTypeRequiredDescription
channelstringrequiredChannel ID, channel name (#general), or user ID for DM
textstringrequiredMessage text content
attachmentsstringoptionalJSON-encoded array of attachment objects for additional message formatting
blocksstringoptionalJSON-encoded array of Block Kit block elements for rich message formatting
reply_broadcastbooleanoptionalUsed in conjunction with thread_ts to broadcast reply to channel
schema_versionstringoptionalOptional schema version to use for tool execution
thread_tsstringoptionalTimestamp of parent message to reply in thread
tool_versionstringoptionalOptional tool version to use for execution
unfurl_linksbooleanoptionalEnable or disable link previews
unfurl_mediabooleanoptionalEnable or disable media link previews
slack_send_rich_message#Send a Slack message with Block Kit blocks or legacy attachments. Returns channel and message timestamp. Use send_rich_message for rich layout. Use send_message for plain text.8 params

Send a Slack message with Block Kit blocks or legacy attachments. Returns channel and message timestamp. Use send_rich_message for rich layout. Use send_message for plain text.

NameTypeRequiredDescription
channelstringrequiredChannel ID, channel name (#general), or user ID for DM
textstringrequiredFallback message text, shown in notifications and clients that can't render blocks/attachments
attachmentsarrayoptionalArray of legacy attachment objects for additional message formatting
blocksarrayoptionalArray of Block Kit block elements for rich message formatting
reply_broadcastbooleanoptionalUsed in conjunction with thread_ts to broadcast reply to channel
thread_tsstringoptionalTimestamp of parent message to reply in thread
unfurl_linksbooleanoptionalEnable or disable link previews
unfurl_mediabooleanoptionalEnable or disable media link previews
slack_set_channel_purpose#Set the purpose/description for a Slack channel. Requires a valid Slack OAuth2 connection with channels:write.topic (or channels:manage) scope, or groups:write.topic for private channels.2 params

Set the purpose/description for a Slack channel. Requires a valid Slack OAuth2 connection with channels:write.topic (or channels:manage) scope, or groups:write.topic for private channels.

NameTypeRequiredDescription
channelstringrequiredID of the channel to update
purposestringrequiredNew purpose/description string (max 250 characters)
slack_set_channel_topic#Set the topic for a Slack channel. Requires a valid Slack OAuth2 connection with channels:write.topic (or channels:manage) scope, or groups:write.topic for private channels.2 params

Set the topic for a Slack channel. Requires a valid Slack OAuth2 connection with channels:write.topic (or channels:manage) scope, or groups:write.topic for private channels.

NameTypeRequiredDescription
channelstringrequiredID of the channel to update
topicstringrequiredNew topic string (max 250 characters, no formatting or linkification)
slack_set_conversation_purpose#Set the purpose (description) for a Slack conversation. Requires a valid Slack OAuth2 connection with the conversations:write scope.2 params

Set the purpose (description) for a Slack conversation. Requires a valid Slack OAuth2 connection with the conversations:write scope.

NameTypeRequiredDescription
channelstringrequiredConversation to set the purpose of.
purposestringrequiredThe new purpose text for the conversation.
slack_set_conversation_topic#Set the topic for a Slack conversation. Does not support formatting or linkification. Requires a valid Slack OAuth2 connection with the conversations:write scope.2 params

Set the topic for a Slack conversation. Does not support formatting or linkification. Requires a valid Slack OAuth2 connection with the conversations:write scope.

NameTypeRequiredDescription
channelstringrequiredConversation to set the topic of.
topicstringrequiredThe new topic string. Does not support formatting or linkification.
slack_set_dnd_snooze#Turn on Do Not Disturb snooze for the current Slack user for a given number of minutes. Requires a valid Slack OAuth2 connection with the dnd:write scope.1 param

Turn on Do Not Disturb snooze for the current Slack user for a given number of minutes. Requires a valid Slack OAuth2 connection with the dnd:write scope.

NameTypeRequiredDescription
num_minutesintegerrequiredNumber of minutes, from now, to snooze notifications for.
slack_set_user_presence#Manually set the authenticated user's Slack presence to active or away. Requires a valid Slack OAuth2 connection with the users:write scope.1 param

Manually set the authenticated user's Slack presence to active or away. Requires a valid Slack OAuth2 connection with the users:write scope.

NameTypeRequiredDescription
presencestringrequiredThe presence to set: auto (active) or away.
slack_set_user_status#Set the user's custom status with text and emoji. This appears in their profile and can include an expiration time. Requires a valid Slack OAuth2 connection with users.profile:write scope.3 params

Set the user's custom status with text and emoji. This appears in their profile and can include an expiration time. Requires a valid Slack OAuth2 connection with users.profile:write scope.

NameTypeRequiredDescription
status_emojistringoptionalEmoji to display with status (without colons)
status_expirationintegeroptionalUnix timestamp when status should expire
status_textstringoptionalStatus text to display
slack_share_file_public_url#Enable public, external sharing for a file uploaded to Slack, generating a URL anyone can use to view it. Requires a valid Slack OAuth2 connection with the files:write scope.1 param

Enable public, external sharing for a file uploaded to Slack, generating a URL anyone can use to view it. Requires a valid Slack OAuth2 connection with the files:write scope.

NameTypeRequiredDescription
filestringrequiredFile to share publicly.
slack_unarchive_channel#Unarchive a Slack channel. Requires a valid Slack OAuth2 connection with channels:write (user) or groups:write scope. Note: Slack currently only supports unarchiving via a User Token, not a Bot Token - use a User Token Scope for this tool.1 param

Unarchive a Slack channel. Requires a valid Slack OAuth2 connection with channels:write (user) or groups:write scope. Note: Slack currently only supports unarchiving via a User Token, not a Bot Token - use a User Token Scope for this tool.

NameTypeRequiredDescription
channelstringrequiredID of the channel to unarchive
slack_unarchive_conversation#Reverse the archival of a Slack channel, restoring it to active use. Requires a valid Slack OAuth2 connection with the conversations:write scope.1 param

Reverse the archival of a Slack channel, restoring it to active use. Requires a valid Slack OAuth2 connection with the conversations:write scope.

NameTypeRequiredDescription
channelstringrequiredID of the conversation to unarchive.
slack_unfurl_message#Provide custom unfurl (link preview) content for a URL posted in an existing Slack message. Requires a valid Slack OAuth2 connection with the links:write scope.3 params

Provide custom unfurl (link preview) content for a URL posted in an existing Slack message. Requires a valid Slack OAuth2 connection with the links:write scope.

NameTypeRequiredDescription
channelstringrequiredChannel ID of the message.
tsstringrequiredTimestamp of the message to add unfurl behavior to.
unfurlsobjectrequiredJSON object with keys set to URLs featured in the message, each mapped to its unfurl attachment payload.
slack_unpin_message#Remove a pinned message from a Slack channel. Requires a valid Slack OAuth2 connection with pins:write scope.2 params

Remove a pinned message from a Slack channel. Requires a valid Slack OAuth2 connection with pins:write scope.

NameTypeRequiredDescription
channelstringrequiredChannel ID or channel name where the message is pinned
timestampstringrequiredTimestamp of the pinned message to unpin
slack_update_message#Edit an existing Slack message by channel and timestamp. Returns the updated message timestamp. Use update_message to change text that is already posted. Use send_message to post a new line.5 params

Edit an existing Slack message by channel and timestamp. Returns the updated message timestamp. Use update_message to change text that is already posted. Use send_message to post a new line.

NameTypeRequiredDescription
channelstringrequiredChannel ID, channel name (#general), or user ID for DM where the message was sent
tsstringrequiredTimestamp of the message to update
attachmentsarrayoptionalArray of attachment objects for additional message formatting
blocksarrayoptionalArray of Block Kit block elements for rich message formatting
textstringoptionalNew message text content
slack_update_usergroup#Update the name, handle, description, or default channels of an existing Slack User Group. Only the fields you provide are changed. Requires a valid Slack OAuth2 connection with the usergroups:write scope.6 params

Update the name, handle, description, or default channels of an existing Slack User Group. Only the fields you provide are changed. Requires a valid Slack OAuth2 connection with the usergroups:write scope.

NameTypeRequiredDescription
usergroupstringrequiredThe encoded ID of the User Group to update.
channelsstringoptionalComma-separated string of encoded channel IDs the User Group uses as its default channels.
descriptionstringoptionalA new short description of the User Group.
handlestringoptionalA new mention handle. Must be unique among channels, users, and User Groups.
include_countbooleanoptionalInclude the number of users in the User Group in the response.
namestringoptionalA new name for the User Group. Must be unique among User Groups.
slack_update_usergroup_users#Replace the entire member list of a Slack User Group with a new set of users. Requires a valid Slack OAuth2 connection with the usergroups:write scope.3 params

Replace the entire member list of a Slack User Group with a new set of users. Requires a valid Slack OAuth2 connection with the usergroups:write scope.

NameTypeRequiredDescription
usergroupstringrequiredThe encoded ID of the User Group to update.
usersstringrequiredComma-separated string of encoded user IDs that represent the entire new list of users for the User Group.
include_countbooleanoptionalInclude the number of users in the User Group in the response.
slack_update_view#Update an existing modal view in place, identified by its view_id or external_id. Requires a valid Slack OAuth2 connection.4 params

Update an existing modal view in place, identified by its view_id or external_id. Requires a valid Slack OAuth2 connection.

NameTypeRequiredDescription
viewobjectrequiredA view payload object describing the modal's new content.
external_idstringoptionalA unique identifier of the view set by the developer, unique per team. Provide either this or view_id.
hashstringoptionalA string representing view state, used to protect against race conditions between multiple updates.
view_idstringoptionalA unique identifier of the view to update. Provide either this or external_id.