Use Slack with Langchain Python

Slack is a channel-based messaging platform. With Slack, people can work together more effectively, connect all their software tools and services, and find the information they need to do their best work — all within a secure, enterprise-grade environment.
🔗 Connect and Use Slack
1. 🔑 Connect your Slack account
2. ✅ Select an action
3. 🚀 Go live with the agent
What do you want to do?
Actions
admin.apps
- Approve an app installation in a workspace
admin.apps.approved
admin.apps.requests
admin.apps.restricted
admin.conversations
admin.conversations.ekm
admin.conversations.restrictAccess
admin.emoji
admin.inviteRequests
admin.inviteRequests.approved
admin.inviteRequests.denied
admin.teams.admins
admin.teams
admin.teams.owners
admin.teams.settings
admin.usergroups
admin.users
admin.users.session
api
apps.event.authorizations
apps.permissions
apps.permissions.resources
apps.permissions.scopes
apps.permissions.users
apps
auth
bots
calls
calls.participants
chat
chat.scheduledMessages
conversations
dialog
dnd
emoji
files.comments
files
files.remote
migration
oauth
oauth.v2
pins
reactions
reminders
rtm
search
stars
team
team.profile
usergroups
usergroups.users
users
users.profile
views
workflows
Main

API actions for Slack for AI assitants/agents

Language
JS
PYTHON
Framework

Stars

Remove A Star From An Item

Removes a star from an item.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_REMOVE_A_STAR_FROM_AN_ITEM])

Team

Get Current Team S Access Logs

Gets the access logs for the current team.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_GET_CURRENT_TEAM_S_ACCESS_LOGS])

Get Billable Team User Info

Gets billable users information for the current team.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_GET_BILLABLE_TEAM_USER_INFO])

Fetch Current Team Info With Optional Team Scope

Gets information about the current team.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_FETCH_CURRENT_TEAM_INFO_WITH_OPTIONAL_TEAM_SCOPE])

Get Current Team Integration Logs

Gets the integration logs for the current team.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_GET_CURRENT_TEAM_INTEGRATION_LOGS])

Team.profile

Retrieve Team Profile Details

Retrieve a team's profile.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_RETRIEVE_TEAM_PROFILE_DETAILS])

Usergroups

Create A Slack User Group

Create a User Group
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_CREATE_A_SLACK_USER_GROUP])

Disable An Existing Slack User Group

Disable an existing User Group
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_DISABLE_AN_EXISTING_SLACK_USER_GROUP])

Enable A Specified User Group

Enable a User Group
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_ENABLE_A_SPECIFIED_USER_GROUP])

List User Groups For Team With Options

List all User Groups for a team
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_LIST_USER_GROUPS_FOR_TEAM_WITH_OPTIONS])

Update An Existing Slack User Group

Update an existing User Group
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_UPDATE_AN_EXISTING_SLACK_USER_GROUP])

Usergroups.users

List All Users In A User Group

List all users in a User Group
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_LIST_ALL_USERS_IN_A_USER_GROUP])

Update User Group Members

Update the list of users for a User Group
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_UPDATE_USER_GROUP_MEMBERS])

Users

List Accessible Conversations For A User

List conversations the calling user may access.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_LIST_ACCESSIBLE_CONVERSATIONS_FOR_A_USER])

Delete User Profile Photo

Delete the user profile photo
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_DELETE_USER_PROFILE_PHOTO])

Get User Presence Info

Gets user presence information.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_GET_USER_PRESENCE_INFO])

Retrieve A User S Identity Details

Get a user's identity.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_RETRIEVE_A_USER_S_IDENTITY_DETAILS])

Retrieve Detailed User Information

Gets information about a user.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_RETRIEVE_DETAILED_USER_INFORMATION])

Users Info

Gets information about a user.<<DEPRECATED use retrieve_detailed_user_information>>
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_USERS_INFO])

List All Slack Team Users With Pagination

Lists all users in a Slack team.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_LIST_ALL_SLACK_TEAM_USERS_WITH_PAGINATION])

Users List

Lists all users in a Slack team.<<DEPRECATED use list_all_slack_team_users_with_pagination>>
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_USERS_LIST])

Find User By Email Address

Find a user with an email address.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_FIND_USER_BY_EMAIL_ADDRESS])

Users Lookup By Email

Find a user with an email address.<<DEPRECATED use find_user_by_email_address>>
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_USERS_LOOKUP_BY_EMAIL])

Mark A User As Active Deprecated

Marked a user as active. Deprecated and non-functional.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_MARK_A_USER_AS_ACTIVE_DEPRECATED])

Set User Profile Photo With Cropping Options

Set the user profile photo
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_SET_USER_PROFILE_PHOTO_WITH_CROPPING_OPTIONS])

Manually Set User Presence

Manually sets user presence.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_MANUALLY_SET_USER_PRESENCE])

Users.profile

Retrieve User Profile Information

Retrieves a user's profile information.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_RETRIEVE_USER_PROFILE_INFORMATION])

Users Profile Get Profile Info

Retrieves a user's profile information.<<DEPRECATED use retrieve_user_profile_information>>
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_USERS_PROFILE_GET_PROFILE_INFO])

Set Slack User Profile Information

Set the profile information for a user.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_SET_SLACK_USER_PROFILE_INFORMATION])

Views

Open A View For A Slack User

Open a view for a user.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_OPEN_A_VIEW_FOR_A_SLACK_USER])

Publish Static View For User

Publish a static view for a User.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_PUBLISH_STATIC_VIEW_FOR_USER])

Push View To Root View Stack

Push a view onto the stack of a root view.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_PUSH_VIEW_TO_ROOT_VIEW_STACK])

Update An Existing Slack View

Update an existing view.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_UPDATE_AN_EXISTING_SLACK_VIEW])

Workflows

Mark Workflow Step As Completed

Indicate that an app's step in a workflow completed execution.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_MARK_WORKFLOW_STEP_AS_COMPLETED])

Indicate Workflow Step Failure

Indicate that an app's step in a workflow failed to execute.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_INDICATE_WORKFLOW_STEP_FAILURE])

Update Workflow Extension Step Configuration

Update the configuration for a workflow extension step.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_UPDATE_WORKFLOW_EXTENSION_STEP_CONFIGURATION])

Main

Receive Message

Triggered when a new message is posted to a Slack channel.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_RECEIVE_MESSAGE])

Receive Thread Reply

Triggered when reply is added to a message in a thread.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_RECEIVE_THREAD_REPLY])

Reaction Removed

Triggered when a reaction is removed from a message.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_REACTION_REMOVED])

Reaction Added

Triggered when a new message is posted to a Slack channel.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_REACTION_ADDED])

Channel Created

Triggered when a new channel is created in Slack.
from composio_langchain import ComposioToolSet, Action tool_set = ComposioToolSet() tools = tool_set.get_tools(actions=[Action.SLACK_CHANNEL_CREATED])

Frequently asked questions

How do I integrate Composio with Slack?

To integrate Composio with Slack, first install the Composio app from the Slack App Directory. Then go to your Composio dashboard and click on 'Integrations'. Select Slack and follow the authorization steps to connect your Slack workspace. Once authorized, you can configure Composio to send notifications, accept commands, and interact with Slack users and channels.

Can I use Composio to build AI-powered Slack bots?

Yes, Composio makes it easy to create intelligent Slack bots without coding. Use Composio's visual agent builder to define your bot's capabilities, personality and knowledge base. Train it on custom datasets. Then deploy it to Slack with a few clicks. Your Slack bot can understand natural language, answer questions, take actions and learn from interactions, powered by Composio's agentic AI framework.
+ Integrate seamlessly with your agentic frameworks
Composio Works with All Shapes and SizesComposio Works with All Shapes and SizesComposio Works with All Shapes and SizesComposio Works with All Shapes and SizesComposio Works with All Shapes and Sizes
Building for AI across continents🧪