Overview

Perform operations on users, channels, and chats via the Workflow Automator


Description

Orchestration apps let you automate repeatable tasks and actions that span across a diverse set of systems and applications using workflows. The list of actions supported for this app include:

  1. User Management

  • Lookup User By Email(Find a user with an email address)

  • Get User Info

  • Get User Presence

  • Invite User

  • Update User

  • Deactivate User

  1. Channel Management  

  • Create Channel

  • Archive Channel

  • Add User to Channel

  • Add User to Channel by Email

  • Remove User from Channel

  • Set Topic

  • Set Purpose

  1. Chat Management 

  • Get Conversations History

  • Attach Conversation History to Ticket Note

  • Post a Message


Note: Refer here for formatting the text. and for posting a message, App needs to be part of the channel. To add an App to the channel, go to the workspace, select the channel you want to add the app to. Then, click on Add an app and select app, click add. 



Prerequisites

How to sign up for an account?

  1. Sign up for an account here.



To install and authenticate the app, you need to enter the OAuth token.

  • Token

  • Freshservice Domain

  • Freshservice API Key



To get the OAuth token, you must create a Slack App by using the following steps.

  1. Sign In to your slack account.

  1. Visit https://api.slack.com/apps link. You will find the option to create a new app, create it.


  1. In Add feature and functionality, select Permissions > Scopes.



  1. Please choose scopes as per need either follow step 5 or 6. 



5. Select Bot Token scopes as required (Scopes shown here are action-specific).

                   1. Add User to Channel: 

                         - channels:manage

                         - groups:write

                         - im:write

                         - mpim:write 


                   2. Archive Channel

                         - channels:manage

                         - groups:write  

                         - im:write  

                         - mpim:write


                   3. Create Channel

                          - channels:manage  

                          - groups:write  

                          - im:write  

                          - mpim:write

                   

                   4. Remove User from Channel

                          - channels:manage  

                          - groups:write  

                          - im:write  

                          - mpim:write


                   5. Post a Message        

                          - chat:write


                  6. Lookup User By email        

                          - users:read.email 


                  7. Add User to Channel by Email

                          - users:read.email 

                          - channels:manage  

                          - groups:write  

                          - im:write  

                          - mpim:write 


                 8. Get Conversations History

                         - channels:history  

                         - groups:history  

                         - im:history  

                         - mpim:history


                 9. Attach Conversation History to Ticket Note

                         - channels:history  

                         - groups:history  

                         - im:history  

                         - mpim:history 

                         - channels:read  

                         - groups:read  

                         - im:read  

                         - mpim:read 

                         - users:read  


  10. Set Topic

  • channels:manage

  • groups:write

  • im:write

  • mpim:write


  11. Set Purpose

  • channels:manage

  • groups:write

  • im:write

  • mpim:write


6. Select User OAuth scopes as required. (Scopes shown here are action-specific).

                   1. Add User to Channel: 

                          - channels:write

                          - groups:write

                          - im:write

                          - mpim:write 


                   2. Archive Channel

                          - channels:write

                          - groups:write  

                          - im:write  

                          - mpim:write


                   3. Create Channel

                          - channels:write  

                          - groups:write  

                          - im:write  

                          - mpim:write

                   

                  4. Remove User from Channel

                          - channels:write  

                          - groups:write  

                          - im:write  

                          - mpim:write


                   5. Post a Message        

                          - chat:write  


                  6. Lookup User - By email        

                          - users:read.email 


                  7. Add User to Channel by Email

                          - users:read.write 

                          - channels:manage  

                          - groups:write  

                          - im:write  

                          - mpim:write 


                 8. Get Conversations History

                         - channels:history  

                         - groups:history  

                         - im:history  

                         - mpim:history 


                 9. Attach Conversation History to Ticket Note

                         - channels:history  

                         - groups:history  

                         - im:history  

                         - mpim:history 

                         - channels:read  

                         - groups:read  

                         - im:read  

                         - mpim:read 

                         - users:read


                 10. Invite User

                        - admin


                  11. Update User

                        - admin


                  12. Deactivate User

                        - admin


  13. Set Topic

  • channels:manage

  • groups:write

  • im:write

  • mpim:write


  14. Set Purpose

  • channels:manage

  • groups:write

  • im:write

  • mpim:write



Note: We recommend using Bot Token. To use user management actions(Invite/Update/Deactivate user), OAuth token with the admin scope is required, works with Slack Plus plan or Slack Enterprise Grid and the app must be installed organization-wide.


  1. Install the app to your workspace(In case of organization-wide installation, find the Org Level Apps section in the app config sidebar, and press the Opt-in button.). After installation, a token is automatically generated for OAuth Access Token and Bot User OAuth Access Token. 



Organization-wide installation





To get Freshservice Domain and Freshservice API Key, follow these steps

  1. Log in to your Freshservice account

  2. Get Domain name listed in the URL (Ex: example.freshservice.com)


  1. Click on your Profile Picture on the top right and select Profile Settings

  1. In the sidebar on the right, you will find the API Key

Usecases

Now that you've successfully installed the Slack orchestration app, please have a look at the sample use cases below to show how the app can be used efficiently.