Connecting ServiceNow

edit

Connecting ServiceNowedit

ServiceNow is a cloud-based IT Service Management (ITSM) platform focusing on workflow automation and internal organizational support. The ServiceNow connector provided with Workplace Search automatically captures, syncs and indexes the following items:

Users

Members of the ServiceNow platform associated to Incidents and other items, with associated email and activity data

Incidents

With associated ID, description, activity data and priority

Request Items

With associated ID, description, cost-related attributes, approval status, and activity data

Knowledge Articles

Including article content, topic and activity data

Configuring the ServiceNow Connectoredit

Configuring the ServiceNow connector is the first step prior to connecting the ServiceNow service to Workplace Search, and requires that you create an OAuth App from the ServiceNow platform. To get started, first log in to ServiceNow and access your administrative dashboard:


Step 1. Use the search bar on the left-hand side to search for Application Registry:

Figure 80. Connecting ServiceNow

Step 2. We will need a new application. Click the New button:

Figure 81. Connecting ServiceNow

Step 3. A trio of text links appears. Select Create an OAuth API endpoint for external clients:

Figure 82. Connecting ServiceNow

Step 4. Next, provide a name for the application. Then add the appropriate redirect URL.

The redirect URL required varies by which user interface you are using to manage Enterprise Search. Enterprise Search in Kibana and standalone Enterprise Search use different redirect URLs. See user interfaces for details on each UI.

When using standalone Enterprise Search, add the following redirect URL, substituting <WS_BASE_URL> with the base URL at which Workplace Search is hosted (scheme + host, no path).

<WS_BASE_URL>/ws/org/sources/service_now/create

Examples:

# Deployment using a custom domain name
https://www.example.com/ws/org/sources/service_now/create

# Deployment using a default Elastic Cloud domain name
https://c3397e558e404195a982cb68e84fbb42.ent-search.us-east-1.aws.found.io:443/ws/org/sources/service_now/create

# Unsecured local development environment
http://localhost:3002/ws/org/sources/service_now/create

When using Enterprise Search in Kibana, use the following redirect URL, substituting <KIBANA_BASE_URL> with the base URL of your Kibana instance. This should correspond with the value of kibana.external_url in your enterprise-search.yml:

<KIBANA_BASE_URL>/app/enterprise_search/workplace_search/sources/added

Examples:

# Deployment using a custom domain name for Kibana
https://www.example.com/app/enterprise_search/workplace_search/sources/added

# Deployment using a default Elastic Cloud domain name for Kibana
https://c3397e558e404195a982cb68e84fbb42.kb.us-east-1.aws.found.io:443/app/enterprise_search/workplace_search/sources/added

# Unsecured local Kibana environment
http://localhost:5601/app/enterprise_search/workplace_search/sources/added

Step 5. Once the information has been properly entered, click Submit:

Figure 83. Connecting ServiceNow

The app is created, and we may now retrieve the Client ID and Client Secret. Find your app within the list and access it:

Figure 84. Connecting ServiceNow

Step 6. From the Workplace Search administrative dashboard’s Sources area, locate ServiceNow and provide both the Client ID and Client Secret. Voilà! The ServiceNow connector is now configured, and ready to be used to synchronize content. In order to capture data, you must now connect a ServiceNow instance with the adequate authentication credentials.

Connecting ServiceNow to Workplace Searchedit

Once the ServiceNow connector has been configured, you may connect a ServiceNow instance to your organization.


Step 1. Head to your organization’s Workplace Search administrative dashboard, and locate the Sources tab.


Step 2. Click Add a new source.


Step 3. Select ServiceNow in the Configured Sources list, and follow the ServiceNow authentication flow as presented.

You will need your ServiceNow Base URL (or instance URL), which should look like this:

https://[your subdomain].service-now.com

For security reasons, the Base URL cannot be a localhost URL. Disable this localhost check for your Workplace Search deployment, including ServiceNow configurations, with workplace_search.content_source.localhost_base_urls.enabled:true.


Step 4. Upon the successful authentication flow, you will be redirected to Workplace Search, and your organization’s ServiceNow content will now be captured and will be ready for search gradually as it is synced. Once successfully configured and connected, the ServiceNow synchronization automatically occurs every 2 hours.

Synchronized fieldsedit

The following table lists the fields synchronized from the connected source to Workplace Search. The attributes in the table apply to the default search application, as follows:

  • Display name - The label used when displayed in the UI
  • Field name - The name of the underlying field attribute
  • Faceted filter - whether the field is a faceted filter by default, or can be enabled (see also: Customizing filters)
  • Automatic query refinement preceding phrases - The default list of phrases that must precede a value of this field in a search query in order to automatically trigger query refinement. If "None," a value from this field may trigger refinement regardless of where it is found in the query string. If '', a value from this field must be the first token(s) in the query string. If N.A., automatic query refinement is not available for this field by default. All fields that have a faceted filter (default or configurable) can also be configured for automatic query refinement; see also Update a content source, Get a content source’s automatic query refinement details and Customizing filters.
Display name Field name Faceted filter Automatic query refinement preceding phrases

Id

id

No

N.A.

URL

url

No

N.A.

Title

title

No

N.A.

Type

type

Default

None

Last updated

last_updated

No

N.A.

Updated at

updated_at

No

N.A.

Number

number

No

N.A.

State

state

Configurable

[with state, state is, in state, '']

Priority

priority

Default

[with priority, priority is]

Impact

impact

Configurable

[with impact, impact is]

Urgency

urgency

Configurable

[with urgency, urgency is]

Closed at

closed_at

No

N.A.

Opened at

opened_at

No

N.A.

Body

body

No

N.A.

Assigned to

assigned_to

Default

[assigned to]

Created by

created_by

Default

[creator is, created by, edited by, modified by]

Opened by

opened_by

Configurable

N.A.

Closed by

closed_by

Configurable

N.A.

Resolved by

resolved_by

Configurable

N.A.

Status

status

Default

[with status, status is, in state, '']

Email

email

Configurable

N.A.

Username

username

Configurable

N.A.

Price

price

No

N.A.

Recurring price

recurring_price

No

N.A.

Approval

approval

Configurable

N.A.

Quantity

quantity

No

N.A.

Article type

article_type

Configurable

N.A.

Topic

topic

No

N.A.

Published at

published_at

No

N.A.