Overview
Add ServiceNow to any ModuleX agent or workflow. Enterprise ITSM integration for ServiceNow: Trouble Ticket API for incidents/cases, Table API for full CRUD on any ServiceNow table. Targets per-tenant instances at https://{instance_name}.service-now.com.
Categories : Developer Tools & Infrastructure · Automation · Development · Miscellaneous · Itsm · Servicenow · Auth : OAuth 2.0 (Connected App), Access Token · Actions : 7
Authentication
OAuth 2.0 (Connected App) Authenticate using ServiceNow OAuth 2.0. Requires creating an OAuth API endpoint for external clients in your ServiceNow instance. Required Credentials Field Description Required Format Client ID The Client ID from your ServiceNow OAuth application Yes -Client Secret The Client Secret from your ServiceNow OAuth application Yes -Instance Name Your ServiceNow instance name (e.g. ‘dev12345’ from https://dev12345.service-now.com ) Yes dev12345
OAuth Configuration
Authorization URL : https://{instance_name}.service-now.com/oauth_auth.do
Token URL : https://{instance_name}.service-now.com/oauth_token.do
Scopes : useraccount
Access Token Authenticate using a manually obtained ServiceNow access token. Useful for development and testing. Required Credentials Field Description Required Format Access Token Your ServiceNow OAuth access token Yes -Instance Name Your ServiceNow instance name Yes dev12345
Available Actions
create_case — Create a new Case record in ServiceNow for customer service management
Parameters Detailed description of the issue
Priority/severity: ‘1’ Critical, ‘2’ High, ‘3’ Moderate, ‘4’ Low
Short description of the case
Current status of the case (Default: New)
Channel (contact_type) the case came in through
Sys_id of the account related to the case
Sys_id of the contact related to the case
Internal work note for the case
Additional comment for the case
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"result" : {
"anyOf" : [
{
"additionalProperties" : true ,
"type" : "object"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Result"
}
},
"required" : [
"success"
],
"title" : "CreateCaseOutput" ,
"type" : "object"
}
create_incident — Create a new Incident record in ServiceNow for IT service management
Parameters Detailed description of the incident
Priority/severity: ‘1’ Critical, ‘2’ High, ‘3’ Moderate, ‘4’ Low, ‘5’ Planning
Short description of the incident
Current status of the incident (Default: New)
Name of the contact method (contact_type)
Internal work note for the incident
Additional comment for the incident
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"result" : {
"anyOf" : [
{
"additionalProperties" : true ,
"type" : "object"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Result"
}
},
"required" : [
"success"
],
"title" : "CreateIncidentOutput" ,
"type" : "object"
}
create_table_record — Insert a new record in any specified ServiceNow table
Parameters Table to create the record in (e.g. ‘incident’, ‘change_request’)
Record data — field name/value pairs
API version number (‘v1’, ‘v2’, or ‘latest’)
Return display values (‘true’), actual values (‘false’), or both (‘all’) (Default: false)
Exclude Table API links for reference fields (Default: false)
Comma-separated list of fields to return
Render the response according to the specified UI view
Treat input values as display values (Default: false)
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"table" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Table"
},
"record" : {
"anyOf" : [
{
"additionalProperties" : true ,
"type" : "object"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Record"
}
},
"required" : [
"success"
],
"title" : "CreateTableRecordOutput" ,
"type" : "object"
}
get_table_record — Retrieve a specific record from a ServiceNow table by sys_id
Parameters Table containing the record
Unique identifier (sys_id) of the record
API version number (‘v1’, ‘v2’, or ‘latest’)
Return display values (‘true’), actual values (‘false’), or both (‘all’) (Default: false)
Exclude Table API links for reference fields (Default: false)
Comma-separated list of fields to return
Render the response according to the specified UI view
Access data across domains if authorized (Default: false)
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"table" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Table"
},
"sys_id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Sys Id"
},
"record" : {
"anyOf" : [
{
"additionalProperties" : true ,
"type" : "object"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Record"
}
},
"required" : [
"success"
],
"title" : "GetTableRecordOutput" ,
"type" : "object"
}
get_table_records — Retrieve multiple records from a ServiceNow table with optional filtering
Parameters Table containing the records
API version number (‘v1’, ‘v2’, or ‘latest’)
Return display values (‘true’), actual values (‘false’), or both (‘all’) (Default: false)
Exclude Table API links for reference fields (Default: false)
Comma-separated list of fields to return
Render the response according to the specified UI view
Encoded query string (e.g. ‘active=true^priority=1’)
Suppress pagination header (Default: false)
Maximum results per page (default 10000)
Read-replica category for the query
Access data across domains if authorized (Default: false)
Skip select count(*) on the table (Default: false)
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"table" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Table"
},
"records" : {
"items" : {
"additionalProperties" : true ,
"type" : "object"
},
"title" : "Records" ,
"type" : "array"
},
"count" : {
"default" : 0 ,
"title" : "Count" ,
"type" : "integer"
}
},
"required" : [
"success"
],
"title" : "GetTableRecordsOutput" ,
"type" : "object"
}
update_table_record — Update an existing record in a ServiceNow table
Parameters Table containing the record
Sys_id of the record to update
Field name/value pairs to update
API version number (‘v1’, ‘v2’, or ‘latest’)
Return display values (‘true’), actual values (‘false’), or both (‘all’) (Default: false)
Exclude Table API links for reference fields (Default: false)
Comma-separated list of fields to return
Render the response according to the specified UI view
Treat input values as display values (Default: false)
Access data across domains if authorized (Default: false)
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"table" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Table"
},
"sys_id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Sys Id"
},
"record" : {
"anyOf" : [
{
"additionalProperties" : true ,
"type" : "object"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Record"
}
},
"required" : [
"success"
],
"title" : "UpdateTableRecordOutput" ,
"type" : "object"
}
delete_table_record — Delete a record from a ServiceNow table
Parameters Table containing the record
Sys_id of the record to delete
API version number (‘v1’, ‘v2’, or ‘latest’)
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"table" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Table"
},
"sys_id" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Sys Id"
}
},
"required" : [
"success"
],
"title" : "DeleteTableRecordOutput" ,
"type" : "object"
}
Limits & Quotas
The Trouble Ticket API hits the
/api/sn_ind_tsm_sdwan/ticket/troubleTicket plugin endpoint —
requires that plugin to be installed in the ServiceNow instance.
Table API supports versioning via api_version (‘v1’, ‘v2’, or
‘latest’ / unspecified for default). The tool builds the path as
/api/now/[v1|v2|]table/<table>.
display_value / exclude_reference_link / view / fields /
pagination knobs are translated to ServiceNow’s sysparm_* query
string conventions.
Default page limit is 10000 records (Table API default).
Instance name parsing: bare name (dev12345), full hostname
(dev12345.service-now.com), and full URL
(https://dev12345.service-now.com) are all accepted.
Links