---
updatedAt: 2026-07-16T20:45:24.000Z
---

# ServiceNowSettings.json file configuration | EPM-WM

The **ServiceNowSettings.json** file contains some settings you must change and some settings you can optionally configure.

## Mandatory configuration

> ℹ️
>
> The mandatory configuration of the ServiceNow integration is discussed earlier but shown here for completeness.

You must edit the following lines in the **ServiceNowSettings.json** file before you associate it with the ServiceNow rule script. You can change the file before or after you import it.

This script must be a valid \*.json file when you are finished editing it.

### Authentication

> ℹ️
>
> Remove the asterisks but leave the quotes in place.

| Setting                                   | Description                                                                                                                                                                               |
| ----------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `"URL": "*REQUIRED*"`                     | The ServiceNow instance hostname in the form `instance-name.service-now.com`. Do not include `https://`, as the secure connection is managed by the Endpoint Privilege Management client. |
| `"Username": "*REQUIRED FOR BASIC AUTH*"` | The ServiceNow user name the client will use when authenticating with **Basic Auth**.                                                                                                     |
| `"Password": "*REQUIRED FOR BASIC AUTH*"` | The ServiceNow password the client will use when authenticating with **Basic Auth**.                                                                                                      |
| `"ClientId": "*REQUIRED FOR OAUTH*"`      | The OAuth **Client ID** the client will use when authenticating with **OAuth 2.0 Client Credentials Grant**.                                                                              |
| `"ClientSecret": "*REQUIRED FOR OAUTH*"`  | The OAuth **Client secret** the client will use when authenticating with **OAuth 2.0 Client Credentials Grant**.                                                                          |

Configure **one** authentication method:

* **Basic Auth:** Use `Username` and `Password` and remove `ClientId` and `ClientSecret`.
* **OAuth (Client Credentials Grant):** Use `ClientId` and `ClientSecret` and remove `Username` and `Password`.

Example (Basic Auth)

```json
"Authentication": {
  "URL": "instance-name.service-now.com",
  "Username": "adminuser",
  "Password": "..."
}
```

Example (OAuth client credentials)

```json
"Authentication": {
  "URL": "instance-name.service-now.com",
  "ClientId": "...",
  "ClientSecret": "..."
}
```

## Optional configuration

You can optionally edit the following lines in the **ServiceNowSettings.json** file. You may want to edit these to change the information shown to the user, modify button names, or configure logging.

> ℹ️
>
> In the **ServiceNowSettings.json** file, **&** represents a keyboard shortcut.

### Authentication

[block:parameters]
{
  "data": {
    "h-0": "Field",
    "h-1": "Description",
    "0-0": "ForceSSLSecurityProtocol",
    "0-1": "Controls the Security Protocol used to communicate with ServiceNow. Valid values can be found at <a href=\"https://docs.microsoft.com/en-us/dotnet/api/system.net.securityprotocoltype?view=net-5.0\" target=\"_blank\" rel=\"noreferrer noopener\">https\\://docs.microsoft.com/en-us/dotnet/api/system.net.securityprotocoltype?view=net-5.0</a>.<br />Your instance of ServiceNow may have a strict requirement for a specific Security Protocol, check the instance documentation for details. Example: \"ForceSSLSecurityProtocol\": \"Tls12\""
  },
  "cols": 2,
  "rows": 1,
  "align": [
    null,
    null
  ]
}
[/block]

### ServiceNowIncident

These fields are present in ServiceNow and populated by Endpoint Privilege Management for Windows client.

| Field            | Description                                    |
| ---------------- | ---------------------------------------------- |
| ShortDescription | This maps to the ServiceNow Short Description. |
| FullDescription  | This maps to the ServiceNow Description.       |
| AssignmentGroup  | This maps to the ServiceNow Assignment Group.  |
| Category         | This maps to the ServiceNow Category.          |
| Subcategory      | This maps to the ServiceNow Subcategory.       |
| Comment          | This maps to the ServiceNow Comments.          |

**Example**

```
"ServiceNowIncident": 
{
    "ShortDescription": "Avecto Defendpoint application execution request for $($dpProgramName)",
    "FullDescription": "The customer has requested the following application be allowed to execute on their computer:\n\nProgram Name: $($dpProgramName)\nProgram Publisher: $($dpProgramPublisher)\nProgram Path: $($dpProgramPath)\n\nChallenge Code: $($dpChallengeCode)\n\nBusiness Justification: $($dpBusinessJustification)",
    "AssignmentGroup": "UK-Support",
    "Category": "Endpoint-Agents",
    "Subcategory": "Avecto",\
    "Comment": "Created by Avecto Defendpoint $($scriptFriendlyName) integration script."\
}

```

### Logging

These are the logging options you can configure for the ServiceNow integration.

| Field        | Description                                                                            |
| ------------ | -------------------------------------------------------------------------------------- |
| LogToConsole | Whether or not to log to the console where present. Options are **true** or **false**. |
| LogToFile    | Whether or not to log to a file. Options are **true** or **false**.                    |
| LogFilePath  | The absolute file path of the file you want to log to.                                 |

**Example**

```
"Logging":
{
    "LogToConsole": true,
    "LogToFile":true,
    "LogFilePath": "C:\\Users\\MyUser\\Desktop\\examplescriptlog.log"
}

```

### Misc

> ℹ️
>
> Remove the asterisks but leave the quotation marks in place.

|                               |                                                                                                                                                                                                                                                                                                         |
| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| "DefaultRule": "\*REQUIRED\*" | This must be set to either **DesignatedUserMustAuthorize**, **ChallegeResponse**, or empty. **ChallengeResponse** is the default configuration.<br />This setting determines the button on the bottom left of the **Submit Incident Report** dialog box. If the field is empty, no button is displayed. |

**Example**

```
"Misc": 
{
    "_comment": "DefaultRule - Should be DesignatedUserMustAuthorize, ChallengeResponse, or empty.",
    "DefaultRule": "ChallengeResponse"
}
```

> ℹ️
>
> For more information, see [ServiceNow workflows with Endpoint Privilege Management](https://docs.beyondtrust.com/epm-wm/docs/servicenow-workflows).

### Dialog boxes

The integration displays various dialog boxes according to the workflow you define.

### CommonSettings

The following settings apply to all dialog boxes.

[block:parameters]
{
  "data": {
    "h-0": "Field",
    "h-1": "Description",
    "0-0": "BannerImageFile",
    "0-1": "The absolute file path to the banner image you want to use for all dialog boxes. The recommended size for this is 450 x 50px. You must use the following format:<br />C:\\\\Users\\\\StandardUser\\\\Desktop\\\\my_image.jpg<br />This file must be accessible on the endpoint. Ensure you use two backward slashes as the file is a JSON format and the character must be escaped."
  },
  "cols": 2,
  "rows": 1,
  "align": [
    null,
    null
  ]
}
[/block]

You can localize the following dialog boxes by creating a new section with the appropriate localization abbreviation. For example, **"Language\_FR"**. This section is used if the operating system was originally installed with French as the language.

### BusinessJustificationDialog

The dialog box varies based on the workflow you are using.

The dialog box and associated variables are shown here:

[block:parameters]
{
  "data": {
    "h-0": "Field",
    "h-1": "Description",
    "0-0": "Title",
    "0-1": "The title of the business justification dialog box.<br />**Default:** <i>Submit Incident Report</i>",
    "1-0": "LabelHeader",
    "1-1": "The first piece of text on the business justification dialog box.<br />**Default:** <i>Permission to run this application must be requested by submitting an incident report.</i>",
    "2-0": "LabelInputBoxDefault",
    "2-1": "The text that tells the user what to do in this dialog when the **DefaultRule** in the **ServiceNowSettings.json** file is set to **empty** or **DesignatedUserMustAuthorize**.<br />**Default:** <i>Enter the business justification for this application below.</i>",
    "3-0": "LabelInputBoxChallengeResponse",
    "3-1": "The text that tells the user what to do when the **DefaultRule** in the **ServiceNowSettings.json** file is set to **ChallengeResponse**.<br />**Default:** <i>Enter the business justification for this application below. If you have already received a response code, you can skip this step and click the \"Enter Response Code\" button.</i>",
    "4-0": "CustomButtonTextChallengeResponse",
    "4-1": "The text on the button that is displayed on the bottom left when the **DefaultRule** in the **ServiceNowSettings.json** file is set to **ChallengeResponse**.<br />**Default:** <i>&Enter Response Code</i>",
    "5-0": "CustomButtonTextDesignatedUserMustAuthorize",
    "5-1": "The text on the button that is displayed on the bottom left when the **DefaultRule** in the **ServiceNowSettings.json** file is set to **DesignatedUserMustAuthorize**.<br />**Default:** <i>&Login As Other User</i>",
    "6-0": "LabelProgramName",
    "6-1": "The program name description.<br />**Default:** <i>Program Name</i>",
    "7-0": "LabelProgramPublisher",
    "7-1": "The program description.<br />**Default:** <i>Program Publisher</i>",
    "8-0": "LabelProgramPath",
    "8-1": "The program path.<br />**Default:** <i>Program Path</i>",
    "9-0": "ButtonCancel",
    "9-1": "The text on the button that is displayed on the bottom right to cancel the request.<br />**Default:** <i>&Cancel</i>",
    "10-0": "ButtonOK",
    "10-1": "The text on the button that is displayed on the bottom right to submit an incident to ServiceNow.<br />**Default:** <i>&Submit Report</i>"
  },
  "cols": 2,
  "rows": 11,
  "align": [
    null,
    null
  ]
}
[/block]

### ProgressDialog

This dialog box is displayed when Endpoint Privilege Management for Windows client is communicating with ServiceNow.

[block:parameters]
{
  "data": {
    "h-0": "Field",
    "h-1": "Description",
    "0-0": "Title",
    "0-1": "The title of the reporting incident dialog box.<br />**Default:** <i>Reporting Incident</i>",
    "1-0": "LabelHeader",
    "1-1": "The text on the dialog box while the Power Rule is processing.<br />**Default:** <i>Please wait...</i>"
  },
  "cols": 2,
  "rows": 2,
  "align": [
    null,
    null
  ]
}
[/block]

### MessageSuccessDialog

This dialog box is displayed when Endpoint Privilege Management for Windows has raised an incident in ServiceNow.

[block:parameters]
{
  "data": {
    "h-0": "Field",
    "h-1": "Description",
    "0-0": "Title",
    "0-1": "The title of the incident successfully reported dialog box.<br />**Default:** <i>Incident Successfully Reported</i>",
    "1-0": "LabelHeader",
    "1-1": "The text on the dialog box that tells the user what has happened and what their incident number is in ServiceNow.<br />**Default:** <i>Incident has been successfully submitted to ServiceNow.\\\\n\\\\nYour incident number is INC_NUM.</i>",
    "2-0": "ButtonLinkVisible",
    "2-1": "Toggles the availability of the button that is displayed on the bottom left of the dialog box.<br />**Default:** <i>Whether or not a button allowing the user to view their incident is visible. Options are true or false.</i>",
    "3-0": "ButtonLinkText",
    "3-1": "The text on the button that is displayed on the bottom left of the dialog box if it is displayed.<br />**Default:** <i>View Incident</i>",
    "4-0": "ButtonOK",
    "4-1": "The text on the button that is displayed on the bottom right to close the dialog box.<br />**Default:** <i>&Close</i>"
  },
  "cols": 2,
  "rows": 5,
  "align": [
    null,
    null
  ]
}
[/block]

### ErrorDialogs: ServiceNowQueryError

This dialog box is displayed if Endpoint Privilege Management for Windows client was unable to raise an incident in ServiceNow.

[block:parameters]
{
  "data": {
    "h-0": "Field",
    "h-1": "Description",
    "0-0": "Title",
    "0-1": "The title of the unable to raise a ticket in ServiceNow dialog box.<br />**Default:** <i>ServiceNow Query Error</i>",
    "1-0": "LabelHeader",
    "1-1": "The text that tells the user what happened including any error codes.<br />**Default:** <i>There was an error contacting ServiceNow.\\\\n\\\\n Please contact your IT support team quoting error code.</i>",
    "2-0": "ButtonOK",
    "2-1": "The text on the button that is displayed on the bottom right of the dialog box.<br />**Default:** <i>&OK</i>"
  },
  "cols": 2,
  "rows": 3,
  "align": [
    null,
    null
  ]
}
[/block]

### ErrorDialogs: ServiceNowReportIncidentError

The dialog box is only displayed if there is an error contacting ServiceNow after all the validation has passed, but before the incident is created.

[block:parameters]
{
  "data": {
    "h-0": "Field",
    "h-1": "Description",
    "0-0": "Title",
    "0-1": "The title of the ServiceNow error dialog box.<br />**Default:** <i>Unable to Report Incident</i>",
    "1-0": "LabelHeader",
    "1-1": "The text that tells the user what happened including error codes.<br />**Default:** <i>There was an error contacting ServiceNow and we were unable to report this incident.\\\\n\\\\n Please contact your IT support team quoting error code </i>",
    "2-0": "ButtonOK",
    "2-1": "The text on the button that is displayed on the bottom right of the dialog box.<br />**Default:** <i>&OK</i>"
  },
  "cols": 2,
  "rows": 3,
  "align": [
    null,
    null
  ]
}
[/block]