ServiceNow
Use the integration to streamline your incidents and respond to them automatically.

Overview

The ServiceNow integration is intended for users who have ServiceNow set up as an IT Service Management/Ticket Management system.
A lot of IT teams or cloud teams use ServiceNow as a single pane of glass for their Incident Management.
With this integration, we have covered most of the incident-related functionalities.

Use Cases

The integration between Fylamynt and ServiceNow lets you:
  • Trigger a workflow in Fylamynt, Ingest incidents as a trigger to Fylamynt workflows. (Fetch ServiceNow incidents into Fylamynt)
  • ServiceNow Create Incident - Create a new ServiceNow Incident
  • ServiceNow Delete Incident - Delete a specific ServiceNow Incident
  • ServiceNow Search Incidents - Get the incident list according to the supplied query
  • ServiceNow Update Incident - Update a specific ServiceNow Incident

Configure ServiceNow in Fylamynt

  • Navigate to Settings > Integrations > ServiceNow
  • Configure a new integration instance
Details needed to set up ServiceNow instance in Fylamynt:
Parameter
Description
Required
ServiceNow Instance URL
ServiceNow instance URL
True
ServiceNow User Password
Password for authorized user on ServiceNow instance
True
ServiceNow Username
Username for authorized user on ServiceNow instance
True
Webhook API Key Name
The Fylamynt API key to use for incoming ServiceNow webhooks.
False
ServiceNow Webhook URL
Fylamynt Webhook URL to be used by ServiceNow
True

Setting up ServiceNow integration

In order to integrate Fylamynt with ServiceNow, you first need to set up a role user on your ServiceNow instance.
  • Log in to your ServiceNow instance with an admin account.
  • Go to the users table and click "New".
  • Fill out the User ID, Email, First Name, Last Name, and Password fields.
  • Make sure "Active" is checked. Optionally, you can also check the "Web services access only" box.
  • Make sure "Password needs reset" and "Locked out" are unchecked.
  • Click "Submit".
On the Fylamynt side
  • Create an API Key to use for ServiceNow webhooks.
    • On the Fylamynt Settings page, scroll to the bottom, and click "API Keys".
    • Click "Add New".
    • Enter a name for the API Key.
  • Return to Settings / ServiceNow.
  • Enter your ServiceNow instance's URL. For example: "https://dev12345.service-now.com".
  • Enter the username and password for the ServiceNow user you created earlier in the right-hand sidebar.
  • Select the API Key you created in Fylamynt from the dropdown list of API keys.
  • Click "Authorize".

Setting up Webhook Trigger Action for ServiceNow

  1. 1.
    In your ServiceNow instance navigate to Outbound->REST Message
  2. 2.
    Click "New"
  3. 3.
    Give the Outbound REST call a name and a short description.
  4. 4.
    Copy the "Webhook URL" from the Fylamynt ServiceNow configuration and paste it into the "endpoint" field.
  5. 5.
    Leave "Authentication" set to "No Authentication"
  6. 6.
    Click "Submit".
  7. 7.
    Find the REST Message you just created in the list and re-open it.
  8. 8.
    There will be an "HTTP Methods" section that wasn't there before. Click "New" next to "HTTP Methods".
  9. 9.
    Name it "POSTCall"
  10. 10.
    Select "POST" from the HTTP method dropdown.
  11. 11.
    In the "HTTP Request" tab, add the following to the headers:
    • x-api-key : copy the key value from the Fylamynt API Key you created above and paste in in the value.
    • accept : application/json
    • Content-Type : application/json
  12. 12.
    In the "Content" text box, paste the following JSON (this is just an example, you may add more fields from the incident table as needed)
    {
    "sys_id":"${sys_id}",
    "number":"${number}",
    "short_description": "${short_description}",
    "urgency": "${urgency}",
    "description": "${description}",
    "impact": "${impact}",
    "state": "${state}",
    "instance_id":"${instance_id}"
    }
  13. 13.
    Click "Submit".
  14. 14.
    Re-open the HTTP Method you just created.
  15. 15.
    In the "Related Links" list, click "Auto-generate variables"
  16. 16.
    Click "Update".
  17. 17.
    Navigate to "Business Rules".
  18. 18.
    Click "New"
  19. 19.
    For the new Business Rule, enter a name, select a table ('incident' is the default ServiceNow incident database table)
  20. 20.
    Check "Active" and "Advanced"
  21. 21.
    In the "Advanced" tab, enter the following JavaScript. (This is just an example. Feel free to edit this code to include/exclude whichever fields you require.)
    • Be sure to change 'YourOutboundRestCall' to the name you gave your outbound rest call above.
    • Also make sure the second argument to sn_ws.RESTMessageV2() is the name of the HTTP Method you created above.
      (function executeRule(current, previous /*null when async*/ ) {
      // Add your code here
      function jsonEncode(str) {
      str = new JSON().encode(str);
      return str.substring(1, str.length - 1);
      }
      try {
      var r = new sn_ws.RESTMessageV2('YourOutboundRestCall', 'POSTCall');
      r.setStringParameter("sys_id", current.sys_id);
      r.setStringParameter("number", current.number);
      r.setStringParameter("short_description", current.short_description);
      r.setStringParameter("urgency", current.urgency);
      r.setStringParameter("description", jsonEncode(current.description + ''));
      r.setStringParameter("impact", current.impact);
      r.setStringParameter("state", current.state);
      r.setStringParameter("instance_id", gs.getProperty("instance_name"));
      var response = r.execute();
      var responseBody = response.getBody();
      var httpStatus = response.getStatusCode();
      gs.log("getBody: " + response.getBody());
      gs.log("getStatusCode: " + response.getStatusCode());
      gs.log("getHeaders " + response.getHeaders());
      } catch (ex) {
      var message = ex.message;
      }
      })(current, previous);
  22. 22.
    In the "When to run" tab, select "after" from the dropdown and check "insert".
  23. 23.
    You can add other conditions as you see fit.
  24. 24.
    Click "Submit"
Now when you create a new incident in the incident table, a call will be made to Fylamynt containing the JSON you provided in step 12 above, populated with the fields in the new incident.
To take action when this message is received, create a new Fylamynt workflow and add a ServiceNow_Alert action to it.

Integration Actions

Fylamynt supports the following ServiceNow actions in workflows:

Create a new ServiceNow Incident

Creates a new incident in ServiceNow

Input

Parameter Name
Required
table
True
short_description
True
caller
True
urgency
False
severity
False
assigned_to
False
caller_id
False
category
False
description
False
due_date
False
made_sla
False
incident_state
False
impact
False
number
False
priority
False
template
False
state
False
Output
Parameter name
Type
Description
Result
Object
JSON of the newly created incident.

Delete a ServiceNow Incident

Delete the specified incident.
Input
Parameter Name
Description
Required
table
The ServiceNow table to update
True
sys_id
The ID of the incident to update
True
Output
  • Delete doesn't return a result.

Search a ServiceNow Incident

Return the results of a ServiceNow query. Because the results might be very large, you can provide the name of an S3 bucket to save the non-truncated results.
Input
Parameter Name
Description
Required
query
Query formatted per ServiceNow query syntax.
True
table
The ServiceNow table to run the query against.
True
s3_bucket
S3 bucket to save the full result list.
False
Output
Parameter name
Type
Description
result
JSON object
The output of the query.
is_result_truncated
Boolean
If the result is too large (>~100k) the results will be truncated to the first 5 incidents.
result_bucket_key
String
If an S3 bucket is specified, the path to the data.
s3_bucket
String
The bucket specified in the input.

ServiceNow Alert Trigger

The integration node triggers the automatic execution of a workflow from a selected ServiceNow Category.
When creating a workflow, you are presented with a wizard to select the trigger type to use.
  • On the workflow page, select New Workflow
  • Enter the name of the Workflow.
  • Select the ServiceNow trigger type.
  • Click Create Workflow

Configure the automatic execution of a workflow

To automatically run the workflow with the ServiceNow Alert trigger, the incident type and assignment need to be configured. Follow the step-by-step instructions provided on the Incident Management - Automatic workflow execution page.

Update a ServiceNow Incident

Given an incident to update, update the provided fields.
Input
Parameter Name
Description
Required
table
The ServiceNow table to update.
True
sys_id The ID of the incident to update
True
short_description
String
False
urgency
False
severity
False
assigned_to
False
caller_id
False
category
False
description
False
due_date
False
made_sla
False
incident_state
False
number
False
priority
False
template
False
state
False
caller
False
Output
Parameter name
Type
Description
Parameter name
Type
Description
result
JSON Object
The updated incident

Copy link
On this page
Overview
Use Cases
Configure ServiceNow in Fylamynt
Setting up ServiceNow integration
Setting up Webhook Trigger Action for ServiceNow
Integration Actions
Create a new ServiceNow Incident
Delete a ServiceNow Incident
Search a ServiceNow Incident
ServiceNow Alert Trigger
Update a ServiceNow Incident