Connectors → ServiceNow
About ServiceNow
ServiceNow provides service management software as a service, specializing in Information Technology (IT) Services Management (ITSM), IT Operations Management (ITOM) and IT Business Management (ITBM).
ServiceNow centers its offerings around the creation of a service model that corrects the root cause of service issues and enables self-service. ServiceNow's tasks, activities and processes occur as cloud services, overseen as part of a comprehensive managed workflow that supports real-time communication, collaboration and resource sharing. ServiceNow has service management offerings for IT, human resources, security, customer service, software development, facilities, field service, marketing, finance and legal enterprise needs.
About the ServiceNow Connector
Incorta retrieves data from ServiceNow with a Hypertext Transfer Protocol (HTTP) based connection. The ServiceNow REpresentational State Transfer (REST) API is used to get the table descriptions, table schemas and actual data. The response is in JavaScript Object Notation (JSON) format that is handled with the Javax JSON reader.
Using the REST API Explorer in ServiceNow, you can browse available APIs, API versions, and methods for each API. In ServiceNow, navigate to System Web Services and then select REST API Explorer. To access the REST API Explorer, you must belong to the rest_api_explorer
role.
The ServiceNow connector supports the following Incorta specific functionality:
Feature | Supported |
---|---|
Chunking | |
Data Agent | |
Encryption at Ingest | |
Incremental Load | ✔ |
Multi-Source | ✔ |
OAuth | |
Performance Optimized | ✔ |
Remote | |
Single-Source | ✔ |
Spark Extraction | |
Webhook Callbacks | ✔ |
Configure the ServiceNow Connector in ServiceNow
Grant ServiceNow User Roles
By default, the ServiceNow REST API uses basic authentication or OAuth to enforce access controls to web resources. The REST API enforces data access restrictions using a table’s Access Control Lists (ACLs). If not using a user account that belongs to Admin role or Administrative roles for the ServiceNow data source, the ServiceNow Administrator must grant additional roles to the ServiceNow user as follows:
- In the left navigation pane, under System Security→Users and Groups select Users.
- Select Edit… and add the following roles to the user account that will connect to Incorta:
- rest_api_explorer
- rest_service
- soap
- soap_create
- soap_delete
- soap_ecc
- soap_query
- soap_query_Update
- soap_script
- soap_update
- Select Save.
Adjust ServiceNow TimeOut Settings
The REST API default timeout settings of the ServiceNow instance may prevent Incorta from successfully extracting data, especially from very large tables. The default timeout setting is 60 seconds.
In ServiceNow, transaction quotas allow administrators to define individual quota policies for different types of transactions. Typically, ServiceNow administrators set transaction quotas to prevent poorly performing queries and scripts from overconsuming system resources. A transaction quota ensures that no transaction consumes too many resources, preventing other transactions from running.
Before setting transaction quotas, sign in to your ServiceNow instance and review the normal transaction activities for your instance by navigating to User Administration and then selecting Active Transactions.
Before performing a full data load, as needed, increase or deactivate the REST API request timeout transaction quota rules as follows:
- In the left navigation pane, under System Definition, select Transaction Quota Rules.
- Enter
/sysrule_quota_list.do?sysparm_query=nameLIKEREST
in the navigator text field. - For each of the following transaction quota rules, modify the
maximum duration (seconds)
attribute, or deselect the Active checkbox, and select Update:- REST Import Set API request timeout
- REST Table API request timeout
- REST Aggregate API request timeout
- REST Attachment API request timeout
A maximum duration of 600 seconds should be enough for most instances to allow queries to complete, although large values may be needed in some cases.
ServiceNow Table Types
The REST API exposes two types of tables in ServiceNow for consumption:
- System Tables: A system defined tables created by ServiceNow.
- User-Defined Tables: A table that a ServiceNow developer or administrator defines for custom data.
Steps to connect ServiceNow and Incorta
To connect ServiceNow and Incorta, here are the high level steps, tools, and procedures:
- Create an external data source
- Create a schema with the Schema Wizard
- or, Create a schema with the Schema Designer
- Load the schema
- Explore the schema
Create an external data source
You can connect to ServiceNow with an Administrative account or Non-Administrative account.
Here are the steps to create a external data source with the ServiceNow connector:
- Sign in to the Incorta Direct Data Platform.
- In the Navigation bar, select Data.
- In the Action bar, select + New → Add Data Source.
- In the Choose a Data Source dialog, in Application, select ServiceNow.
- In the New Data Source dialog, specify the applicable connector properties.
- To test, select Test Connection.
- Select Ok to save your changes.
ServiceNow connector properties
Here are the properties for the ServiceNow connector:
Property | Control | Description |
---|---|---|
Data Source Name | text box | Enter the name of the data source |
Instance Name | text box | Enter the name of the ServiceNow instance |
User name | text box | Enter the ServiceNow account user name |
Password | text box | Enter the ServiceNow account user password |
Is Administrative Credentials | toggle | Enable this property if the ServiceNow user account has administrative credentials |
Default Page Size | text box | Enter the number of records in a page for the REST API request. The default is 5000. |
Tables Names | text box | Disable Is Administrative Credentials to configure this property. When the ServiceNow user account does not have administrative credentials, it is necessary to list the table names manually, delimited by a comma (,). |
Proxy Enabled | toggle | Enable login via a proxy server |
Proxy IP | text box | Enable Proxy Enabled to configure this property. Enter the proxy server IP address. |
Proxy Port | text box | Enable Proxy Enabled to configure this property. Enter the proxy server port. |
Create a schema with the Schema Wizard
Here are the steps to create an ServiceNow schema with the Schema Wizard:
- Sign in to the Incorta Direct Data Platform.
- In the Navigation bar, select Schema.
- In the Action bar, select + New → Schema Wizard.
- In (1) Choose a Source, specify the following:
- For Enter a name, enter the schema name.
- For Select a Datasource, select the ServiceNow external data source.
- Optionally create a description.
- In the Schema Wizard footer, select Next.
- In (2) Manage Tables, in the Data Panel, first select the name of the Data Source, and then check the Select All checkbox.
- In the Schema Wizard footer, select Next.
- In (3) Finalize, in the Schema Wizard footer, select Create Schema.
Create a schema with the Schema Designer
Here are the steps to create an ServiceNow schema using the Schema Designer:
- Sign in to the Incorta Direct Data Platform.
- In the Navigation bar, select Schema.
- In the Action bar, select + New → Create Schema.
- In Name, specify the schema name, and select Save.
- In Start adding tables to your schema, select ServiceNow.
- In the Data Source dialog, specify the ServiceNow table data source properties.
- Select Add.
- In the Table Editor, in the Table Summary section, enter the table name.
- To save your changes, select Done in the Action bar.
ServiceNow table data source properties
For a schema table in Incorta, you can define the following ServiceNow specific data source properties as follows:
Property | Control | Description |
---|---|---|
Type | drop down list | Default is ServiceNow |
Data Source | drop down list | Select the ServiceNow external data source |
Incremental | toggle | Enable the incremental load configuration for the schema table |
Query | text box | Enter the query to retrieve data from ServiceNow. Refer to Operators available for filters and queries for details on the ServiceNow filter query syntax. |
Update Query | text box | Enable Incremental to configure this property. Enter the SQL query to retrieve data updates from ServiceNow. Refer to Operators available for filters and queries for details on the ServiceNow filter query syntax. |
Page Size | text box | Enter the number of records in a page for the REST API request. Reduce Page Size to minimize the likelihood of extraction problems such as invalid response, truncated response or valid but incomplete response. Page size can differ by table. |
Show foreign keys as | drop down list | Select how to show foreign keys. The options are:
|
Callback | toggle | Enable this option to call back on the source data set |
Callback URL | text box | This property appears when the Callback toggle is enabled. Specify the URL. |
View the schema diagram with the Schema Diagram Viewer
Here are the steps to view the schema diagram using the Schema Diagram Viewer:
- Sign in to the Incorta Direct Data Platform.
- In the Navigation bar, select Schema.
- In the list of schemas, select the ServiceNow schema.
- In the Schema Designer, in the Action bar, select Diagram.
ServiceNow schema diagram
The following is a Service Desk Application schema for an external data source that utilizes the ServiceNow connector. This subset of the entire ServiceNow entity relationship diagram (ERD) is provided for brevity. ServiceNow introduces Inherited Columns, which means all the columns in the parent table are used for the child table as well. Task (parent) and Incident (child) are examples of tables that use Inherited Columns.
Load the schema
Here are the steps to perform a Full Load of the ServiceNow schema using the Schema Designer:
- Sign in to the Incorta Direct Data Platform.
- In the Navigation bar, select Schema.
- In the list of schemas, select the ServiceNow schema.
- In the Schema Designer, in the Action bar, select Load → Load Now → Full.
- To review the load status, in Last Load Status, select the date.
Explore the schema
With the full load of the ServiceNow schema complete, you can use the Analyzer to explore the schema, create your first insight, and save the insight to a new dashboard.
To open the Analyzer from the schema, follow these steps:
- In the Navigation bar, select Schema.
- In the Schema Manager, in the List view, select the ServiceNow schema.
- In the Schema Designer, in the Action bar, select Explore Data.