1. IMR Help
  2.    
  3. Integrations
  4.    
  5. Xurrent IMR <> ServiceNow Bi-Directional Integration Guide

Xurrent IMR <> ServiceNow Bi-Directional Integration Guide

This guide walks you through setting up a secure, two-way connection between Xurrent IMR and ServiceNow. Once connected, incidents in either platform will stay in sync, ensuring your teams have real-time visibility and control.

Before You Begin

The Xurrent IMR integration is available directly from the ServiceNow Store. You'll need:

  • A ServiceNow instance with System Administrator access
  • An active Xurrent IMR account with Account Owner or Admin permissions

We'll install the app from the Store, configure it in ServiceNow, and then connect everything from inside Xurrent IMR.

1. Install Xurrent IMR from the ServiceNow Store

1. Log in to your ServiceNow instance as a System Administrator.

2. Navigate to System Applications → All Available Applications → All.

3. Search for "Xurrent IMR" and open it.

4. Click Install.

5. Review the scope, roles, and tables the app will create, then confirm Install.

6. Once installation completes, confirm it appears under System Applications → My Company Applications with an Active status and scope x_xurre_imr.

The integration ships switched off and with no credentials configured nothing will sync until you complete the steps below.

2. Enable OAuth Client Credentials

1. Go to: https://<your_instance>.service-now.com/sys_properties_list.do

2. Search for: glide.oauth.inbound.client.credential.grant_type.enabled

3. If it exists → set Value to true.

4. If it doesn't exist → create it:

  • Name: glide.oauth.inbound.client.credential.grant_type.enabled
  • Description: Enable Client Credentials grant type for oauth.
  • Type: true/false
  • Value: true
  • Ignore cache: checked

5. Click Save.

3 Create a Dedicated Integration User

The integration authenticates inbound calls from Xurrent IMR using a dedicated ServiceNow user rather than a personal admin account. Create this user before setting up the OAuth entity.

  1. Navigate to System Security → Users and click New.
  2. Fill in:
  • User ID: xurrent_imr_integration_user
  • First Name: Xurrent IMR
  • Last Name: Integration
  • Active: checked
  1. Click Submit to save the user.
  2. Open the user record, go to the Roles related list at the bottom, click Edit, and add the following roles:
  • Role 1: rest_service
  • Role 2: x_xurre_imr.import_incident_user
  • Role 3: x_xurre_imr.import_work_note_user
  1. Click Save.

4. Create the OAuth Entity

ServiceNow's OAuth setup varies by instance. Use Method A if your instance offers the newer wizard. If it doesn't, use Method B  an older flow that's still fully supported.

Method A: New Inbound Integration Experience (use if available)

  1. Navigate to: https://<your_instance>.service-now.com/oauth_entity_list.do
  2. Click New, then select New Inbound Integration Experience.

  1. On the "Select your application connection type" screen, select OAuth - Client credentials grant.

  1. Fill in the Details section:
  • Name: Xurrent IMR OAuth
  • OAuth application user: the integration user created in Step 3.4 (xurrent_imr_integration_user)
  1. The Client ID and Client Secret fields are generated automatically and shown on the form. Copy and store both values securely you will need them in Section 4.

  1. In the Auth scope section, click Create auth scope if one does not already exist (e.g., name it "Xurrent IMR API Access").
  2. Under "Limit authorization to the following APIs", select all three of the following (this field supports multiple selections):
  • API 1: Xurrent IMR Alerts
  • API 2: Xurrent IMR Connections
  • API 3: Xurrent IMR Integrations
  1. Keep "Allow access only to APIs in selected scope" checked  this restricts the OAuth token to only the Xurrent IMR endpoints.
  2. Confirm Active is checked, then click Save / Submit.

Method B — Create an OAuth API Endpoint for External Clients (fallback)

If your instance doesn't show "New Inbound Integration Experience", use this older but still fully functional flow instead it appears as "Create an OAuth API endpoint for external clients".

  1. Navigate to: https://<your_instance>.service-now.com/oauth_entity_list.do
  2. Click New, then select "Create an OAuth API endpoint for external clients".
  3. Name = Xurrent IMR OAuth. Leave Client Secret blank so ServiceNow auto-generates it. Submit.
  4. If "OAuth Application User" isn't visible on the form, open the hamburger menu → Configure → Form Design, drag it onto the form, and Save.
  5. Set OAuth Application User to the integration user from Section 3. Save.
  6. Copy the auto-generated Client ID and Client Secret.
  7. This flow has no Auth scope selector. If inbound calls later fail with "Access to unscoped api is not allowed", open this record and set Scope Restriction to Broadly scoped.


5. Add the Incident Meta Related List to the Incident Form

Xurrent IMR data which system originated an incident, and the linked Xurrent IMR incident URL  lives on its own table, not as custom fields on the Incident form. Add it as a related list.

  1. Open any incident record in ServiceNow.
  2. Click the hamburger menu at the top left of the form.
  3. Click Configure → Related Lists.
  4. Find "Incident Meta -> Incident" and move it into the list of related lists shown on the form.
  5. Save.


6. Review the Entity Table Allowlist (Optional)

For security, the integration only exposes a specific set of ServiceNow tables when mapping Xurrent IMR services to ServiceNow entities, controlled by an admin-only property.

Property

x_xurre_imr.allowed_entity_tables

Default

cmdb_ci, service_offering, cmdb_ci_service, sys_user_group (Configuration Item, Service, Service Offering, Assignment Group)

Who can edit it

System Administrators only

To change it, navigate to sys_properties_list.do, open x_xurre_imr.allowed_entity_tables, and edit the comma-separated table list. Most customers can leave this at its default.

7. Connect ServiceNow to Xurrent IMR

1. Visit: https://<your_instance>.service-now.com/$studio.do?sysparm_transaction_scope=global&sysparm_use_polaris=true

2. Select the Xurrent IMR application.

3. Click File → Settings. This will open the Application Settings for Xurrent IMR.

4. Copy the Scope and save it somewhere safe.

5. In Xurrent IMR, go to Profile → Account → Connections → ServiceNow.

6. Click Configure.

7. Fill in:

  • ServiceNow instance name
  • Client ID
  • Client Secret
  • Scope

Click Add.

8. You will now see the connection between ServiceNow and Xurrent IMR, along with a generated Webhook Secret. Copy this Webhook Secret — you will need it in Section 5.
9. Click Continue.

8. Configure Webhook Secret and Enable the Integration

Before Xurrent IMR can send authenticated webhook calls into ServiceNow, the webhook secret must be stored in ServiceNow and the integration must be explicitly switched on.

  1. Navigate to: https://<your_instance>.service-now.com/sys_properties_list.do
  2. Search for: x_xurre_imr.webhook_secret
  3. Open the property and paste the Webhook Secret value copied in Section 4. Click Save.
  1. Search for: x_xurre_imr.integration_enabled
  2. Open the property and change the Value from false to true. Click Save.

The integration is now fully authenticated and switched on. Incidents will begin syncing once you complete the mapping and configuration steps below.

9. Map Xurrent IMR Services to ServiceNow Entities

9.1 Select an Entity Type

Map your Xurrent IMR Service to a ServiceNow entity type. For example:

  • Configuration Item (cmdb_ci)
  • Assignment Group (sys_user_group)
  • Offering (service_offering)

Select your desired entity type and click Continue.

9.2 Choose a Mapping Strategy

You can map Xurrent IMR services to ServiceNow entity records using one of two strategies:

  • Name Match

We match by name automatically. When receiving alerts from ServiceNow, we check the name of the entity (e.g., a service offering) and, if we find a service in your account with the same name, we create an incident in that service. For outgoing incidents created in Xurrent IMR, we check the service name and attempt to create an incident in ServiceNow with the matching entity name. When you select Name Match, ServiceNow V2 integrations will automatically be created in every service in your Xurrent IMR account.

Custom Match (Recommended)

You manually map specific entity records to specific Xurrent IMR services. Only the mapped services will have ServiceNow V2 integrations created automatically. When receiving alerts, we match by the unique ID of the record rather than the name. For outgoing incidents, we send the unique ID of the entity record to create the incident. We recommend Custom Match as it gives you more control over the integration.

10. Configure Global Settings

These settings serve as the base configuration for all integrations created automatically in your services. You can later change the configuration for individual integrations.

Trigger Source

  • Bi-directional : Incidents sync both ways. If an incident is created in Xurrent IMR, it creates one in ServiceNow, and vice versa.
  • IMR → SNOW : Xurrent IMR is the trigger source. Incidents created in Xurrent IMR create incidents in ServiceNow. Incidents created in ServiceNow do not create incidents in Xurrent IMR.
  • SNOW → IMR : ServiceNow is the trigger source. Incidents created in ServiceNow create incidents in Xurrent IMR. Incidents created in Xurrent IMR do not create incidents in ServiceNow.

Restrict Sync Direction

When enabled, syncing is restricted to the initial trigger direction only. For example, if the direction is IMR → SNOW and an incident is created in Xurrent IMR, it will create an incident in ServiceNow. However, if the incident state is later changed in ServiceNow, that change will not sync back to Xurrent IMR.

Sync Notes

When enabled, work notes will sync between the two systems.

Provision and Sync Priorities from ServiceNow

When enabled, incident priorities will sync between the two systems. If a priority does not exist in Xurrent IMR, it will be provisioned (created) as a new priority in the incident's team.

Status Mapping

Map Xurrent IMR statuses to ServiceNow incident states. You can map multiple ServiceNow states to a single Xurrent IMR status. One state should be set as the default for outgoing (IMR → SNOW) incidents.

Urgency Mapping

Map Xurrent IMR urgencies to ServiceNow urgencies. You can map multiple ServiceNow urgencies to a single Xurrent IMR urgency. One urgency should be set as the default for outgoing (IMR → SNOW) incidents.

ServiceNow Mandatory Fields

If there are mandatory fields required to create or update an incident in ServiceNow, you can set their values here. You can set static values or dynamic values using the {{incident.<field>}} syntax. For example: {{incident.summary}}.

Click Deploy Connection. This will create ServiceNow V2 integrations in your Xurrent IMR account.

11. Deploy and Manage Integrations

To view or update an individual integration:

1. Go to Teams → select a team → Services → select a service → Integrations.

2. Select the ServiceNow V2 integration.

Here you can view and update the individual integration configuration.