> 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.

# Configure Forms

Ingest your ServiceNow catalog items into Moveworks so the AI Assistant can surface the right form when a user asks, and fill it conversationally in chat.

**For administrators.** This page covers the minimum forms configuration. Form *finding and filling* work after this page; form *submission* also requires [ticketing](/ai-assistant/getting-started/implement-on-servicenow/configure-ticketing), because a submitted form creates a Request (`sc_request`) and Request Item (`sc_req_item`) in ServiceNow.

## Before You Begin

* [Connect ServiceNow](/ai-assistant/getting-started/implement-on-servicenow/connect-servicenow) is complete, including the `moveworks.acl` update set (form permissions cannot ingest without it).
* You know which ServiceNow catalogs you want to ingest and their `sys_id`s (open the catalog in ServiceNow and copy its `sys_id`).
* **Plan for the ingestion window:** forms and their access controls can take up to 48 hours to fully ingest and index. See the [Moveworks Ingestion Schedule](/ai-assistant/enterprise-search/indexed-search/moveworks-ingestion-schedule).

## Procedure

### 1. Create the Forms Ingestion

1. In **Moveworks Setup**, go to **Forms > Import > Import Settings** and click **New Ingestion**.

2. **Select Connector:** choose the connector you created when connecting ServiceNow (the name must match exactly).

3. **Name the ingestion** descriptively, for example `servicenow_forms_IT`.

   ![Forms ingestion wizard with a descriptive ingestion name entered](https://fdr-prod-docs-files-public.s3.us-east-1.amazonaws.com/moveworks.docs.buildwithfern.com/d74125506bcbe8f834a2b5ebdb78c5557c8047654f347bf2002e12fa63a9a1e9/docs/assets/images/setup-labs/lab4a_ingestion_name.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA6KXJSKKNFOCF7G4B%2F20260826%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260826T010418Z&X-Amz-Expires=604800&X-Amz-Signature=720b5a68a8d9325418aaaf3f4bc1c65fcfd6f0a5c87857deeaffd9e0f5670f5e&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject)

4. **Select Form Catalogs:** check each catalog you want to ingest and assign it a domain (for example, your IT catalogs to the `IT` domain, an HR catalog to `HR`).

   ![Catalog selection step with catalogs checked and assigned to a domain](https://fdr-prod-docs-files-public.s3.us-east-1.amazonaws.com/moveworks.docs.buildwithfern.com/15679a863c785ac1fd0a3bf4a19b47706e75f54a6cbbfde2e7007daad03ed779/docs/assets/images/setup-labs/lab4a_select_form_catalogs.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA6KXJSKKNFOCF7G4B%2F20260826%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260826T010418Z&X-Amz-Expires=604800&X-Amz-Signature=b67d1383eb7876aa7cb2f4e5793c34c17c9d50aa2cde41b33a46d5130dc0abe3&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject)

5. **Provide a Sample URL Template** so ticket and chat links open the form in your portal. The template must include `{form_id}`:

   ```
   https://[your-instance].service-now.com/sp?id=sc_cat_item&sys_id={form_id}
   ```

   Substitute your portal path if you use a custom portal.

6. **Review Samples:** Moveworks previews the forms found in your selected catalogs. Confirm the count is greater than zero, then click **Confirm Ingestion**.

**If no forms appear in the preview:** verify the connector is valid and tested, the catalogs are checked with a domain assigned, and the URL template includes `{form_id}` with your correct instance name.

### 2. Configure Form Permissions

1. Go to **Resource Permissions > Mirror Permissions**, confirm your connector is selected, and check **Fetch Form Access Controls** (alongside **Fetch Knowledge Base Access Controls** if you configured Enterprise Search). **Save**.

   ![Mirror Permissions page with Fetch Form Access Controls checked](https://fdr-prod-docs-files-public.s3.us-east-1.amazonaws.com/moveworks.docs.buildwithfern.com/785aa63fd494c7a8b61bf5fa62ed51ae2f35a8b5433af518137855ac22c937c6/docs/assets/images/setup-labs/lab4a_member_permissions_snow.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA6KXJSKKNFOCF7G4B%2F20260826%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260826T010418Z&X-Amz-Expires=604800&X-Amz-Signature=36b86bb62f565888248e52309240c9c96212434ea0c90523419228e58246cbf4&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject)

2. Go to **Resource Permissions > Permission Rules** and add a rule:

   | Field               | Value               |
   | ------------------- | ------------------- |
   | **Strategy Config** | Rebac Config        |
   | **Integration Id**  | your connector name |
   | **Resource Type**   | form                |
   | **Action**          | ACTION\_VIEW        |

   Leave all other fields blank. This tells Moveworks to evaluate who can see each form using the user criteria mirrored from ServiceNow.

   ![Permission Rules page with a ReBAC rule for the form resource type](https://fdr-prod-docs-files-public.s3.us-east-1.amazonaws.com/moveworks.docs.buildwithfern.com/7c4d2c58d059c982081869bd3ded9545cab18c230c875a10d6c1c4e9a514c24f/docs/assets/images/setup-labs/lab4a_permission_rules_rebac.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA6KXJSKKNFOCF7G4B%2F20260826%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260826T010418Z&X-Amz-Expires=604800&X-Amz-Signature=361627cebeb973d2ad8e6b0cc34dfa769405c12a4b80f5f49bebf58e6fe683f0&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject)

**Form ingestion will not run without Fetch Form Access Controls enabled.** Permissions must be configured before Moveworks can index your catalog items.

### 3. Enable the Plugin

Go to **AI Assistant > Plugin Management** and set the **Forms** plugin to **TRUE**. Leave the DSL rule empty to grant access to all users, or scope it later.

## Result

After ingestion and indexing complete, the **Ingested Forms** page shows the total forms imported, how many are fillable in chat, and the last/next import times - and asking the AI Assistant for something a catalog item covers (for example, a hardware request) surfaces the matching form.

![Ingested Forms page showing imported form counts, fillability, and import timestamps](https://fdr-prod-docs-files-public.s3.us-east-1.amazonaws.com/moveworks.docs.buildwithfern.com/f9bc5a9d3b69fd0101565d5158b11600e7656baa82778b57458e4f913385789e/docs/assets/images/setup-labs/lab4a_ingested_forms_list.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA6KXJSKKNFOCF7G4B%2F20260826%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260826T010418Z&X-Amz-Expires=604800&X-Amz-Signature=f02624bf03feee849f1d17e4c704653b8334c17558e0f1d4dbae61fd6b795a28&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject)

**Not all forms are fillable in chat** - some render as a link to the portal instead. Fillability depends on the form's field types; the form's detail page shows any optimization errors.

## What to Do Next

* [Configure Ticketing](/ai-assistant/getting-started/implement-on-servicenow/configure-ticketing) - required before form submissions can complete, since submissions create Request records in ServiceNow.