/
User Operations

User Operations

In this article

Overview

Use this Snap to perform the following operations on the users list in your Slack Workspace.

  • View User Info

  • Add User

  • Remove User

Prerequisites

Add valid Slack Scopes based on the intended operation. You must have the owner or administrator privileges to perform some of these operations. See Required Slack Scopes below for details.

Required Slack Scopes

Any action you want to perform within a Slack Workspace requires appropriate Scopes assigned to your appRefer to the Scope and Permissions article in the 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)

To

Bot Token Accounts
(scope)

User Token Accounts
(user_scope)

View lists of users in the Workspace to select from

users:read

users:read

  • Add new users to the Workspace

  • Remove user from the Workspace

N/A

admin.users: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.

  • User operations Add User and Remove User are admin-specific and cannot be performed using a Bot Token account.

Known Issues

None.

Snap Views

Input/Output

Type of View

Number of Views

Examples of Upstream and Downstream Snaps

Description

Input/Output

Type of View

Number of Views

Examples of Upstream and Downstream Snaps

Description

Input 

Document

  • Min: 0

  • Max: 1

  • Mapper

  • Copy

  • JSON Generator

A document containing information required to perform a specific User operation.

Output

Document

  • Min: 1

  • Max: 1

  • Mapper

  • Join

  • JSON Formatter

  • File Writer

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

Snap Settings

Parameter Name

Data Type

Description

Parameter Name

Data Type

Description

Label


Default value: User Operations
Example: User Operations

String

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.

Operation

 

Default value: User Info
Example: Remove User

Dropdown list

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

  • User Info: Allows you to view the details of the user, such as their full name, team, permissions, account status, and time zone. It requires a User ID.

  • Add User: Allows you to add a new user to the Workspace. Requires User ID, Team ID, and the permissions Is Restricted, Is Ultra Restricted

  • Remove User: Adds a new user to the Workspace. Requires User ID, Team ID.

User ID

 

Default value: N/A
Example:
@bsmith:W01A94P7MK1
@bsmith
W01A94P7MK1

String/Expression/Suggestion

Required for User Operations.

Click the Suggestions icon and select a user from the suggested values, which are typically the list of users available in the Workspace. Alternatively, you can enter one or more usernames and/or user IDs, separated by commas, in one of the following formats.

  • <user name:11-character alphanumeric user ID>, OR

  • <user name>, OR

  • <11-character alphanumeric user ID>

User ID is used

For User Info: To retrieve the user information.

For Add User: To add the new user with the corresponding User ID.

For Remove User: To delete the user corresponding to the User ID.

Team ID

 

Default value: N/A
Example: T01BLQ3PNMB

String/Expression/Suggestion

Required for User Operations - Add User and Remove User

Click the Suggestions  icon and select a Team (Workspace) ID from the suggested list of Team IDs to add the user to or remove the user from. 

Is Restricted

 

Default state: Deselected

Checkbox

Required for User operation - Add User

Select this checkbox to restrict the user's access to only multiple channels. If selected, the user is considered as a guest user with limited access. Do not select this check box if the user should be a Full Member.

Is Ultra Restricted

 

Default state: Deselected

Checkbox

Required for User operation - Add User

Select this checkbox to restrict the user's access to a single channel. If selected, the user is considered as a guest user with very limited access. Do not select this check box if the user should be a Full Member.

Snap Execution

 

Default value: Execute only
Example: Validate & Execute

Dropdown 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.

Troubleshooting

Error

Reason

Resolution

Error

Reason

Resolution

Unable to suggest workspaces; Reason: missing_scope

You do not have the required permissions to list the users of this Workspace and perform the selected operation.

Except for User Operation—User Info, ensure that you have the required admin or owner privileges to perform operations on users. Also, make sure that you have assigned the required Scopes to your Slack app.

IO error while validating the given token, Reason: timeout

The Snap connection with your Slack App could not be established due to a timeout error during token validation.

Check your network connectivity and account configuration and retry running/validating your Pipeline/Snap.

Failure: Input error, Reason: User ID missing

This Snap does not perform any action in the absence of a valid User ID.

Provide a valid User ID (typically select from the suggested users list)and save your Snap settings.

Examples

Retrieve a user's information and write it to a file

This example demonstrates the only user operation that you can perform without admin/owner privileges on your Slack app, that is User Info. using the User Operations Snap. All operations carried out in this example are for demonstration purposes only and the Pipeline reflects the actual/real-time behavior but not the values, either used or retrieved.

We use the User Operations Snap with User Info operation selected, to retrieve the user's information. We also provide the User ID of the user in this Snap. Alternatively, you can select the user from the suggested list of users using the  icon. The Snap fetches the user's details and presents it in the output (see the following Output).

User Operations

Output

User Operations

Output

To write the extracted user information into a file for further use, we connect a JSON Formatter Snap and a File Writer Snap, in that order. See the preview of the file we created using the File Writer Snap below.

Download this Pipeline

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_Slack_UserOperations.slp

Mar 11, 2022 by Subhajit Sengupta


See Also