ServiceNow Batch Multi Source

Plugin version: 1.2.0

ServiceNow is a cloud-based software platform that provides service management software as a service. It provides a range of solutions around IT ticket, operation, business management and helps customers in their business transformation.

The ServiceNow Batch Multi Source plugin builds on the existing Batch Source Plugin Reporting Mode feature. While the Reporting mode in ServiceNow Batch Source plugin is limited to fetching the records from multiple tables belonging to a specific application/module, the ServiceNow Batch Multi Source plugin provides the capability to fetch the records from one or multiple tables entered by the user irrespective of whether they belong to the same application/module or not. The plugin uses the ServiceNow Table Rest API using ServiceNow Batch API for querying ServiceNow using standard interfaces to ensure compatibility and also reduce the development challenges, cost of building, See the ServiceNow Table API and ServiceNow Batch API for more information.

Using CDF pipeline studio ServiceNow connector user can enter one or more than one table name in the Table Specification section by pressing enter/return ⏎  key or clicking on the + sign. If the table does not exist in the ServiceNow instance or is empty, then a validation error message is displayed to the user. The user may be required to activate a plugin for installing a table that does not exist by default.

The user can also enter the start date and end date to filter the table data within a specific time period.

Configuration 

Property

Macro Enabled?

Description

Property

Macro Enabled?

Description

Label

No

Required. The name of the node in your data pipeline.

Use connection

No

Required. Browse for a connection to the source. If Use connection is selected, you don't need to provide credentials.

Connection

Yes

Required. Name of the connection to use. If Use connection is selected, this field appears. Database and table information is provided by the connection.

Reference Name 

No 

Required. Used to uniquely identify this source for lineage,  annotating metadata.

Table Names 

Yes 

Required. The name(s) of the ServiceNow table from which data is to be fetched.

Client ID 

Yes 

Required. The Client ID for ServiceNow Instance.

Client Secret 

Yes 

Required. The Client Secret for ServiceNow Instance.

REST API Endpoint 

Yes 

Required. The REST API Endpoint for ServiceNow Instance. For example,  For example, https://instance.service-now.com

User Name 

Yes 

Required. ServiceNow username.

Add what minimum permission the user should have, not in detail

Password 

Yes 

Required. ServiceNow password.

Type of values 

Yes 

Required. The type of values to be returned. The type can be one of two values: 

  • Actual fetches the actual values from the ServiceNow tables, 

  • Display fetches the display values from the ServiceNow tables. 

Default is Actual.

Start Date 

Yes 

Optional. The Start date is to be used to filter the data. The format must be yyyy-MM-dd. The format must be 2022-02-21.

End Date 

Yes 

Optional. The End date to be used to filter the data. The format must be yyyy-MM-dd. The format must be 2022-02-22.

Table Name Field 

Yes 

Required. The name of the field that holds the table name. Must not be the name of any table column that will be read. Defaults to tablename. Note: The Table name field value is ignored if the Mode is set to Table.

Defaults to tablename.

Page Size

Yes

Optional. The number of records to fetch from ServiceNow. Default is 5000.

Data Type Mapping 

ServiceNow Data Type

CDAP Schema Data Type

ServiceNow Data Type

CDAP Schema Data Type

decimal 

double

integer 

int

boolean 

boolean

reference 

string

currency 

string

glide_date 

string

glide_date_time 

string

sys_class_name 

string

domain_id 

string

domain_path 

string

guid 

string

translated_html 

string

journal 

string

string 

string

glide_date

date

glide_datetime

datetime

Example

Sample data in Table: pc_hardware_cat_item

Name

Price

Class

Name

Price

Class

Microsoft Wired Keyboard

$11.92

Hardware Catalog

Logitech Wireless Mouse

$35.88

Hardware Catalog

Apple iPad 3

$600.00

Hardware Catalog

Sample data in Table: pc_software_cat_item

Name

Price

Class

Name

Price

Class

Zoom

$0.00

Software Catalog

Postman

$0.00

Software Catalog

Mozilla Firefox

$0.00

Software Catalog

To read data from these two tables, both of them must be entered in the Tables Names field under the Table specification section.

The output of the source will be the following records:

Name

Price

Class

tablename

Name

Price

Class

tablename

Microsoft Wired Keyboard

$11.92

Hardware Catalog

pc_hardware_cat_item

 

Logitech Wireless Mouse

$35.88

Hardware Catalog

pc_hardware_cat_item

 

Apple iPad 3

$600.00

Hardware Catalog

pc_hardware_cat_item

 

Name

Price

Class

tablename

Name

Price

Class

tablename

Zoom

$0.00

Software Catalog

pc_software_cat_item

 

Postman

$0.00

Software Catalog

pc_software_cat_item

 

Mozilla Firefox

$0.00

Software Catalog

pc_software_cat_item

The plugin will emit two pipeline arguments to provide a multi sink plugin with the schema of the output records:

{

 "type": "record",

 "name": "pc_hardware_cat_item",

 "fields": [

   {"name": "name","type": ["string","null"]},

   {"name": "price","type": ["string","null"]},

   {"name": "sys_class_name","type": ["string","null"]}

 ]

}

 

{

 "type": "record",

 "name": "pc_software_cat_item",

 "fields": [

   {"name": "name","type": ["string", "null"]}, 

   {"name": "price","type": ["string","null"]},

   {"name": "sys_class_name","type": ["string","null"]}

 ]

}

Created in 2020 by Google Inc.