Skip to content

Slack ​

Slack messaging platform integration

This node signs in with a credential: Slack API Token. See Connect a credential.

Triggers ​

Events from this node that can start a flow. Add one from Choose a trigger.

New Message Posted ​

Triggers when a new message is posted to a channel

Settings

FieldTypeRequiredDescription
URL Group › Callback URLTextYesCopy this URL and paste it in your Slack app's Event Subscriptions settings

Output

Later steps use this data through Current Trigger in the $ picker. For example, channel_id is $trigger.output.channel_id.

json
{
  "channel_id": "string",
  "event_type": "string",
  "team": "string",
  "text": "string",
  "ts": "string",
  "user_id": "string"
}

Example values show the shape of the data, not real values. See Using data from earlier steps.

Field descriptions
FieldTypeDescription
channel_idTextThe ID of the channel where the message was posted
event_typeTextThe type of event (message)
teamTextThe team ID (workspace)
textTextThe text content of the message
tsTextThe timestamp of the message
user_idTextThe ID of the user who posted the message

New Channel Created ​

Triggers when a new channel is created

Settings

FieldTypeRequiredDescription
URL Group › Callback URLTextYesCopy this URL and paste it in your Slack app's Event Subscriptions settings

Output

Later steps use this data through Current Trigger in the $ picker. For example, channel_id is $trigger.output.channel_id.

json
{
  "channel_id": "string",
  "channel_name": "string",
  "created": 0,
  "creator_id": "string",
  "event_type": "string",
  "is_private": false
}

Example values show the shape of the data, not real values. See Using data from earlier steps.

Field descriptions
FieldTypeDescription
channel_idTextThe ID of the created channel
channel_nameTextThe name of the created channel
createdNumberThe timestamp when the channel was created
creator_idTextThe ID of the user who created the channel
event_typeTextThe type of event (channel_created)
is_privateYes / NoWhether the channel is private

User Joined Channel ​

Triggers when a user joins a channel

Settings

FieldTypeRequiredDescription
URL Group › Callback URLTextYesCopy this URL and paste it in your Slack app's Event Subscriptions settings

Output

Later steps use this data through Current Trigger in the $ picker. For example, channel_id is $trigger.output.channel_id.

json
{
  "channel_id": "string",
  "event_type": "string",
  "team": "string",
  "user_id": "string"
}

Example values show the shape of the data, not real values. See Using data from earlier steps.

Field descriptions
FieldTypeDescription
channel_idTextThe ID of the channel the user joined
event_typeTextThe type of event (member_joined_channel)
teamTextThe team ID (workspace)
user_idTextThe ID of the user who joined the channel

Message Pinned ​

Triggers when a message is pinned to a channel

Settings

FieldTypeRequiredDescription
URL Group › Callback URLTextYesCopy this URL and paste it in your Slack app's Event Subscriptions settings

Output

Later steps use this data through Current Trigger in the $ picker. For example, channel_id is $trigger.output.channel_id.

json
{
  "channel_id": "string",
  "event_type": "string",
  "message_ts": "string",
  "team": "string",
  "user_id": "string"
}

Example values show the shape of the data, not real values. See Using data from earlier steps.

Field descriptions
FieldTypeDescription
channel_idTextThe ID of the channel where the message was pinned
event_typeTextThe type of event (pin_added)
message_tsTextThe timestamp of the pinned message
teamTextThe team ID (workspace)
user_idTextThe ID of the user who pinned the message

Message Unpinned ​

Triggers when a message is unpinned from a channel

Settings

FieldTypeRequiredDescription
URL Group › Callback URLTextYesCopy this URL and paste it in your Slack app's Event Subscriptions settings

Output

Later steps use this data through Current Trigger in the $ picker. For example, channel_id is $trigger.output.channel_id.

json
{
  "channel_id": "string",
  "event_type": "string",
  "message_ts": "string",
  "team": "string",
  "user_id": "string"
}

Example values show the shape of the data, not real values. See Using data from earlier steps.

Field descriptions
FieldTypeDescription
channel_idTextThe ID of the channel where the message was unpinned
event_typeTextThe type of event (pin_removed)
message_tsTextThe timestamp of the unpinned message
teamTextThe team ID (workspace)
user_idTextThe ID of the user who unpinned the message

User Mentioned ​

Triggers when a specific user is mentioned in a channel

Settings

FieldTypeRequiredDescription
URL Group › Callback URLTextYesCopy this URL and paste it in your Slack app's Event Subscriptions settings
User ID to MonitorTextThe Slack user ID to monitor for mentions (e.g., U1234567890). Leave empty to monitor all user mentions.
Channel FilterTextComma-separated list of channel IDs to monitor (e.g., C123,C456). Leave empty to monitor all channels.

Output

Later steps use this data through Current Trigger in the $ picker. For example, channel_id is $trigger.output.channel_id.

json
{
  "channel_id": "string",
  "event_type": "string",
  "mentioned_user_id": "string",
  "team": "string",
  "text": "string",
  "ts": "string",
  "user_id": "string"
}

Example values show the shape of the data, not real values. See Using data from earlier steps.

Field descriptions
FieldTypeDescription
channel_idTextThe ID of the channel where the mention occurred
event_typeTextThe type of event (message with mention)
mentioned_user_idTextThe ID of the user who was mentioned
teamTextThe team ID (workspace)
textTextThe text content of the message containing the mention
tsTextThe timestamp of the message
user_idTextThe ID of the user who sent the message with the mention

Bot Mentioned ​

Triggers when the bot is mentioned in a channel

Settings

FieldTypeRequiredDescription
URL Group › Callback URLTextYesCopy this URL and paste it in your Slack app's Event Subscriptions settings
Channel FilterTextComma-separated list of channel IDs to monitor (e.g., C123,C456). Leave empty to monitor all channels.

Output

Later steps use this data through Current Trigger in the $ picker. For example, channel_id is $trigger.output.channel_id.

json
{
  "channel_id": "string",
  "event_type": "string",
  "team": "string",
  "text": "string",
  "ts": "string",
  "user_id": "string"
}

Example values show the shape of the data, not real values. See Using data from earlier steps.

Field descriptions
FieldTypeDescription
channel_idTextThe ID of the channel where the bot was mentioned
event_typeTextThe type of event (app_mention)
teamTextThe team ID (workspace)
textTextThe text content of the message mentioning the bot
tsTextThe timestamp of the message
user_idTextThe ID of the user who mentioned the bot

Message Received ​

Triggers when the bot receives a direct message

Settings

FieldTypeRequiredDescription
URL Group › Callback URLTextYesCopy this URL and paste it in your Slack app's Event Subscriptions settings

Output

Later steps use this data through Current Trigger in the $ picker. For example, channel_id is $trigger.output.channel_id.

json
{
  "channel_id": "string",
  "event_type": "string",
  "team": "string",
  "text": "string",
  "ts": "string",
  "user_id": "string"
}

Example values show the shape of the data, not real values. See Using data from earlier steps.

Field descriptions
FieldTypeDescription
channel_idTextThe ID of the DM channel
event_typeTextThe type of event (message.im)
teamTextThe team ID (workspace)
textTextThe text content of the direct message
tsTextThe timestamp of the message
user_idTextThe ID of the user who sent the DM

Reaction ​

Triggers when a reaction is added to a message

Settings

FieldTypeRequiredDescription
URL Group › Callback URLTextYesCopy this URL and paste it in your Slack app's Event Subscriptions settings
Emoji FilterTextComma-separated list of emoji names to monitor (e.g., thumbsup,heart,eyes). Leave empty to monitor all reactions.
Channel FilterTextComma-separated list of channel IDs to monitor (e.g., C123,C456). Leave empty to monitor all channels.

Output

Later steps use this data through Current Trigger in the $ picker. For example, channel_id is $trigger.output.channel_id.

json
{
  "channel_id": "string",
  "event_type": "string",
  "item_user": "string",
  "message_ts": "string",
  "reaction": "thumbsup",
  "team": "string",
  "user_id": "string"
}

Example values show the shape of the data, not real values. See Using data from earlier steps.

Field descriptions
FieldTypeDescription
channel_idTextThe ID of the channel where the reaction was added
event_typeTextThe type of event (reaction_added)
item_userTextThe ID of the user who created the original item
message_tsTextThe timestamp of the message that was reacted to
reactionTextThe name of the emoji reaction (e.g., thumbsup, heart)
teamTextThe team ID (workspace)
user_idTextThe ID of the user who added the reaction

Actions ​

Steps this node can perform. Add one from Add a step, then pick the action.

List Channels ​

List channels in the workspace

Settings

FieldTypeRequiredDescription
Exclude ArchivedYes / NoWhether to exclude archived channels
Default: true
Channel TypesChoiceTypes of channels to include
Options: Public Channels
Default: public_channel

Output

Later steps use this data by picking this step in the $ picker. For example, channel_count is $.<step ID>.output.channel_count.

json
{
  "channel_count": 0,
  "channel_ids": [
    "string"
  ],
  "channel_names": [
    "string"
  ],
  "channels": [
    {
      "created": 0,
      "creator": "string",
      "id": "string",
      "is_archived": false,
      "is_general": false,
      "is_member": false,
      "is_private": false,
      "name": "string",
      "num_members": 0,
      "purpose": "string",
      "topic": "string"
    }
  ],
  "has_more": false,
  "next_cursor": "string",
  "success": false
}

Example values show the shape of the data, not real values. See Using data from earlier steps.

Field descriptions
FieldTypeDescription
channel_countNumberNumber of channels on this page
channel_ids[]ListIDs of the channels on this page, in order
channel_names[]ListNames of the channels on this page, in order
channels[]ListChannels on this page
channels[].createdNumberCreation time in Unix seconds
channels[].creatorTextUser ID of the channel creator
channels[].idTextChannel ID
channels[].is_archivedYes / NoWhether the channel is archived
channels[].is_generalYes / NoWhether this is the workspace general channel
channels[].is_memberYes / NoWhether the bot is a member
channels[].is_privateYes / NoWhether the channel is private
channels[].nameTextChannel name
channels[].num_membersNumberNumber of members
channels[].purposeTextPurpose text
channels[].topicTextTopic text
has_moreYes / NoWhether more channels are available
next_cursorTextCursor for the next page; absent on the last page
successYes / NoTrue when Slack returned the list

Get Channel Info ​

Get information about a Slack channel

Settings

FieldTypeRequiredDescription
Channel IDTextYesThe ID of the channel to get information about

Output

Later steps use this data by picking this step in the $ picker. For example, channel is $.<step ID>.output.channel.

json
{
  "channel": {},
  "channel_id": "string",
  "channel_name": "string",
  "is_archived": false,
  "is_private": false,
  "member_count": 0,
  "purpose": "string",
  "success": false,
  "topic": "string"
}

Example values show the shape of the data, not real values. See Using data from earlier steps.

Field descriptions
FieldTypeDescription
channelObjectThe full channel object returned by Slack conversations.info (id, name, topic, purpose, members, ...)
channel_idTextChannel ID
channel_nameTextChannel name
is_archivedYes / NoWhether the channel is archived
is_privateYes / NoWhether the channel is private
member_countNumberNumber of member IDs Slack returned with the channel
purposeTextPurpose text; absent when the channel has no purpose
successYes / NoTrue when Slack returned the channel
topicTextTopic text; absent when the channel has no topic

Get User Info ​

Get information about a Slack user

Settings

FieldTypeRequiredDescription
User IDTextYesThe ID of the user to get information about

Output

Later steps use this data by picking this step in the $ picker. For example, avatar is $.<step ID>.output.avatar.

json
{
  "avatar": "string",
  "display_name": "string",
  "email": "string",
  "is_admin": false,
  "is_bot": false,
  "profile": {},
  "real_name": "string",
  "status": "string",
  "success": false,
  "user": {},
  "user_id": "string",
  "username": "string"
}

Example values show the shape of the data, not real values. See Using data from earlier steps.

Field descriptions
FieldTypeDescription
avatarTextURL of the 192px avatar; absent when not set
display_nameTextDisplay name; absent when not set
emailTextEmail address; absent when not set or not visible
is_adminYes / NoWhether the user is a workspace admin
is_botYes / NoWhether the user is a bot
profileObjectThe full user profile returned by Slack (email, display_name, title, image_192, ...)
real_nameTextFull name
statusTextStatus text; absent when not set
successYes / NoTrue when Slack returned the user
userObjectThe full user object returned by Slack users.info (id, team_id, name, real_name, tz, ...)
user_idTextUser ID
usernameTextUsername

Send Message ​

Send a message to a Slack channel or user

Settings

FieldTypeRequiredDescription
Channel IDTextYesThe ID of the channel or user to send the message to
Message TextTextYesThe text content of the message
Message TypeChoiceThe type of message to send
Options: Text, Attachments, Blocks
Default: text
AttachmentsCodeJSON string of message attachments (for legacy formatting)
BlocksCodeJSON string of Block Kit blocks

Output

Later steps use this data by picking this step in the $ picker. For example, channel is $.<step ID>.output.channel.

json
{
  "channel": "string",
  "message": "string",
  "message_ts": "string",
  "success": false
}

Example values show the shape of the data, not real values. See Using data from earlier steps.

Field descriptions
FieldTypeDescription
channelText
messageAny
message.attachments[]ListLegacy attachments. Elements are free-form Slack attachment objects
message.blocks[]ListBlock Kit blocks. Elements are free-form Block Kit objects
message.textTextMessage text
message.tsTextMessage timestamp
message.usernameTextUsername if available
message_tsText
successYes / No