Slack Integration
> Send messages, upload files, manage channels, and trigger flows from Slack events.
Setting up a Slack connection
1. Go to Dashboard > Settings > Integrations. 2. Click Add Integration and select Slack. 3. Follow the OAuth flow to authorize Brickr in your Slack workspace. 4. Once connected, the integration appears in your integrations list.
The connection provides a bot token that Brickr uses to interact with the Slack API on your behalf.
Slack connections are scoped to the current Brickr workspace. A connection you add in one workspace does not appear in other workspaces.
Slack triggers
You can trigger routes from Slack events by adding a Slack Events trigger in the Start Node. Supported events include message, app_mention, reaction_added, member_joined_channel, and file_shared.
See Triggers for full configuration details and available context data.
Slack nodes
All Slack nodes are in the Integrations > Slack category and require a Premium plan.
Send Message
Sends a message to a Slack channel.
| Input | Type | Required | Description | |-------|------|----------|-------------| | connectionId | string | Yes | Slack connection ID | | channel | enum (SlackChannel) | Yes | Target channel | | text | string | Yes | Message text | | parseMode | enum (ParseMode) | No | Parse mode: none, full, or mrkdwn | | unfurlLinks | boolean | No | Unfurl links in the message | | botConfig | object (SlackBotConfig) | No | Override bot name and icon |
| Output | Type | Description | |--------|------|-------------| | messageTs | string | Timestamp ID of the sent message | | success | boolean | Whether the operation succeeded | | error | string | Error message if failed |
Upload File
Uploads a file to a Slack channel.
| Input | Type | Required | Description | |-------|------|----------|-------------| | connectionId | string | Yes | Slack connection ID | | channel | enum (SlackChannel) | Yes | Target channel | | content | string | Yes | File content (text or base64) | | filename | string | Yes | Filename | | filetype | enum (SlackFileType) | No | File type hint: auto, text, json, csv | | title | string | No | File title | | initialComment | string | No | Message posted with the file |
| Output | Type | Description | |--------|------|-------------| | fileId | string | ID of the uploaded file | | success | boolean | Whether the operation succeeded | | error | string | Error message if failed |
Create Channel
Creates a new Slack channel.
| Input | Type | Required | Description | |-------|------|----------|-------------| | connectionId | string | Yes | Slack connection ID | | name | string | Yes | Channel name (lowercase, no spaces) | | isPrivate | boolean | No | Create as private channel |
| Output | Type | Description | |--------|------|-------------| | channelId | string | ID of the created channel | | success | boolean | Whether the operation succeeded | | error | string | Error message if failed |
Add Reaction
Adds an emoji reaction to a message.
| Input | Type | Required | Description | |-------|------|----------|-------------| | connectionId | string | Yes | Slack connection ID | | channel | enum (SlackChannel) | Yes | Channel containing the message | | timestamp | string | Yes | Message timestamp to react to | | emoji | string | Yes | Emoji name without colons (e.g. thumbsup) |
| Output | Type | Description | |--------|------|-------------| | success | boolean | Whether the operation succeeded | | error | string | Error message if failed |
Get User Info
Retrieves information about a Slack user.
| Input | Type | Required | Description | |-------|------|----------|-------------| | connectionId | string | Yes | Slack connection ID | | userId | string | Yes | Slack user ID |
| Output | Type | Description | |--------|------|-------------| | user | object | User profile data | | success | boolean | Whether the operation succeeded | | error | string | Error message if failed |
Schedule Message
Schedules a message to be sent at a future time.
| Input | Type | Required | Description | |-------|------|----------|-------------| | connectionId | string | Yes | Slack connection ID | | channel | enum (SlackChannel) | Yes | Target channel | | text | string | Yes | Message text | | postAt | number | Yes | Unix timestamp for when to send |
| Output | Type | Description | |--------|------|-------------| | scheduledMessageId | string | ID of the scheduled message | | success | boolean | Whether the operation succeeded | | error | string | Error message if failed |
Update Message
Updates an existing message in a Slack channel.
| Input | Type | Required | Description | |-------|------|----------|-------------| | connectionId | string | Yes | Slack connection ID | | channel | enum (SlackChannel) | Yes | Channel containing the message | | timestamp | string | Yes | Timestamp of the message to update | | text | string | Yes | New message text |
| Output | Type | Description | |--------|------|-------------| | success | boolean | Whether the operation succeeded | | error | string | Error message if failed |
Enums
| Enum | Values | Description | |------|--------|-------------| | ParseMode | none, full, mrkdwn | How Slack parses message text | | SlackFileType | auto, text, json, csv | File type hint for uploads | | SlackChannel | (dynamic) | Channels from the connected workspace |
Structures
| Structure | Description | |-----------|-------------| | SlackEvent | Full Slack Events API callback payload | | SlackMessageEvent | The event field within a SlackEvent | | SlackBotConfig | Bot identity overrides (username, iconEmoji) |
What's next?
| Topic | Description | |-------|-------------| | Triggers | All trigger types including Slack events | | Shopify Integration | Connect your Shopify store | | Webhooks | Generic webhook triggers |