Slack API
Arcade Wrapper Tools enabling LLMs to interact with low-level Slack API endpoints.
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)
| Tool name | Description | Secrets | |
|---|---|---|---|
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. |
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
channel_name | string | Required | Provide 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_id | string | Optional | ID of the invitation you want to accept. Must provide either this or channel_id. |
slack_channel_id_to_accept | string | Optional | The ID of the channel you would like to accept the invitation for. Either this or `invite_id` is required. |
workspace_id | string | Optional | The ID of the workspace where the channel should be accepted. Required if using an org-level token. |
is_channel_private | boolean | Optional | True to make the channel private; false to make it public. |
use_free_trial | boolean | Optional | Set to 'True' to use your workspace's free trial to start using Slack Connect. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
call_id | string | Required | The unique identifier for the call, as returned by the `calls.add` method. This ID specifies which call the participants will be added to. |
participant_users | array<string> | Required | List of users to add, specified by `slack_id` or `external_id`. Include optional `display_name` and `avatar_url` for each user. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
emoji_alias_name | string | Required | The new alias for the specified emoji. Whitespace or colons will be automatically trimmed. |
target_emoji_name | string | Required | The name of the existing emoji to which the new alias is being added. Remove any surrounding whitespace or colons. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
slack_channel_id | string | Required | ID of the channel where the message is posted. Use to specify the location for adding a reaction. |
reaction_emoji_name | string | Required | The name of the emoji to be used as a reaction. Include skin tone modifiers if applicable (e.g., 'thumbsup::skin-tone-2'). |
message_timestamp | string | Required | The timestamp of the message to which the reaction will be added. Ensure the format matches the Slack API requirements. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
shared_channel_invite_id | string | Required | The 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_id | string | Optional | The team or enterprise ID of the other party involved in the Slack Connect invitation you are approving. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
simulate_error_response | string | Optional | Specify an error code to simulate an error response for testing API calls. Useful for testing error handling. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
email_to_check | string | Required | The email address to verify if it is associated with a discoverable Slack user. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
channel_name | string | Required | The 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_id | string | Optional | The 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_channel | boolean | Optional | Set to true to create a private channel instead of a public one. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
user_group_name | string | Required | A unique name for the user group to be created, distinguishing it from other user groups. |
default_channel_ids | array<string> | Optional | A list of channel IDs to set as default for the User Group. Use comma-separated values. |
custom_additional_channels | array<string> | Optional | Comma-separated encoded channel IDs where the User Group can add members. |
user_group_description | string | Optional | A brief text describing the purpose or role of the user group in Slack. |
unique_mention_handle | string | Optional | A 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_creation | string | Optional | Encoded team ID for the user group creation, required if using an org-level token. |
include_user_count | boolean | Optional | Set to true to include the number of users in each User Group. |
enable_display_as_sidebar_section | boolean | Optional | Set 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
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
channel_id | string | Required | ID of the Slack channel where the message is posted. Required with 'ts' for custom unfurl or with 'unfurl_id' and 'source'. |
message_timestamp | string | Required | Timestamp 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_map | string | Required | A 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_message | string | Optional | A 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_url | string | Optional | A URL to redirect users for app authentication to enable full URL unfurling, requires URL encoding. |
user_authentication_blocks | array<string> | Optional | A URL-encoded JSON array of structured blocks to send as an ephemeral message for user authentication invitation. |
unfurl_link_id | string | Optional | The ID of the link to unfurl. Must be used with 'source'. |
link_source | string | Optional | Specify 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_authentication | boolean | Optional | Set to true if the user must install your Slack app to trigger unfurls for this domain. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
channel_id | string | Required | The ID of the channel where the scheduled message is set to post. Required to identify the correct message to delete. |
scheduled_message_id | string | Required | The ID of the scheduled message to be deleted. This ID is obtained from the `chat.scheduleMessage` response. |
delete_as_authenticated_user | boolean | Optional | Set 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
Output
json— Response from the API endpoint 'chat.deleteScheduledMessage'.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
| Parameter | Type | Req. | Description |
|---|---|---|---|
user_group_id | string | Required | The encoded ID of the User Group to be disabled. |
team_id | string | Optional | Encoded target team ID where the user group exists. Required only if using an org-level token; ignored for workspace-level tokens. |
include_user_count | boolean | Optional | Include the number of users in the User Group. Set to true to include the count. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
slack_channel_id | string | Required | The ID of the Slack channel where the bookmark will be updated. |
target_bookmark_id | string | Required | The unique identifier of the bookmark you want to update. |
bookmark_title | string | Optional | The new title for the bookmark to update. |
bookmark_link | string | Optional | URL of the bookmark to be edited. Ensure it is a valid format starting with http or https. |
emoji_tag | string | Optional | The emoji tag to apply to the bookmark link. It should be a valid emoji code (e.g., :smile:). |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
file_id_to_share | string | Required | The ID of the file on Slack that you want to enable for public sharing. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
user_group_id | string | Required | The encoded ID of the User Group to be enabled in Slack. |
team_id | string | Optional | Provide 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_count | boolean | Optional | Set to true to include the number of users in the User Group. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
slack_team_id | string | Required | The unique identifier of the Slack workspace (team) for which to fetch the settings information. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
user_email_address | string | Required | The email address of the user in the Slack workspace to search for. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
call_id | string | Required | The unique identifier of the call as returned by the `calls.add` method. This ID is necessary to retrieve detailed call information. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
conversation_id | string | Required | The unique ID of the Slack conversation to retrieve information for. |
include_locale | boolean | Optional | Set to `true` to receive the locale for this conversation. Defaults to `false`. |
include_member_count | boolean | Optional | Set to true to include the member count for the specified conversation. Defaults to false. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
query_by_domain | string | Optional | Comma-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_id | string | Optional | The ID of the Slack team to retrieve information about. If omitted, information about the current team will be returned. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
file_size_in_bytes | integer | Required | Specify the size of the file to be uploaded, measured in bytes. Ensure this value accurately reflects the file size. |
file_name | string | Required | The name of the file to be uploaded to Slack. |
snippet_syntax_type | string | Optional | Specify the syntax highlighting type for the snippet being uploaded, such as 'javascript', 'python', etc. |
alt_text_description | string | Optional | A description of the image for screen-readers, limited to 1000 characters. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
filter_by_app_id | string | Optional | Filter integration logs to a specific Slack app. If not provided, logs for all apps are retrieved. |
filter_by_change_type | string | Optional | Specify the change type to filter logs. Options: 'added', 'removed', 'enabled', 'disabled', 'updated'. Defaults to all logs. |
result_count | string | Optional | The number of log entries to retrieve. Specify the maximum number of logs to return in a single request. (default: '100') |
result_page_number | string | Optional | The specific page number of the integration logs to retrieve. Used for pagination. (default: '1') |
filter_by_service_id | string | Optional | Specify the service ID to filter integration logs related to a specific service. If not provided, logs for all services will be retrieved. |
encoded_team_id | string | Optional | The encoded team ID to get logs from, required if using an org-level token. Ignored if using a workspace-level token. |
filter_by_user | string | Optional | Filter logs generated by a specific user's actions. Defaults to all logs if not specified. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
file_external_identifier | string | Optional | The GUID defined by the creator for the remote file to retrieve its information. |
file_id | string | Optional | The unique identifier of the file to retrieve information about. Use this to specify the file in Slack. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
target_bot_id | string | Optional | The unique bot ID for which information is requested. This ID is specific to each workspace the bot is in. |
team_id_for_org_token_use | string | Optional | Encoded team or enterprise ID where the bot exists. Required if using an organization token. Ignored if using a workspace-level token. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
conversation_id | string | Required | The ID of the Slack conversation to retrieve members from. This can be a channel, group, or direct message. |
pagination_cursor | string | Optional | Cursor for pagination, set to the `next_cursor` value from a previous response to continue retrieving members from a conversation. |
max_items_to_return | integer | Optional | The 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
Output
json— Response from the API endpoint 'conversations.members'.SlackApi.GetSlackMessagePermalink
Retrieve a permalink URL for a specific Slack message. This tool retrieves a permalink URL for an existing message in Slack. Use it when you need the direct link to a particular message in a Slack channel.
Parameters
| Parameter | Type | Req. | Description |
|---|---|---|---|
channel_id | string | Required | The unique identifier of the Slack conversation or channel containing the message. |
message_timestamp | string | Required | The unique timestamp of the message to retrieve the permalink for. It identifies the message within the Slack channel. |
Requirements
Output
json— Response from the API endpoint 'chat.getPermalink'.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
| Parameter | Type | Req. | Description |
|---|---|---|---|
filter_by_channel_id | string | Optional | Filter remote files to only include those appearing in the specified Slack channel, indicated by its channel ID. |
pagination_cursor | string | Optional | A 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_return | integer | Optional | Specify the maximum number of remote file records to retrieve from Slack. |
filter_files_from_timestamp | string | Optional | Filter files created after this inclusive timestamp. Use a Unix timestamp format. (default: '0') |
timestamp_filter_end | string | Optional | Filter files created before this timestamp (inclusive) in Unix epoch time format. (default: 'now') |
Requirements
Output
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
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
conversation_id | string | Required | The ID of the Slack conversation from which to fetch the message thread. |
thread_message_timestamp | string | Required | Unique identifier of a parent message or a thread message (timestamp). Fetches the thread or the single message. |
pagination_cursor | string | Optional | Cursor for pagination. Use the `next_cursor` from a previous response to fetch the next page of data. |
latest_message_timestamp | string | Optional | Only include messages posted before this Unix timestamp in the results. (default: 'now') |
maximum_items_to_return | integer | Optional | Specify 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_timestamp | string | Optional | Only include messages after this Unix timestamp in results. (default: '0') |
include_all_message_metadata | boolean | Optional | Set to true to return all metadata associated with this message. |
include_boundary_timestamps | boolean | Optional | Include messages with 'oldest' or 'latest' timestamps. Ignored unless either timestamp is specified. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
target_user_id | string | Optional | The Slack user ID for which you want to retrieve presence information. (default: 'authed user') |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
target_user_id | string | Optional | The unique identifier of the Slack user whose profile information is to be retrieved. |
include_labels | boolean | Optional | Include labels for each ID in custom profile fields. This option can heavily rate-limit requests and is not recommended. Default is false. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
pagination_cursor | string | Optional | Cursor 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_return | integer | Optional | Specifies the maximum number of billable user entries to be retrieved. |
specific_user_id | string | Optional | The ID of a specific user to retrieve billable information for. Leave empty to retrieve info for all users. |
encoded_team_id | string | Optional | Encoded team ID for retrieving billable info, required if using an org token. Ignored with workspace-level tokens. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
visibility_filter | string | Optional | Filter the profile fields based on visibility. Options: 'all', 'visible', 'hidden'. Default is 'all'. |
Requirements
Output
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
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
slack_channel_id | string | Required | The ID of the Slack channel to invite users to. It can be a public or private channel ID. |
user_ids_list | string | Required | A list of up to 100 user IDs to invite, separated by commas. |
continue_with_valid_users | boolean | Optional | Set to true to invite valid users while ignoring invalid IDs when multiple user IDs are provided. Default is false. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
conversation_id | string | Required | The ID of the conversation or channel you want to join in Slack. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
pagination_cursor | string | Optional | A 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_return | integer | Optional | The 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_id | string | Optional | The 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_types | string | Optional | Comma-separated list of channel types to filter conversations. Options: public_channel, private_channel, mpim, im. (default: 'public_channel') |
specific_user_id | string | Optional | Filter conversations by a specific user ID's membership. Only includes conversations shared with the calling user. |
exclude_archived_channels | boolean | Optional | Set to true to exclude archived channels from the retrieved list of Slack conversations. (default: false) |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
workspace_id | string | Optional | ID for the Slack workspace where the invite requests were made. Required if the Enterprise org has more than one workspace. |
pagination_cursor | string | Optional | Value of the `next_cursor` from the previous API response for paginating results. |
result_limit | integer | Optional | Specify the number of results to return, between 1 and 1000 inclusive. (default: '100') |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
usergroup_id | string | Required | The ID of the IDP group to list channels for. It identifies which organizational group to retrieve the default channels from. |
workspace_id | string | Optional | The unique identifier for the Slack workspace. |
include_member_count_in_channels | boolean | Optional | Set to true to include the count of members for each channel, otherwise set to false. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
include_emoji_categories | boolean | Optional | Set to true to include categories for Unicode emojis in the response. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
workspace_team_id | string | Optional | ID of the workspace where the invite requests were made. Required if the Enterprise org has multiple workspaces. |
pagination_cursor | string | Optional | The cursor value from the previous API response to fetch the next set of results. Use this for pagination. |
result_limit | integer | Optional | Specify the number of denied invite request results to return, between 1 and 1000 inclusive. (default: '100') |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
workspace_id | string | Optional | The ID of the workspace to list pending invite requests from. Required for multi-workspace enterprises. |
pagination_cursor | string | Optional | The cursor value for fetching the next set of invite requests. Use the `next_cursor` from the previous response if available. |
result_limit | integer | Optional | The number of invite requests to return per call, must be between 1 and 1000. (default: '100') |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
channel_id | string | Required | The ID of the Slack channel to retrieve pinned items from. This is required to specify which channel's pinned items will be listed. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
channel_id | string | Optional | The ID of the Slack channel from which to retrieve scheduled messages. |
pagination_cursor | string | Optional | Cursor value for pagination to specify the starting point of the list from a previous call. |
latest_timestamp | string | Optional | A 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_entries | integer | Optional | Specify the maximum number of scheduled messages to return from Slack. |
oldest_timestamp | string | Optional | A 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_id | string | Optional | Encoded team ID to specify which team's channels to list. Required if using an org-level token; ignore for workspace-level tokens. |
Requirements
Output
json— Response from the API endpoint 'chat.scheduledMessages.list'.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
| Parameter | Type | Req. | Description |
|---|---|---|---|
pagination_cursor | string | Optional | The 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_channels | integer | Optional | Specify 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_app | string | Optional | Encoded team ID to list channels. Required for org-level tokens; ignored for workspace-level tokens. |
channel_types | string | Optional | Comma-separated list of channel types to include, e.g., 'public_channel', 'private_channel', 'mpim', 'im'. (default: 'public_channel') |
exclude_archived_channels | boolean | Optional | Set to true to exclude archived channels from the list of Slack channels. Default is false. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
pagination_cursor | string | Optional | Cursor for fetching the next page of emojis. Use 'next_cursor' from the previous response. |
max_items_to_return | integer | Optional | The maximum number of emojis to return, between 1 and 1000 inclusive. (default: '100') |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
pagination_cursor | string | Optional | Cursor for paginating through data. Use the `next_cursor` from a previous response to continue. |
maximum_items_to_return | integer | Optional | Maximum number of users to return (recommended max is 200 for pagination). |
slack_team_id | string | Optional | The 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_locale | boolean | Optional | Set to true to receive locale information for each user. Default is false. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
team_id_for_org_token | string | Optional | Encoded team ID required when using an org-level token. Ignored if using a workspace-level token. |
include_user_count | boolean | Optional | Set to true to include the number of users in each User Group. |
include_disabled_groups | boolean | Optional | Set to true to include disabled user groups in the results. |
include_users_in_group | boolean | Optional | Include the list of users for each User Group in the response. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
workspace_id | string | Required | The unique identifier of the Slack workspace for which to list the owners. |
maximum_items_to_return | integer | Optional | Specifies the maximum number of owners to return, ranging from 1 to 1000. (default: '100') |
pagination_cursor | string | Optional | The cursor from the previous response used to fetch the next page of owners. Leave empty for the first page. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
maximum_items_to_return | integer | Optional | Specify the maximum number of teams to retrieve. Must be a positive integer, up to 1000. (default: '100') |
pagination_cursor | string | Optional | Use this to retrieve the next page of results by setting it to the `next_cursor` from the previous response. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
workspace_team_id | string | Optional | The ID of the Slack workspace (e.g., T1234) to filter users from. Only users from this workspace will be listed. |
pagination_cursor | string | Optional | Use this to navigate through paginated results by setting it to the `next_cursor` from a previous response. |
user_retrieval_limit | integer | Optional | Maximum number of users to retrieve per page from the Slack workspace. (default: '100') |
return_only_active_users | boolean | Optional | Return only active users if true; return only deactivated users if false. Default is true. |
include_deactivated_user_workspaces | boolean | Optional | Include workspaces for users even if they are deactivated. Only applies with org token and no team_id. Default is false. |
return_only_guest_users | boolean | Optional | If true, returns only guests and their expiration dates that belong to the specified team_id. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
conversation_channel_id | string | Optional | The ID of an existing direct or multi-person message channel to resume. Alternatively, provide the `users` field to start a new conversation. |
target_user_ids | string | Optional | A 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_definition | boolean | Optional | Set to true to receive the entire IM channel definition; false returns only the conversation ID. |
prevent_creation | boolean | Optional | If true, does not create a new conversation and instead checks for an existing DM or MPDM. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
channel_id | string | Required | The ID of the Slack channel where the message will be pinned. A `timestamp` must also be provided. |
message_timestamp | string | Optional | The timestamp (`ts`) of the message to pin in the Slack channel. Ensure the channel is also specified. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
unique_call_id | string | Required | A unique ID for the Call, provided by the 3rd-party Call provider. Ensure it is unique across all calls from your service. |
call_join_url | string | Required | The URL required for a client to join the Call on Slack. |
optional_human_readable_display_id | string | Optional | An 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_url | string | Optional | The URL used to directly launch the 3rd-party Call from Slack clients, if provided. |
call_start_timestamp | integer | Optional | Unix timestamp indicating when the call is scheduled to start. |
call_title | string | Optional | The name of the Call to be registered on Slack. This title will be used to identify the Call within Slack. |
call_creator_user_id | string | Optional | The valid Slack user ID of the creator of this call. Optional if using a user token, which defaults to the authed user. |
participants_info | array<string> | Optional | A list of participants to register for the call, including 'slack_id', 'external_id', 'display_name', and 'avatar_url' for each user. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
call_id | string | Required | The unique identifier for the call from which participants are to be removed. This `id` is obtained from the `calls.add` method. |
users_to_remove | array<string> | Required | A list of user IDs to remove as participants from the call. Refer to Slack's documentation for specifying user IDs. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
reaction_emoji_name | string | Required | The name of the emoji reaction to be removed, such as 'smile' or 'thumbsup'. |
target_file_id | string | Optional | The 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_id | string | Optional | The 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_id | string | Optional | Channel 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_timestamp | string | Optional | The exact timestamp of the message from which to remove the reaction. Specify when targeting a message. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
slack_channel_id_to_remove_bookmark | string | Required | The 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_remove | string | Required | The ID of the bookmark to be removed from a Slack channel. Ensure it is specified correctly to delete the correct bookmark. |
quip_section_id | string | Optional | The ID of the Quip section to unbookmark. This is required to specify which section's bookmark should be removed. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
current_emoji_name | string | Required | The current name of the emoji to be renamed. Colons (:myemoji:) around the value are optional. |
new_emoji_name | string | Required | The new name to assign to the emoji in the Slack Enterprise organization. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
trigger_testing_mode | boolean | Optional | Set to true to trigger testing mode where the token will not be revoked. Useful for testing. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
slack_channel_id_or_name | string | Required | Specify 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_timestamp | integer | Required | Unix 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_json | string | Optional | A JSON array of structured attachments as a URL-encoded string for the Slack message. |
structured_blocks_json | string | Optional | A URL-encoded string of a JSON-based array containing structured blocks for message formatting. |
message_markdown | string | Optional | Message text in markdown format. Avoid using with 'blocks' or 'text'. Maximum 12,000 characters. |
message_parsing_mode | string | Optional | Specifies how the message content should be parsed and interpreted when sending to Slack. For more details, refer to chat.postMessage documentation. |
message_text | string | Optional | The main body of the Slack message or a fallback text when using blocks. Can be plain text or formatted with mrkdwn. |
parent_message_timestamp | string | Optional | Timestamp of the parent message to which this message is a reply. Use the original message's timestamp, not a reply's timestamp. |
metadata_json | string | Optional | JSON object containing 'event_type' and 'event_payload' fields. Must be URL-encoded. Note: using this will prevent scheduled messages from posting. |
enable_group_linking | boolean | Optional | Set to true to link user groups in the message. Linking individual users is not supported; use mention syntax instead. |
make_reply_visible_to_everyone | boolean | Optional | Set to true to make the reply visible to everyone in the channel or conversation. Use with `thread_ts`. Defaults to false. |
enable_link_unfurling | boolean | Optional | Pass true to enable unfurling of primarily text-based content. |
disable_unfurling_of_media_content | boolean | Optional | Set to true to disable unfurling of media content. Defaults to false. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
search_query | string | Required | The text string to search for in Slack files. Use keywords or phrases to narrow down results. |
items_per_page | integer | Optional | The number of file results to return per page. Maximum allowed value is 100. (default: '20') |
results_page_number | integer | Optional | The specific page number of results to retrieve, with a maximum value of 100. (default: '1') |
sort_files_by | string | Optional | Specify how to sort the search results: either by 'score' or 'timestamp'. (default: 'score') |
sort_direction | string | Optional | Change the sort direction for search results to ascending ('asc') or descending ('desc'). (default: 'desc') |
encoded_team_id | string | Optional | Encoded team ID to specify the search domain when using an org-level token. Ignored with a workspace-level token. |
enable_query_highlight | boolean | Optional | Set to true to enable highlight markers for matching query terms in the search results. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
search_query | string | Required | The text to search for in Slack messages. Use keywords or phrases to narrow down results. |
results_per_page | integer | Optional | The number of search results to return per page, with a maximum limit of 100. (default: '20') |
page_number | integer | Optional | The page number of search results to retrieve, maximum value of 100. (default: '1') |
pagination_cursor | string | Optional | Use '*' for the first call to start pagination or provide the 'next_cursor' value from previous results to continue. |
sort_results_by | string | Optional | Specify the criterion for sorting the search results, either by 'score' for relevance or 'timestamp' for chronological order. (default: 'score') |
sort_direction | string | Optional | Specify the order for sorting results: use 'asc' for ascending or 'desc' for descending. (default: 'desc') |
team_id | string | Optional | The encoded team ID to search within. Required only if an organization-level token is used. Ignored for workspace-level tokens. |
enable_query_highlighting | boolean | Optional | Set to true to enable query highlight markers, marking matching terms in the results. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
target_channel | string | Required | The channel, private group, or IM channel where the ephemeral message will be sent. Accepts an encoded ID or the channel's name. |
recipient_user_id | string | Required | The ID of the user who will receive the ephemeral message. Must be in the specified channel. |
structured_attachments | array<string> | Optional | A JSON-encoded array of structured attachments for the message. Presented as a URL-encoded string. |
structured_blocks | array<string> | Optional | A URL-encoded JSON array of structured Slack block elements. Use for rich message formatting. |
message_icon_emoji | string | Optional | Emoji to display as the message icon, overriding icon_url. Specify using the emoji name like :smile:. |
message_icon_url | string | Optional | URL for the image to be used as the icon for the message. It overrides the icon_emoji if provided. |
message_markdown_text | string | Optional | The 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_mode | string | Optional | Specifies how the message text is interpreted. Options are: 'none', 'full', 'mrkdwn', or 'false'. Defaults to 'none'. (default: 'none') |
ephemeral_message_text | string | Optional | The 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_timestamp | string | Optional | The timestamp of the parent message to post this ephemeral message in its thread. Ensure there is already an active thread. |
bot_username | string | Optional | The username for the bot sending the ephemeral message. This sets the display name in the Slack message. |
link_names_auto_link | boolean | Optional | Set to true to automatically find and link channel names and usernames. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
target_channel_id_or_name | string | Required | The 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_attachments | array<string> | Optional | A JSON array of structured attachment objects for the message, provided as a URL-encoded string. Example: `[{"pretext": "pre-hello", "text": "text-world"}]`. |
structured_blocks | array<string> | Optional | A 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_message | string | Optional | Emoji to display as the icon for the Slack message. Overrides any image URL icon. |
message_icon_url | string | Optional | URL to an image to use as the icon for the message. Overrides any specified icon emoji. |
message_markdown | string | Optional | The message text formatted using markdown, up to 12,000 characters. Cannot be used with `blocks` or `text`. |
message_metadata | string | Optional | A JSON object with 'event_type' and 'event_payload' fields, URL-encoded, providing additional metadata for the message. |
parse_mode | string | Optional | Specifies how the message content should be treated. Options are 'none' to remove hyperlinks or 'full' to ignore markdown formatting. |
message_text | string | Optional | The main text of the message. Acts as the primary message or a fallback for notifications when using blocks. Supports plain text or markdown. |
thread_timestamp | string | Optional | Timestamp of the parent message to which this message will be a reply. Use the parent's `ts` value, not a reply's. |
bot_username | string | Optional | The display name to use for the bot when sending the message to Slack. |
post_as_authenticated_user | boolean | Optional | Set to true to post the message as the authenticated user instead of as a bot. Only applicable for classic apps. |
link_user_groups | boolean | Optional | Enable linking of user groups in the message. Individual user linking is not supported. |
enable_slack_markup_parsing | boolean | Optional | Set to true to enable Slack markup parsing in the message. Default is enabled. |
broadcast_reply_to_channel | boolean | Optional | Set 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_content | boolean | Optional | Set to true to enable unfurling of primarily text-based content in Slack messages. |
disable_media_unfurling | boolean | Optional | Set to false to enable media unfurling and true to disable it. (default: 'false') |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
channel_id | string | Required | The 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_read | string | Required | The unique identifier (timestamp) of the message you want to mark as most recently seen in the conversation. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
crop_box_size | string | Optional | The 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_coordinate | string | Optional | X coordinate of the top-left corner of the crop box for the profile photo. |
crop_y_coordinate | string | Optional | Y 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_image | string | Optional | The 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
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
workspace_id | string | Required | Unique identifier for the Slack workspace whose name you want to update. |
new_workspace_name | string | Required | The desired new name for the Slack workspace. This replaces the existing name. |
Requirements
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
workspace_id | string | Required | The unique identifier for the Slack workspace where the description will be updated. |
workspace_description | string | Required | The new description to set for the Slack workspace. Provide a clear and concise text. |
Requirements
Output
json— Response from the API endpoint 'admin.teams.settings.setDescription'.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
| Parameter | Type | Req. | Description |
|---|---|---|---|
user_group_id | string | Required | The encoded ID of the User Group to update in Slack. |
default_channel_ids | array<string> | Optional | A comma-separated list of channel IDs where the User Group is set as default. Use encoded channel IDs. |
additional_channel_ids | array<string> | Optional | Comma separated encoded channel IDs for custom additions to user group members. |
user_group_description | string | Optional | A short description of the User Group to update in Slack. This should clearly define the group's purpose or role. |
user_group_handle | string | Optional | Unique mention handle for the User Group, distinct from all channels, users, and other User Groups. |
user_group_name | string | Optional | A unique name for the User Group to update. Ensure it does not duplicate any existing User Group names. |
team_id_for_org_token | string | Optional | Encoded team ID where the user group exists, required for org-level tokens. Ignored if using a workspace-level token. |
include_user_count | boolean | Optional | Set to true to include the number of users in the User Group. |
enable_sidebar_section | boolean | Optional | Set 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
Output
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
| Parameter | Type | Req. | Description |
|---|---|---|---|
user_group_id | string | Required | The encoded ID of the Slack user group to update. |
user_ids_list | array<string> | Required | A 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_token | string | Optional | Encoded team ID where the user group exists. Required if using an organization token; ignored with workspace-level token. |
update_additional_channels | array<string> | Optional | Encoded channel IDs to add user group members to, separated by commas. These represent additional channels for custom user group member additions. |
include_user_count | boolean | Optional | Set to true to include the number of users in the user group in the response. |
is_shared_section | boolean | Optional | Indicates if the API call involves a shared section. Set to true if it does, otherwise false. |
Requirements
Output
json— Response from the API endpoint 'usergroups.users.update'.