Skip to main content

Slack request types

Learn about different Slack requests.


Create channel

Whether you're kicking off a new project or your team needs a place for ongoing discussion on a topic, you can create channels to keep relevant conversations organized. Use this request to create public or private channels in your Slack workspace.

Parameters

  • Channel name: Name of the channel that will be created. It is a freeform text field. Can be set as static or dynamic.
  • Channel type: The type of the channel that will be created. It is a dropdown field. Can be set as static or dynamic. Static values are Public or Private.

Example responses

Common successful response

{
"channel":{
"name":"endeavor",
"id":"C0EAQDV4Z"
}
}

Common error response

{
"type":"slack",
"errorContext":{
"type":"genericError",
"requestDefinitionId":"c5417513-bc1c-4638-9b1c-e91ca86170ed",
"requestName":"createChannel",
"errorCode":5002,
"errorCodeDisplay":"Could not execute Slack request successfully",
"errorMessage":"name_taken"
},
"rawResponse":{

},
"requestName":"createChannel",
"durationInMillis":194
}

Set channel topic

Channel topic lets people know what members in a channel are working on, or about important dates like incident updates. Use this request to set a topic for your collaboration channel.

Parameters

  • Channel: The channel that will a topic will be set. It is a dropdown field. Can be set as static or dynamic. Static values are the list of public channels in the connected Slack workspace.
  • Topic: Topic you want to set for selected channel. It is a freeform text field. Can be set as static or dynamic.

Example responses

{
"topic":"Apply topically for best effects",
"channel":{
"name":"tips-and-tricks",
"id":"C12345678"
}
}

Set channel purpose

A channel's purpose is a short description of the channel's intended use. It appears when users browse channels and in the channel details panel. Use this request to set a specific purpose for your collaboration channel.

Parameters

  • Channel: The channel that will a purpose will be set. It is a dropdown field. Can be set as static or dynamic. Static values are the list of public channels in the connected Slack workspace.
  • Purpose: Topic you want to set for selected channel. It is a freeform text field. Can be set as static or dynamic.

Example responses

{
"purpose":"My more special purpose",
"channel":{
"name":"endeavor",
"id":"C0EAQDV4Z"
}
}

Archive channel

When a channel is no longer needed, it can be archived. Archived channels are closed to new activity, but the message history is retained and searchable. You can use this request to archive a selected channel.

Parameters

  • Channel: The channel that will be archived. It is a dropdown field. Can be set as static or dynamic. Static values are the list of public channels in the connected Slack workspace.

List channels

Slack channels are the best way to keep conversations about various projects, topics, or teams. Use this request to list all channels in your Slack workspace. Enable Exclude archived channels option to only list active channels.

Parameters

  • Exclude archived channels (optional): When enabled, response of the Slack request does not return archived channels.

Example responses

{
"channels":[
{
"name":"random",
"id":"C03M134FHJB"
},
{
"name":"general",
"id":"C03M92YT14N"
}
]
}

Invite users to a channel

Add people to channels to bring the right people and information in your workspace together in one place. Use this request to add Slack users to your collaboration channel. You can add up to 1,000 people to a channel at once.

Parameters

  • Channel: The channel that selected users will be invited. It is a dropdown field. Can be set as static or dynamic. Static values are the list of public channels in the connected Slack workspace.
  • Users: Slack users that will be invited to selected channel. It is a multi-select dropdown field. Can be set as static or dynamic. Static values are the list of Slack users in the connected Slack workspace.

Example responses

{
"users":[
{
"id":"U123456789"
}
],
"channel":{
"name":"endeavor",
"id":"C0EAQDV4Z"
}
}

Send a message to a channel

Slack channels are the best way to keep conversations about various projects, topics, or teams. Use this request to send your message to a specific channel.

Parameters

  • Channel: The channel that message will be posted. It is a dropdown field. Can be set as static or dynamic. Static values are the list of public channels in the connected Slack workspace.
  • Message: Message you want to send to selected channel. It is a freeform text field. Can be set as static or dynamic.
  • Bot icon (optional): The icon of the sender, replaces Actioner's logo. It is a freeform text field. You can add the URL of an image. Can be set as static or dynamic. When empty, it is set as Actioner's logo.
  • Bot name (optional): The name of the sender, replaces Actioner's name. It is a freeform text field. Can be set as static or dynamic. When empty, it is set as Actioner.
  • Parent message timestamp (optional): The timestamp of the parent message. It is a freeform text field. Can be set as static or dynamic. When empty, the message is sent directly to channel. If it is set with a timestamp value, message is sent as a thread to parent message.

Example responses

Common successful response

{
"channel":{
"id":"C0EAQDV4Z"
},
"message":{
"text":"Here's a message for you",
"ts":"1503435956.000247"
}
}

Common error response

{
"type":"slack",
"errorContext":{
"type":"genericError",
"requestDefinitionId":"6ab955e6-6322-456d-b354-265f92c01600",
"requestName":"sendMessage",
"errorCode":5002,
"errorCodeDisplay":"Could not execute Slack request successfully",
"errorMessage":"invalid_blocks"
},
"rawResponse":{

},
"requestName":"sendMessage",
"durationInMillis":223
}

Send a direct message

Direct messages work well for one-off conversations that don’t require an entire channel of people to weigh in. They are smaller conversations in Slack that happen outside of channels. Use this request to send separate direct messages to one or multiple people.

Parameters

  • Message: Message you want to send to selected users. It is a freeform text field. Can be set as static or dynamic.
  • Users: Slack users that will get the message. It is a multi-select dropdown field. Can be set as static or dynamic. Static values are the list of Slack users in the connected Slack workspace.
  • Bot icon (optional): The icon of the sender, replaces Actioner's logo. It is a freeform text field. You can add the URL of an image. Can be set as static or dynamic. When empty, it is set as Actioner's logo.
  • Bot name (optional): The name of the sender, replaces Actioner's name. It is a freeform text field. Can be set as static or dynamic. When empty, it is set as Actioner.

Example responses

{
"message":{
"tsByUserId":{
"U03M92YRYUW":"1667546871.198239"
},
"text":"Here's a message for you"
}
}

Send a message to multiparty conversation

Direct messages work well for one-off conversations that don’t require an entire channel of people to weigh in. They are smaller conversations in Slack that happen outside of channels. Use this request to send a direct message to multiple people in the same conversation.

Parameters

  • Message: Message you want to send to selected users. It is a freeform text field. Can be set as static or dynamic.
  • Users: Slack users that will get the message. It is a multi-select dropdown field. Can be set as static or dynamic. Static values are the list of Slack users in the connected Slack workspace.
  • Bot icon (optional): The icon of the sender, replaces Actioner's logo. It is a freeform text field. You can add the URL of an image. Can be set as static or dynamic. When empty, it is set as Actioner's logo.
  • Bot name (optional): The name of the sender, replaces Actioner's name. It is a freeform text field. Can be set as static or dynamic. When empty, it is set as Actioner.

List users

Use this request to list users in your Slack workspace. From the list, find people you want to invite to a channel, send a message or mention when your action is run.

Parameters

  • This request does not take any parameters.

Example responses

{
"users":[
{
"is_app_user":false,
"profile":{

},
"name":"Slackbot",
"id":"USLACKBOT",
"is_bot":false
},
{
"is_app_user":false,
"profile":{
"picture_url":"https://.../avatar/e3b51ca72dee4ef87916ae2b9240df50.jpg",
"email":"joe@hitchhikers.com"
},
"name":"Joe",
"id":"U123456789",
"is_bot":false
},
{
"is_app_user":false,
"profile":{

},
"name":"Actioner",
"id":"U03MJ5G3JP6",
"is_bot":true
}
]
}

List channel users

Use this request to get the list of Slack users in the selected channel. From the list, find people you want to invite to another channel.

Parameters

  • Channel: The channel that its users will be listed. It is a dropdown field. Can be set as static or dynamic. Static values are the list of public channels in the connected Slack workspace.

List user groups

User groups allow you to communicate with many members at once, without limiting you to communicating within a channel. You can @ a user group’s name – @engineers, @marketing – anywhere, and everyone is notified no matter where you send the message, originally. Use this request to list user groups in your Slack workspace.

Parameters

  • This request does not take any parameters.

Example responses

Common successful response

{
"usergroups":[
{
"name":"Team Admins",
"id":"S0614TZR7",
"users":[
{
"id":"U123456789"
},
{
"id":"U060R4BJ4"
}
]
}
]
}

Update a message

A message captures a specific moment in time. But you might want to publish messages to communicate something that changes over time. Perhaps its the progress of a long-running database request, or maybe just a simple message asking a user to wait for the response of an external API request. In these cases and others, use this request to modify messages from their original form.

Note

This Slack request can only update messages sent by Actioner.

Parameters

  • Message: New message that will replace the original message. It is a freeform text field. Can be set as static or dynamic.
  • Parent message timestamp (optional): The timestamp of the parent message. It is a freeform text field. Can be set as static or dynamic. When empty, the message is sent directly to channel. If it is set with a timestamp value, message is sent as a thread to parent message.
  • Channel: The channel that will the message will be updated. It is a dropdown field. Can be set as static or dynamic. Static values are the list of public channels in the connected Slack workspace.

Example responses

Common successful response

{
"channel":{
"id":"C0EAQDV4Z"
},
"message":{
"text":"Here's the updated message",
"ts":"1503435956.000247"
}
}

You can get messages from Slack when you need more context or key information from conversations. Use this request to get the permalink of a specific Slack message.

Parameters

  • Message timestamp: The timestamp of the message that you want to get the permalink of. It is a freeform text field. Can be set as static or dynamic.
  • Channel: The channel that the message -that you want to get the permalink of- is posted. It is a dropdown field. Can be set as static or dynamic. Static values are the list of public channels in the connected Slack workspace.

Example responses

Common successful response

{
"channel": "C1H9RESGA",
"permalink": "https://ghostbusters.slack.com/archives/C1H9RESGL/p135854651700023?thread_ts=1358546515.000008&cid=C1H9RESGL"
}

Common error response

{
"type":"slack",
"errorContext":{
"type":"genericError",
"requestDefinitionId":"b2b981ed-2acf-4ef9-890b-57d6c3e53698",
"requestName":"getMessageLink",
"errorCode":5002,
"errorCodeDisplay":"Could not execute Slack request successfully",
"errorMessage":"message_not_found"
},
"rawResponse":{

},
"requestName":"getMessageLink",
"durationInMillis":207
}

Get Slack user(s) by email

Use this request to retrieve Slack user(s) by looking them up via their registered email.

Parameters

  • Emails: The list of email addresses belonging Slack users in the connected Slack workspace. It is a freeform text field. Can be set as static or dynamic.

Example responses

Common successful response

{
"users":[
{
"is_app_user":false,
"profile":{
"picture_url":"https://.../avatar/e3b51ca72dee4ef87916ae2b9240df50.jpg",
"email":"joe@hitchhikers.com"
},
"name":"Joe",
"id":"U123456789",
"is_bot":false
}
]
}

Get Slack user(s) by ID

Use this request to retrieve Slack user(s) by looking them up via their user's ID in Actioner.

Parameters

  • Actioner user ID list: Comma-separated list of Actioner user IDs. It is a freeform text field. Can be set as static or dynamic.