Operator
← All integrations
Slackbot logo

Connect Slackbot to OpenClaw on Operator.io

Slackbot is a conversational automation tool for Slack that handles reminders, notifications, and automated responses. It boosts team productivity by streamlining onboarding, answering FAQs, and managing timely alerts—all right inside Slack.

Automate Slackbot with AI

Hand Slackbot to an OpenClaw agent running on Operator. You write what you want in a chat and it turns that into real Slackbot actions like add call participants, add reaction to message, add a remote file, without you opening the app.

Your agent reaches Slackbot directly or through connectors like Composio MCP and Pipedream MCP, which handle the sign in and token refresh for you, so there is nothing to wire up and no API keys to paste.

What your agent can do with Slackbot

Your agent can call any of these Slackbot actions by name as part of a larger task. Ask for the outcome you want and it picks the right ones.

Add call participants

Registers new participants added to a Slack call.

Add reaction to message

Adds a specified emoji reaction to an existing message in a Slack channel, identified by its timestamp; does not remove or retrieve reactions.

Add a remote file

Adds a reference to an external file (e.g., Google Drive, Dropbox) to Slack for discovery and sharing, requiring a unique `external_id` and an `external_url` accessible by Slack.

Archive a Slack conversation

Archives a Slack conversation by its ID, rendering it read-only and hidden while retaining history, ideal for cleaning up inactive channels; be aware that some channels (like #general or certain DMs) cannot be archived and this may impac...

Close conversation channel

Closes a Slack direct message (DM) or multi-person direct message (MPDM) channel, removing it from the user's sidebar without deleting history; this action affects only the calling user's view.

Create a reminder

Creates a Slack reminder with specified text and time; time accepts Unix timestamps, seconds from now, or natural language (e.g., 'in 15 minutes', 'every Thursday at 2pm').

Create Slack Canvas

Creates a new Slack Canvas with the specified title and optional content.

Create channel

Initiates a public or private channel-based conversation in a Slack workspace. Immediately creates the channel; invoke only after explicit user confirmation.

Create a Slack user group

Creates a new User Group (often referred to as a subteam) in a Slack workspace.

Customize URL unfurl

Customizes URL previews (unfurling) in a specific Slack message using a URL-encoded JSON in `unfurls` to define custom content or remove existing previews.

Delete Slack Canvas

Deletes a Slack Canvas permanently and irreversibly. Always confirm with the user before calling this tool.

Delete a file by ID

Permanently deletes an existing file from a Slack workspace using its unique file ID; this action is irreversible and also removes any associated comments or shares.

Delete file comment

Deletes a specific comment from a file in Slack; this action is irreversible.

Delete a Slack reminder

Deletes an existing Slack reminder, typically when it is no longer relevant or a task is completed; this operation is irreversible.

Delete a message from a chat

Deletes a message, identified by its channel ID and timestamp, from a Slack channel, private group, or direct message conversation; the authenticated user or bot must be the original poster.

Delete scheduled chat message

Deletes a pending, unsent scheduled message from the specified Slack channel, identified by its `scheduled_message_id`.

Disable a Slack user group

Disables a specified, currently enabled Slack User Group by its unique ID, effectively archiving it by setting its 'date_delete' timestamp; the group is not permanently deleted and can be re-enabled.

Download Slack file

Tool to download Slack file content and convert it to a publicly accessible URL. Use when you need to retrieve and download files that have been shared in Slack channels or conversations.

Edit Slack Canvas

Edits a Slack Canvas with granular control over content placement. Supports replace, insert (before/after/start/end) operations for flexible content management.

Share file public url

Enables public sharing for an existing Slack file by generating a publicly accessible URL; this action does not create new files. Once enabled, the file is accessible to anyone with the URL — verify intent before sharing sensitive or con...

Enable a user group

Enables a disabled User Group in Slack using its ID, reactivating it for mentions and permissions; this action only changes the enabled status and cannot create new groups or modify other properties.

End a call

Ends an ongoing Slack call, identified by its ID (obtained from `calls.add`), optionally specifying the call's duration.

Fetch conversation history

Fetches a chronological list of messages and events from a specified Slack conversation, accessible by the authenticated user/bot, with options for pagination and time range filtering. IMPORTANT LIMITATION: This action only returns messa...

Fetch item reactions

Fetches reactions for a Slack message, file, or file comment. Exactly one identifier path must be provided: `channel`+`timestamp`, `file`, or `file_comment`. Mixing identifiers (e.g., providing both `channel`+`timestamp` and `file`) caus...

Retrieve conversation replies

Retrieves replies to a specific parent message in a Slack conversation, using the channel ID and the parent message's timestamp (`ts`). Note: The parent message in the response contains metadata (reply_count, reply_users, latest_reply) t...

Fetch team info

Fetches comprehensive metadata about the current Slack team, or a specified team if the provided ID is accessible.

Find channels

Find channels in a Slack workspace by any criteria - name, topic, purpose, or description. Returns channel IDs (C*/G* prefixed) required by most Slack tools — always resolve names to IDs here before passing to other tools. NOTE: This act...

Lookup users by email

Retrieves the Slack user object for an active user by their registered email address; requires the users:read.email OAuth scope. Fails with 'users_not_found' if the email is unregistered, the user is inactive, the account is a guest, or...

Find users

Find users in a Slack workspace by any criteria - email, name, display name, or other text. Includes optimized email lookup for exact email matches. Zero results may reflect email visibility restrictions or workspace policies, not global...

Fetch bot user information

Fetches information for a specified, existing Slack bot user; will not work for regular user accounts or other integration types.

Retrieve call information

Retrieves a point-in-time snapshot of a specific Slack call's information.

Get reminder information

Retrieves detailed information for an existing Slack reminder specified by its ID; this is a read-only operation.

Get remote file

Retrieve information about a remote file added to Slack via the files.remote API. Does not work for standard Slack-hosted file uploads.

Retrieve team profile details

Retrieves all profile field definitions for a Slack team, optionally filtered by visibility, to understand the team's profile structure.

Get team DND status

Retrieves a user's current Do Not Disturb status.

Retrieve user presence

Retrieves a Slack user's current real-time presence (e.g., 'active', 'away') to determine their availability, noting this action does not provide historical data or status reasons.

Invite users to a Slack channel

Invites users to an existing Slack channel using their valid Slack User IDs. Response is always HTTP 200; inspect `ok`, `error`, and `errors` fields to confirm users were added.

Join conversation by channel id

Joins an existing Slack conversation (public channel, private channel, or multi-person direct message) by its ID, if the authenticated user has permission. Joining an already-joined channel returns a non-fatal no-op response. Private or...

Leave conversation channel

Leaves a Slack conversation given its channel ID; fails if leaving as the last member of a private channel or if used on a Slack Connect channel.

List all channels

Lists conversations available to the user with various filters and search options. Always use resolved `channel_id` (not display names) for downstream operations, as names may be non-unique. The `created` field in results is a Unix epoch...

List all users

Retrieves a paginated list of all users with profile details, status, and team memberships in a Slack workspace; data may not be real-time. Filter response fields `is_bot`, `is_app_user`, and `deleted` to build human-only rosters. Profil...

List conversations

List conversations (channels/DMs) accessible to a specified user (or the authenticated user if no user ID is provided), respecting shared membership for non-public channels. Returns conversation IDs (C* for channels, G* for group DMs), n...

List team custom emojis

Retrieves all custom emojis for the Slack workspace (image URLs or aliases), not standard Unicode emojis; does not include usage statistics or creation dates.

List Slack files

Lists files and their metadata within a Slack workspace, filterable by user, channel, timestamp, or type; returns metadata only, not file content. Results are limited to files visible to the authenticated user — files in private channels...

List pinned items in a channel

Retrieves all messages and files pinned to a specified channel; the caller must have access to this channel.

List reminders

Lists all reminders with their details for the authenticated Slack user; returns an empty array if no reminders exist (valid state, not an error). Reminder text is not unique—perform client-side matching on returned objects before extrac...

List remote files

Retrieve information about a team's remote files.

List all users in a user group

Retrieves a list of all user IDs within a specified Slack user group, with an option to include users from disabled groups.

Plus 37 more Slackbot actions your agent can call.

How to connect Slackbot

You authorize Slackbot once from your dashboard. Operator holds the connection and refreshes the access tokens on its own, so your agent keeps working with Slackbot without you signing in again. The same setup unlocks every other app your agent can reach, so you only do it once.

When you are ready, the get started guide walks through standing up your OpenClaw agent.

Common questions about Slackbot

How do I connect Slackbot to Operator?
You authorize Slackbot once from your Operator dashboard. Operator holds the connection and refreshes the access token for you, so your agent keeps working with Slackbot without you signing in again.
Can my agent read and post in Slackbot for me?
Yes. It can post messages, reply in threads, search history, and pull out what matters from a busy conversation. Point it at a channel and it summarizes the thread back to you, or posts an update when something changes in another app you have connected.
Do I need to write code or manage Slackbot API keys?
No code and no API keys. You authorize Slackbot through a normal sign in and Operator handles the connection, so there is nothing to wire up or host.
Can my agent use Slackbot together with my other apps?
Yes. The same agent reaches every app you connect, so it can move between Slackbot and tools like Gmail, Slack, Discord in one job, reading from one and acting in another without you wiring anything between them.

Connect Slackbot to another app

Your agent can run Slackbot together with any of these. Each page shows what it does across both apps in one job.

More apps to automate

Apps your agent runs alongside Slackbot, or browse all integrations.

Put your agent on Slackbot

Sign in, connect Slackbot, and hand your agent the work. Your first week is free.

Try for free