Skip to content

Slack

Node: slack · Full type: n8n-nodes-base.slack · Version: 2.4

Credentials

slackApi (alias: @slack) / slackOAuth2Api (alias: @slack)

CREDENTIAL @slack = slackApi "My Slack"

Operations

Resource: channel

archive

Parameter Type Default Details
channelId resourceLocator {...} modes: list, id, url

close

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url

create

Parameter Type Default Details
channelId string "" required
channelVisibility options "public" required; public, private

get

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url
options collection {} keys: includeNumMembers

getAll

Parameter Type Default Details
returnAll boolean false
limit number 50
filters collection {} keys: excludeArchived, types

history

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url
returnAll boolean false
limit number 50
filters collection {} keys: inclusive, latest, oldest

invite

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url
userIds multiOptions [] required

join

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url

kick

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url
userId options ""

leave

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url

member

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url
returnAll boolean false
limit number 100
resolveData boolean false

open

Parameter Type Default Details
options collection {} keys: channelId, returnIm, users

rename

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url
name string "" required

replies

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url
ts number required
returnAll boolean false
limit number 50
filters collection {} keys: inclusive, latest, oldest

setPurpose

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url
purpose string "" required

setTopic

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url
topic string "" required

unarchive

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url

Resource: file

get

Parameter Type Default Details
fileId string ""

getAll

Parameter Type Default Details
returnAll boolean false
limit number 50
filters collection {} keys: channelId, showFilesHidden, tsFrom, tsTo, types, userId

upload

Parameter Type Default Details
binaryData boolean false
fileContent string ""
binaryPropertyName string "data" required
binaryPropertyName string "data" required
options collection {} keys: channelIds, channelId, fileName, initialComment, threadTs, title

Resource: message

delete

Parameter Type Default Details
select options "" required; channel, user
channelId resourceLocator {...} required; modes: list, id, url
user resourceLocator {...} modes: list, id
timestamp number required
Parameter Type Default Details
channelId resourceLocator {...} modes: list, id, url
timestamp number required
Parameter Type Default Details
query string "" required
sort options "desc" desc, asc, relevance
returnAll boolean false
limit number 25
options collection {} keys: searchChannel

post

Parameter Type Default Details
select options "" required; channel, user
channelId resourceLocator {...} required; modes: list, id, name, url
user resourceLocator {...} modes: list, id, username
messageType options "text" text, block, attachment
text string "" required
blocksUi string "" required
text string ""
attachments collection {} keys: fallback, text, title, title_link, color, pretext, ...
otherOptions collection {} keys: includeLinkToWorkflow, botProfile, link_names, thread_ts, mrkdwn, unfurl_links, ...

sendAndWait

Parameter Type Default Details
select options "user" required; channel, user
channelId resourceLocator {...} required; modes: list, id, name, url
user resourceLocator {...} modes: list, id, username
message string "" required
responseType options "approval" approval, freeText, customForm
defineForm options "fields" fields, json
jsonOutput json "[
{
"fieldLabel": "Name",
"..."
formFields fixedCollection {} groups: values
formFields fixedCollection {} groups: values
approvalOptions fixedCollection {} groups: values
options collection {} keys: limitWaitTime, appendAttribution, thread_ts
options collection {} keys: messageButtonLabel, responseFormTitle, responseFormDescription, responseFormButtonLabel, responseFormCustomCss, limitWaitTime, ...

update

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url
ts number required
messageType options "text" text, block, attachment
blocksUi string "" required
text string ""
text string ""
updateFields collection {} keys: link_names, parse
otherOptions collection {} keys: includeLinkToWorkflow

Resource: reaction

add

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url
timestamp number required
name string "" required

get

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url
timestamp number required

remove

Parameter Type Default Details
channelId resourceLocator {...} required; modes: list, id, url
timestamp number required
name string "" required

Resource: star

add

Parameter Type Default Details
target options "" required; message, file
channelId resourceLocator {...} modes: list, id, url
fileId string ""
timestamp number
options collection {} keys: fileComment

delete

Parameter Type Default Details
options collection {} keys: channelId, fileId, fileComment, timestamp

getAll

Parameter Type Default Details
returnAll boolean false
limit number 50

Resource: user

info

Parameter Type Default Details
user resourceLocator {...} modes: list, id

getAll

Parameter Type Default Details
returnAll boolean false
limit number 50

getProfile

Parameter Type Default Details
user resourceLocator {...} modes: list, id

getPresence

Parameter Type Default Details
user resourceLocator {...} modes: list, id

updateProfile

Parameter Type Default Details
options collection {} keys: customFieldUi, email, first_name, last_name, status, user

Resource: userGroup

updateUsers

Parameter Type Default Details
userGroupId string "" required
users multiOptions [] required
options collection {} keys: include_count

create

Parameter Type Default Details
name string "" required
Options collection {} keys: channelIds, description, handle, include_count

disable

Parameter Type Default Details
userGroupId string "" required
options collection {} keys: include_count

enable

Parameter Type Default Details
userGroupId string "" required
option collection {} keys: include_count

getAll

Parameter Type Default Details
returnAll boolean false
limit number 100
options collection {} keys: include_count, include_disabled, include_users

getUsers

Parameter Type Default Details
userGroupId string "" required
options collection {} keys: resolveData

update

Parameter Type Default Details
userGroupId string "" required
updateFields collection {} keys: channels, description, handle, include_count, name

Common Parameters

Parameter Type Default Details
authentication options "accessToken" accessToken, oAuth2

Parameter Details

options children:

Parameter Type Default Details
includeNumMembers boolean false

filters children:

Parameter Type Default Details
excludeArchived boolean false
types multiOptions [...] multi: public_channel, private_channel, mpim, im

attachments children:

Parameter Type Default Details
fallback string ""
text string ""
title string ""
title_link string ""
color color "#ff0000"
pretext string ""
author_name string ""
author_link string ""
author_icon string ""
image_url string ""
thumb_url string ""
footer string ""
footer_icon string ""
ts number 0
fields fixedCollection {} groups: item

otherOptions children:

Parameter Type Default Details
includeLinkToWorkflow boolean true
botProfile fixedCollection {...} groups: imageValues
link_names boolean false
thread_ts fixedCollection {} groups: replyValues
mrkdwn boolean true
unfurl_links boolean false
unfurl_media boolean true
ephemeral fixedCollection {} groups: ephemeralValues
ephemeral boolean true
sendAsUser string ""

updateFields children:

Parameter Type Default Details
link_names boolean false
parse options "client" client, full, none

formFields children:

values group:

Parameter Type Default Details
fieldName string "" required
fieldLabel string "" required
fieldLabel string "" required
fieldName string ""
fieldType options "text" required; checkbox, html, date, dropdown, email, file, hiddenField, number, ... (12 total)
elementName string ""
fieldName string ""
placeholder string ""
defaultValue string ""
defaultValue dateTime ""
defaultValue string ""
defaultValue string ""
fieldValue string ""
fieldOptions fixedCollection {...} required; groups: values
fieldOptions fixedCollection {...} required; groups: values
fieldOptions fixedCollection {...} required; groups: values
multiselect boolean false
limitSelection options "unlimited" exact, range, unlimited
numberOfSelections number 1
minSelections number 0
maxSelections number 1
html string "

" | | | multipleFiles | boolean | true | | | acceptFileTypes | string | "" | | | requiredField | boolean | false | |

approvalOptions children:

values group:

Parameter Type Default Details
approvalType options "single" single, double
approveLabel string "Approve"
buttonApprovalStyle options "primary" primary, secondary
disapproveLabel string "Decline"
buttonDisapprovalStyle options "secondary" primary, secondary

Options children:

Parameter Type Default Details
channelIds multiOptions []
description string ""
handle string ""
include_count boolean true

option children:

Parameter Type Default Details
include_count boolean true

Example

NODE "slack" @slack AS "Slack" {
  resource: "channel",
  operation: "get",
  name: {{ $json.name }},
  ts: 0,
  purpose: {{ $json.purpose }}
}