Automating ServiceNow ticket updates to a user via Bot

This guide walks you through setting up an automated system that notifies users via a bot whenever a ServiceNow ticket they've created receives an update.

This tutorial will walk you through setting up an automated system to notify users via a bot when there are updates to the tickets they've created in ServiceNow. The bot will send messages containing the ticket's status and comments from the helpdesk, ensuring users stay updated without needing to check the system manually.


Prerequisites

  • A bot
  • A Make.com account with access to enterprise apps
  • A ServiceNow account with API access to retrieve ticket data.
  • Existing tickets in ServiceNow, with users linked to them.

Demo



Configure Make scenario

Add ServiceNow module

We will start configuring our Make scenario. The first module we will add is the 'ServiceNow [Watch Records]' trigger module. This module will enable us to receive ticket updates on a periodic basis by scanning ServiceNow for ticket updates on a pre-set cadence. Ideally you would set this up to run on an hourly basis to retrieve a practical amount of ticket updates.

Set the module to monitor Ticket updates:

  • Choose the Incident table.
  • Set the event to watch for Updates.
  • Optionally, add filters to narrow down which tickets should trigger notifications. You can set them to a specific status or combine a number of filters based on your ticket management setup in ServiceNow.

Add 'Make API call' module for ServiceNow

In this step, we will add another ServiceNow module to make an API call to ServiceNow. As you will notice in the initial module output, ServiceNow only provides us the ServiceNow user id of the user who has raised the ticket. But, to be able to send them a message via a bot we will require their email address for The Bot Platform module in Make. Hence, we will utilize the API call module for ServiceNow to inquire details about the user including their name and email address.

After adding the module, paste the following in the URL section of the module:

/api/now/table/sys_user?sysparm_query=sys_id={{1.caller_id}}&sysparm_fields=user_name,email,first_name,last_name

Replace the {1.caller_id}} with the output received from the previous ServiceNow module where the ticket information is being retrieved. Within those outputs, you will find a field labeled 'caller_id'.

The final configuration of the module will look as follows:

When you run the module, the output should provide you with details of the user who logged the ticket.

Setup The Bot Platform module

Now that we have the ticket information as well as the information of the user who logged it, let's setup our final module. We will add The Bot Platform module and choose 'Send a free text message' to summarize the ticket updates and send it to the bot user.

After adding the module, let's configure the bot message:

  • Recipient: Use the user's email address retrieved from the API call in the earlier step.

  • Message: Configure the message to include the ticket status and comments. You can use a sample of the below message, you can modify it to your liking by including more fields from the ticket retrieval step or changing the text of the message:

    Hey {{3.body.result[0].first_name}},
    
    There are updates on your ticket {{1.number}}.
    
    **Status**: {{1.state}}
    **Updates**: {{1.comments}}
    
    

    The configuration will look as follows:

    That's it! You are all set. Go ahead and turn on the scenario. If everything was setup correctly, the bot will now notify of ticket updates as and when they are updated in ServiceNow.