Triggers
Slack Trigger
Trigger procedures from Slack messages and events in your workspace.
Overview
The Slack trigger fires your procedure when messages or events occur in your Slack workspace — for example when a message is posted to a channel, a specific keyword is mentioned, or a reaction is added.
Setup
- Go to Connections in the Rapidfolio dashboard and connect your Slack workspace via OAuth.
- Open the procedure you want to trigger and add a Slack trigger.
- Select the channels and event types you want to listen for.
- Optionally add a message pattern to filter events by message content.
- Save the trigger — Rapidfolio registers the event subscription with Slack automatically.
Note: The Slack connection requires the
channels:history,channels:read, andreactions:readOAuth scopes to receive message and reaction events. Rapidfolio requests these during the OAuth flow.
Configuration
| Field | Description |
|---|---|
| Connection | The Slack connection to listen on |
| Channels | One or more channel IDs to listen on (leave empty to listen on all channels the bot has access to) |
| Event types | One or more Slack event types to subscribe to (see below) |
| Message pattern | Optional regex — only fires if the message text matches (e.g. /^!ticket /i) |
Supported Event Types
| Event type | Description |
|---|---|
message | A message was posted to a channel |
app_mention | The Rapidfolio app was mentioned (@Rapidfolio) in any channel |
reaction_added | A user added an emoji reaction to a message |
reaction_removed | A user removed an emoji reaction from a message |
message.channels | A message was posted in a public channel (alias of message scoped to public channels) |
message.groups | A message was posted in a private channel |
Payload
The trigger payload is the raw Slack event object. Access it via the trigger input in your procedure.
Message
{
"type": "message",
"channel": "C01234567",
"channel_type": "channel",
"user": "U01234567",
"text": "Please onboard customer ABC Corp",
"ts": "1710500000.123456",
"team": "T01234567"
}
App mention
{
"type": "app_mention",
"channel": "C01234567",
"user": "U01234567",
"text": "<@U_BOT_ID> run onboarding for cust_123",
"ts": "1710500100.654321",
"team": "T01234567"
}
Reaction added
{
"type": "reaction_added",
"user": "U01234567",
"reaction": "white_check_mark",
"item": {
"type": "message",
"channel": "C01234567",
"ts": "1710500000.123456"
},
"item_user": "U07654321",
"event_ts": "1710500200.000000"
}
The item.ts field can be used with the Slack integration steps in your procedure to fetch the original message that was reacted to.
Example Use Cases
- Parse a message in a
#onboardingchannel and automatically start a customer onboarding procedure when the message matches a pattern like"Onboard: <customer name>". - Use
app_mentionevents to create a command interface — mention the bot with a command and trigger the corresponding procedure. - When a reviewer adds a ✅ reaction (
white_check_mark) to a message, trigger an approval workflow that processes the item referenced in the message. - Listen for messages in a
#fraud-alertschannel and automatically start an investigation procedure with the message content as input.