> This page is for Tools.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.moveworks.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.moveworks.com/_mcp/server.

# ServiceNow (Classic)

# Overview

The Classic Ingestion connector for ServiceNow indexes knowledge articles so employees can find relevant content through Moveworks Enterprise Search.

# Access Requirements for ServiceNow

Moveworks can connect to ServiceNow. See our ServiceNow Access Requirements guides to learn more about how integrate your system with Moveworks:

* [ServiceNow (KB Only) Access Requirements](/service-management/access-requirements/knowledge-base-systems/servicenow-kb-only-access-requirements)
* [ServiceNow Access Requirements](/service-management/access-requirements/ticketing-systems-and-itsms/servicenow-access-requirements)

## Permissions

The Classic Ingestion connector for ServiceNow mirrors source permissions. Employees can only find knowledge articles in search results that they have access to in ServiceNow.

## Configuration

To configure ServiceNow Classic Ingestion in Moveworks Setup, see [How to Configure Classic Ingestion for ServiceNow](/tool-studio/enterprise-search/configure-search/ingestion/how-to-configure-the-answers-plugin-for-servicenow).

# Content Types Supported within ServiceNow

* Knowledge Articles (including knowledge blocks)
* Content Items

# How Moveworks Integrates with ServiceNow

The following diagram illustrates the high-level architecture of how Moveworks integrates with the ServiceNow Knowledge Base:

![](https://files.readme.io/274a22a-Untitled_-_2024-05-07T103925.910.png)

This is a live integration which means we poll for knowledge articles every four hours. This is done so that the enterprise cache is updated with relevant snippets for answers.

Our enterprise cache stores the knowledge documents and generates relevant knowledge snippets by understanding the content. This is also where we store redirect urls in order to direct users to where the knowledge article is located and can be read.

## Ingestion

The [ServiceNow’s Table API](https://developer.servicenow.com/dev.do#!/reference/api/washingtondc/rest/c_TableAPI) is utilized to fetch and ingest all content from the `kb_knowledge` table.

We also support ingestion from the following child tables directly too if you don’t want Moveworks to ingest all of your content within `kb_knowledge`:

* `kb_knowledge_block`
* `kb_template_how_to`
* `kb_template_kcs_article`
* `kb_template_faq`
* `kb_template_what_is`
* `kb_template_known_error_article`
* `sc_cat_item_content`

## How we fetch knowledge articles from ServiceNow

We use the following APIs to fetch the knowledge articles that you want Moveworks to ingest.

### Fetch all knowledge articles

```jsx
GET
curl --location '{{snow_url}}/api/now/table/{{table_name}}?sysparm_query=workflow_state=published^active=true^valid_to>=javascript:gs.beginningOfToday()^kb_knowledge_baseIN{{sys_id}}' \
--header 'Authorization: Basic <base64({{servicenow_username}}:{{servicenow_password}})>'
```

The `{{table_name}}` is replaced by the above mentioned KB Tables based on your requirement

## Integration Scope

### Content

Our knowledge ingestion engine works on ingesting the `text` section from the API response which is an HTML block.

> **Warning**
>
> Knowledge articles where the `text` field is empty are excluded from ingestion and will not appear in Moveworks search results. This applies to any article that has no body content in ServiceNow — for example, articles used purely as containers for knowledge blocks, or articles consisting only of a title and short description.
>
> Ensure that every article you want to be searchable has at least some text in the article body in ServiceNow.