ServiceNow integration

DESK offers an out-of-the-box integration with ServiceNow. Once configured, DESK automatically creates an incident within your ServiceNow instance for every auto-discovered problem. If your ServiceNow instance has ITOM enabled, all single events within a DESK correlated problem can be pushed to your ServiceNow ITOM events table (em_event). The integration also offers an optional sync of DESK monitored applications, services, and hosts with your ServiceNow CMDB.

DESK ServiceNow integration is a two-way integration that:

  1. Pushes incidents from your DESK environment to your ServiceNow instance.
  2. (Optionally) Pushes all single events of a detected problem to the ServiceNow ITOM event API.
  3. (Optionally) Pulls host, process and service information from DESK through a scheduled job within your ServiceNow instance.

Connect your DESK environment to ServiceNow

To connect your DESK monitoring environment to your ServiceNow instance, configuration is required on both sides, ServiceNow and DESK. The following 5 steps are mandatory for a fully operational integration.

1. Install the DESK app from the ServiceNow store

Go to DESK profile in the ServiceNow application marketplace, select DESK integration app and install it within your ServiceNow instance.

2. Activate the Configuration Management for Scoped Apps plugin within your ServiceNow instance

Activate the Configuration Management for Scoped Apps plugin within your ServiceNow instance. ServiceNow how to enable 'Configuration Management for Scoped Applications' plugin

3. Create a discovery source DESK entry

To allow DESK to report discovered CIs into your CMDB you must create a new discovery data source called DESK. Perform the following steps:

  1. Navigate to System Definition > Choice Lists.
  2. Click the New button.
  3. Create a new entry with the following details:
    Table: Configuration Item [cmdb_ci]
    Element: discovery_source
    Label: DESK
    Value: DESK

4. Configure ServiceNow DESK settings

To complete the configuration on the ServiceNow side:

  1. Create a new environment.
  2. Copy and paste your DESK environment ID and API key into the DESK environments table within ServiceNow.
    ServiceNow configuration of DESK environments

Your DESK environment ID is the first part of your DESK environment URL, for example:

<EnvironmentID>.live.DESK.com

If you're running a DESK Managed instance, the server runs within your own datacenter. Therefore, a Cluster ActiveGate with a publicly accessible domain is necessary.
For DESK Managed installations, the URL pattern looks like the following example:

https://<YOUR_OWN_DOMAIN>/e/caa3369e-8612-46e2-b8c9-4018298cce24/

You'll need an API key for proper integration between DESK and ServiceNow. If you don't already have the API key (token), you can generate it in DESK.

To create an API key for your DESK environment:

  1. In DESK, navigate to Settings > Integration > DESK API.
  2. Type a token name and ensure that the switch for Access problem and event feed, metrics, and topology is enabled. token permission for ServiceNow
  3. Click the Generate token button. Use this token to secure communication between DESK and ServiceNow.

5. Configure a ServiceNow problem integration

After installing and configuring DESK integration on the ServiceNow side, switch over to your DESK environment.

Navigate to DESK > Settings > Integration > Problem notifications, click Set up notifications, and select ServiceNow. Integrate with other notification systems page

On the Set up ServiceNow integration page, type a custom name for your new integration (for example, My new ServiceNow Integration). Enter your ServiceNow instance identifier as shown above (for example, dev23082) and enter a ServiceNow username that has the following roles assigned to it:

  • x_dynat_ruxit.Integration
  • rest_service
  • web_service_admin

If you're running a ServiceNow instance within your own domain, use the domain of your instance instead of the instance identifier.
Set up ServiceNow integration page

Automatic configuration check

Setting up the integration manually can be tricky, especially when every configuration setting is correct and the DESK API can be reached through firewalls. To help you with the set-up process, the integration app contains an automatic configuration checker that helps you identify the exact problem. The following images compare a successful configuration with an unsuccessful one:

unsuccessful configuration

successful configuration

Problem-description placeholders

You can customize the short description texts of the problem-notifications that are sent out by defining a text template that includes placeholders that are dynamically populated with relevant problem details, such as problem ID, problem impact, or problem state. By default, the full HTML formatted description of each detected problem and a direct link to the corresponding Problem details page in DESK is attached to each ServiceNow incident in the form of a comment.

  • {PID}: A unique system identifier of the reported problem.
  • {ProblemDetailsHTML}: Problem event details including the root cause as an HTML-formatted string.
  • {ProblemID}: ID number of the reported problem.
  • {ProblemImpact}: Impact level of the problem. Possible values are APPLICATION, SERVICE, and INFRASTRUCTURE.
  • {ProblemSeverity}: Severity level of the problem. Possible values are AVAILABILITY, ERROR, PERFORMANCE, RESOURCE_CONTENTION, and CUSTOM_ALERT.
  • {ProblemTitle}: A short description of the problem.
  • {State}: Problem state. Possible values are OPEN, RESOLVED and MERGED. MERGED is used for problems that have merged with other existing problems.
  • {Tags}: Comma-separated list of tags that have been defined for all impacted entities.

Push incidents and/or ITOM events

By using the toggles for sending incidents and/or ITOM events, you can control when DESK should automatically create an incident within the ServiceNow ITSM module and if all individual correlated events should be pushed into the ServiceNow ITOM events API. Keep in mind that the integration will fail if ITOM is enabled but not activated in your ServiceNow instance.

Automatic incident creation

After configuration is complete on both the sides, DESK as well as ServiceNow, problem notifications are pushed from DESK to your ServiceNow instance, as shown below:

DESK as ITOM event source

If the ITOM module is enabled within your ServiceNow instance, DESK can also act as an ITOM event source. After you've enabled the push of ITOM events on the configuration page, all events within a DESK-detected problem are automatically pushed into the ITOM event API. Each host-based event has the correct node name and node IP attached as well as important severity information within the additional information field. ServiceNow ITOM users can create event filters and alerting rules to flexibly react to incoming DESK-detected events. Each of the events contains the unique DESK identifier (for example, HOST-B66B773D12C49189) within the field correlation_id. If the default ITOM CI mapping isn't able to match a CI by its node name, this correlation_id is used to automatically map detected CIs. An example of a process event

DESK app main modules

After you've installed the DESK app within your ServiceNow instance, you’ll find a new DESK menu in ServiceNow with the following entries:

  • Support: Report issues with your DESK ServiceNow integration to DESK Support.
  • DESK Settings: Use these settings to configure your DESK integration.
  • Environments: Configure one or multiple DESK monitoring environments and token credentials to synchronize CMDB information with.
  • Problems: Import set table that shows the number of DESK-detected problems that have been pushed to and imported into your incident table.
  • Hosts: A filtered view of your CMDB servers table that shows all DESK-discovered hosts.

MID servers

All ServiceNow-related DESK API requests can be proxied through a selected ServiceNow MID server. If you're running a DESK Managed instance and experiencing issues resulting from corporate firewalls blocking incoming requests to the REST API of your DESK Managed server, you can route these API calls through an already existing MID server.

Simply select one of your configured MID servers in the DESK > Settings > Environments section of ServiceNow.
You can even define different MID servers for individual DESK environments.

MID server

Frequently asked questions