BeeGenticResources
Tool guides

Post messages to Slack

Send Slack messages to a channel or a person from a workflow, and read, update, react to and delete messages, manage channels and canvases. Step by step with a narrated video and a real result.

What you'll build: you type a topic in Chat, an AI writes a short team update about it, and BeeGentic posts it to a Slack channel. Three blocks: Start โ†’ Agent โ†’ Slack. About 5 minutes.

What BeeGentic can do with SlackAll tools โ†’

Connect with: ๐Ÿ” Sign in with your account ยท You need: A Slack workspace where you can add apps, and an AI key for the Agent

โœ… Send Messageโœ… Send Ephemeral Messageโœ… Create Canvasโœ… Read Messagesโœ… Get Messageโœ… Get Threadโœ… Get Thread Repliesโœ… Get Channel Historyโœ… Get Message Permalinkโœ… Set Assistant Statusโœ… Set Assistant Titleโœ… Set Assistant Suggested Promptsโœ… Set Agent Suggested Promptsโœ… Set Agent Session Statusโœ… Rename Agent Sessionโœ… List Channelsโœ… List Channel Membersโœ… List Usersโœ… Get User Infoโœ… Download Fileโœ… Update Messageโœ… Delete Messageโœ… Add Reactionโœ… Remove Reactionโœ… Get Channel Infoโœ… Get User Presenceโœ… Edit Canvasโœ… Create Channel Canvasโœ… Get Canvas Infoโœ… List Canvasesโœ… Lookup Canvas Sectionsโœ… Delete Canvasโœ… Create Listโœ… Update Listโœ… Share Listโœ… Read List Itemsโœ… Get List Itemโœ… Create List Itemโœ… Update List Itemsโœ… Delete List Itemโœ… Create Conversationโœ… Invite to Conversationโœ… Open Viewโœ… Update Viewโœ… Push Viewโœ… Publish Viewโœ… Schedule Messageโœ… List Scheduled Messagesโœ… Delete Scheduled Messageโœ… Archive Conversationโœ… Rename Conversationโœ… Set Conversation Topicโœ… Set Conversation Purposeโœ… Revoke List Accessโœ… Start List Exportโœ… Get List Exportโœ… Delete List Itemsโœ… Share Canvasโœ… Revoke Canvas Accessโœ… Join Conversationโœ… Leave Conversationโœ… Remove User from Conversationโœ… Unarchive Conversationโœ… Close Conversationโœ… Mark Conversation Readโœ… Open Conversationโœ… Find User by Emailโœ… List User Conversationsโœ… Get User Profileโœ… Set Bot Presenceโœ… Get File Infoโœ… List Filesโœ… Delete Fileโœ… Get Reactionsโœ… List Reactionsโœ… Pin Messageโœ… Unpin Messageโœ… List Pinsโœ… Add Bookmarkโœ… Edit Bookmarkโœ… List Bookmarksโœ… Remove Bookmarkโœ… Create User Groupโœ… Update User Groupโœ… Enable User Groupโœ… Disable User Groupโœ… List User Groupsโœ… List User Group Membersโœ… Update User Group Membersโœ… Get Do Not Disturb Infoโœ… Get Team Do Not Disturb Infoโœ… List Custom Emojiโœ… Get Workspace Infoโœ… Get Workspace Profile Fieldsโœ… Unfurl Links
โšก Slack

Not supported: Posting as yourself (messages come from the BeeGentic app) ยท Starting a workflow from Slack with the BeeGentic app (the Slack trigger needs your own custom bot today) ยท Slack Lists and Agent Session actions with the BeeGentic app (custom bot only) ยท Reading direct-message history with the BeeGentic app ยท Slack admin settings, user groups you don't manage, Enterprise Grid org admin

โœ… action you can add to a workflow ยท โšก event that can start a workflow

Narrated walkthrough (about 2 min), with captions (CC button). Each step below also has a short silent clip. The orange numbers in each screenshot match the # column under it. Click a screenshot to enlarge it.

Before you start

You needWhy
A Slack workspace where you can add appsBeeGentic installs its own Slack app, called BeeGentic, and posts as that bot. On some paid workspaces an admin has to approve new apps first.
A channel for the messagesWe used #all-beegentic-demo, the default channel of our demo workspace. Any public channel works. For a private channel, invite the bot first with /invite @BeeGentic.
An AI key saved as a secret, e.g. OPENAI_API_KEYThe Agent writes the update. See References and secrets.

Part 1: Connect Slack (once)

Look at your channel

Open the Slack channel you'll post to, so you can spot the new message later.

The channel

#What you see
1#all-beegentic-demo: nothing from BeeGentic yet.

Watch this step

Find Slack in Integrations

In BeeGentic: Integrations โ†’ search Slack.

Integrations

#What to do
1Click Slack. If you've connected before, your connection is listed under Connected.

Watch this step

Add to BeeGentic, then Connect

Click Add to BeeGentic โ†’ Connect with OAuth. A dialog opens.

Connect dialog

#What it means
1What BeeGentic may do in Slack: view and read channels, send messages (also to public channels the bot hasn't joined), start direct messages, view users, upload and read files, work with canvases, and add or view reactions. You can rename the connection in Display name, e.g. Team Slack.
2Click Connect. Slack opens.

Watch this step

Allow BeeGentic in your workspace

Slack permission page

#What to do
1Check the workspace in Where do you want to use "BeeGentic"? If you're in several workspaces, pick the right one here.
2Click Allow. You're sent back to BeeGentic, connected.

Watch this step

Part 2: Build the workflow

Create the workflow and add the Agent

+ New workflow โ†’ name it Post team updates to Slack. Then Toolbar โ†’ Agent. In Messages:

Write a short, friendly Slack update for the team about: <start.input>. Two or three sentences, at most one emoji, no hashtags. Return only the message.

Agent message

#What you see
1The message. <start.input> is replaced by what you type in Chat.

Watch this step

Choose the model and key

Model and key

#FieldValue
1Modelgpt-5-mini
2API Key{{OPENAI_API_KEY}}

Add the Slack block

Toolbar โ†’ Slack (in the tools list, not the one under Triggers). It connects to the Agent automatically.

Slack block

#FieldValue
1OperationSend Message (the default)
2DestinationChannel. Pick Direct Message to message one person instead.
3Slack AccountThe connection from Part 1
4ChannelThe channel, here #all-beegentic-demo. The list shows the channels the bot can see.

Watch this step

Write the message

Message

#FieldValue
1Message<agent.content>: the update the Agent wrote

Also on the block: Message Format (Plain text, which supports Slack's own mrkdwn, or Block Kit for buttons and layouts), Thread Timestamp (reply inside a thread) and Attachments (files to upload with the message).

Press Shift + L to tidy. Your finished workflow:

Finished workflow

#BlockWhat it does
1StartYour chat message becomes <start.input>
2AgentWrites the update
3SlackPosts it to the channel

Watch this step

Part 3: Run it and check the result

Send the topic from Chat

Chat

#What to do
1Open Chat (speech-bubble button), type the topic and press Enter.

Example message we sent:

Our new docs site is live, with step-by-step guides for Gmail, Google Sheets and Google Calendar

Read the output

Result

#What you see
1Your message.
2Each block's run time: the Agent about 6 s, Slack under a tenth of a second.
3The output: message (everything Slack stored: the text, the bot, the app), ts (the message's timestamp, here 1790987744.002969) and channel (the channel ID, here C0C78MCLGN4).

Watch the run

See it in Slack

In Slack

#What you see
1The message, posted by BeeGentic with the APP badge. Slack turned the Agent's :raised_hands: into ๐Ÿ™Œ.
2The channel you picked.

The real message BeeGentic posted:

Our new docs site is live with step-by-step guides for Gmail, Google Sheets, and Google Calendar. Check it out for quick walkthroughs and share any feedback โ€” weโ€™d love to hear what you think. ๐Ÿ™Œ

We deleted this test message afterwards with Delete Message (below), using the ts from the output.

Watch this step

โšก Make it automatic

You wantDo this
Post a team update every morningReplace Chat with a Schedule trigger and write the topic in the Agent's message.
Tell the team about new blog postsRSS Feed trigger โ†’ Agent โ†’ Slack.
Ping the channel when someone fills in a formGoogle Forms โ†’ Agent โ†’ Slack.
Share each new leadGoogle Sheets New Row trigger โ†’ Slack.
Answer questions in Slack threadsUse the Slack trigger (below). Full example: Slack bot that answers in the thread.
Send the same news by email tooAdd a Gmail block next to Slack.

Slack trigger

Starts the workflow when something happens in Slack: a message, an @mention of the bot, a reaction, a new channel member, and more. In the Toolbar it's Slack under Triggers.

Slack trigger

#FieldWhat it does
1EventThe one Slack event to listen for: Message, App mentioned, Reaction added or removed, Message edited or deleted, File shared, Member joined or left channel, Channel created, archived or renamed, Pin added or removed, Member joined workspace, App home opened, Button / select clicked, Modal submitted or Slash command. Add another trigger block for another event.
2Custom BotYour own Slack app. Choose Set up a custom bot the first time.
3ChannelsOnly these channels. Leave empty for any channel the bot is in. Source and Threads narrow it further.
4Ignore bot messagesSkips messages from bots, including your own replies, so the workflow can't trigger itself.

Deploy the workflow to turn the trigger on. The trigger output has the event under event, e.g. <slack.event.text>, <slack.event.channel> and <slack.event.timestamp>. Put the timestamp in Thread Timestamp to reply in the thread.

๐Ÿงฐ Other operations

The Operation list has over 90 Slack actions (all listed in the box at the top). The ones people use most:

OperationWhat it does
Send Ephemeral MessageA message only one person in the channel can see
Schedule MessagePosts later, at the date and time you set. List Scheduled Messages and Delete Scheduled Message manage the queue.
Update Message / Delete MessageChanges or removes a message the bot sent, by its Message Timestamp (ts)
Read Messages / Get Channel HistoryReads recent messages from a channel
Get Thread / Get Thread RepliesReads a whole thread
Add Reaction / Remove ReactionAdds or removes an emoji, e.g. white_check_mark
Create Canvas / Edit CanvasWrites a Slack canvas, e.g. a weekly report
Create Conversation / Invite to ConversationCreates a channel and adds people
List Channels / List Users / Find User by EmailLooks up channel and user IDs
Download FileGets a file shared in Slack, for the next block

๐Ÿ› ๏ธ Troubleshooting

ProblemFix
channel_not_foundThe bot can't see the channel. Pick it from the Channel list instead of typing it, and for a private channel invite the bot first: /invite @BeeGentic.
not_in_channelInvite the bot to the channel with /invite @BeeGentic, then run again.
Bot is not in the channel. Please invite the BeeGentic bot to your Slack channel by typing: /invite @BeeGenticRead Messages needs the bot in the channel. Do what the message says.
Missing required permissions. Reconnect your Slack account to grant channel history access (channels:history, groups:history). Reading direct message history is not supported with the BeeGentic bot.Reconnect Slack in Integrations. Direct-message history needs a custom bot.
Either channel or userId is requiredPick a Channel, or for Direct Message pick the person.
Slack shows Request to Install instead of AllowYour workspace only allows approved apps. Send the request; once an admin approves, connect again.
The channel isn't in the Channel listThe list shows public channels and private ones the bot is in. Invite the bot, then reopen the list.
The trigger doesn't startDeploy the workflow, check the Event and Channels, and make sure your custom bot is in the channel.

On this page