Skip to main content

Slack Bubble

Slack integration for messaging and workspace management

Quick Start

import { SlackBubble } from '@bubblelab/bubble-core';
import { CredentialType } from '@bubblelab/shared-schemas';
const result = await new SlackBubble({
operation: 'send_message',
credentials: {
[CredentialType.SLACK_CRED]: process.env.SLACK_TOKEN as string,
},
}).action();

Operation Details

send_message

operation 'send_message' required
Send a message to a Slack channel or DM
channel string required
Channel ID (e.g., C1234567890), channel name (e.g., general or #general), or user ID for DM
text string required
Message text content
username string
Override bot username for this message
icon_emoji string
Override bot icon with emoji (e.g., :robot_face:)
icon_url string
Override bot icon with custom image URL
attachments object[]
Legacy message attachments
blocks object[]
Block Kit structured message blocks
thread_ts string
Timestamp of parent message to reply in thread
reply_broadcast boolean
Broadcast thread reply to channel
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)
unfurl_links boolean
Enable automatic link unfurling
unfurl_media boolean
Enable automatic media unfurling

list_channels

operation 'list_channels' required
List all channels in the Slack workspace
types 'public_channel' | 'private_channel' | 'mpim' | 'im'[]
Types of channels to include in results
exclude_archived boolean
Exclude archived channels from results
limit number
Maximum number of channels to return (1-1000)
cursor string
Cursor for pagination to get next set of results
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

get_channel_info

operation 'get_channel_info' required
Get detailed information about a specific channel
channel string required
Channel ID (e.g., C1234567890) or channel name (e.g., general or #general)
include_locale boolean
Include locale information in the response
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

get_user_info

operation 'get_user_info' required
Get detailed information about a specific user
user string required
User ID to get information about
include_locale boolean
Include locale information in the response
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

list_users

operation 'list_users' required
List all users in the Slack workspace
limit number
Maximum number of users to return (1-1000)
cursor string
Cursor for pagination to get next set of results
include_locale boolean
Include locale information in the response
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

get_conversation_history

operation 'get_conversation_history' required
Retrieve message history from a channel or direct message
channel string required
Channel ID (e.g., C1234567890) or channel name (e.g., general or #general)
latest string
End of time range of messages to include (timestamp)
oldest string
Start of time range of messages to include (timestamp)
inclusive boolean
Include messages with latest or oldest timestamps in results
limit number
Maximum number of messages to return (1-1000)
cursor string
Cursor for pagination to get next set of results
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

get_thread_replies

operation 'get_thread_replies' required
Retrieve all replies to a thread in a channel
channel string required
Channel ID where the thread exists
ts string required
Timestamp of the parent message to get replies for
latest string
End of time range of messages to include (timestamp)
oldest string
Start of time range of messages to include (timestamp)
inclusive boolean
Include messages with latest or oldest timestamps in results
limit number
Maximum number of messages to return (1-1000)
cursor string
Cursor for pagination to get next set of results
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

update_message

operation 'update_message' required
Update an existing message in a channel
channel string required
Channel ID (e.g., C1234567890) or channel name (e.g., general or #general) where the message is located
ts string required
Timestamp of the message to update
text string
New text content for the message
attachments object[]
New legacy message attachments
blocks object[]
New Block Kit structured message blocks
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

delete_message

operation 'delete_message' required
Delete a message from a channel
channel string required
Channel ID (e.g., C1234567890) or channel name (e.g., general or #general) where the message is located
ts string required
Timestamp of the message to delete
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

add_reaction

operation 'add_reaction' required
Add an emoji reaction to a message
name string required
Emoji name without colons (e.g., thumbsup, heart)
channel string required
Channel ID (e.g., C1234567890) or channel name (e.g., general or #general) where the message is located
timestamp string required
Timestamp of the message to react to
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

remove_reaction

operation 'remove_reaction' required
Remove an emoji reaction from a message
name string required
Emoji name without colons (e.g., thumbsup, heart)
channel string required
Channel ID (e.g., C1234567890) or channel name (e.g., general or #general) where the message is located
timestamp string required
Timestamp of the message to remove reaction from
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)

upload_file

operation 'upload_file' required
Upload a file to a Slack channel
channel string required
Channel ID (e.g., C1234567890), channel name (e.g., general or #general), or user ID for DM
file_path string required
Local file path to upload
filename string
Override filename for the upload
title string
Title for the file
initial_comment string
Initial comment to post with the file
thread_ts string
Timestamp of parent message to upload file in thread
credentials Record<CredentialType,string>
Object mapping credential types to values (injected at runtime)