Skip to content
Release: Australia · Updated: 2026-03-12 · Official documentation · View source

Agent Client Collector API

The Agent Client Collector API provides endpoints to manage actions on available agents and managing policies.

This API requires the Agent Client Collector Framework (sn_agent) store application and is provided within the sn_agent namespace. The endpoints in this API require the agent_client_collector_admin role. For more information, refer to Agent Client Collector.

Parent Topic:REST API reference

Agent Client Collector - GET /agents/{agent_id}

Gets the information of a specified agent.

URL format

/api/sn_agent/agents/{agent_id}

Supported request parameters

NameDescription
agent\_idUnique ID of an agent listed in the Agent ID column of the Agent Client Collectors \[sn\_agent\_cmdb\_ci\_agent\] table. For a list of agent IDs and other details, run the GET /agents/list endpoint. Data type: String
NameDescription
None 
NameDescription
None 

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
403The user does not have the agent_client_collector_user role.
404Agent with provided ID not found.

Response body parameters (JSON)

NameDescription
<Array>Array of JSON objects containing extended agent information.
{
   "agent_id": "String",
   "data_collection": Number,
   "ip_address": "String",
   "is_duplicate": Boolean,
   "is_restart_enabled": Boolean,
   "name": "String",
   "number_of_running_checks": Number,
   "status": Number,
   "up_since": "String",
   "version": "String"
}
agent\_idID of the agent as submitted.Data type: String
data\_collectionData collection indicates whether scheduled checks are to be run. These checks are a part of the policies scheduled for this agent to run.Possible values: - 0: On – Checks run as scheduled. - 1: Off \(manual\) – Checks have been disabled manually. - 2: Off \(auto\) – Checks have been disabled automatically due to high CPU consumption by the Data type: Number
ip\_addressAgent IP address.Data type: String
is\_duplicateFlag that indicates whether this agent is a duplicate of another. There should be only a single agent on a given host. Possible values: - true: The agent has the same host as an Alive/Up agent with a different agent ID. Turn off or uninstall the duplicate - false: This agent has no duplicates in the Alive/Up state. Data type: Boolean
is\_restart\_enabledFlag that indicates whether restart is enabled. Agent restart is not configurable. It depends on the OS and the version of the OS the agent is running on. Possible values: - true: Restart is enabled for this agent. - false: Restart is disabled for this agent. Data type: Boolean
nameName of the agent.Data type: String
number\_of\_running\_checksThe number of checks the agent is scheduled to run. These checks are a part of the policies scheduled for this agent to run.Data type: Number
statusStatus of the agent.Possible values: - 0: Alive/Up – The agent is active. - 1: Warning – The agent has not received a keep-alive message in the past few minutes. - 2: Down – The agent has not received a keep-alive message in a long time. - 3: Restarting – The agent is restarting. Data type: Number
up\_sinceUTC time since the agent's status became alive/up. The value is in GlideDateTime format.Data type: String
versionVersion of Agent Client Collector the agent is running.Data type: String

cURL request

The following example shows how to get agent details.

curl "https://instance.service-now.com/api/sn_agent/agents/<agent_id>" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'

Output:

{
  "name": "WIN-V26KAP7PI2G",
  "status": 2,
  "agent_id": "074b14e2eb3ce9d4",
  "ip_address": "10.196.55.14",
  "number_of_running_checks": 11,
  "data_collection": 0,
  "is_restart_enabled": true,
  "is_duplicate": false,
  "up_since": "2021-03-31 12:02:17",
  "version": "2.3.0"
}

Agent Client Collector - GET /agents/{agent_id}/data/off

Disables data collection for a specified agent in the up/alive state.

To determine if an agent's data collection is on or off, run the GET /agents/{agent_id} endpoint.

URL format

/api/sn_agent/agents/{agent_id}/data/off

Supported request parameters

NameDescription
agent\_idUnique ID of an agent listed in the Agent ID column of the Agent Client Collectors \[sn\_agent\_cmdb\_ci\_agent\] table. For a list of agent IDs and other details, run the GET /agents/list endpoint. Data type: String
NameDescription
None 
NameDescription
None 

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
403The user does not have the agent_client_collector_admin role.
404Agent not found or isn't in the up/alive state.

Response body parameters (JSON)

NameDescription
messageMessage containing operation success or failure results.Data type: String

cURL request

The following example shows how to turn off agent data collection.

curl "https://instance.service-now.com/api/sn_agent/agents/<agent_id>/data/off" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'

Output:

{
"message": "Data Collection Disabled For Agent With ID: <agent_id>"
}

Agent Client Collector - GET /agents/{agent_id}/data/on

Enables data collection for a specified agent in the up/alive state.

To determine if an agent's data collection is on or off, run the GET /agents/{agent_id} endpoint.

URL format

/api/sn_agent/agents/{agent_id}/data/on

Supported request parameters

NameDescription
agent\_idUnique ID of an agent listed in the Agent ID column of the Agent Client Collectors \[sn\_agent\_cmdb\_ci\_agent\] table. For a list of agent IDs and other details, run the GET /agents/list endpoint. Data type: String
NameDescription
None 
NameDescription
None 

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
403The user does not have the agent_client_collector_admin role.
404Agent not found or isn't in the up/alive state.

Response body parameters (JSON)

NameDescription
messageMessage containing operation success or failure results.Data type: String

cURL request

The following example shows how to turn on agent data collection.

curl "https://instance.service-now.com/api/sn_agent/agents/<agent_id>/data/on" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'

Output:

{
  "message": "Data Collection Enabled For Agent With ID: <agent_id>"
}

Agent Client Collector - GET /agents/{agent_id}/discovery

Runs a discovery check to locate CIs related to an agent. The specified agent must be in alive/up status.

URL format

/api/sn_agent/agents/{agent_id}/discovery

Supported request parameters

NameDescription
agent\_idUnique ID of an agent listed in the Agent ID column of the Agent Client Collectors \[sn\_agent\_cmdb\_ci\_agent\] table. For a list of agent IDs and other details, run the GET /agents/list endpoint. Data type: String
NameDescription
None 
NameDescription
None 

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
403The user does not have the agent_client_collector_admin role.
404Agent not found or isn't in the up/alive state.

Response body parameters (JSON)

NameDescription
messageMessage containing operation success or failure results.Data type: String

cURL request

The following example shows how to run discovery on an agent with alive/up status.

curl "https://instance.service-now.com/api/sn_agent/agents/<agent_id>/discovery" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'

Output:

{
  "message": "Running Discovery For Agent With ID: <agent_id>"
}

Agent Client Collector - GET /agents/check_defs/{check_def_id}

Gets a specified check definition with details.

URL format

/api/sn_agent/agents/check_defs/{check_def_id}

Supported request parameters

NameDescription
check\_def\_idSys\_id of the check definition listed in the Check Definitions \[sn\_agent\_check\_def\] table. Data type: String
NameDescription
None 
NameDescription
X-Include-Check-ParamsFlag that indicates whether existing check parameter details are returned. Information for each standard and secure check parameter is included in a JSON object. Valid values: - true: Return check parameter details. - false: Do not return check parameter details. Data type: Boolean Default: False

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
404Check definition was not found with the sys_id provided.

Response body parameters (JSON)

PropertiesDescription
checkDetails of the specified check definition.
{
 "background": Boolean,
 "check_group": "String",
 "check_type": "String",
 "command": "String",
 "error": "String",
 "name": "String",
 "params": [Array],
 "plugins": [Array],
 "proxy_valid": Boolean,
 "secure_params": [Array],
 "sys_id": "String",
 "timeout": Number
}
backgroundFlag that indicates whether this check definition is a background check. A background check is a check which the agent starts execution of and doesn't wait for it to finish running. Valid values: - true: This check definition is a background check. - false: This check definition is not a background check. Data type: Boolean
check\_groupGroup specified for this check definition. Data type: String
check\_typeType of check. Possible values: - Events – Check results are transformed into an Event Management event. - Metrics – Values from the check result are transformed to metrics. Data type: String
commandCommand that the Agent Client Collector executes. Data type: String
errorMessage if there is an error. Null otherwise.Data type: String
nameName of the check. Data type: String
params

List of parameter definitions associated with the check definition. These results are only included if the withParams parameter is set to true."params": [ { "active": Boolean, "default_value": "String", "mandatory": Boolean, "name": "String", "sys_id": "String" } ]

Data type: Array

params.activeFlag that indicates whether the check parameter is active. Valid values: - true: The check parameter is active. - false: The check parameter is inactive. Data type: Boolean
params.default\_valueSpecifies the default value for this check parameter. Data type: String
params.mandatoryFlag that indicates whether the check parameter is required. Valid values: - true: The check parameter is required. - false: The check parameter is optional. Data type: Boolean
params.nameName of the check parameter. Data type: String
params.sys\_idSys\_id of the check parameter listed in the Check Secure Parameter Definitions \[sn\_agent\_check\_param\_def\] table. Data type: String
pluginsList of Agent Client Collector plugins associated with this check. Data type: Array
proxy\_validFlag that indicates whether the check definition policy is set to work as a proxy. Valid values: - true: This check definition policy is set to work as a proxy. - false: This check definition policy is not set to work as a proxy. Data type: Boolean
secure\_params

List of assigned to this check. These results are only included if the withParams parameter is set to true."secure_params": [ { "active": Boolean, "name": "String", "order": Number, "sys_id": "String" } ]

Data type: Array

secure\_params.activeFlag that indicates whether the secure parameter is active. Valid values: - true: The secure parameter is active. - false: The secure parameter is inactive. Data type: Boolean
secure\_params.nameName of the secure parameter. Data type: String
secure\_params.orderOrder in which the parameter is sent to the check command/script. Data type: Number
secure\_params.sys\_idSys\_id of the secure parameter listed in the Check Secure Parameter Definitions \[sn\_agent\_check\_secure\_param\_def\] table. Data type: String
sys\_idSys\_id of the check definition listed in the Check Definitions \[sn\_agent\_check\_def\] table. Data type: String
timeoutTimeout in seconds. Data type: Number

cURL request

The following example shows how to get information for a specified check definition.

curl "https://instance.service-now.com/api/sn_agent/agents/check_defs/94436b237f705300f128134f8dfa91a4" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'

Output:

{
  "name": "app.apache.metrics-apache",
  "command": "metrics-apache-graphite.rb -p {{.labels.params_port}} --path {{.labels.params_path}} -h {{.labels.params_host}}",
  "plugins": [
    "monitoring-plugin-common"
  ],
  "timeout": 60,
  "proxy_valid": true,
  "background": false,
  "check_type": "Metrics",
  "check_group": "Apache",
  "sys_id": "94436b237f705300f128134f8dfa91a4",
  "params": [
    {
      "name": "port",
      "active": true,
      "mandatory": true,
      "default_value": "80",
      "sys_id": "58436b237f705300f128134f8dfa91a8"
    },
    {
      "name": "path",
      "active": true,
      "mandatory": true,
      "default_value": "/server-status?auto",
      "sys_id": "98436b237f705300f128134f8dfa91aa"
    },
    {
      "name": "scheme",
      "active": false,
      "mandatory": false,
      "default_value": null,
      "sys_id": "a4e57a96db3bbb4035305c55dc9619f6"
    },
    {
      "name": "host",
      "active": true,
      "mandatory": true,
      "default_value": "127.0.0.1",
      "sys_id": "d4436b237f705300f128134f8dfa91a6"
    },
    {
      "name": "ssl_secure_connection",
      "active": false,
      "mandatory": false,
      "default_value": null,
      "sys_id": "e3b272c4530100106ffeddeeff7b1275"
    }
  ],
  "secure_params": [
    {
      "name": "cred_user_name",
      "active": true,
      "order": 1,
      "sys_id": "2494cd6e53170010f42cddeeff7b1273"
    },
    {
      "name": "cred_password",
      "active": true,
      "order": 2,
      "sys_id": "35948d6e53170010f42cddeeff7b127f"
    }
  ]
}

Agent Client Collector - GET /agents/check_defs/list

Gets a list of check definitions with details.

URL format

/api/sn_agent/agents/check_defs/list

Supported request parameters

NameDescription
None 
NameDescription
None 
NameDescription
X-Enc-QueryAn encoded query string to filter the check definition result list. Use null for an unfiltered list of check definitions in the system. Data type: String
X-Include-Check-ParamsFlag that indicates whether existing check parameter details are returned. Information for each standard and secure check parameter is included in a JSON object. Valid values: - true: Return check parameter details. - false: Do not return check parameter details. Data type: Boolean Default: False
X-LimitLimits the number of returned records. Set to null to use the default value. Data type: Number Default: 20,000

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.

Response body parameters (JSON)

NameDescription
check definitionsList of check definition and details provided as JSON objects.
[
 {
  "background": Boolean,
  "check_group": "String",
  "check_type": "String",
  "command": "String",
  "name": "String",
  "params": [Array],
  "plugins": [Array],
  "proxy_valid": Boolean,
  "secure_params": [Array],
  "sys_id": "String",
  "timeout": Number 
 }
]
Data type: Array
backgroundFlag that indicates whether this check definition is a background check. A background check is a check which the agent starts execution of and doesn't wait for it to finish running. Valid values: - true: This check definition is a background check. - false: This check definition is not a background check. Data type: Boolean
check\_groupGroup specified for this check definition. Data type: String
check\_typeType of check. Possible values: - Events – Check results are transformed into an Event Management event. - Metrics – Values from the check result are transformed to metrics. Data type: String
commandCommand that the Agent Client Collector executes. Data type: String
nameName of the check. Data type: String
params

List of parameter definitions associated with the check definition. These results are only included if the withParams parameter is set to true."params": [ { "active": Boolean, "default_value": "String", "mandatory": Boolean, "name": "String", "sys_id": "String" } ]

Data type: Array

params.activeFlag that indicates whether the check parameter is active. Valid values: - true: The check parameter is active. - false: The check parameter is inactive. Data type: Boolean
params.default\_valueSpecifies the default value for this check parameter. Data type: String
params.mandatoryFlag that indicates whether the check parameter is required. Valid values: - true: The check parameter is required. - false: The check parameter is optional. Data type: Boolean
params.nameName of the check parameter. Data type: String
params.sys\_idSys\_id of the check parameter listed in the Check Secure Parameter Definitions \[sn\_agent\_check\_param\_def\] table. Data type: String
pluginsList of Agent Client Collector plugins associated with this check. Data type: Array
proxy\_validFlag that indicates whether the check definition policy is set to work as a proxy. Valid values: - true: This check definition policy is set to work as a proxy. - false: This check definition policy is not set to work as a proxy. Data type: Boolean
secure\_params

List of assigned to this check. These results are only included if the withParams parameter is set to true."secure_params": [ { "active": Boolean, "name": "String", "order": Number, "sys_id": "String" } ]

Data type: Array

secure\_params.activeFlag that indicates whether the secure parameter is active. Valid values: - true: The secure parameter is active. - false: The secure parameter is inactive. Data type: Boolean
secure\_params.nameName of the secure parameter. Data type: String
secure\_params.orderOrder in which the parameter is sent to the check command/script. Data type: Number
secure\_params.sys\_idSys\_id of the secure parameter listed in the Check Secure Parameter Definitions \[sn\_agent\_check\_secure\_param\_def\] table. Data type: String
sys\_idSys\_id of the check definition listed in the Check Definitions \[sn\_agent\_check\_def\] table. Data type: String
timeoutTimeout in seconds. Data type: Number

cURL request

The following example shows how to retrieve a list of two check definitions with parameter values.

curl "https://instance.service-now.com/api/sn_agent/agents/check_defs/list" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'

Output:

{
  "check_definitions": [
    {
      "name": "checks_api_test",
      "command": "echo hello",
      "plugins": [],
      "timeout": 9,
      "proxy_valid": true,
      "background": false,
      "check_type": "TestCheck",
      "check_group": "computer",
      "sys_id": "7f1f9026dba530106f4810284b96194f",
      "params": [],
      "secure_params": [
        {
          "name": "check_api_test_check_secure_param2",
          "active": true,
          "order": 2,
          "sys_id": "2d30a066dba530106f4810284b9619c1"
        },
        {
          "name": "check_api_test_check_secure_param1",
          "active": true,
          "order": 100,
          "sys_id": "4c20a066dba530106f4810284b9619a8"
        }
      ]
    },
    {
      "name": "checks_api_test222",
      "command": "echo hello1212121",
      "plugins": [],
      "timeout": 60,
      "proxy_valid": true,
      "background": false,
      "check_type": "TestCheck",
      "check_group": "computer",
      "sys_id": "99e12466dba530106f4810284b961976",
      "params": [
        {
          "name": "check_api_test_check_param_222",
          "active": true,
          "mandatory": false,
          "default_value": "test_test_test",
          "sys_id": "44026466dba530106f4810284b9619b2"
        }
      ],
      "secure_params": []
    }
  ]
}

Agent Client Collector - GET /agents/exec/background/stop/{request_id}

Stops a background check.

To start a background check, use the POST /agents/check_defs/{check_def_id}/run API.

URL format

/api/sn_agent/agents/exec/background/stop/{request_id}

Supported request parameters

NameDescription
request_idThe ID of a background check request generated by running the POST /agents/check_defs/{check_def_id}/run API.
NameDescription
None 
NameDescription
None 

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
404The request with the ID provided is not found.

Response body parameters (JSON)

NameDescription
None 

cURL request

The following example shows how to stop a background check.

curl "https://instance.service-now.com/api/sn_agent/agents/exec/background/stop/02359174db2a30108a0751f4f3961997" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'

Agent Client Collector - GET /agents/exec/run/{request_id}

Gets status of the request with the given ID.

URL format

/api/sn_agent/agents/exec/run/{request_id}

Supported request parameters

NameDescription
request_idThe ID of a background check request generated by running the POST /agents/check_defs/{check_def_id}/run API.
NameDescription
None 
NameDescription
None 

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
202Message with provided ID indicating that the request is in progress.
400Error in the arguments provided in the request body.
404The request with the ID provided is not found.
408Execution timeout for the request with the ID provided.
500Error checking the status or the request with the ID provided.

Response body parameters (JSON)

NameDescription
statusRequest status.Possible values: - done – Check is successful. - failure – Check has failed. See error message for details. - mid\_flow – Request output is being handled by the MID server. - processing – Check is in progress. - timeout – Check processing exceeded time limit set in the runCheckForCis\(\) method. Data type: String
err\_msgError message if any.Possible values: - No agents found for relevant CIs. - No background check request with given ID. - No request with given ID. - No test result with given ID. - Request timeout. Data type: String

cURL request

The following example shows how to get the status of a request.

curl "https://instance.service-now.com/api/sn_agent/agents/exec/run/12fed13cdb2a30108a0751f4f3961981" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'

Agent Client Collector - GET /agents/exec/test/{test_result_id}

Gets the test check status of the given test result.

URL format

/api/sn_agent/agents/exec/test/{test_result_id}

Supported request parameters

NameDescription
test_result_idA test result ID generated by creating a test check request.
NameDescription
None 
NameDescription
None 

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
202Message with provided ID indicating that the request is in progress.
404The request with the ID provided is not found.
408Execution timeout for the request with the ID provided.
500Error checking the status of the request with the ID provided.

Response body parameters (JSON)

PropertiesDescription
statusStatus of the test results.Possible values: - 0: Pending - 1: In progress - 2: Complete - 3: No test result with given ID Data type: String
outputOutput describing the status.Data type: String

cURL request

The following example shows how get result status of a completed test check request.

curl "https://instance.service-now.com/api/sn_agent/agents/check_instances/99e12466dba530106f4810284b961976/test" \
--request POST \
--header "Accept:application/json" \
--user 'username':'password'

Agent Client Collector - GET /agents/list

Gets a list of agents with related information.

URL format

/api/sn_agent/agents/list

Supported request parameters

NameDescription
None 
NameDescription
None 
NameDescription
None 

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
X-Enc-QueryEncoded query on the Agent Client Collectors \[sn\_agent\_cmdb\_ci\_agent\] table in standard Glide format. See Encoded query strings.
X-LimitRestricts results to a maximum number of agents. Use null or undefined for both if they are not required.Default/Max: 20,000Data type: Number
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
403The user does not have the agent_client_collector_user role.

Response body parameters (JSON)

PropertyDescription
<Array>Array of JSON objects containing extended agent information.
[
 {
   "agent_id": "String",
   "data_collection": Number,
   "ip_address": "String",
   "is_duplicate": Boolean,
   "is_restart_enabled": Boolean,
   "name": "String",
   "number_of_running_checks": Number,
   "status": Number,
   "up_since": "String",
   "version": "String"
 }
]
agent\_idID of the agent as submitted.Data type: String
data\_collectionData collection indicates whether scheduled checks are to be run. These checks are a part of the policies scheduled for this agent to run.Possible values: - 0: On – Checks run as scheduled. - 1: Off \(manual\) – Checks have been disabled manually. - 2: Off \(auto\) – Checks have been disabled automatically due to high CPU consumption by the Data type: Number
ip\_addressAgent IP address.Data type: String
is\_duplicateFlag that indicates whether this agent is a duplicate of another. There should be only a single agent on a given host. Possible values: - true: The agent has the same host as an Alive/Up agent with a different agent ID. Turn off or uninstall the duplicate - false: This agent has no duplicates in the Alive/Up state. Data type: Boolean
is\_restart\_enabledFlag that indicates whether restart is enabled. Agent restart is not configurable. It depends on the OS and the version of the OS the agent is running on. Possible values: - true: Restart is enabled for this agent. - false: Restart is disabled for this agent. Data type: Boolean
nameName of the agent.Data type: String
number\_of\_running\_checksThe number of checks the agent is scheduled to run. These checks are a part of the policies scheduled for this agent to run.Data type: Number
statusStatus of the agent.Possible values: - 0: Alive/Up – The agent is active. - 1: Warning – The agent has not received a keep-alive message in the past few minutes. - 2: Down – The agent has not received a keep-alive message in a long time. - 3: Restarting – The agent is restarting. Data type: Number
up\_sinceUTC time since the agent's status became alive/up. The value is in GlideDateTime format.Data type: String
versionVersion of Agent Client Collector the agent is running.Data type: String

cURL request

The following example shows how to restrict results by query and number. The query returns all agents that are not in the down state with a maximum of two results.

curl "https://instance.service-now.com/api/sn_agent/agents/list" \
--request GET \
--header "Accept:application/json" \
--header "X-Enc-Query: agent_extended_info.status!=2" \
--header "X-Limit: 2" \
--user 'username':'password'

Output:

{
   "agents": [
     {
       "name": "007-175",
       "status": 0,
        "agent_id": "007-175",
       "ip_address": "11.222.63.66",
        "number_of_running_checks": 0,
       "data_collection": 0,
       "is_restart_enabled": false,
       "is_duplicate": false,
       "up_since": "2021-03-24 14:36:45",
       "version": "2.4.0"
     },
     {
       "name": "win2016-dc-64bit",
       "status": 0,
       "agent_id": "007-64",
       "ip_address": "10.222.333.42",
       "number_of_running_checks": 1,
       "data_collection": 0,
       "is_restart_enabled": true,
       "is_duplicate": false,
       "up_since": "2021-03-24 11:04:38",
       "version": "2.4.0"
     }
   ]
}

cURL request

The following example shows how to list every agent in the system. This example uses no query and no maximum number of results.

curl "https://instance.service-now.com/api/sn_agent/agents/list" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'

Agent Client Collector - GET /agents/{agent_id}/log

Requests the log of a specified agent with alive/up status.

Note: To retrieve the log and check its progress, pass the request ID returned to the GET /agents/log/{request_id}/ endpoint.

URL format

/api/sn_agent/agents/{agent_id}/log

Supported request parameters

NameDescription
agent\_idUnique ID of an agent listed in the Agent ID column of the Agent Client Collectors \[sn\_agent\_cmdb\_ci\_agent\] table. For a list of agent IDs and other details, run the GET /agents/list endpoint. Data type: String
NameDescription
None 
NameDescription
None 

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
403The user does not have the agent_client_collector_admin role.
404Agent not found or isn't in the up/alive state.

Response body parameters (JSON)

NameDescription
request\_idSys\_id of a request in the Agent Client Collector Requests \[sn\_agent\_request\] table. You can use this ID to retrieve the log and check its progress with the GET /agents/log/\{request\_id\}/ endpoint. Data type: String

cURL request

The following example shows how to get a log request ID.

curl "https://instance.service-now.com/api/sn_agent/agents/<sys_id>/log" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'

Output:

"request_id": "<sys_id>"

Agent Client Collector - GET /agents/log/{request_id}/

Checks the status of a grab log request.

Detects changes in the log retrieving request sent with GET /api/sn_agent/agents/{agent_id}/log.

URL format

/api/sn_agent/agents/log/{request_id}/

Supported request parameters

NameDescription
request\_idSys\_id of a request in the Agent Client Collector Requests \[sn\_agent\_request\] table. For the request id, run GET /api/sn\_agent/agents/\{agent\_id\}/log. Data type: String
NameDescription
None 
NameDescription
None 

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Request status is done and the grabbed log is ready.
202Grab log request with provided ID is still in progress.
403The user does not have the agent_client_collector_admin role.
404Grab log request with provided ID not found.
408Grab log request timed out.
500Grab log request encountered an error.

Response body parameters (JSON)

PropertiesDescription
outputInformation describing the status.

cURL request

The following example shows how to use a request ID to get the status of a grab log request.

curl "https://instance.service-now.com/api/sn_agent/agents/log/<request_ID>" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'

Output:

{
  "output": "SensuSnReadFile OK: {\"component\":\"agent\",\"level\":\"info\",\"msg\":\"Agent Protection: cpu of all checks: 0%\",\"time\":\"2021-04-05T00:21:41-07:00\"},...
}

Agent Client Collector - GET /agents/policies/list

Gets a list of policies that are in published or unpublished draft state.

URL format

/api/sn_agent/agents/policies/list

Supported request parameters

NameDescription
None 
NameDescription
None 
NameDescription
None 

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
X-Enc-QueryOptional. Encoded query string in the standard platform format.
X-Include-Check-ParamsOptional. Flag that indicates whether to return check instances and their parameters in the results.Valid values: - true: Includes check instances and their parameters in the results. - false: Do not include check instances and their parameters in the results. Default: false Data type: Boolean
X-Include-Checks-And-AgentsOptional. Flag that indicates whether to include check instances and agents in the results.Valid values: - true: Includes check instances and agents in the results. - false: Do not include checks and agents in the results. Default: false Data type: Boolean
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
403The user does not have the agent_client_collector_user role.

Response body parameters (JSON)

PropertyDescription
policiesList of policies retrieved. Includes checks and agent in results if queried using specific request headers. For information on policies, see default checks and policies.
{
  "policies": [
    {
      "active": Boolean,
      "agent_ids": "String",
      "checks": [Array],
      "cred_alias": "String",
      "credential_alias": "String",
      "filter": "String",
      "interval": "Number",
      "monitored_ci_group": "String",
      "monitored_ci_script": "String",
      "monitored_ci_type_filter": Boolean,
      "monitored_ci_type_group": Boolean,
      "monitored_ci_type_script": "String",
      "name": "String",
      "params": [Array],
      "publish_status": "String",
      "secure_params": [Array],
      "sys_id": "String",
      "sys_updated_on": "String",
      "table": "String"
    }
  ]
}
Data type: Array
policies.activeFlag that indicates whether the policy is active.Valid values: - true: Policy is active. - false: Policy isn't active. Data type: Boolean
policies.agent\_ids

Unique ID of an agent. These results only display if the X-Include-Checks-And-Agents header parameter is set to true.For extended information of an agent, run the ID in the GET /agents/{agent_id} endpoint.

Data type: String

Table: In the Agent ID column of the Agent Client Collectors [sn_agent_cmdb_ci_agent] table.

policies.checks

List of objects defining checks listed in the Check Instances [sn_agent_check] table. These results only display if the X-Include-Checks-And-Agents or X-Include-Check-Params header parameter is set to true.Data type: Array of Objects

"checks": [
   {
     "active": Boolean,
     "auto_generate": Boolean,
     "check_type": "String"
     "command_prefix": "String",
     "command": "String",
     "event_status_change_threshold": Number,
     "event_status_repair_threshold": Number,
     "interval": Number,
     "name": "String",
     "sys_id": "String",
     "timeout": "String"
   }
]

Table:

policies.checks.activeFlag that indicates whether the policy check is active.Valid values: - true: Policy check is active. - false: Policy check is inactive. Data type: Boolean
policies.checks.auto\_generate

Flag that indicates whether to automatically generate the command with the command_prefix value.Valid values:

  • true: Automatically populate the command property with active parameter values.
  • false: Command isn't automatically generated.

Data type: Boolean

policies.checks.check\_typeCheck type specifying the monitoring option.Possible values: - Discovery: Check that locates CIs related to the agent. - Events: The check's result is transformed into an Event Management event. - Metrics: The values from the check result are transformed to metrics. Data type: String
policies.checks.command

Command that the Agent Client Collector executes. Parameter taken from a template or monitored CI.Note: If auto_generate is true, this property is automatically populated with the prefix and flags of the active parameters listed in the parameters object.

Data type: String

policies.checks.command\_prefixIf the auto_generate property is true, this command is used for automatic generation. The prefix consists of any portion of the command which is static (does not change), such as the script name.Data type: String
policies.checks.event\_status\_change\_thresholdNumber of consecutive times that a check's response status must happen before a new event is sent. Returns null if not set.For example, if this value is 3, a check whose response status changes from OK to Error generates a new event with an Error status after the third consecutive occurrence of the status change. Data type: Number
policies.checks.event\_status\_repair\_thresholdNumber of consecutive times that a check's response status must improve to close the previous event. Returns null if not set. For example, if this value is 3, a check whose response status changes from Error to OK closes the previous event and generates a new event with an OK status after the third consecutive occurrence of the status change. Data type: Number
policies.checks.intervalAmount of time in seconds to wait between check executions. For example, a value of 60 means that the check runs every 60 seconds.Data type: Number
policies.checks.nameName of the check.Data type: String
policies.checks.sys\_idSys\_id of the check.Data type: String Table: Check Instances \[sn\_agent\_check\]
policies.checks.timeoutAmount of time, in seconds, after which the check execution stops when no output is returned. For example, a value of 60 means that when the check execution doesn't return a value for 60 seconds, the execution stops.Data type: String
policies.cred\_aliasCredential name.Data type: String Table: Credentials \[discovery\_credentials\]
policies.credential\_aliasSys\_id of the credential alias.Data type: String Table: Connection & Credential Aliases \[sys\_alias\]
policies.filterFilter restricting the policy's checks to monitor only the specified criteria. Data type: String
policies.interval

Amount of time in seconds to wait between policy checks. For example, a value of 60 means that the check runs every 60 seconds.Note: The value of the checks.interval property overrides the value configured in this field.

Data type: Number

policies.monitored\_ci\_group

Name of the CMDB groups associated with the policy.This field is only applied if the value of the monitored_ci_type_group property is true.

Data type: String

Table: CMDB Groups [cmdb_group]

policies.monitored\_ci\_script

Script for monitoring CIs.This field is only applied if the value of the policies.monitored_ci_type_script property is true.

Data type: String

policies.monitored\_ci\_type\_filter

Flag that indicates whether filtering by CI type is enabled. The CI type is listed in the table property.Valid values:

  • true: Filtering by checks group is enabled.
  • false: Filtering by checks group is disabled.

Data type: Boolean

policies.monitored\_ci\_type\_groupFlag that indicates whether monitoring by CMDB group type is enabled.Valid values: - true: CMDB group type is enabled. - false: CMDB group type is disabled. Data type: Boolean
policies.monitored\_ci\_type\_scriptFlag that indicates whether the script for monitoring CIs is enabled.Valid values: - true: Script for monitoring CIs is enabled. - false: Script for monitoring CIs is disabled. Data type: Boolean
policies.nameName of the policy.Data type: String
policies.publish\_statusIndicates whether the policy is published. Possible values: - Draft: Policy has not been published and is editable using the update endpoints. - Published: Policy is published. The draft \(sandbox copy\) and published copy are identical. - Published\*: Policy is published, but the draft copy \(sandbox view\) has changes not found in the published copy. Data type: String
policies.sys\_idSys\_id of the policy.Data type: String Table: Policies \[sn\_agent\_policy\]
policies.sys\_updated\_onDate and time that the policy was last updated.Data type: String
policies.tableMonitored CI-type field on the policy. This field is only applied if monitored_ci_type_filter is true.Data type: String
policies.params

List of objects containing information of check parameters. These results only display if the X-Include-Check-Params header parameter is set to true.Data type: Array of Objects

"params": [
  {
    "active": Boolean,
    "flag": "String",
    "mandatory: Boolean,
    "name": "String",
    "sys_id": "String",
    "value": "String",
    "value_required": Boolean
  }
]

Table: Check Parameters [sn_agent_check_param]

policies.params.activeFlag that indicates whether the check parameter is active.Valid values: - true: Check parameter is active. - false: Check parameter is inactive. Data type: Boolean
policies.params.flagParameter flag to use during check invocation.Data type: String
policies.params.mandatoryFlag that indicates whether this check is mandatory.Valid values: - true: This check is mandatory. - false: This check is optional. Data type: Boolean
policies.params.nameName of the parameter.Data type: String
policies.params.sys\_idSys\_id of the parameter.Data type: String Table: Check Parameters \[sn\_agent\_check\_param\]
policies.params.valueValue of the parameter.Data type: String
policies.params.value\_requiredFlag that indicates whether the information provided by the value property is required.Valid values: - true: The value property is required. - false: The value property is null or not required. Data type: Boolean
policies.secure\_params

List of objects containing information of check secure parameters. For more information, see Create a secure parameter for a check. These results only display if the X-Include-Check-Params header parameter is set to true.Data type: Array of Objects

"secure_params": [
   {
     "active": Boolean,
     "name": "String",
     "order": Number,
     "sys_id": "String"
   }
]

Table: Check Secure Parameters [sn_agent_check_secure_param]

policies.secure\_params.activeFlag that indicates whether the check secure parameter is active.Valid values: - true: The check secure parameter is active. - false: The check secure parameter is inactive. Data type: Boolean
policies.secure\_params.nameName of the secure parameter.Data type: String
policies.secure\_params.orderOrder in which the parameter is sent to the check command/script.Data type: Number
policies.secure\_params.sys\_idSys\_id of the record.Data type: String Table: Check Secure Parameter \[sn\_agent\_check\_secure\_param\]

cURL request

The following example shows how to restrict results by query and number. The query returns all active policies and the ID of the associated agent.

curl "https://instance.service-now.com/api/sn_agent/agents/policies/list" \
--request GET \
--header "Accept:application/json" \
--header 'X-Enc-Query: active=true ' \
--header 'X-Include-Checks-And-Agents: true' \
--user 'username' : 'password'

Output:

{
  "policies": [
    {
      "name": "Basic Discovery",
      "sys_id": "68bfd27c536113006dfeddeeff7b12be",
      "active": "true",
      "interval": "43200",
      "sys_updated_on": "2020-07-21 10:14:12",
      "monitored_ci_type_filter": "true",
      "filter": "discovery_source=AgentClientCollector^ORlast_discoveredRELATIVELT@dayofweek@ago@14",
      "table": "cmdb_ci_server",
      "monitored_ci_type_script": "false",
      "monitored_ci_script": "/*\n      Provide a script to get monitored CI type. ...",
      "monitored_ci_type_group": "false",
      "monitored_ci_group": "null// group name as seen in cmdb_group table",
      "cred_alias": "null// credential name as seen in discovery_credentials table",
      "credential_alias": "null// credential alias sys id as seen in sys_alias table",
      "publish_status": "Published",
      "checks": [
        {
          "name": "check-discovery-basic",
          "sys_id": "5b10c644c7e10010b9a4362c14c260aa",
          "active": "true",
          "command": "check_discover.rb",
          "command_prefix": "check_discover.rb",
          "auto_generate": "true",
          "timeout": "60",
          "interval": "43200",
          "event_status_change_threshold": null,
          "event_status_repair_threshold": null,
          "check_type": "Discovery"
        }
      ],
      "agent_ids": "b1faba21b066256f,a088b75b1b25b0a0"
    }
  ]
}

Agent Client Collector - GET /agents/policy/activate/{policy_id}

Activates a published policy.

For a list of published policies, use GET /agents/policies/list. This endpoint only supports sys_ids in which the value of the policy's publish_status property is Published or Published*.

URL format

/api/sn_agent/agents/policy/activate/{policy_id}

Supported request parameters

NameDescription
policy\_idSys\_id of the published policy.Data type: String Table: Policies \[sn\_agent\_policy\]
NameDescription
None 
NameDescription
None 

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
403The user does not have the agent_client_collector_admin role.
404No record found with the provided sys_id.
500Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

Response body parameters (JSON)

HeaderDescription
messageMessage containing operation success or failure results.Data type: String

cURL request

The following example shows how to activate a policy.

curl "https://instance.service-now.com/api/sn_agent/agents/policy/activate/<sys_id>" \
--request GET \
--header "Accept:application/json" \
--user 'username' : 'password'

Output:

{
  "message": "Operation was successful"
}

Agent Client Collector - GET /agents/policy/deactivate/{policy_id}

Deactivates a published policy.

For a list of published policies, use GET /agents/policies/list. This endpoint only supports sys_ids in which the value of the policy's publish_status property is Published or Published*.

URL format

/api/sn_agent/agents/policy/activate/{policy_id}

Supported request parameters

NameDescription
policy\_idSys\_id of the published policy.Data type: String Table: Policies \[sn\_agent\_policy\]
NameDescription
None 
NameDescription
None 

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
403The user does not have the agent_client_collector_admin role.
404No record found with the provided sys_id.
500Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

Response body parameters (JSON)

HeaderDescription
messageMessage containing operation success or failure results.Data type: String

cURL request

The following example shows how to deactivate a policy.

curl "https://instance.service-now.com/api/sn_agent/agents/policy/deactivate/<sys_id>" \
--request GET \
--header "Accept:application/json" \
--user 'username' : 'password'

Output:

{
  "message": "Operation was successful"
}

Agent Client Collector - GET /agents/policy/publish/{policy_id}

Publishes a draft policy.

Use any of the following endpoints to modify a draft or sandbox copy prior to publishing:

URL format

/api/sn_agent/agents/policy/publish/{policy_id}

Supported request parameters

NameDescription
policy\_idSys\_id of a policy in the Policies \[sn\_agent\_policy\] table that is in Draft state or a sandbox copy.- For a list of policies and details including publish state, use GET /agents/policies/list. - To retrieve sandbox copy of a policy, use GET /agents/policy/sandbox_from_published/\{policy_id\}. Data type: String
NameDescription
None 
NameDescription
None 

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
403The user does not have the agent_client_collector_admin role.
404No record found with the provided sys_id.
500Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

Response body parameters (JSON)

HeaderDescription
messageMessage containing operation success or failure results.Data type: String

cURL request

The following example shows how to publish a policy.

curl "https://instance.service-now.com/api/sn_agent/agents/policy/publish/<sys_id>" \
--request GET \
--header "Accept:application/json" \
--user 'username' : 'password'

Output:

{
  "message": "Operation was successful"
}

Agent Client Collector - GET /agents/policy/sandbox_from_published/{policy_id}

Gets the sandbox copy of a published policy and provides policy details.

Use the sandbox copy to make updates to a policy and publish. You can use the sys_ids in the response body to work with the following endpoints:

For a list of published policies, use GET /agents/policies/list. This endpoint only supports sys_ids in which the value of the policy's publish_status property is Published or Published*.

URL format

/api/sn_agent/agents/policy/sandbox_from_published/{policy_id}

Supported request parameters

NameDescription
policy\_idSys\_id of the published policy.Data type: String Table: Policies \[sn\_agent\_policy\]
NameDescription
None 
NameDescription
None 

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
403The user does not have the agent_client_collector_admin role.
404No record found with the provided sys_id.
500Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

Response body parameters (JSON)

PropertyDescription
<Object>Extended details of the sandbox copy associated with the policy. For information on policies, see default checks and policies.
{
  "active": Boolean"
  "agent_ids": "String",
  "checks": [Array],
  "cred_alias": "String",
  "credential_alias": "String",
  "filter": "String",
  "interval": "Number",
  "monitored_ci_group": "String",
  "monitored_ci_script": "String",
  "monitored_ci_type_filter": Boolean,
  "monitored_ci_type_group": Boolean,
  "monitored_ci_type_script": "String",
  "name": "String",
  "params": [Array],
  "publish_status": "String",
  "secure_params": [Array],
  "sys_id": "String",
  "sys_updated_on": "String",
  "table": "String"
}
activeFlag that indicates whether the policy is active.Valid values: - true: Policy is active. - false: Policy isn't active. Data type: Boolean
agent\_ids

Unique ID of an agent. These results only display if the X-Include-Checks-And-Agents header parameter is set to true.For extended information of an agent, run the ID in the GET /agents/{agent_id} endpoint.

Data type: String

Table: In the Agent ID column of the Agent Client Collectors [sn_agent_cmdb_ci_agent] table.

checksList of objects defining checks listed in the Check Instances \[sn\_agent\_check\] table.
"checks": [
   {
     "active": Boolean,
     "auto_generate": Boolean,
     "check_type": "String"
     "command_prefix": "String",
     "command": "String",
     "event_status_change_threshold": Number,
     "event_status_repair_threshold": Number,
     "interval": Number,
     "name": "String",
     "sys_id": "String",
     "timeout": "String"
   }
]
Data type: Array
checks.activeFlag that indicates whether the policy check is active.Valid values: - true: Policy check is active. - false: Policy check is inactive. Data type: Boolean
checks.auto\_generate

Flag that indicates whether to automatically generate the command with the command_prefix value.Valid values:

  • true: Automatically populate the command property with active parameter values.
  • false: Command isn't automatically generated.

Data type: Boolean

checks.check\_typeCheck type specifying the monitoring option.Possible values: - Discovery: Check that locates CIs related to the agent. - Events: The check's result is transformed into an Event Management event. - Metrics: The values from the check result are transformed to metrics. Data type: String
checks.command

Command that the Agent Client Collector executes. Parameter taken from a template or monitored CI.Note: If auto_generate is true, this property is automatically populated with the prefix and flags of the active parameters listed in the parameters object.

Data type: String

checks.command\_prefixIf the auto_generate property is true, this command is used for automatic generation. The prefix consists of any portion of the command which is static (does not change), such as the script name.Data type: String
checks.event\_status\_change\_thresholdNumber of consecutive times that a check's response status must happen before a new event is sent. Returns null if not set.For example, if this value is 3, a check whose response status changes from OK to Error generates a new event with an Error status after the third consecutive occurrence of the status change. Data type: Number
checks.event\_status\_repair\_thresholdNumber of consecutive times that a check's response status must improve to close the previous event. Returns null if not set. For example, if this value is 3, a check whose response status changes from Error to OK closes the previous event and generates a new event with an OK status after the third consecutive occurrence of the status change. Data type: Number
checks.intervalAmount of time in seconds to wait between check executions. For example, a value of 60 means that the check runs every 60 seconds.Data type: Number
checks.nameName of the check.Data type: String
checks.sys\_idSys\_id of the check. The POST /agents/update/check/\{check_id\} endpoint takes this value to update the sandbox copy.Data type: String Table: Check Instances \[sn\_agent\_check\]
checks.timeoutAmount of time, in seconds, after which the check execution stops when no output is returned. For example, a value of 60 means that when the check execution doesn't return a value for 60 seconds, the execution stops.Data type: String
cred\_aliasCredential name.Data type: String Table: Credentials \[discovery\_credentials\]
credential\_aliasSys\_id of the credential alias.Data type: String Table: Connection & Credential Aliases \[sys\_alias\]
filterFilter restricting the policy's checks to monitor only the specified criteria. Data type: String
interval

Amount of time in seconds to wait between policy checks. For example, a value of 60 means that the check runs every 60 seconds.Note: The value of the checks.interval property overrides the value configured in this field.

Data type: Number

monitored\_ci\_group

Name of the CMDB groups associated with the policy.This field is only applied if the value of the monitored_ci_type_group property is true.

Data type: String

Table: CMDB Groups [cmdb_group]

monitored\_ci\_script

Script for monitoring CIs.This field is only applied if the value of the policies.monitored_ci_type_script property is true.

Data type: String

monitored\_ci\_type\_filter

Flag that indicates whether filtering by CI type is enabled. The CI type is listed in the table property.Valid values:

  • true: Filtering by checks group is enabled.
  • false: Filtering by checks group is disabled.

Data type: Boolean

monitored\_ci\_type\_groupFlag that indicates whether monitoring by CMDB group type is enabled.Valid values: - true: CMDB group type is enabled. - false: CMDB group type is disabled. Data type: Boolean
monitored\_ci\_type\_scriptFlag that indicates whether the script for monitoring CIs is enabled.Valid values: - true: Script for monitoring CIs is enabled. - false: Script for monitoring CIs is disabled. Data type: Boolean
nameName of the policy.Data type: String
publish\_statusIndicates whether the policy is published. Possible values: - Draft: Policy has not been published and is editable using the update endpoints. - Published: Policy is published. The draft \(sandbox copy\) and published copy are identical. - Published\*: Policy is published, but the draft copy \(sandbox view\) has changes not found in the published copy. Data type: String
params

List of objects containing information of check parameters. These results only display if the X-Include-Check-Params header parameter is set to true.Data type: Array of Objects

"params": [
  {
    "active": Boolean,
    "flag": "String",
    "mandatory: Boolean,
    "name": "String",
    "sys_id": "String",
    "value": "String",
    "value_required": Boolean
  }
]

Table: Check Parameters [sn_agent_check_param]

params.activeFlag that indicates whether the check parameter is active.Valid values: - true: Check parameter is active. - false: Check parameter is inactive. Data type: Boolean
params.flagParameter flag to use during check invocation.Data type: String
params.mandatoryFlag that indicates whether this check is mandatory.Valid values: - true: This check is mandatory. - false: This check is optional. Data type: Boolean
params.nameName of the parameter.Data type: String
params.sys\_idSys\_id of the parameter listed in the Check Parameters \[sn\_agent\_check\_param\] table. The POST /agents/update/check_param/\{param_id\} endpoint takes this value to update the sandbox copy.Data type: String
params.valueValue of the parameter.Data type: String
params.value\_requiredFlag that indicates whether the information provided by the value property is required.Valid values: - true: The value property is required. - false: The value property is null or not required. Data type: Boolean
secure\_params

List of objects containing information of check secure parameters. For more information, see Create a secure parameter for a check. These results only display if the X-Include-Check-Params header parameter is set to true.Data type: Array of Objects

"secure_params": [
   {
     "active": Boolean,
     "name": "String",
     "order": Number,
     "sys_id": "String"
   }
]

Table: Check Secure Parameters [sn_agent_check_secure_param]

secure\_params.activeFlag that indicates whether the check secure parameter is active.Valid values: - true: The check secure parameter is active. - false: The check secure parameter is inactive. Data type: Boolean
secure\_params.nameName of the secure parameter.Data type: String
secure\_params.orderOrder in which the parameter is sent to the check command/script.Data type: Number
secure\_params.sys\_idSys\_id of the record. The POST /agents/update/check_secure_param/\{param_id\} endpoint takes this value to update the sandbox copy.Data type: String Table: Check Secure Parameter \[sn\_agent\_check\_secure\_param\]
sys\_idSys\_id of the policy. The POST /agents/update/policy/\{policy_id\} endpoint takes this value to update the sandbox copy.Data type: String Table: Policies \[sn\_agent\_policy\]
sys\_updated\_onDate and time that the policy was last updated.Data type: String
tableMonitored CI-type field on the policy. This field is only applied if monitored_ci_type_filter is true.Data type: String

cURL request

The following shows how to get information of the Docker Container Metrics policy.

curl "https://instance.service-now.com/api/sn_agent/agents/policy/sandbox_from_published/<sys_id>" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'

Output:

{
  "name": "Docker Container Metrics",
  "sys_id": "b01e609a1b9fe4943e7f0b05464bcb91",
  "active": "false",
  "interval": "60",
  "sys_updated_on": "2021-04-05 19:52:28",
  "monitored_ci_type_filter": "true",
  "filter": "operational_status=1",
  "table": "cmdb_ci_docker_container",
  "monitored_ci_type_script": "false",
  "monitored_ci_script": "/*\n Provide a script to get monitored CI type.",
  "monitored_ci_type_group": "false",
  "monitored_ci_group": "null// group name as seen in cmdb_group table",
  "cred_alias": "null// credential name as seen in discovery_credentials table",
  "credential_alias": "null// credential alias sys id as seen in sys_alias table",
  "publish_status": "Published",
  "checks": [
    {
      "name": "container.docker.metrics-docker",
      "sys_id": "701e609a1b9fe4943e7f0b05464bcb94",
      "active": "true",
      "command": "metrics-docker-stats.rb -N {{.labels.params_ci_container_id}} -P -n -i",
      "command_prefix": "metrics-docker-stats.rb -N {{.labels.params_ci_container_id}}",
      "auto_generate": "true",
      "timeout": "60",
      "interval": "60",
      "event_status_change_threshold": null,
      "event_status_repair_threshold": null,
      "check_type": "Metrics",
      "params": [
        {
          "name": "scheme",
          "sys_id": "c11e609a1b9fe4943e7f0b05464bcb97",
          "value": null,
          "active": "false",
          "mandatory": "false",
          "value_required": "true",
          "flag": "-s"
        },
        ...
        {
          "name": "docker_host",
          "sys_id": "cd1e609a1b9fe4943e7f0b05464bcb97",
          "value": null,
          "active": "false",
          "mandatory": "false",
          "value_required": "true",
          "flag": "-H"
        }
      ],
      "secure_params": []
    }
  ]
}

Agent Client Collector - GET /agents/{agent_id}/restart

Restarts a specified agent with alive/up status.

If Agent Client Collector performance issues occur, you can restart the agent. Manual restart is supported in the following environments:

  • Linux-based agents using systemd
  • Windows agents

URL format

/api/sn_agent/agents/{agent_id}/restart

Supported request parameters

NameDescription
agent\_idUnique ID of an agent listed in the Agent ID column of the Agent Client Collectors \[sn\_agent\_cmdb\_ci\_agent\] table. For a list of agent IDs and other details, run the GET /agents/list endpoint. Data type: String
NameDescription
None 
NameDescription
None 

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
403The user does not have the agent_client_collector_admin role.
404No record found with the provided sys_id or this agent does not support restart.

Response body parameters (JSON)

NameDescription
messageMessage containing operation success or failure results.Data type: String

cURL request

The following example shows how to restart an agent.

curl "https://instance.service-now.com/api/sn_agent/agents/<agent_id>/restart" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'

Output:

{
  "message": "Restarting Agent With ID: <agent_id>"
}

Agent Client Collector - POST /agents/check_defs/{check_def_id}/run

Runs a check against the given configuration item.

To stop a background check, use the request ID provided in the GET /agents/exec/background/stop/{request_id} API.

URL format

/api/sn_agent/agents/check_defs/{check_def_id}/run

Supported request parameters

NameDescription
check_def_idSys_id of a check definition in the Check Definitions [sn_agent_check_def] table.
NameDescription
None 
NameDescription
paramsMap of parameter names and values. These settings can be used to override the parameter records of the check definition and its specified values.
"params": {
  "<parameter name>": "String"
}
Data type: Object
priorityPriority of the request to be set on the ECC queue. Possible values: - 0: interactive - 1: expedited - 2: standard Data type: Number
queryEncoded query for retrieving the GlideRecord from the table specified in the table property.Data type: String
tableName of the cmdb\_ci table for this background check.Data type: String
timeoutValue of the timeout for the request in seconds. Data type: Number

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
400The is an error in the arguments provided in the request body.
404The check definition with the ID provided is not found.
500Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

Response body parameters (JSON)

NameDescription
requestIdSys_id of the generated background check request.

cURL request

The following example shows how to run a background check and get its request ID.

curl "https://instance.service-now.com/api/sn_agent/agents/check_defs/a90d3c361be1301060d2773ad54bcb6f/run" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{\"table\":\"sn_agent_check_def\"}" \
--user 'username':'password'

Output:

{
  "request_id": "278c0170db2a30108a0751f4f3961926"
}

Agent Client Collector - POST /agents/check_defs/{check_def_id}/test

Enables building test check requests on check definitions.

Use this API for the following tasks:

  • Set the check definition to test
  • Set the configuration item to run the test against

You can also specify one of the following identifiers to use during the test:

  • Credential sys_id
  • Credential alias id
  • Credential name

URL format

/api/sn_agent/agents/check_defs/{check_def_id}/test

Supported request parameters

NameDescription
check_def_idSys_id of the check definition listed in the Check Definitions [sn_agent_check_def] table.
NameDescription
None 
NameDescription
ci_idSys_id of a CMDB Configuration Item.
credentials_idSys_id of a credentials record.
credentials_nameName of the credentials record.
credentials_alias_idSys_id of a credentials alias record.
credentials_alias_nameName of a credentials alias.

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
500Error building the test request.

Response body parameters (JSON)

NameDescription
result_idSys_id of the test result record.

Agent Client Collector - POST /agents/check_instances/{check_instance_id}/test

Enables building test check requests on check instances.

Use this API for the following tasks:

  • Set the check instance to test
  • Set the configuration item to run the test against

You can also specify one of the following identifiers to use during the test:

  • Credential sys_id
  • Credential alias id
  • Credential name

URL format

/api/sn_agent/agents/check_instances/{check_instance_id}/test

Supported request parameters

NameDescription
check_instance_idSys_id of the check definition listed in the Check Definitions [sn_agent_check_def] table.
NameDescription
None 
NameDescription
ci_idSys_id of a CMDB Configuration Item.
credentials_idSys_id of a credentials record.
credentials_nameName of the credentials record.
credentials_alias_idSys_id of a credentials alias record.
credentials_alias_nameName of a credentials alias.
proxy_agent_idUnique ID of an agent proxy to run this check. This value is listed in the Agent ID column of the Agent Client Collectors [sn_agent_cmdb_ci_agent] table.

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
500Error building the test request.

Response body parameters (JSON)

NameDescription
result_idSys_id of the test result record.

Agent Client Collector - POST /agents/update/check/{check_id}

Updates a selected policy check.

To retrieve the properties of a policy sandbox copy, use GET /agents/policy/sandbox_from_published/{policy_id}.

URL format

/api/sn_agent/agents/update/check/{check_id}

Supported request parameters

NameDescription
check\_idSys\_id of a policy check sandbox copy in the Check Instances \[sn\_agent\_check\] table.Data type: String
NameDescription
None 
NameDescription
activeFlag that indicates whether the policy check is active.Valid values: - true: Policy check is active. - false: Policy check is inactive. Data type: Boolean
auto\_generate

Flag that indicates whether to automatically generate the command with the command_prefix value.Valid values:

  • true: Automatically populate the command property with active parameter values.
  • false: Command isn't automatically generated.

Data type: Boolean

check\_typeCheck type specifying the monitoring option.Possible values: - Discovery: Check that locates CIs related to the agent. - Events: The check's result is transformed into an Event Management event. - Metrics: The values from the check result are transformed to metrics. Data type: String
command

Command that the Agent Client Collector executes. Parameter taken from a template or monitored CI.Note: If auto_generate is true, this property is automatically populated with the prefix and flags of the active parameters listed in the parameters object.

Data type: String

command\_prefixIf the auto_generate property is true, this command is used for automatic generation. The prefix consists of any portion of the command which is static (does not change), such as the script name.Data type: String
event\_status\_change\_thresholdNumber of consecutive times that a check's response status must happen before a new event is sent. Returns null if not set.For example, if this value is 3, a check whose response status changes from OK to Error generates a new event with an Error status after the third consecutive occurrence of the status change. Data type: Number
event\_status\_repair\_thresholdNumber of consecutive times that a check's response status must improve to close the previous event. Returns null if not set. For example, if this value is 3, a check whose response status changes from Error to OK closes the previous event and generates a new event with an OK status after the third consecutive occurrence of the status change. Data type: Number
intervalAmount of time in seconds to wait between check executions. For example, a value of 60 means that the check runs every 60 seconds.Data type: Number
nameName of the check.Data type: String
timeoutAmount of time, in seconds, after which the check execution stops when no output is returned. For example, a value of 60 means that when the check execution doesn't return a value for 60 seconds, the execution stops.Data type: String

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
403The user does not have the agent_client_collector_admin role.
404No record found with the provided sys_id.
500Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

Response body parameters (JSON)

NameDescription
messageMessage containing operation success or failure results.Data type: String

cURL request

The following example shows how to update the event change and repair properties of a policy check.

curl "https://instance.service-now.com/api/sn_agent/agents/update/check/<check_sys_id>" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
    \"event_status_change_threshold\" : \"2\",
    \"event_status_repair_threshold\" : \"1\"
}" \
--user 'username':'password'

Output:

{
  "message": "Operation was successful"
}

Agent Client Collector - POST /agents/update/check_def_params/{check_def_param_id}

Enables changing one or more field values of a specified check parameter.

URL format

/api/sn_agent/agents/update/check_def_params/{check_def_param_id}

Supported request parameters

NameDescription
check\_def\_param\_idSys\_id of the check parameter.Data type: String Table: Check Parameter Definitions \[sn\_agent\_check\_param\_def\]
NameDescription
None 
NameDescription
activeFlag that indicates whether the check parameter is active.Valid values: - true: The check parameter is active. - false: The check parameter is inactive. Data type: Boolean
default\_valueSpecifies the default value for this check parameter.Data type: String
mandatoryFlag that indicates whether the check parameter is required. Valid values: - true: The check parameter is required. - false: The check parameter is optional. Data type: Boolean
nameName of the check parameter.Data type: String

Note: Refer to the data dictionary for a comprehensive list of Check Definition fields and types.

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
404The check parameter was not found with sys_id provided.
500Error updating the check parameter.

Response body parameters (JSON)

NameDescription
NoneSuccess or error message.

cURL request

The following example shows how to activate a check parameter.

curl "https://instance.service-now.com/api/sn_agent/agents/update/check_def_params/02d89bb01b307490f271ea42b24bcb63" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{\"active\":\"true\"}" \
--user 'username':'password'

Output:

"message": "Check Definition Parameter Updated Successfully"

Agent Client Collector - POST /agents/update/check_def_secure_params/{check_def_secure_param_id}

Enables changing one or more field values of a specified check secure parameter.

URL format

/api/sn_agent/agents/update/check_def_secure_params/{check_def_secure_param_id}

Supported request parameters

NameDescription
check\_def\_secure\_param\_idSys\_id of the secure parameter.Data type: String Table: Check Secure Parameter Definitions \[sn\_agent\_check\_secure\_param\_def\]
NameDescription
None 
NameDescription
activeFlag that indicates whether the secure parameter is active.Valid values: - true: The secure parameter is active. - false: The secure parameter is inactive. Data type: Boolean
nameName of the secure parameter.Data type: String
orderOrder in which the parameter is sent to the check command/script.Data type: String

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
404The check secure parameter was not found with sys_id provided.
500Error updating the check secure parameter.

Response body parameters (JSON)

NameDescription
NoneSuccess or error message.

cURL request

The following example shows how to activate a check secure parameter.

curl "https://instance.service-now.com/api/sn_agent/agents/update/check_def_secure_params/2d30a066dba530106f4810284b9619c1" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{\"active\":\"true\"}" \
--user 'username':'password'

Output:

"message": "Check Definition Secure Parameter Updated Successfully"

Agent Client Collector - POST /agents/update/check_defs/{check_def_id}

Enables changing one or more field values of a specified check definition.

URL format

/api/sn_agent/agents/update/check_defs/{check_def_id}

Supported request parameters

NameDescription
check\_def\_idSys\_id of the check definition listed in the Check Definitions \[sn\_agent\_check\_def\] table. Data type: String
NameDescription
None 
NameDescription
activeIndicates whether this check definition is active.Valid values: - 0: This check definition is inactive. - 1: This check definition is active. Data type: Number
backgroundFlag that indicates whether this check definition is a background check. A background check is a check which the agent starts execution of and doesn’t wait for it to finish running.Valid values: - true: This check definition is a background check. - false: This check definition is not a background check. Data type: Boolean
check\_groupGroup specified for this check definition.
check\_typeType of check.Possible values: - Events – Check results are transformed into an Event Management event. - Metrics – Values from the check result are transformed to metrics. Data type: String
commandCommand that the Agent Client Collector executes.Data type: String
nameName of the check.Data type: String
paramsMap of parameter names and values. These settings can be used to override the parameter records of the check definition and its specified values.
"params": {
  "<parameter name>": "String"
}
Data type: Object
pluginsList of Agent Client Collector plugins associated with this check.Data type: Array
proxy\_validFlag that indicates whether the check definition policy is set to work as a proxy. Valid values: - true: This check definition policy is set to work as a proxy. - false: This check definition policy is not set to work as a proxy. Data type: Boolean
queryEncoded query for retrieving the GlideRecord from the table specified in the table property.Data type: String
tableName of the cmdb\_ci table for this check.Data type: String
timeoutTimeout in seconds.Data type: Number

Note: Refer to the data dictionary for a comprehensive list of Check Definition fields and types.

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
404The check definition was not found with sys_id provided.
500Error updating the check definition.

Response body parameters (JSON)

NameDescription
NoneSuccess or error message.

cURL request

The following example shows how to deactivate a check definition.

curl "https://instance.service-now.com/api/sn_agent/agents/update/check_defs/99e12466dba530106f4810284b961976" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{\"active\":\"false\"}" \
--user 'username':'password'

Output:

"message": "Check Definition Updated Successfully"

Agent Client Collector - POST /agents/update/check_param/{param_id}

Updates a selected policy check parameter.

To retrieve the properties of a policy sandbox copy, use GET /agents/policy/sandbox_from_published/{policy_id}.

URL format

/api/sn_agent/agents/update/check_param/{param_id}

Supported request parameters

NameDescription
param\_idSys\_id of policy check parameter sandbox copy.Data type: String Table: Check Parameters \[sn\_agent\_check\_param\]
NameDescription
None 
NameDescription
activeFlag that indicates whether the check parameter is active.Valid values: - true: Check parameter is active. - false: Check parameter is inactive. Data type: Boolean
flag 
mandatoryFlag that indicates whether this check is mandatory.Valid values: - true: This check is mandatory. - false: This check is optional. Data type: Boolean
nameName of the parameter.Data type: String
valueValue of the parameter.Data type: String
value\_requiredFlag that indicates whether the information provided by the value property is required.Valid values: - true: The value property is required. - false: The value property is null or not required. Data type: Boolean

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
403The user does not have the agent_client_collector_admin role.
404No record found with the provided sys_id.
500Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

Response body parameters (JSON)

NameDescription
messageMessage containing operation success or failure results.Data type: String

cURL request

The following example shows how to update several properties of a policy check parameter.

curl "https://instance.service-now.com/api/sn_agent/agents/update/check_param/<param_sys_id>" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
   \"flag\" : \"-d\",
   \"mandatory\" : \"true\",
   \"name\" : \"scheme2\",
   \"value\" : \"120\",
   \"value_required\" : \"false\"
}" \
--user 'username':'password'

Output:

{
  "message": "Operation was successful"
}

Agent Client Collector - POST /agents/update/check_secure_param/{param_id}

Updates a selected policy check secure parameter.

To retrieve the properties of a policy sandbox copy, use GET /agents/policy/sandbox_from_published/{policy_id}.

URL format

/api/sn_agent/agents/update/check_secure_param/{param_id}

Supported request parameters

NameDescription
param\_idSys\_id of the policy check secure parameter sandbox copy.Data type: String Table: Check Secure Parameter \[sn\_agent\_check\_secure\_param\]
NameDescription
None 
NameDescription
activeFlag that indicates whether the check secure parameter is active.Valid values: - true: The check secure parameter is active. - false: The check secure parameter is inactive. Data type: Boolean
nameName of the secure parameter.Data type: String
orderOrder in which the parameter is sent to the check command/script.Data type: Number

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
403The user does not have the agent_client_collector_admin role.
404No record found with the provided sys_id.
500Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

Response body parameters (JSON)

NameDescription
messageMessage containing operation success or failure results.Data type: String

cURL request

The following example shows how to update the properties of a policy check secure parameter.

curl "https://instance.service-now.com/api/sn_agent/agents/update/check_secure_param/<param_sys_id>" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
   \"name\" : \"new name\",
   \"order\" : \"2\"
}" \
--user 'username':'password'

Output:

{
  "message": "Operation was successful"
}

Agent Client Collector - POST /agents/update/policy/{policy_id}

Updates a sandbox copy of a policy.

To retrieve the properties of a policy sandbox copy, use GET /agents/policy/sandbox_from_published/{policy_id}.

URL format

/api/sn_agent/agents/update/policy/{policy_id}

Supported request parameters

NameDescription
policy\_idSys\_id of a policy sandbox copy.Data type: String Table: Policies \[sn\_agent\_policy\]
NameDescription
None 
NameDescription
cred\_aliasCredential name.Data type: String Table: Credentials \[discovery\_credentials\]
credential\_aliasSys\_id of the credential alias.Data type: String Table: Connection & Credential Aliases \[sys\_alias\]
filterFilter restricting the policy's checks to monitor only the specified criteria. Data type: String
interval

Amount of time in seconds to wait between policy checks. For example, a value of 60 means that the check runs every 60 seconds.Note: The value of the checks.interval property overrides the value configured in this field.

Data type: Number

monitored\_ci\_group

Name of the CMDB groups associated with the policy.This field is only applied if the value of the monitored_ci_type_group property is true.

Data type: String

Table: CMDB Groups [cmdb_group]

monitored\_ci\_script

Script for monitoring CIs.This field is only applied if the value of the policies.monitored_ci_type_script property is true.

Data type: String

monitored\_ci\_type\_filter

Flag that indicates whether filtering by CI type is enabled. The CI type is listed in the table property.Valid values:

  • true: Filtering by checks group is enabled.
  • false: Filtering by checks group is disabled.

Data type: Boolean

monitored\_ci\_type\_groupFlag that indicates whether monitoring by CMDB group type is enabled.Valid values: - true: CMDB group type is enabled. - false: CMDB group type is disabled. Data type: Boolean
monitored\_ci\_type\_scriptFlag that indicates whether the script for monitoring CIs is enabled.Valid values: - true: Script for monitoring CIs is enabled. - false: Script for monitoring CIs is disabled. Data type: Boolean
nameName of the policy.Data type: String
tableMonitored CI-type field on the policy. This field is only applied if monitored_ci_type_filter is true.Data type: String

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

HeaderDescription
AcceptData format of the response body. Only supports application/json.
HeaderDescription
None 

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

Status codeDescription
200Successful. The request was successfully processed.
403The user does not have the agent_client_collector_admin role.
404No record found with the provided sys_id.
500Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

Response body parameters (JSON)

NameDescription
messageMessage containing operation success or failure results.Data type: String

cURL request

The following example shows how to update the name and filter properties/fields of a policy.

curl "https://instance.service-now.com/api/sn_agent/agents/update/policy/<policy_sys_id>" \--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
  \"name\" : \"new policy name\",
  \"filter\" : \"operational_status=1\"
}" \
--user 'username':'password'

Output:

{
  "message": "Operation was successful"
}