ServiceNow Integration Pack
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Add new CircleCI config which also runs checks under Python 3. Jan 10, 2019
actions Add pack name in yaml file. Oct 4, 2018
aliases Transfer from st2contrib. Nov 29, 2016
sensors Transfer from st2contrib. Nov 29, 2016
.gitignore Transfer from st2contrib. Nov 29, 2016 Update version Oct 5, 2018 Create a new action "create_record" to create a record in a ServiceNo… Oct 2, 2018
config.schema.yaml Add custom parameters to client if they are present in pack configura… Feb 11, 2018
icon.png Transfer from st2contrib. Nov 29, 2016
pack.yaml Add python_versions attribute. Jan 10, 2019
requirements.txt Make this thing work and pin pysnow to a working version to avoid fut… Jan 26, 2018

ServiceNow Integration Pack

This integration allows bi-directional communication between StackStorm and ServiceNow REST API


This action provides the basic REST primitives necessary to allow communication between StackStorm and ServiceNow. Ideally, this integration will be consumed in a site-specific integration pack that defines actions to specific ServiceNow specific business logic.

ServiceNow provides two videos to demonstrate how to setup Inbound and Outbound Web Service integrations.

An example pack has been included in this pack to show the integration of ServiceNow with these two integration examples.


Outgoing Integration

Copy the example configuration servicenow.yaml.example to /opt/stackstorm/configs/servicenow.yaml and edit as required. It should contain:

  • instance_name - Upstream Instance Name (e.x.: stackstorm)
  • username - Username of service account
  • password - Password of service account
  • custom_params - Common supported parameters that will be passed to all calls. Example

Note : When modifying the configuration in /opt/stackstorm/configs/ please remember to tell StackStorm to load these new values by running st2ctl reload --register-configs

Incoming Integration

In your ServiceNow Outbound integration, REST endpoints accept JSON payloads. In addition, you must specify the following headers in your payload request:

Accept: application/json
Content-Type: application/json


  • servicenow.approve_change Set a change request number to approved
  • servicenow.assign_incident_to assign an incident to a username
  • servicenow.get - Get an entry using a dictionary query from a ServiceNow Table
  • servicenow.get_non_structured - Get an entry using a string query from a ServiceNow Table
  • servicenow.get_incidents_assigned_to - Get incidents assigned to a particular user
  • servicenow.update - Update an entry in a ServiceNow Table
  • servicenow.set_incident_owner - Set the owner of an incident record
  • servicenow.insert - Insert an entry to a ServiceNow Table
  • servicenow.delete - Delete an entry from a ServiceNow Table
  • servicenow.create_record - Create an entry to a ServiceNow Table