ServiceNow Integration

The Device42 ServiceNow Integration connects Device42 to ServiceNow. The integration enables users to seamlessly add Device42’s IT infrastructure management capabilities to their ServiceNow solution for an enhanced IT experience.
Syncronized Device42 Data in ServiceNow

Device42-ServiceNow Integration

Using the Device42-ServiceNow integration connector, ServiceNow users can synchronize Device42’s enhanced asset management and tracking capabilities to their ServiceNow IP-enabled configuration items (CI) data maintained inside ServiceNow’s Configuration Management Database (CMDB). This synchronization can be manually refreshed at any time by the user and also scheduled for an automatic refresh at user-defined intervals.

ServiceNow Integration — Technical Overview

Managing ServiceNow Data Sources

Each ServiceNow data source points to one data source endpoint. From ServiceNow, the URI endpoints look something like this: /sn/devices/0cf588e2-4416-44e0-4dsf-erer45yut/

The general request flow is as follows:

  1. When a request is made to the CC (Cloud Connector), the CC finds the appropriate account (by matching verification tokens). That account’s appliance_guid and am_guid are then utilized by the WebSocket server to route the request to the appropriate client.
  2. The CC then runs the appropriate DOQL query against the proper Device42 instance on behalf of the requesting ServiceNow instance and then returns the query results to ServiceNow for processing by the data source transformation maps.

Custom Device42 DOQL Datasources

Using Device42’s stored DOQL (Device42 object query language), ServiceNow integration users are able to customize exactly the data that their Device42 instance sends to ServiceNow, leveraging the full power of SQL in any way they wish. Simply add a new “Saved DOQL” query in Device42, and then add a new ServiceNow datasource that points to that query. Saved DOQL queries are managed via the D42 Main Menu -> Tools -> Integrations -> Saved DOQL Queries.

    In ServiceNow, you can create and/or modify existing data-sources, setting the ‘file’ path as such, modifying the string below to reference the name of your new D42 Saved DOQL query:
    `sn/route_doql_csv/${x_192652_device42.instance_key}/SAVEDDOLQNAME`

    To add a custom DOQL data-source, in Servicenow, head to System import sets -> Administration -> Data sources:
    ServiceNow add external datasource DOQL

    Then go ahead and add your new data source:
    ServiceNow custom DOQL datasource

    Note that you must create a data-source per endpoint to add more than one!
    That’s all there is to it! ServiceNow should now have access to your new data source. Should you run into any issues, email support@device42.com.

    The Cloud Connector

    Note that the ServiceNow integration uses the Device42 Cloud Connector to facilitate communication between a user’s ServiceNow Cloud instance and Device42 instance without requiring that Device42 be exposed to the internet.

    This is accomplished by re-use of a WebSocket connection initiated by the Device42 appliance to the Cloud Connector.

    For a detailed rundown of the Cloud Connector communication & security architecture, see our Cloud Connector documentation here.

    Integration Setup / Configuration Overview

    Downloading the ServiceNow Integration

    Download the Device42 – ServiceNow connector from the ServiceNow Marketplace

    Installing and configuring the integration

    1) Login to Device42, go to Tools > External Integrations

    2) Create a new External Integration using ServiceNow from the drop down, set the URL as your ServiceNow URL.

    Note the Verification Token, you’ll need to enter this in ServiceNow:

    Select External integration to view

    3) Login to your ServiceNow instance and install the Device42 integration.
    Download and install the Device42-ServiceNow connector from the ServiceNow store and install it.

    Install the Device42-ServiceNow integration

    4) Once installed, search for Device42 Settings and click on it:

    Device42 Settings in ServiceNow

    a) On the settings page click at the top of the page to enable editing (See below)
    b) Fill in URL for Device42 connector (connect.device42.net), Paste in the Verification token you have from D42 (see first steps above) and enter your D42 URL, then SAVE.

    Enter verification token and settings

    5) Configure data sync schedules as appropriate for your environment. Search ServiceNow for “System Import Sets” to find the schedules page:

    ServiceNow Schedules

    These can be scheduled to run at certain times – they should be run in a certain order (as Ive highlighted above) – Devices, IP’s, Services, Software Details and Software Instances
    You can click on an individual schedule to edit it or to ‘Execute Now’:

    Configure Scheduled Syncs

    You can verify that the imports ran correctly by searching ServiceNow for System Import Sets – Import Sets, then visiting that item (click):

    Verify tasks ran correctly by looking at timestamps

    You’ll be brought to a page where you can view all the imports that ran:

    All imports that ran, results

    Click on one to open it:

    View Scheduled import run log details

    The above results show that there were 53 inserts to Windows and 29 inserts for Linux (the other ~800 that were ignored were other devices like switches, etc., which are not imported by the default configuration.)

    Required ServiceNow User Roles for Non-Admins

    For the ServiceNow integration, there are a few user roles that need to be granted to a user to allow them to edit our Data Sources / Transform Maps. This is not required for the application to run “out of the box”, but if customers want to make changes, they’ll need to add the following user roles to authorized users:

    Roles required for non-admin ServiceNow users
    ServiceNow User Management Screen

    The specific groups required for users who AREN’T already ServiceNow admins, for full integration functionality and the ability to edit the CI transform maps and data sources are:

    • import_set_loader
    • import_transformer
    • import_scheduler
    • import_admin
    • x_192652_device42.Device42_Admin

    A quick overview of the Device42-ServiceNow connector, screenshots, and links to the ServiceNow store can be found on our ServiceNow integration page

    If you have any questions that weren’t covered here feel free to reach out to support@device42.com