ServiceNow integration: Overview

About

The Kandji integration with SerivceNow leverages a ServiceNow OAuth client that uses the “Resource Owner Password Credentials (ROPC)” Grant Type to request access and refresh tokens to interact with CMDB tables in the ServiceNow instance. This integration automatically pushes device inventory data from Kandji to ServiceNow in real-time using the ServiceNow Import Set API ensuring that your Apple device inventory in ServiceNow remains in sync with Kandji.

Setup overview

The following is a high-level overview of the integration setup process.

  1. Install the Kandji ServiceNow app in the ServiceNow integration hub.

  2. Configure an OAuth client app so that Kandji can interact with the ServiceNow import set API.

  3. Create a ServiceNow user account that can access the ServiceNow API.

  4. Setup the ServiceNow integration in Kandji.

  5. Done

Once the above is complete, Kandji will immediately begin to push device asset data to ServiceNow.

In order for the computer record in ServiceNow to be populated with the assigned user from Kandji, that user must already be registered in ServiceNow.

High-level data flow

When a device enrolls into Kandji or a device record is modified, the following steps highlight the actions taken to push the changes to ServiceNow:

  1. A change to Kandji device inventory is detected.

  2. Kandji pushes these changes to ServiceNow staging tables via the ServiceNow Import Set API.

  3. Once the import set flow is initiated, a transform map is used to match columns from the staging tables to columns in the target tables.

  4. ServiceNow then creates or updates device records in the ServiceNow computer table and Kandji MDM table accordingly.

Table Interactions

Kandji inserts device information into the ServiceNow tables below via the Import Set tables API.

Table

Description

cmdb_ci_computers

Built-in ServiceNow table containing hardware information about devices. (Mac, iPhone, iPad, and tvOS).

x_kandj_kandji_mdm

Custom table built by Kandji to store additional MDM related data about device assets.

x_kandj_kandji_kandji_import_set_computer

Import set staging table used to stage device asset information before it is pushed to the cmdb_ci_computers table.

x_kandj_kandji_kandji_import_set_mdm

Import set staging table used to stage MDM related device asset information be it is pushed to the x_kandj_kandji_mdm table.

Kandji device attributes

Kandji sends the following device asset data to ServiceNow. Kandji will continue to add attributes to this list over time.

Table: cmdb_ci_computers

Kandji

ServiceNow

Description

assigned_user

assigned_to

User assigned to the device asset

device_capacity

disk_space

Total storage capacity

device_name

name

Name of the device

Discovery source

discovery_source

Constant value set to "Kandji"

model_name

model

Device model name

os_type

os

Operating system name macOS

os_version

os_version

Operating system version

serial_number

serial_number

Device serial number, also coalesces (refers back) to the computer table record in ServiceNow

manufacturer

manufacturer

Constant value set to "Apple"

Table: x_kandj_kandji_mdm

Kandji

ServiceNow

Description

device_id

name

Kandji device ID

blueprint_id

name

Kandji blueprint ID, also coalesces (refers back) to the Kandji MDM table record in ServiceNow.

serial_number

serial_number

Device serial number, also coalesces (refers back) to the computer table record in ServiceNow.

Up next

ServiceNow Configuration for the Kandji ServiceNow integration.