Channel Operations

In this article

Overview

Use this Snap to perform the following Channel operations in your Slack workspace:

  • Archive channel
  • Create channel
  • Invite user
  • List members
  • Remove user
  • Rename channel
  • Retrieve channel info
  • Unarchive channel

Prerequisites

Add valid Slack Scopes based on the intended operation. See Required Slack Scopes below for details.

Required Slack Scopes

Any action you want to perform within a Slack workspace additionally needs appropriate Scopes assigned to your app.  See the Scope and Permissions article in Slack API documentation for the complete list and each Account page under Configuring Slack Accounts for information on defining Scopes for your app.

To

Bot Token Accounts
(scope)

User Token Accounts
(user_scope)
  • Create channel
  • Invite user
  • Remove user
  • Rename channel
channels:manage

channels:write

  • List members in a channel
  • Retrieve channel info
channels:readchannels:read
  • Archive channel
  • Unarchive channel
N/Achannels:write

Support for Ultra Pipelines

Works in Ultra Pipelines. 

Limitations

  • Snaps in this Snap Pack use conditional display/hiding of fields. So, ensure that you always use the New Form UI (and not the classic UI) for the Snaps to function as designed/expected.
  • Channel operations Archive Channel and Unarchive Channel cannot be performed using a Bot Token account. Use a User Token account instead.

Known Issues

None.

Snap Input and Output

Input/OutputType of ViewNumber of ViewsExamples of Upstream and Downstream SnapsDescription
Input 

Document

  • Min: 0
  • Max: 1
  • Mapper
  • Copy
  • JSON Generator
A document containing details required for the selected channel operation.
Output

Document

  • Min: 1
  • Max: 1
  • JSON Formatter
  • CSV Parser

A document containing the result (success/failure) of the selected channel operation.

Snap Settings

Parameter NameData TypeDescriptionDefault ValueExample 
LabelString
Specify a name for the Snap. You can modify this to be more specific, especially if you have more than one of the same Snap in your pipeline.
Channel OperationsChannel Operations
OperationDrop-down list

Select an operation from the following list of permitted channel operations and specify the corresponding details needed:

  • List Members. To retrieve the list of users subscribed to a channel. Requires Channel. 
  • Invite User. To invite a user in the workspace to a channel. Requires Channel and Users. 
  • Remove User. To remove a user from a channel. Requires Channel and User. 
  • Channel Info. To view the details of a channel, such as its creation date, purpose, creator, topic, locale, and the current number of members in the channel. Requires Channel.
  • Create Channel. To create a new channel in the workspace. Requires Name and Private.
  • Rename Channel. To rename an existing channel in the workspace. Requires Channel and New Name.
  • Archive Channel. To archive an existing channel. Requires Channel.
  • Unarchive Channel. To unarchive an archived channel. Requires Channel.
List MembersInvite User
ChannelString/Expression/Suggestion

Required for all channel operations except Create Channel.

Click the  icon and select a channel from the list of suggested channels to perform the selected channel operation. Alternatively, you can enter the channel name and/or channel ID in one of the following formats.

  • #channel.name:<11-character alphanumeric Channel ID>
  • #channel.name
  • <11-character alphanumeric Channel ID>
N/A#testprivate:G019B3ETYMB
UsersString/Expression/Suggestion

Required for channel operation - Invite User.

Click the  icon and select a user from the suggested list of users available in the workspace. Alternatively, you can enter one or more user IDs separated by commas. The user IDs are in the 11-character alphanumeric format.

The specified users are invited to join the selected channel when you run the pipeline.

N/AW01A94P7MK1, W01A94P7MK2, W01A94P7MK3
UserString/Expression/Suggestion

Required for channel operation - Remove User.

Click the  icon and select a user from the suggested list of users available in the workspace. Alternatively, you can enter the user ID in the 11-character alphanumeric format.

The specified user is removed from the selected channel when you run the pipeline.

N/AW01A94P7MK1
NameString/Expression

Required for channel operation - Create Channel.

Enter a name for the new channel.

N/ASupport_Vertical
PrivateCheck box

Required for channel operation - Create Channel.

Select this check box to keep the new channel private – visible to only members/invitees.

Not selectedSelected
New NameString/Expression

Required for channel operation - Rename Channel.

Enter the new name for the channel.

N/AReleaseTeam_Channel
Snap ExecutionDrop-down list

Select one of the three following modes in which the Snap executes:

  • Validate & Execute. Performs limited execution of the Snap and generates a data preview during Pipeline validation, then performs full execution of the Snap (unlimited records) during Pipeline runtime.
  • Execute only. Performs full execution of the Snap during Pipeline execution without generating preview data.
  • Disabled. Disables the Snap and all Snaps downstream from it.

Execute onlyValidate & Execute

Troubleshooting

ErrorReasonResolution
Unable to rename the given channel. Reason: invalid_name_specialsYou have provided an invalid name for renaming the channel.

Ensure that the name provided for the channel is valid (does not contain invalid special characters).

Unable to kick user from channel. Reason: Channel_not_foundYou have specified an invalid channel to remove the user.Ensure that the channel’s name is valid and that the user is a member of the channel.
Unable to archive channel. Reason: Channel_not_foundYou have specified an invalid channel to archive.Ensure that the channel exists in the workspace and is not archived already.
Unable to unarchive channel. Reason: Channel_not_foundYou have specified an invalid channel to unarchive.Ensure that the channel exists in the workspace and is archived already.
Input error. Reason: No Channel providedYou have not specified a channel to perform the selected channel operation.Ensure that you provide a channel in the Channel field and that it exists in this workspace.

Examples

Using Channel Operations Snap

This example uses a series of Pipelines to demonstrate the different operations that you can perform on channels using the Channel Operations Snap. All operations carried out in this example are for demonstration purposes only and these Pipelines do not reflect any actual/real-time scenario.

  1. A Pipeline with two Channel Operations Snaps to create a channel and invite one or more users to it.
  2. A Pipeline with three Channel Operations Snaps to rename a channel and retrieve users and generic information about the channel.
  3. The Remove user Snap to remove the user from the channel

Example 1: Create a channel and Invite User to join

This pipeline uses two features of the Channel Operations Snap – Create Channel and Invite User. The first Channel Operations Snap is configured to create a channel with a unique name defined as an expression. It creates the channel and displays its details in the output view.

Channel Operations Snap (Create Channel)Output

The next Snap invites a user to the channel. It displays the result of the Invite User operation in the output view.

Channel Operations Snap (Invite User)Output

Example 2: Rename a channel and view its details and subscribers

This Pipeline uses three features of the Channel Operations Snap – Rename Channel, List Members and Channel Info. 

Channel Operations Snap (Rename Channel)Output

The first Channel Operations Snap is configured to rename the channel generic_edit to generic_edited (for example purposes only). You can see the updated details in the output view. The Snap also retrieves the previous 10 names that the channel was given. The next Channel Operations Snap is configured to retrieve the list of members in the channel. 

Channel Operations Snap (List Members)Output

Based on the channel specified, this Snap returns the list of all members in the channel. You can see the updated details in the output view. The Snap also returns the entire output from the previous Snap, for each member entry retrieved. The next Channel Operations Snap is configured to retrieve details of the channel.

Channel Operations Snap (Channel Info)

Output

Based on the channel selected in this Snap, it returns the details of the channel. You can see these details in the output view.

Example 3: Remove user from the channel

This Channel Operations Snap removes the specified user from the channel. It displays the result of the Remove User operation in the output view.

Channel Operations Snap (Remove User)Output

Downloads

Important Steps to Successfully Reuse Pipelines

  1. Download and import the Pipeline into SnapLogic.
  2. Configure Snap accounts as applicable.
  3. Provide Pipeline parameters as applicable.

  File Modified

File Example 1_Slack_Channel_Operations.slp

Mar 11, 2022 by Subhajit Sengupta

File Example 2_Slack_Channel_Operations.slp

Mar 11, 2022 by Subhajit Sengupta

Snap Pack History

 Click here to expand...

Release

Snap Pack Version 

Date

Type

Updates

August 2024

main27765

 

Stable

Upgraded the org.json.json library from v20090211 to v20240303, which is fully backward compatible.

May 2024

main26341

 

Stable

Updated and certified against the current SnapLogic Platform release.

February 2024main25112 StableUpdated and certified against the current SnapLogic Platform release.
November 2023main23721 StableUpdated and certified against the current SnapLogic Platform release.
August 2023main22460 StableUpdated and certified against the current SnapLogic Platform release.

May 2023

main21015

 

Stable

Upgraded with the latest SnapLogic Platform release.

February 2023main19844 StableUpgraded with the latest SnapLogic Platform release.
November 2022main18944 StableUpgraded with the latest SnapLogic Platform release.
August 2022main17386 StableUpgraded with the latest SnapLogic Platform release.
4.29 Patch429patches16199 Latest
  • Fixed an issue with the Send Message Snap where the Snap displayed a Null Pointer Exception error when you select User Emails for the Target Type field and the user email id contained null, for example, @slackbot:null. Now, the Snap displays a valid error message.

  • Fixed an issue with the User ID field for the following Slack Snaps where the Snap failed with the User not found error when using @user.name in the User ID field.
4.29main15993 Stable

Enhanced the Slack - Send Message Snap with User Emails option for the Target Type dropdown list to send messages on Slack app using the user’s email.

4.28main14627 

Stable

Upgraded with the latest SnapLogic Platform release.
4.27main12833 StableUpgraded with the latest SnapLogic Platform release.
4.26main11181 LatestUpgraded with the latest SnapLogic Platform release.
4.25 Patch425patches10994 Latest

Improved the error messages in the Channel Operations Snap where the Snap fails with Null Pointer Exception when the account reference provided is invalid.

4.25main9554 StableNo updates made.
4.24main855613 Feb 2021StableNo updates made.

4.23

main7430

 

Stable

Initial release of the Snap Pack with the following Snaps and Accounts:


See Also