UiPath Integration with ServiceNow and Slack Use Case

UiPath Integration with ServiceNow and Slack Use Case

Introduction

In the previous article we have successfully configured UiPath Integration Service to connect with ServiceNow and Slack. Next, let's explore a working example where I'll solve the known “Calculate Client Security Hash” with a different approach.

In this second part, I'll cover the following: 

1. Working example of UiPath Integration Service with ServiceNow and Slack 

2. How to define the trigger based on events received from ServiceNow 

3. Important workflow to get required input data and working 

UiPath Integration Service with ServiceNow and Slack

The idea here is to showcase the “Triggers” working and use integration services in your UiPath automation workflow. Here's a high-level process diagram. 

process-flow-diagram

Problem statement

1. Trigger UiPath Un-Attendant Automation based on Incident Tickets in SNOW

2. Retrieve the incident description containing the work items details

3. Send Tickets details to Slack #incidents channel

4. Navigate to the “ACME” Website

5. Generate the Security Hash for each Client based on their personal information.

6. Update work items (Status as Completed & Security hash as a comment)

7. Update Status details to Slack #Incidents channel.

8. The close incident in SNOW

That said, let's see how we should be able to configure ServiceNow and Slack integration.

How to use UiPath Integration Service in Studio

To manage and use UiPath Integration Service connection in UiPath Studio, is mandatory to include the required package. 

 For the above example, we need to use SNOW Activities and Slack Activities. Once you configure them for the project you should be able to use them as any other UiPath Activities for Activities panels in the Studio.

manage-package-for-integration-services

Important code block

Covering each line of code is beyond the scope of this article however you should be able to download the code from the repository and change it as per your need.

However, you should be able to download the complete code from the GitHub location here.

We have published this process as “UiPathIntegrationServiceExample”. Please note the name of the process will be used while defining the trigger.

creating-process-in-uipath-orchestrator

Main workflow process

A transactional workflow template has been used to build this process in order not to complicate the workflow and you can choose other templates as well. On a high level, the robot will perform the following: 

1. INIT –> read required config values and assets fromUiPath Orchestrator 

2. Get input from SNOW ->  ServiceNow is used to get Incident records and passed as a data table in subsequent flow for further processing

3. Next, validate the incident type and data, if the incident is retrieved perform the required action on ACME Website

4. Update the SNOW ticket with comments and send notification on slack 

5. Completion

high-level-code-block

Getting incident details from ServiceNow

1. Drag ServiceNow scope from the activities panel and hit “configure”.

2. In the pop-up screen, the connection test page will be displayed if you are connected withUiPath Orchestrator.

3. Next from the activities panel select “Object” -> “Get Record” to configure your workflow to get data from required tables from SNOW Instance. (for our example we will configure to get data from incident tables with a selection of a few columns as output in the data table for the bot to process work in the target system). 

4. In particular, the Description field from ServiceNow will be used from the Incident ticket to identify the WIID and Status. (Via String Manipulation & Assign them to the data table for further processing.)

 

uipath-snow-integration-services-for-incident-ticket

Sending message to Slack

1. Similar to service now activities, you should be able to use use the Slack Scope activity

2. Drag SlackScope from the activities panel and hit “configure”. 

In the pop-up window; Test the connection

3. Next drag the “Send Message” activity. You need to pass your

4. Channel ID and the Text message you need to send. (See the first part of the article to know how to get Channel ID) 

5. The complete workflow will like below. 

Creating trigger for Integration Service

As discussed in the previous post, triggers help you start your process in an unattended mode based on the evet received from the target system. (In our example SNOW will be sending the Event Object Type & Objeject ID as an argument to main .xaml)

To receive details of the record that resulted in the event, you can define the following input arguments of type String in your process and Integration Service will populate them when it starts the job. 

1. UiPathEventConnector 

2. UiPathEvent 

3. UiPathEventObjectType

4.UiPathEventObjectId 

How to add trigger 

1. Navigate to UiPath Integration Service-> Triggers

2. You will see a page like below, where you can add a trigger

uipath-slack-integration-services-for-sending-notification

3. Once you click on “Add Trigger”, In the new window select the connector and process that needs to be executed

4. Make sure your process is created in the orchestrator and the required runtime licence is assigned to the robot on which process needs to be executed

5. Make sure to select the Required Runtime as “NonProduction” or “Unattended”

6. Next, Select the Required Connection, Event (for Example New Record Creation)

6. In the Configuration, you should be able to select the table on which event has to be triggered. (In our example we are using the Incident)

7. Additionally, you should be able to apply filter conditions on data based on parameters. 

All set, let's see the robot in the action.

Sample incident ticket

1. The robot is configured to read the short description and other required fields. For our example, we have used a fixed pattern in the description field of the incident to get the required information for processing. Example:  

1.1 WIID:82379865 

1.2 Type: Type 

1.3 Status: Open

1.4 Description: Calculate Client Security Hash for WIID:82379865 

2. The robot will also update the ticket and mark that as closed after updating the comment.

See screen below: 

incident-ticket-output

Sample Slack message

slack-messages

That’s all for now. 

Keeping this use case in mind  should enable you to extend and develop other scenarios to cover automation ideas around integration.  

Conclusion

As the use cases for business automation are increasing inside our organizations, think of automation scenarios which requires ten entirely different systems to complete the process end to end. UiPath Integration Service comes with a large and growing catalog of popular, pre-built connectors to explore.  

UiPath Integration Service seamlessly combines world-class UI and API automation, allowing both capabilities to be centrally accessed within the same integration design environment. This empowers developers to flexibly capture all their automation opportunities—even allowing them to deploy both types of integrations within single automation. 

 

References

About the ServiceNow connector

Connectors

Basic app setup | Slack 

UiPath Integration Service Example with ServiceNow and Slack 

Satish Prasad
Satish Prasad

RPA Solutions Consultant, Iris Software Inc.