Skip to Content

Slack API

Slack API icon
Arcade Starter

Arcade Wrapper Tools enabling LLMs to interact with low-level Slack API endpoints.

Author:Arcade
Version:1.0.0
Auth:User authorization via the Slack auth provider
73tools
PyPI VersionPython VersionsWheel StatusDownloadsLicense

The Arcade Toolkit for SlackApi provides a comprehensive interface for interacting with Slack's low-level API endpoints. Developers can utilize this toolkit to automate and enhance various administrative and communication tasks within Slack.

Capabilities:

  • Create and manage conversations, channels, and user groups.
  • Handle messaging actions including sending, scheduling, and deleting messages.
  • Manage user presence and profiles.
  • Facilitate collaboration through call management and participant administration.
  • Perform advanced search operations on messages and files.

OAuth:
Provider: Slack
Scopes: admin, admin.invites:read, admin.teams:read, chat:write, users:read, and several others.

Secrets:
No secrets are required for this toolkit.

Available tools(73)

73 of 73
Tool nameDescriptionSecrets
Accept invitations to a Slack Connect channel. Use this tool to accept an invitation to a Slack Connect channel, facilitating seamless collaboration across different Slack workspaces.
Add new participants to a Slack call. This tool registers new participants to an existing call in Slack. It should be used when you want to add people to a call that is already in progress or scheduled. The tool ensures participants are correctly added using the appropriate Slack API scope.
Add an emoji alias in a Slack Enterprise organization. This tool calls the Slack API to add an alias for an emoji within a Slack Enterprise organization. It should be used when a user wants to create a new shortcut or name for an existing emoji. Requires appropriate admin permissions.
Add a reaction to a Slack item. Use this tool to add an emoji reaction to a message or item within Slack. This can be useful for acknowledging messages or express sentiments quickly.
Approve an invitation to a Slack Connect channel. This tool is used to approve invitations sent to a Slack Connect channel, allowing collaboration between different Slack workspaces. It should be called when a user wants to manage and approve channel access invitations.
Verify the correctness of API calling code for Slack. This tool verifies the accuracy and functionality of an API calling code by calling Slack's API testing endpoint. It's useful for developers who want to check if their code successfully interacts with Slack's API.
Check if an email is discoverable on Slack. Use this tool to determine if an email address is associated with a discoverable Slack user. It should be called when needing to verify Slack user discoverability by email.
Create a new public or private Slack conversation. This tool is used to initiate a new conversation channel in Slack, allowing for the creation of either public or private channels. It is useful when setting up new communication threads within a team or project.
Creates a new user group in Slack. This tool allows the creation of a new user group in Slack using the Slack API. It should be called when you need to organize users into groups for easier management or communication. Requires 'usergroups:write' scope.
Provide custom unfurl behavior for user-posted URLs on Slack. This tool should be called to customize how URLs posted by users are displayed in Slack by providing a custom unfurl behavior.
Delete a pending scheduled message from Slack queue. Use this tool to remove a scheduled message from the Slack queue. It requires "chat:write" OAuth scope, allowing you to manage messages as an authenticated user or bot.
Denies an external user invitation to a Slack channel. Use this tool to deny a request that invites an external user to join a Slack channel. It should be called when such an invite needs to be rejected.
Disable an existing Slack User Group. This tool should be called to disable an existing User Group in Slack. It requires appropriate OAuth scopes and sends a POST request to the Slack API. Use this tool when you need to deactivate a User Group to prevent users from being able to reference or use it.
Edit an existing bookmark in a Slack channel. This tool is used to edit an existing bookmark in a specified Slack channel. It requires appropriate permissions and should be called when you need to update the details of a bookmark in any channel you have access to.
Enable a Slack file for public sharing. This tool enables a file for public or external sharing on Slack using the Slack API. It should be called when a user wants to share a file publicly outside their Slack workspace.
Enable a user group in Slack. This tool activates a specified user group in Slack. It should be called when an action is needed to enable a user group so that it can be used within Slack for communication or organizational purposes. This tool is particularly useful for managing Slack user groups efficiently.
Retrieve settings information for a Slack workspace. This tool calls the Slack API to fetch detailed information about settings in a specific workspace. It is useful for administrators who need to manage team settings. The tool requires appropriate OAuth scopes for access.
Find a Slack user using their email address. This tool allows you to search for a Slack user by their email address. It should be called when you need to retrieve user information based on email within Slack.
Retrieve detailed information about a specific call in Slack. Use this tool to access detailed information about a call within Slack by providing the call ID. Useful for obtaining call metadata such as participants, start time, and more.
Fetches information about a Slack conversation. This tool retrieves details about a specific conversation in Slack, such as its name, members, and other relevant data. It should be used when information about a Slack conversation is needed, and requires appropriate read permissions.
Retrieve information about the current Slack team. This tool is used to get information about the current Slack team, including settings and general details. It is called when there's a need to access team information in a Slack workspace.
Retrieve a URL to upload an external file to Slack. This tool is used to obtain a URL for uploading files externally to Slack, requiring the 'files:write' OAuth scope.
Retrieve integration logs for the current Slack team. This tool retrieves the integration logs for the current Slack team, providing insights into the team's integration history and activities. It requires admin OAuth scope to access the logs.
Retrieve details about a remote file from Slack. Use this tool to get information about a remote file that has been added to Slack. It is useful when you need details regarding the file, such as its metadata or status within Slack.
Retrieve details about a Slack bot user. This tool fetches information about a bot user in Slack. It should be called when details about a specific Slack bot are needed, such as its name, ID, or other metadata.
Page 1 of 3(25 of 73)

Selected tools

No tools selected.

Click "Show all tools" to add tools.

Requirements

Select tools to see requirements

#

SlackApi.AcceptSlackInvite

Accept invitations to a Slack Connect channel. Use this tool to accept an invitation to a Slack Connect channel, facilitating seamless collaboration across different Slack workspaces.

Parameters

ParameterTypeReq.Description
channel_namestringRequiredProvide the desired name for the Slack Connect channel. If the channel doesn't exist in your workspace, this name will be assigned to it.
invite_idstringOptionalID of the invitation you want to accept. Must provide either this or channel_id.
slack_channel_id_to_acceptstringOptionalThe ID of the channel you would like to accept the invitation for. Either this or `invite_id` is required.
workspace_idstringOptionalThe ID of the workspace where the channel should be accepted. Required if using an org-level token.
is_channel_privatebooleanOptionalTrue to make the channel private; false to make it public.
use_free_trialbooleanOptionalSet to 'True' to use your workspace's free trial to start using Slack Connect.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'conversations.acceptSharedInvite'.
#

SlackApi.AddCallParticipants

Add new participants to a Slack call. This tool registers new participants to an existing call in Slack. It should be used when you want to add people to a call that is already in progress or scheduled. The tool ensures participants are correctly added using the appropriate Slack API scope.

Parameters

ParameterTypeReq.Description
call_idstringRequiredThe unique identifier for the call, as returned by the `calls.add` method. This ID specifies which call the participants will be added to.
participant_usersarray<string>RequiredList of users to add, specified by `slack_id` or `external_id`. Include optional `display_name` and `avatar_url` for each user.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'calls.participants.add'.
#

SlackApi.AddSlackEmojiAlias

Add an emoji alias in a Slack Enterprise organization. This tool calls the Slack API to add an alias for an emoji within a Slack Enterprise organization. It should be used when a user wants to create a new shortcut or name for an existing emoji. Requires appropriate admin permissions.

Parameters

ParameterTypeReq.Description
emoji_alias_namestringRequiredThe new alias for the specified emoji. Whitespace or colons will be automatically trimmed.
target_emoji_namestringRequiredThe name of the existing emoji to which the new alias is being added. Remove any surrounding whitespace or colons.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'admin.emoji.addAlias'.
#

SlackApi.AddSlackReaction

Add a reaction to a Slack item. Use this tool to add an emoji reaction to a message or item within Slack. This can be useful for acknowledging messages or express sentiments quickly.

Parameters

ParameterTypeReq.Description
slack_channel_idstringRequiredID of the channel where the message is posted. Use to specify the location for adding a reaction.
reaction_emoji_namestringRequiredThe name of the emoji to be used as a reaction. Include skin tone modifiers if applicable (e.g., 'thumbsup::skin-tone-2').
message_timestampstringRequiredThe timestamp of the message to which the reaction will be added. Ensure the format matches the Slack API requirements.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'reactions.add'.
#

SlackApi.ApproveSlackChannelInvitation

Approve an invitation to a Slack Connect channel. This tool is used to approve invitations sent to a Slack Connect channel, allowing collaboration between different Slack workspaces. It should be called when a user wants to manage and approve channel access invitations.

Parameters

ParameterTypeReq.Description
shared_channel_invite_idstringRequiredThe ID of the shared channel invitation you want to approve. It is required to specifically identify which invitation is being approved for the Slack Connect channel.
other_party_team_idstringOptionalThe team or enterprise ID of the other party involved in the Slack Connect invitation you are approving.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'conversations.approveSharedInvite'.
#

SlackApi.CheckApiCallingCode

Verify the correctness of API calling code for Slack. This tool verifies the accuracy and functionality of an API calling code by calling Slack's API testing endpoint. It's useful for developers who want to check if their code successfully interacts with Slack's API.

Parameters

ParameterTypeReq.Description
simulate_error_responsestringOptionalSpecify an error code to simulate an error response for testing API calls. Useful for testing error handling.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'api.test'.
#

SlackApi.CheckSlackDiscoverability

Check if an email is discoverable on Slack. Use this tool to determine if an email address is associated with a discoverable Slack user. It should be called when needing to verify Slack user discoverability by email.

Parameters

ParameterTypeReq.Description
email_to_checkstringRequiredThe email address to verify if it is associated with a discoverable Slack user.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'users.discoverableContacts.lookup'.
#

SlackApi.CreateSlackConversation

Create a new public or private Slack conversation. This tool is used to initiate a new conversation channel in Slack, allowing for the creation of either public or private channels. It is useful when setting up new communication threads within a team or project.

Parameters

ParameterTypeReq.Description
channel_namestringRequiredThe name of the new Slack channel to create. It must contain only lowercase letters, numbers, hyphens, and underscores, and be 80 characters or less.
encoded_team_idstringOptionalThe encoded team ID where the channel will be created. Required when using an organization-level token. Ignored if using a workspace-level token.
create_private_channelbooleanOptionalSet to true to create a private channel instead of a public one.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'conversations.create'.
#

SlackApi.CreateSlackUserGroup

Creates a new user group in Slack. This tool allows the creation of a new user group in Slack using the Slack API. It should be called when you need to organize users into groups for easier management or communication. Requires 'usergroups:write' scope.

Parameters

ParameterTypeReq.Description
user_group_namestringRequiredA unique name for the user group to be created, distinguishing it from other user groups.
default_channel_idsarray<string>OptionalA list of channel IDs to set as default for the User Group. Use comma-separated values.
custom_additional_channelsarray<string>OptionalComma-separated encoded channel IDs where the User Group can add members.
user_group_descriptionstringOptionalA brief text describing the purpose or role of the user group in Slack.
unique_mention_handlestringOptionalA unique mention handle for the user group. It must not duplicate existing handles of channels, users, or other user groups.
team_id_for_user_group_creationstringOptionalEncoded team ID for the user group creation, required if using an org-level token.
include_user_countbooleanOptionalSet to true to include the number of users in each User Group.
enable_display_as_sidebar_sectionbooleanOptionalSet to true to display the user group as a sidebar section for all group members if the group has one or more default channels.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'usergroups.create'.
#

SlackApi.CustomUnfurlSlackUrls

Provide custom unfurl behavior for user-posted URLs on Slack. This tool should be called to customize how URLs posted by users are displayed in Slack by providing a custom unfurl behavior.

Parameters

ParameterTypeReq.Description
channel_idstringRequiredID of the Slack channel where the message is posted. Required with 'ts' for custom unfurl or with 'unfurl_id' and 'source'.
message_timestampstringRequiredTimestamp of the message to which unfurl behavior will be added. Ensure it corresponds to a message in the specified channel containing a fully-qualified URL registered with your Slack app.
unfurl_url_mapstringRequiredA URL-encoded JSON map with URLs as keys and their corresponding unfurl data as values. Each URL should point to a single attachment, like message buttons.
authentication_invitation_messagestringOptionalA simple formatted string sent as an ephemeral message inviting the user to authenticate for full unfurl behavior. Supports Slack's *bold*, _italics_, and linking formatting. If provided, this takes precedence over `authentication_invitation_url`.
custom_authentication_urlstringOptionalA URL to redirect users for app authentication to enable full URL unfurling, requires URL encoding.
user_authentication_blocksarray<string>OptionalA URL-encoded JSON array of structured blocks to send as an ephemeral message for user authentication invitation.
unfurl_link_idstringOptionalThe ID of the link to unfurl. Must be used with 'source'.
link_sourcestringOptionalSpecify the source of the link to unfurl as either 'composer' for links inside the message composer or 'conversations_history' for links posted to a conversation. Must be used with 'unfurl_id', or alternatively with 'channel' and 'ts'.
require_user_authenticationbooleanOptionalSet to true if the user must install your Slack app to trigger unfurls for this domain.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'chat.unfurl'.
#

SlackApi.DeleteScheduledSlackMessage

Delete a pending scheduled message from Slack queue. Use this tool to remove a scheduled message from the Slack queue. It requires "chat:write" OAuth scope, allowing you to manage messages as an authenticated user or bot.

Parameters

ParameterTypeReq.Description
channel_idstringRequiredThe ID of the channel where the scheduled message is set to post. Required to identify the correct message to delete.
scheduled_message_idstringRequiredThe ID of the scheduled message to be deleted. This ID is obtained from the `chat.scheduleMessage` response.
delete_as_authenticated_userbooleanOptionalSet to true to delete the message as the authenticated user with `chat:write:user` scope. Bot users are considered authenticated users. If false, the message will be deleted with `chat:write:bot` scope.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'chat.deleteScheduledMessage'.
#

SlackApi.DenySharedInviteRequest

Denies an external user invitation to a Slack channel. Use this tool to deny a request that invites an external user to join a Slack channel. It should be called when such an invite needs to be rejected.

Parameters

ParameterTypeReq.Description
shared_channel_invite_idstringRequiredThe ID for the shared channel invite request that you intend to deny. This is required for specifying which invite to decline.
deny_invite_messagestringOptionalAn optional message explaining why the invitation was denied. This message will be sent to the requester.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'conversations.requestSharedInvite.deny'.
#

SlackApi.DisableUserGroup

Disable an existing Slack User Group. This tool should be called to disable an existing User Group in Slack. It requires appropriate OAuth scopes and sends a POST request to the Slack API. Use this tool when you need to deactivate a User Group to prevent users from being able to reference or use it.

Parameters

ParameterTypeReq.Description
user_group_idstringRequiredThe encoded ID of the User Group to be disabled.
team_idstringOptionalEncoded target team ID where the user group exists. Required only if using an org-level token; ignored for workspace-level tokens.
include_user_countbooleanOptionalInclude the number of users in the User Group. Set to true to include the count.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'usergroups.disable'.
#

SlackApi.EditSlackBookmark

Edit an existing bookmark in a Slack channel. This tool is used to edit an existing bookmark in a specified Slack channel. It requires appropriate permissions and should be called when you need to update the details of a bookmark in any channel you have access to.

Parameters

ParameterTypeReq.Description
slack_channel_idstringRequiredThe ID of the Slack channel where the bookmark will be updated.
target_bookmark_idstringRequiredThe unique identifier of the bookmark you want to update.
bookmark_titlestringOptionalThe new title for the bookmark to update.
bookmark_linkstringOptionalURL of the bookmark to be edited. Ensure it is a valid format starting with http or https.
emoji_tagstringOptionalThe emoji tag to apply to the bookmark link. It should be a valid emoji code (e.g., :smile:).

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'bookmarks.edit'.
#

SlackApi.EnableSlackFileSharing

Enable a Slack file for public sharing. This tool enables a file for public or external sharing on Slack using the Slack API. It should be called when a user wants to share a file publicly outside their Slack workspace.

Parameters

ParameterTypeReq.Description
file_id_to_sharestringRequiredThe ID of the file on Slack that you want to enable for public sharing.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'files.sharedPublicURL'.
#

SlackApi.EnableSlackUserGroup

Enable a user group in Slack. This tool activates a specified user group in Slack. It should be called when an action is needed to enable a user group so that it can be used within Slack for communication or organizational purposes. This tool is particularly useful for managing Slack user groups efficiently.

Parameters

ParameterTypeReq.Description
user_group_idstringRequiredThe encoded ID of the User Group to be enabled in Slack.
team_idstringOptionalProvide the encoded team ID where the user group is located. Only required if using an org-level token. Ignored with workspace-level tokens.
include_user_countbooleanOptionalSet to true to include the number of users in the User Group.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'usergroups.enable'.
#

SlackApi.FetchWorkspaceSettingsInfo

Retrieve settings information for a Slack workspace. This tool calls the Slack API to fetch detailed information about settings in a specific workspace. It is useful for administrators who need to manage team settings. The tool requires appropriate OAuth scopes for access.

Parameters

ParameterTypeReq.Description
slack_team_idstringRequiredThe unique identifier of the Slack workspace (team) for which to fetch the settings information.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'admin.teams.settings.info'.
#

SlackApi.FindSlackUserByEmail

Find a Slack user using their email address. This tool allows you to search for a Slack user by their email address. It should be called when you need to retrieve user information based on email within Slack.

Parameters

ParameterTypeReq.Description
user_email_addressstringRequiredThe email address of the user in the Slack workspace to search for.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'users.lookupByEmail'.
#

SlackApi.GetCallInformation

Retrieve detailed information about a specific call in Slack. Use this tool to access detailed information about a call within Slack by providing the call ID. Useful for obtaining call metadata such as participants, start time, and more.

Parameters

ParameterTypeReq.Description
call_idstringRequiredThe unique identifier of the call as returned by the `calls.add` method. This ID is necessary to retrieve detailed call information.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'calls.info'.
#

SlackApi.GetConversationInfo

Fetches information about a Slack conversation. This tool retrieves details about a specific conversation in Slack, such as its name, members, and other relevant data. It should be used when information about a Slack conversation is needed, and requires appropriate read permissions.

Parameters

ParameterTypeReq.Description
conversation_idstringRequiredThe unique ID of the Slack conversation to retrieve information for.
include_localebooleanOptionalSet to `true` to receive the locale for this conversation. Defaults to `false`.
include_member_countbooleanOptionalSet to true to include the member count for the specified conversation. Defaults to false.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'conversations.info'.
#

SlackApi.GetCurrentSlackTeamInfo

Retrieve information about the current Slack team. This tool is used to get information about the current Slack team, including settings and general details. It is called when there's a need to access team information in a Slack workspace.

Parameters

ParameterTypeReq.Description
query_by_domainstringOptionalComma-separated domains to query instead of a team, used when the team is not specified. This only works for domains in the same enterprise as the querying team token.
specific_team_idstringOptionalThe ID of the Slack team to retrieve information about. If omitted, information about the current team will be returned.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'team.info'.
#

SlackApi.GetExternalFileUploadUrl

Retrieve a URL to upload an external file to Slack. This tool is used to obtain a URL for uploading files externally to Slack, requiring the 'files:write' OAuth scope.

Parameters

ParameterTypeReq.Description
file_size_in_bytesintegerRequiredSpecify the size of the file to be uploaded, measured in bytes. Ensure this value accurately reflects the file size.
file_namestringRequiredThe name of the file to be uploaded to Slack.
snippet_syntax_typestringOptionalSpecify the syntax highlighting type for the snippet being uploaded, such as 'javascript', 'python', etc.
alt_text_descriptionstringOptionalA description of the image for screen-readers, limited to 1000 characters.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'files.getUploadURLExternal'.
#

SlackApi.GetIntegrationLogs

Retrieve integration logs for the current Slack team. This tool retrieves the integration logs for the current Slack team, providing insights into the team's integration history and activities. It requires admin OAuth scope to access the logs.

Parameters

ParameterTypeReq.Description
filter_by_app_idstringOptionalFilter integration logs to a specific Slack app. If not provided, logs for all apps are retrieved.
filter_by_change_typestringOptionalSpecify the change type to filter logs. Options: 'added', 'removed', 'enabled', 'disabled', 'updated'. Defaults to all logs.
result_countstringOptionalThe number of log entries to retrieve. Specify the maximum number of logs to return in a single request. (default: '100')
result_page_numberstringOptionalThe specific page number of the integration logs to retrieve. Used for pagination. (default: '1')
filter_by_service_idstringOptionalSpecify the service ID to filter integration logs related to a specific service. If not provided, logs for all services will be retrieved.
encoded_team_idstringOptionalThe encoded team ID to get logs from, required if using an org-level token. Ignored if using a workspace-level token.
filter_by_userstringOptionalFilter logs generated by a specific user's actions. Defaults to all logs if not specified.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'team.integrationLogs'.
#

SlackApi.GetRemoteFileInfoSlack

Retrieve details about a remote file from Slack. Use this tool to get information about a remote file that has been added to Slack. It is useful when you need details regarding the file, such as its metadata or status within Slack.

Parameters

ParameterTypeReq.Description
file_external_identifierstringOptionalThe GUID defined by the creator for the remote file to retrieve its information.
file_idstringOptionalThe unique identifier of the file to retrieve information about. Use this to specify the file in Slack.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'files.remote.info'.
#

SlackApi.GetSlackBotInfo

Retrieve details about a Slack bot user. This tool fetches information about a bot user in Slack. It should be called when details about a specific Slack bot are needed, such as its name, ID, or other metadata.

Parameters

ParameterTypeReq.Description
target_bot_idstringOptionalThe unique bot ID for which information is requested. This ID is specific to each workspace the bot is in.
team_id_for_org_token_usestringOptionalEncoded team or enterprise ID where the bot exists. Required if using an organization token. Ignored if using a workspace-level token.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'bots.info'.
#

SlackApi.GetSlackConversationMembers

Retrieve members from a specified Slack conversation. Use this tool to get a list of members in a specific Slack conversation. This can apply to public and private channels, as well as direct and multi-party direct message conversations. Appropriate OAuth scopes are required to access different types of conversations.

Parameters

ParameterTypeReq.Description
conversation_idstringRequiredThe ID of the Slack conversation to retrieve members from. This can be a channel, group, or direct message.
pagination_cursorstringOptionalCursor for pagination, set to the `next_cursor` value from a previous response to continue retrieving members from a conversation.
max_items_to_returnintegerOptionalThe maximum number of conversation members to return. Recommended to specify a value under 1000, with no more than 200 results at a time for optimal pagination. (default: '100')

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'conversations.members'.
#

SlackApi.GetSlackRemoteFilesInfo

Retrieve information about remote files added to Slack. This tool fetches details about remote files stored in Slack. It is useful when you need to access metadata for files that have been added to Slack from external sources.

Parameters

ParameterTypeReq.Description
filter_by_channel_idstringOptionalFilter remote files to only include those appearing in the specified Slack channel, indicated by its channel ID.
pagination_cursorstringOptionalA cursor for paginating through data. Use the `next_cursor` from a prior request to fetch the next set of results. Defaults to the first page if not set.
maximum_items_to_returnintegerOptionalSpecify the maximum number of remote file records to retrieve from Slack.
filter_files_from_timestampstringOptionalFilter files created after this inclusive timestamp. Use a Unix timestamp format. (default: '0')
timestamp_filter_endstringOptionalFilter files created before this timestamp (inclusive) in Unix epoch time format. (default: 'now')

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'files.remote.list'.
#

SlackApi.GetSlackTeamPreferences

Retrieve a list of a workspace's team preferences. This tool fetches team preferences from a Slack workspace. It should be called when there's a need to access or review team settings. Requires appropriate OAuth scope for access.

Parameters

No parameters required.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'team.preferences.list'.
#

SlackApi.GetSlackThreadMessages

Retrieve messages from a Slack conversation thread. This tool fetches a thread of messages posted to a specific conversation in Slack. It should be called when there is a need to review or analyze the message history of a public or private channel, a direct message, or a multi-party direct message. The tool requires appropriate OAuth scopes to access the message history.

Parameters

ParameterTypeReq.Description
conversation_idstringRequiredThe ID of the Slack conversation from which to fetch the message thread.
thread_message_timestampstringRequiredUnique identifier of a parent message or a thread message (timestamp). Fetches the thread or the single message.
pagination_cursorstringOptionalCursor for pagination. Use the `next_cursor` from a previous response to fetch the next page of data.
latest_message_timestampstringOptionalOnly include messages posted before this Unix timestamp in the results. (default: 'now')
maximum_items_to_returnintegerOptionalSpecify the maximum number of messages to fetch. The default and maximum are 15 for certain apps, with possible rate limits. (default: '1000')
start_time_unix_timestampstringOptionalOnly include messages after this Unix timestamp in results. (default: '0')
include_all_message_metadatabooleanOptionalSet to true to return all metadata associated with this message.
include_boundary_timestampsbooleanOptionalInclude messages with 'oldest' or 'latest' timestamps. Ignored unless either timestamp is specified.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'conversations.replies'.
#

SlackApi.GetSlackUserPresence

Retrieve user presence information from Slack. Use this tool to get the presence status of a user on Slack, indicating whether they are active or away.

Parameters

ParameterTypeReq.Description
target_user_idstringOptionalThe Slack user ID for which you want to retrieve presence information. (default: 'authed user')

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'users.getPresence'.
#

SlackApi.GetSlackUserProfile

Retrieve Slack user profile information and custom status. This tool fetches the profile information of a Slack user, including their custom status and email (if authorized). It requires appropriate read scopes (users.profile:read or users:read.email).

Parameters

ParameterTypeReq.Description
target_user_idstringOptionalThe unique identifier of the Slack user whose profile information is to be retrieved.
include_labelsbooleanOptionalInclude labels for each ID in custom profile fields. This option can heavily rate-limit requests and is not recommended. Default is false.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'users.profile.get'.
#

SlackApi.GetTeamBillableUsersInfo

Retrieves billable users info for the current Slack team. Use this tool to obtain information about billable users in your Slack team. It requires administrative privileges with the 'admin' scope.

Parameters

ParameterTypeReq.Description
pagination_cursorstringOptionalCursor for pagination. Use the `next_cursor` from the previous response to fetch the next page of users. (default: 'fetches the first page')
maximum_items_to_returnintegerOptionalSpecifies the maximum number of billable user entries to be retrieved.
specific_user_idstringOptionalThe ID of a specific user to retrieve billable information for. Leave empty to retrieve info for all users.
encoded_team_idstringOptionalEncoded team ID for retrieving billable info, required if using an org token. Ignored with workspace-level tokens.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'team.billableInfo'.
#

SlackApi.GetTeamProfile

Retrieve a team's profile information from Slack. This tool retrieves a team's profile from Slack. It should be called when there's a need to access team information such as members, roles, or other relevant details. The tool uses the Slack API and requires the 'users.profile:read' OAuth scope.

Parameters

ParameterTypeReq.Description
visibility_filterstringOptionalFilter the profile fields based on visibility. Options: 'all', 'visible', 'hidden'. Default is 'all'.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'team.profile.get'.
#

SlackApi.GetUserIdentity

Retrieve a user's identity information from Slack. This tool is used to get detailed information about a user's identity on Slack. It should be called when user identity details are required, such as for authentication purposes or to display user information within an application leveraging Slack's API.

Parameters

No parameters required.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'users.identity'.
#

SlackApi.InviteUserToSlackChannel

Invite users to a Slack channel. This tool sends an invitation to specified users to join a Slack channel. It should be called when you want to add new members to a channel via an invite.

Parameters

ParameterTypeReq.Description
slack_channel_idstringRequiredThe ID of the Slack channel to invite users to. It can be a public or private channel ID.
user_ids_liststringRequiredA list of up to 100 user IDs to invite, separated by commas.
continue_with_valid_usersbooleanOptionalSet to true to invite valid users while ignoring invalid IDs when multiple user IDs are provided. Default is false.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'conversations.invite'.
#

SlackApi.JoinSlackConversation

Join an existing conversation in Slack. This tool is used to join a specified conversation within Slack. It requires appropriate user permissions and should be called when there's a need to participate in an existing Slack channel.

Parameters

ParameterTypeReq.Description
conversation_idstringRequiredThe ID of the conversation or channel you want to join in Slack.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'conversations.join'.
#

SlackApi.ListAccessibleSlackConversations

Retrieve a list of conversations the user can access on Slack. This tool calls the Slack API to list all conversations (public channels, private channels, direct messages) that a user has access to. It can be used to view information about different types of conversations including public channels, private channels, and direct or group messages.

Parameters

ParameterTypeReq.Description
pagination_cursorstringOptionalA cursor for pagination to continue listing conversations from a specific point. Use the 'next_cursor' from a previous response. Default is the first page.
maximum_items_to_returnintegerOptionalThe maximum number of conversations to return in the response. Must be an integer with a maximum value of 999. It is recommended to request no more than 200 results at a time for optimal performance. (default: '100')
slack_team_idstringOptionalThe encoded ID of the Slack team to list conversations for. Required if using an organization-level token. Ignored if a workspace-level token is used.
channel_typesstringOptionalComma-separated list of channel types to filter conversations. Options: public_channel, private_channel, mpim, im. (default: 'public_channel')
specific_user_idstringOptionalFilter conversations by a specific user ID's membership. Only includes conversations shared with the calling user.
exclude_archived_channelsbooleanOptionalSet to true to exclude archived channels from the retrieved list of Slack conversations. (default: false)

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'users.conversations'.
#

SlackApi.ListApprovedWorkspaceInviteRequests

Retrieve all approved workspace invite requests from Slack. This tool retrieves a list of all approved invite requests for a Slack workspace. It should be called when there is a need to review or manage approved invitations. The response will include details of each invitation request.

Parameters

ParameterTypeReq.Description
workspace_idstringOptionalID for the Slack workspace where the invite requests were made. Required if the Enterprise org has more than one workspace.
pagination_cursorstringOptionalValue of the `next_cursor` from the previous API response for paginating results.
result_limitintegerOptionalSpecify the number of results to return, between 1 and 1000 inclusive. (default: '100')

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'admin.inviteRequests.approved.list'.
#

SlackApi.ListChannelsForUsergroup

Retrieve channels linked to an org-level user group in Slack. Fetches a list of channels associated with a specified organizational IDP group in Slack. This tool is useful for admins managing user groups and their related channels.

Parameters

ParameterTypeReq.Description
usergroup_idstringRequiredThe ID of the IDP group to list channels for. It identifies which organizational group to retrieve the default channels from.
workspace_idstringOptionalThe unique identifier for the Slack workspace.
include_member_count_in_channelsbooleanOptionalSet to true to include the count of members for each channel, otherwise set to false.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'admin.usergroups.listChannels'.
#

SlackApi.ListCustomEmojiForTeam

Retrieve a list of custom emojis for a specific team. Use this tool to get a list of custom emojis available for a team on Slack. It should be called when you need to display or manage team-specific emojis.

Parameters

ParameterTypeReq.Description
include_emoji_categoriesbooleanOptionalSet to true to include categories for Unicode emojis in the response.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'emoji.list'.
#

SlackApi.ListDeniedSlackInviteRequests

Retrieve denied Slack workspace invite requests. This tool retrieves a list of all denied workspace invite requests on Slack. It should be called when there is a need to review or analyze denied invitations to a Slack workspace.

Parameters

ParameterTypeReq.Description
workspace_team_idstringOptionalID of the workspace where the invite requests were made. Required if the Enterprise org has multiple workspaces.
pagination_cursorstringOptionalThe cursor value from the previous API response to fetch the next set of results. Use this for pagination.
result_limitintegerOptionalSpecify the number of denied invite request results to return, between 1 and 1000 inclusive. (default: '100')

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'admin.inviteRequests.denied.list'.
#

SlackApi.ListPendingWorkspaceInvites

Retrieve all pending workspace invite requests from Slack. Use this tool to list all pending workspace invite requests in a Slack workspace. This can be useful for administrators managing team invitations. Requires 'admin.invites:read' OAuth scope.

Parameters

ParameterTypeReq.Description
workspace_idstringOptionalThe ID of the workspace to list pending invite requests from. Required for multi-workspace enterprises.
pagination_cursorstringOptionalThe cursor value for fetching the next set of invite requests. Use the `next_cursor` from the previous response if available.
result_limitintegerOptionalThe number of invite requests to return per call, must be between 1 and 1000. (default: '100')

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'admin.inviteRequests.list'.
#

SlackApi.ListPinnedItems

Retrieve items pinned to a Slack channel. This tool calls the Slack API to list all items pinned to a specific channel. It should be used when there is a need to display or manage pinned items in a Slack channel.

Parameters

ParameterTypeReq.Description
channel_idstringRequiredThe ID of the Slack channel to retrieve pinned items from. This is required to specify which channel's pinned items will be listed.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'pins.list'.
#

SlackApi.ListScheduledMessages

Retrieve scheduled messages from Slack. Use this tool to obtain a list of messages that are scheduled to be sent in a Slack workspace. It is useful for managing future communications and staying informed of pending messages.

Parameters

ParameterTypeReq.Description
channel_idstringOptionalThe ID of the Slack channel from which to retrieve scheduled messages.
pagination_cursorstringOptionalCursor value for pagination to specify the starting point of the list from a previous call.
latest_timestampstringOptionalA Unix timestamp marking the latest point in the time range for fetching scheduled messages. Ensure it is greater than the `oldest` timestamp if both are set.
max_number_of_entriesintegerOptionalSpecify the maximum number of scheduled messages to return from Slack.
oldest_timestampstringOptionalA Unix timestamp representing the start of the time range for scheduled messages. It must be less than the `latest_timestamp` if both are specified.
team_idstringOptionalEncoded team ID to specify which team's channels to list. Required if using an org-level token; ignore for workspace-level tokens.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'chat.scheduledMessages.list'.
#

SlackApi.ListSharedChannelInvites

Retrieve unapproved shared channel invites from Slack. This tool retrieves a list of shared channel invites that have been generated or received but are not yet approved by all parties on Slack. It should be called when you need to manage or view pending shared channel invites.

Parameters

ParameterTypeReq.Description
workspace_team_idstringOptionalThe encoded team ID for the workspace to retrieve invites from. Required when using an organization token.
maximum_invites_to_returnintegerOptionalSpecify the maximum number of unapproved shared channel invites to retrieve. (default: '100')
pagination_cursorstringOptionalThe cursor for paginating through results, obtained from a previous call's next_cursor.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'conversations.listConnectInvites'.
#

SlackApi.ListSlackChannels

Retrieve a list of all channels in a Slack team. This tool retrieves a list of all public and private channels that the user has access to within a Slack team. It can also view direct and multiparty direct messages, depending on the user's permissions.

Parameters

ParameterTypeReq.Description
pagination_cursorstringOptionalThe cursor used to paginate through data collections. Use the `next_cursor` from a previous response to continue; omit for the first page.
maximum_number_of_channelsintegerOptionalSpecify the maximum number of channels to return. Must be an integer under 1000. Note that fewer channels than requested may be returned. (default: '100')
team_id_for_org_appstringOptionalEncoded team ID to list channels. Required for org-level tokens; ignored for workspace-level tokens.
channel_typesstringOptionalComma-separated list of channel types to include, e.g., 'public_channel', 'private_channel', 'mpim', 'im'. (default: 'public_channel')
exclude_archived_channelsbooleanOptionalSet to true to exclude archived channels from the list of Slack channels. Default is false.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'conversations.list'.
#

SlackApi.ListSlackEnterpriseEmojis

Retrieve emojis for a Slack Enterprise organization. This tool uses the Slack Admin API to fetch a list of emojis available in a Slack Enterprise organization. It requires the appropriate OAuth scope to access team information.

Parameters

ParameterTypeReq.Description
pagination_cursorstringOptionalCursor for fetching the next page of emojis. Use 'next_cursor' from the previous response.
max_items_to_returnintegerOptionalThe maximum number of emojis to return, between 1 and 1000 inclusive. (default: '100')

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'admin.emoji.list'.
#

SlackApi.ListSlackTeamUsers

Fetches a list of all users in a Slack team. This tool retrieves a comprehensive list of all users within a specified Slack team. It includes user details and can access email information if the appropriate OAuth scopes are provided.

Parameters

ParameterTypeReq.Description
pagination_cursorstringOptionalCursor for paginating through data. Use the `next_cursor` from a previous response to continue.
maximum_items_to_returnintegerOptionalMaximum number of users to return (recommended max is 200 for pagination).
slack_team_idstringOptionalThe encoded team ID to list users from, necessary if an organization-level token is used. Ignored if a workspace-level token is provided.
include_user_localebooleanOptionalSet to true to receive locale information for each user. Default is false.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'users.list'.
#

SlackApi.ListSlackUserGroups

Retrieve all user groups for a Slack team. This tool retrieves a list of all user groups available in a Slack team. It should be called when there's a need to access or display user group information within a Slack workspace.

Parameters

ParameterTypeReq.Description
team_id_for_org_tokenstringOptionalEncoded team ID required when using an org-level token. Ignored if using a workspace-level token.
include_user_countbooleanOptionalSet to true to include the number of users in each User Group.
include_disabled_groupsbooleanOptionalSet to true to include disabled user groups in the results.
include_users_in_groupbooleanOptionalInclude the list of users for each User Group in the response.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'usergroups.list'.
#

SlackApi.ListSlackWorkspaceOwners

Retrieve all owners in a Slack workspace. This tool retrieves a list of all the owners in a specified Slack workspace, using the admin.teams.owners.list API endpoint. It is useful for managing or viewing the user roles within a Slack workspace.

Parameters

ParameterTypeReq.Description
workspace_idstringRequiredThe unique identifier of the Slack workspace for which to list the owners.
maximum_items_to_returnintegerOptionalSpecifies the maximum number of owners to return, ranging from 1 to 1000. (default: '100')
pagination_cursorstringOptionalThe cursor from the previous response used to fetch the next page of owners. Leave empty for the first page.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'admin.teams.owners.list'.
#

SlackApi.ListTeamsInEnterprise

Retrieve all teams in an Enterprise organization on Slack. This tool retrieves a list of all teams within an Enterprise organization on Slack, utilizing the admin.teams.list endpoint. It should be called when information about the teams in an Enterprise organization is needed.

Parameters

ParameterTypeReq.Description
maximum_items_to_returnintegerOptionalSpecify the maximum number of teams to retrieve. Must be a positive integer, up to 1000. (default: '100')
pagination_cursorstringOptionalUse this to retrieve the next page of results by setting it to the `next_cursor` from the previous response.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'admin.teams.list'.
#

SlackApi.ListWorkspaceUsers

Retrieve a list of users from a Slack workspace. Use this tool to get a list of users in a specific Slack workspace. It's helpful for administrators who need to manage or view user information within the workspace.

Parameters

ParameterTypeReq.Description
workspace_team_idstringOptionalThe ID of the Slack workspace (e.g., T1234) to filter users from. Only users from this workspace will be listed.
pagination_cursorstringOptionalUse this to navigate through paginated results by setting it to the `next_cursor` from a previous response.
user_retrieval_limitintegerOptionalMaximum number of users to retrieve per page from the Slack workspace. (default: '100')
return_only_active_usersbooleanOptionalReturn only active users if true; return only deactivated users if false. Default is true.
include_deactivated_user_workspacesbooleanOptionalInclude workspaces for users even if they are deactivated. Only applies with org token and no team_id. Default is false.
return_only_guest_usersbooleanOptionalIf true, returns only guests and their expiration dates that belong to the specified team_id.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'admin.users.list'.
#

SlackApi.OpenOrResumeSlackConversation

Open or resume a direct or multi-person message in Slack. This tool calls the Slack API to open a new conversation or resume an existing direct message or multi-person direct message. It should be used when there's a need to start or continue a conversation within Slack.

Parameters

ParameterTypeReq.Description
conversation_channel_idstringOptionalThe ID of an existing direct or multi-person message channel to resume. Alternatively, provide the `users` field to start a new conversation.
target_user_idsstringOptionalA comma-separated list of user IDs to open or resume a conversation. Provide 1 to 8 IDs. Supplying 1 ID opens a 1:1 DM, while more than 1 ID opens a multi-person DM. Do not include the caller's ID.
return_full_im_channel_definitionbooleanOptionalSet to true to receive the entire IM channel definition; false returns only the conversation ID.
prevent_creationbooleanOptionalIf true, does not create a new conversation and instead checks for an existing DM or MPDM.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'conversations.open'.
#

SlackApi.PinItemToSlackChannel

Pin an item to a Slack channel. Use this tool to pin an item to a specific channel in Slack, enhancing visibility for important content.

Parameters

ParameterTypeReq.Description
channel_idstringRequiredThe ID of the Slack channel where the message will be pinned. A `timestamp` must also be provided.
message_timestampstringOptionalThe timestamp (`ts`) of the message to pin in the Slack channel. Ensure the channel is also specified.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'pins.add'.
#

SlackApi.RegisterSlackCall

Registers a new call on Slack. This tool registers a new call on Slack using the Slack API. It should be called when you want to create and log a new call event in a Slack workspace. The tool requires appropriate permissions (calls:write scope).

Parameters

ParameterTypeReq.Description
unique_call_idstringRequiredA unique ID for the Call, provided by the 3rd-party Call provider. Ensure it is unique across all calls from your service.
call_join_urlstringRequiredThe URL required for a client to join the Call on Slack.
optional_human_readable_display_idstringOptionalAn optional, human-readable ID for the call, supplied by the third-party provider. This ID will be displayed in the Call object if given.
desktop_app_join_urlstringOptionalThe URL used to directly launch the 3rd-party Call from Slack clients, if provided.
call_start_timestampintegerOptionalUnix timestamp indicating when the call is scheduled to start.
call_titlestringOptionalThe name of the Call to be registered on Slack. This title will be used to identify the Call within Slack.
call_creator_user_idstringOptionalThe valid Slack user ID of the creator of this call. Optional if using a user token, which defaults to the authed user.
participants_infoarray<string>OptionalA list of participants to register for the call, including 'slack_id', 'external_id', 'display_name', and 'avatar_url' for each user.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'calls.add'.
#

SlackApi.RemoveCallParticipants

Remove participants from a Slack call. This tool removes specified participants from a call in Slack by registering their removal. Useful when a user needs to manage call attendees.

Parameters

ParameterTypeReq.Description
call_idstringRequiredThe unique identifier for the call from which participants are to be removed. This `id` is obtained from the `calls.add` method.
users_to_removearray<string>RequiredA list of user IDs to remove as participants from the call. Refer to Slack's documentation for specifying user IDs.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'calls.participants.remove'.
#

SlackApi.RemoveReactionFromItem

Remove a reaction from a Slack item. Use this tool to remove a reaction (emoji) from a message, file, or file comment in Slack. This tool is intended for situations where a reaction needs to be revoked. It requires the 'reactions:write' scope, which allows the app to manage reactions on behalf of the user.

Parameters

ParameterTypeReq.Description
reaction_emoji_namestringRequiredThe name of the emoji reaction to be removed, such as 'smile' or 'thumbsup'.
target_file_idstringOptionalThe identifier of the file from which to remove the reaction. Specify either this, `target_file_comment_id`, or both `target_channel_id` and `target_message_timestamp`.
file_comment_idstringOptionalThe ID of the file comment from which you want to remove the reaction. Provide this if the reaction is on a file comment.
message_channel_idstringOptionalChannel ID where the message to remove the reaction from was posted. Required if removing a reaction from a message. Use in combination with 'message_timestamp'.
message_timestampstringOptionalThe exact timestamp of the message from which to remove the reaction. Specify when targeting a message.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'reactions.remove'.
#

SlackApi.RemoveSlackBookmark

Remove a bookmark from a Slack channel. This tool removes a specified bookmark from a Slack channel. It should be called when a user wants to delete a bookmark that is no longer needed or relevant. Requires appropriate permissions to execute.

Parameters

ParameterTypeReq.Description
slack_channel_id_to_remove_bookmarkstringRequiredThe ID of the Slack channel from which the bookmark should be removed. This ID specifies the target channel and is required to locate and delete the bookmark.
bookmark_id_to_removestringRequiredThe ID of the bookmark to be removed from a Slack channel. Ensure it is specified correctly to delete the correct bookmark.
quip_section_idstringOptionalThe ID of the Quip section to unbookmark. This is required to specify which section's bookmark should be removed.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'bookmarks.remove'.
#

SlackApi.RenameSlackEmoji

Rename an emoji in a Slack Enterprise organization. Use this tool to rename a custom emoji within a Slack Enterprise organization. It requires appropriate OAuth scope for team operations.

Parameters

ParameterTypeReq.Description
current_emoji_namestringRequiredThe current name of the emoji to be renamed. Colons (:myemoji:) around the value are optional.
new_emoji_namestringRequiredThe new name to assign to the emoji in the Slack Enterprise organization.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'admin.emoji.rename'.
#

SlackApi.RevokeSlackToken

Revoke a Slack authentication token. This tool is used to revoke a Slack authentication token via a GET request to the Slack API endpoint. It should be called when it is necessary to invalidate a token to ensure it is no longer usable.

Parameters

ParameterTypeReq.Description
trigger_testing_modebooleanOptionalSet to true to trigger testing mode where the token will not be revoked. Useful for testing.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'auth.revoke'.
#

SlackApi.ScheduleSlackMessage

Schedule a message to be sent later in Slack. This tool schedules a message to be sent to a specific Slack channel at a designated future time. It utilizes the Slack API endpoint 'chat.scheduleMessage' and requires the 'chat:write' OAuth scope.

Parameters

ParameterTypeReq.Description
slack_channel_id_or_namestringRequiredSpecify the target Slack channel, private group, or DM. Use an encoded ID or the channel name. Retrieve channel ID via `conversations.list`.
schedule_time_unix_timestampintegerRequiredUnix timestamp for when the message should be posted to Slack. Must be within 120 days and not exceed 30 messages per 5-minute window.
attachments_jsonstringOptionalA JSON array of structured attachments as a URL-encoded string for the Slack message.
structured_blocks_jsonstringOptionalA URL-encoded string of a JSON-based array containing structured blocks for message formatting.
message_markdownstringOptionalMessage text in markdown format. Avoid using with 'blocks' or 'text'. Maximum 12,000 characters.
message_parsing_modestringOptionalSpecifies how the message content should be parsed and interpreted when sending to Slack. For more details, refer to chat.postMessage documentation.
message_textstringOptionalThe main body of the Slack message or a fallback text when using blocks. Can be plain text or formatted with mrkdwn.
parent_message_timestampstringOptionalTimestamp of the parent message to which this message is a reply. Use the original message's timestamp, not a reply's timestamp.
metadata_jsonstringOptionalJSON object containing 'event_type' and 'event_payload' fields. Must be URL-encoded. Note: using this will prevent scheduled messages from posting.
enable_group_linkingbooleanOptionalSet to true to link user groups in the message. Linking individual users is not supported; use mention syntax instead.
make_reply_visible_to_everyonebooleanOptionalSet to true to make the reply visible to everyone in the channel or conversation. Use with `thread_ts`. Defaults to false.
enable_link_unfurlingbooleanOptionalPass true to enable unfurling of primarily text-based content.
disable_unfurling_of_media_contentbooleanOptionalSet to true to disable unfurling of media content. Defaults to false.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'chat.scheduleMessage'.
#

SlackApi.SearchFilesInSlack

Search for files in Slack using a query. This tool searches for files in Slack that match a given query. It is useful when a user needs to locate specific files shared in Slack channels or direct messages. The tool returns a list of files that meet the search criteria.

Parameters

ParameterTypeReq.Description
search_querystringRequiredThe text string to search for in Slack files. Use keywords or phrases to narrow down results.
items_per_pageintegerOptionalThe number of file results to return per page. Maximum allowed value is 100. (default: '20')
results_page_numberintegerOptionalThe specific page number of results to retrieve, with a maximum value of 100. (default: '1')
sort_files_bystringOptionalSpecify how to sort the search results: either by 'score' or 'timestamp'. (default: 'score')
sort_directionstringOptionalChange the sort direction for search results to ascending ('asc') or descending ('desc'). (default: 'desc')
encoded_team_idstringOptionalEncoded team ID to specify the search domain when using an org-level token. Ignored with a workspace-level token.
enable_query_highlightbooleanOptionalSet to true to enable highlight markers for matching query terms in the search results.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'search.files'.
#

SlackApi.SearchSlackMessages

Search Slack messages based on a query. This tool searches for messages in a Slack workspace that match a specified query. It should be called when users want to find specific messages or discussions within their Slack channels.

Parameters

ParameterTypeReq.Description
search_querystringRequiredThe text to search for in Slack messages. Use keywords or phrases to narrow down results.
results_per_pageintegerOptionalThe number of search results to return per page, with a maximum limit of 100. (default: '20')
page_numberintegerOptionalThe page number of search results to retrieve, maximum value of 100. (default: '1')
pagination_cursorstringOptionalUse '*' for the first call to start pagination or provide the 'next_cursor' value from previous results to continue.
sort_results_bystringOptionalSpecify the criterion for sorting the search results, either by 'score' for relevance or 'timestamp' for chronological order. (default: 'score')
sort_directionstringOptionalSpecify the order for sorting results: use 'asc' for ascending or 'desc' for descending. (default: 'desc')
team_idstringOptionalThe encoded team ID to search within. Required only if an organization-level token is used. Ignored for workspace-level tokens.
enable_query_highlightingbooleanOptionalSet to true to enable query highlight markers, marking matching terms in the results.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'search.messages'.
#

SlackApi.SendEphemeralMessageSlack

Send an ephemeral message to a user in a Slack channel. This tool sends an ephemeral message to a user within a specified Slack channel. It's useful for sending temporary messages or notifications that only the specified user can see. Requires the 'chat:write' scope.

Parameters

ParameterTypeReq.Description
target_channelstringRequiredThe channel, private group, or IM channel where the ephemeral message will be sent. Accepts an encoded ID or the channel's name.
recipient_user_idstringRequiredThe ID of the user who will receive the ephemeral message. Must be in the specified channel.
structured_attachmentsarray<string>OptionalA JSON-encoded array of structured attachments for the message. Presented as a URL-encoded string.
structured_blocksarray<string>OptionalA URL-encoded JSON array of structured Slack block elements. Use for rich message formatting.
message_icon_emojistringOptionalEmoji to display as the message icon, overriding icon_url. Specify using the emoji name like :smile:.
message_icon_urlstringOptionalURL for the image to be used as the icon for the message. It overrides the icon_emoji if provided.
message_markdown_textstringOptionalThe main text formatted in markdown to be sent as an ephemeral message. Do not use with `blocks` or `text`. Character limit: 12,000.
message_parse_modestringOptionalSpecifies how the message text is interpreted. Options are: 'none', 'full', 'mrkdwn', or 'false'. Defaults to 'none'. (default: 'none')
ephemeral_message_textstringOptionalThe main text of the ephemeral message for Slack. It acts as a fallback when using blocks; can be formatted as plain text or markdown. Limit to a few thousand bytes.
parent_message_timestampstringOptionalThe timestamp of the parent message to post this ephemeral message in its thread. Ensure there is already an active thread.
bot_usernamestringOptionalThe username for the bot sending the ephemeral message. This sets the display name in the Slack message.
link_names_auto_linkbooleanOptionalSet to true to automatically find and link channel names and usernames.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'chat.postEphemeral'.
#

SlackApi.SendSlackMessage

Sends a message to a Slack channel. This tool allows you to send messages to a Slack channel or direct message on behalf of an authenticated user. It is useful for automating communications within Slack workspaces.

Parameters

ParameterTypeReq.Description
target_channel_id_or_namestringRequiredThe encoded ID or name of the channel, private group, or IM where the message will be sent. Retrieve using Slack's conversations.list API.
message_attachmentsarray<string>OptionalA JSON array of structured attachment objects for the message, provided as a URL-encoded string. Example: `[{"pretext": "pre-hello", "text": "text-world"}]`.
structured_blocksarray<string>OptionalA JSON-based array of structured blocks for constructing messages using Block Kit. Provide as a URL-encoded string. Include fallback text if necessary.
emoji_icon_for_messagestringOptionalEmoji to display as the icon for the Slack message. Overrides any image URL icon.
message_icon_urlstringOptionalURL to an image to use as the icon for the message. Overrides any specified icon emoji.
message_markdownstringOptionalThe message text formatted using markdown, up to 12,000 characters. Cannot be used with `blocks` or `text`.
message_metadatastringOptionalA JSON object with 'event_type' and 'event_payload' fields, URL-encoded, providing additional metadata for the message.
parse_modestringOptionalSpecifies how the message content should be treated. Options are 'none' to remove hyperlinks or 'full' to ignore markdown formatting.
message_textstringOptionalThe main text of the message. Acts as the primary message or a fallback for notifications when using blocks. Supports plain text or markdown.
thread_timestampstringOptionalTimestamp of the parent message to which this message will be a reply. Use the parent's `ts` value, not a reply's.
bot_usernamestringOptionalThe display name to use for the bot when sending the message to Slack.
post_as_authenticated_userbooleanOptionalSet to true to post the message as the authenticated user instead of as a bot. Only applicable for classic apps.
link_user_groupsbooleanOptionalEnable linking of user groups in the message. Individual user linking is not supported.
enable_slack_markup_parsingbooleanOptionalSet to true to enable Slack markup parsing in the message. Default is enabled.
broadcast_reply_to_channelbooleanOptionalSet to true to make the reply visible to everyone in the channel when responding to a thread. Use with 'thread_ts'. Default is false.
enable_unfurling_text_contentbooleanOptionalSet to true to enable unfurling of primarily text-based content in Slack messages.
disable_media_unfurlingbooleanOptionalSet to false to enable media unfurling and true to disable it. (default: 'false')

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'chat.postMessage'.
#

SlackApi.SetSlackChannelReadCursor

Update the read cursor in a Slack channel. Use this tool to mark a specific point in a Slack channel as read. This is useful for keeping track of the latest read messages in channels, groups, or direct messages. Requires appropriate Slack OAuth scopes.

Parameters

ParameterTypeReq.Description
channel_idstringRequiredThe ID of the Slack channel or conversation where you want to set the read cursor. This should be a valid Slack channel ID.
timestamp_of_message_to_mark_as_readstringRequiredThe unique identifier (timestamp) of the message you want to mark as most recently seen in the conversation.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'conversations.mark'.
#

SlackApi.SetSlackProfilePhoto

Set the user's profile photo on Slack. Use this tool to update a user's profile photo on Slack. This requires the 'users.profile:write' OAuth scope, allowing changes to profile information including the profile photo.

Parameters

ParameterTypeReq.Description
crop_box_sizestringOptionalThe size of the square crop box for the profile photo in pixels. Specify the width and height, which are the same value for a square.
crop_box_x_coordinatestringOptionalX coordinate of the top-left corner of the crop box for the profile photo.
crop_y_coordinatestringOptionalY coordinate of the top-left corner of the crop box for the user's profile photo on Slack. This determines where the cropping of the image will start on the vertical axis.
profile_photo_imagestringOptionalThe image file to set as the Slack profile photo. Provide image data directly with the correct content type (e.g., image/jpeg, image/png).

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'users.setPhoto'.
#

SlackApi.SetSlackWorkspaceName

Update the name of a Slack workspace. Use this tool to update the name of a specified Slack workspace. This tool should be called when there's a need to change the workspace name. It requires appropriate permissions.

Parameters

ParameterTypeReq.Description
workspace_idstringRequiredUnique identifier for the Slack workspace whose name you want to update.
new_workspace_namestringRequiredThe desired new name for the Slack workspace. This replaces the existing name.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'admin.teams.settings.setName'.
#

SlackApi.SetWorkspaceDescription

Update the description of a Slack workspace. This tool updates the description of a specified workspace in Slack. It requires admin permissions with the 'admin.teams:write' scope. It should be called when there is a need to change or set a new description for a Slack team.

Parameters

ParameterTypeReq.Description
workspace_idstringRequiredThe unique identifier for the Slack workspace where the description will be updated.
workspace_descriptionstringRequiredThe new description to set for the Slack workspace. Provide a clear and concise text.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'admin.teams.settings.setDescription'.
#

SlackApi.ShareRemoteFileInChannel

Share a remote file into a Slack channel. This tool shares a specified remote file into a selected Slack channel. It utilizes Slack's API to facilitate file sharing across channels.

Parameters

ParameterTypeReq.Description
target_channel_idsstringRequiredComma-separated list of Slack channel IDs where the remote file will be shared. Ensure IDs are valid and the user has permission to share files in these channels.
file_external_identifierstringOptionalThe globally unique identifier (GUID) for the file set by the app when registering with Slack. Required if 'file' is not provided.
file_idstringOptionalThe ID of a file registered with Slack to be shared. Required if `external_id` is not provided.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'files.remote.share'.
#

SlackApi.UpdateSlackUserGroup

Update an existing User Group in Slack. This tool updates an existing User Group in Slack. It should be called when you need to modify the details of a user group, such as its name or permissions. Ensure the appropriate permissions are granted with the 'usergroups:write' scope.

Parameters

ParameterTypeReq.Description
user_group_idstringRequiredThe encoded ID of the User Group to update in Slack.
default_channel_idsarray<string>OptionalA comma-separated list of channel IDs where the User Group is set as default. Use encoded channel IDs.
additional_channel_idsarray<string>OptionalComma separated encoded channel IDs for custom additions to user group members.
user_group_descriptionstringOptionalA short description of the User Group to update in Slack. This should clearly define the group's purpose or role.
user_group_handlestringOptionalUnique mention handle for the User Group, distinct from all channels, users, and other User Groups.
user_group_namestringOptionalA unique name for the User Group to update. Ensure it does not duplicate any existing User Group names.
team_id_for_org_tokenstringOptionalEncoded team ID where the user group exists, required for org-level tokens. Ignored if using a workspace-level token.
include_user_countbooleanOptionalSet to true to include the number of users in the User Group.
enable_sidebar_sectionbooleanOptionalSet to true to configure the user group to appear as a sidebar section for all group members. Only relevant if the group has 1 or more default channels.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'usergroups.update'.
#

SlackApi.UpdateSlackUsergroupUsers

Update the list of users in a Slack user group. This tool updates the list of users for a specified Slack user group. It should be called when changes to the membership of a Slack user group are required.

Parameters

ParameterTypeReq.Description
user_group_idstringRequiredThe encoded ID of the Slack user group to update.
user_ids_listarray<string>RequiredA comma separated string of encoded Slack user IDs representing the complete user list for the group. This replaces all current members.
team_id_for_org_tokenstringOptionalEncoded team ID where the user group exists. Required if using an organization token; ignored with workspace-level token.
update_additional_channelsarray<string>OptionalEncoded channel IDs to add user group members to, separated by commas. These represent additional channels for custom user group member additions.
include_user_countbooleanOptionalSet to true to include the number of users in the user group in the response.
is_shared_sectionbooleanOptionalIndicates if the API call involves a shared section. Set to true if it does, otherwise false.

Requirements

No secrets required

Output

Type:json— Response from the API endpoint 'usergroups.users.update'.
Last updated on