Overview
The ServiceNow tool lets Dust agents read and write records in your ServiceNow instance (incidents, changes, problems, requests, knowledge articles, or any other table) through the ServiceNow Table API. The connection uses OAuth 2.0 (Authorization Code flow) against your own ServiceNow instance. Setup has two parts: first prepare ServiceNow, then add the tool in Dust. Requirements: ServiceNow administrator access to create an OAuth application, and a ServiceNow user account (a dedicated integration user is recommended) whose roles and ACLs define what Dust can read and write.OAuth authenticates the connection; it does not authorize anything by itself. What Dust can actually do is determined by the connected user’s roles, table and field ACLs, REST API Access Policies, Business Rules, and Data Policies, each enforced by ServiceNow.
1. Create the OAuth application in ServiceNow
- Log in to your ServiceNow instance as an administrator.
- Go to All → System OAuth → Application Registry.
- Click New, then select Create an OAuth API endpoint for external clients.
- Configure the application:
- Save the record and let ServiceNow generate the Client ID and Client Secret (do not type your own client ID).
- Copy the Client ID and Client Secret. The secret may not be visible again after you leave the record.
scope parameter, and no scope needs to be pre-configured to get connected. If you run into API access issues after connecting, adding the useraccount scope to the OAuth application’s Auth Scopes can resolve them.
2. Verify API authorization on the instance
If your instance uses REST API Access Policies or REST API Auth Scopes, make sure the following is authorized for the OAuth application or authentication profile:- The Table API (
/api/now/table/...). - The HTTP methods Dust uses:
GET(read),POST(create),PATCH(update). These are authorized independently; a working read does not prove writes will work.
- Table-level read/create/write access on the target tables (for incident management, the
itilrole is the usual baseline). - Field-level access on the fields agents will use, including all mandatory fields for record creation.
3. Connect in Dust
- In Dust, go to Spaces → Tools → Add Tools and select ServiceNow.
- Enter:
- Start the connection. You are redirected to ServiceNow’s authorization page (
/oauth_auth.do). - Sign in with the dedicated integration user and approve the access.
https://<instance>.service-now.com/oauth_token.do. No manual token management is needed after the initial authorization.
4. Validate the connection
Test with the same integration user that will be used in production, ideally from an agent conversation:- Read: list one incident (
list_recordson tableincident, limit 1). - Create: create a disposable test incident and confirm mandatory fields pass.
- Update: update the test incident (for example, add a work note) and read it back.
Available Tools
The ServiceNow tool is a generic Table API connector. It works with any table the connected user can access; table access is enforced by ServiceNow’s own ACLs.Usage tips
- Look up a ticket by number:
get_recordtakes asys_id, not a number. To findINC0010001, first calllist_recordsonincidentwith the querynumber=INC0010001, then use the returnedsys_id. - Filters:
list_recordsaccepts ServiceNow encoded queries (for exampleactive=true^priority=1^opened_at>=2026-08-01). - Journal fields:
comments(customer-visible) andwork_notes(internal) are written throughupdate_record. - Missing fields are silent: fields the connected user cannot read are simply absent from responses, with no error. Never assume a field is readable; test with the real integration user, not an admin.
- ServiceNow validation applies: mandatory fields, state-transition rules, Business Rules, and Data Policies are enforced by your instance and surfaced as errors by the tools.
Use the tool efficiently: create a companion skill
The ServiceNow tool is intentionally generic: it can call any table, but it knows nothing about your instance. Every ServiceNow instance differs: available tables, customu_* fields, mandatory fields, choice values, state-transition rules, and Business Rules. Without that context, agents may guess table or field names and hit validation errors.
The recommended pattern is to create a skill in Dust that documents your instance, and attach the ServiceNow tool to it. The skill teaches agents how your ServiceNow works; the tool executes the calls. Share the skill with the users and agents that work with ServiceNow.
Your skill should describe:
- Approved tables: API names (
incident,change_request, …), the purpose of each, and whether agents may read and/or write them. - Mandatory fields for creation, per table (for example,
incidentrequiresshort_descriptionandcaller_idon most instances). - State-transition rules (for example, resolving an incident requires
close_codeandclose_notes; putting it on hold requireshold_reason). - Choice values for state, urgency, impact, and other coded fields.
- Reference fields and how to resolve them:
caller_id,assignment_group,assigned_to, andcmdb_ciexpect asys_id; agents should look them up first insys_user,sys_user_group, orcmdb_ci. - Custom
u_*fields and any instance-specific Business Rules or Data Policies. - Fields that must never be written (
sys_id,number,sys_created_on, …). - Examples of valid tool calls for your most common workflows.
Troubleshooting
Limitations & Considerations
- The tool covers the ServiceNow Table API only. Catalog ordering flows, attachments, and the Knowledge Management API are not exposed; knowledge articles are accessed through the
kb_knowledgetable. - Creating catalog requests (
sc_request,sc_req_item) through raw table writes bypasses catalog workflows; prefer reading and updating those tables. - Deletes are not supported.
- ServiceNow rate limits are admin-defined per instance; there is no fixed platform-wide default.