jsn / ServiceNow, simplified.
AustraliaREFERENCE GUIDE

Push Metrics API

On this page

Push Metrics API

The Push Metrics API provides endpoints that enable you to push raw Metric Intelligence data from an external source to the MID Server.

This API is based on client-side tools that push the raw data from the external source to the MID Server. The Metric Intelligence extension is required to be configured with the Enable REST Listener option enabled. For more information on setting up the MID Server, see Get started with Metric Intelligence.

For information on authentication requirements, see Configure the MID Web Server extension.

Parent Topic:REST API reference

Push Metrics - POST /mid/sa/metrics

Pushes raw Metric Intelligence data from an external source to the MID Server.

URL format

Default URL: /api/mid/sa/metrics

Supported request parameters

Name Description None   Name Description None  

<table class=“rest_api_request_body”><thead><tr><th>

Name

</th><th>

Description

</th></tr></thead><tbody><tr><td>

ci2metric_id

</td><td>

List of key-value pairs to use to identify the configuration item (CI). It is formerly known as ci_identifier. The script continues to accept ci_identifier.Data type: Object

</td></tr><tr><td>

metric_type

</td><td>

Name of the metric.Data type: String

</td></tr><tr><td>

node

</td><td>

IP address, FQDN, name of the CI, or host. In the example below, the name of the Linux server where the disks are installed.Data type: String

</td></tr><tr><td>

resource_path

</td><td>

The path of the resource for which metric data is being collected. In the example below, C:\ is the resource for which metric data is collected.Data type: String

</td></tr><tr><td>

source

</td><td>

Data source monitoring the metric type.Data type: String

</td></tr><tr><td>

timestamp

</td><td>

Epoch time stamp of the metric. Data type: Number

Unit: Milliseconds

</td></tr><tr><td>

unit

</td><td>

Unit type that is associated with the source metric type.Table: Monitoring System Metric Types [sa_source_metric_type]

Data type: String

</td></tr><tr><td>

value

</td><td>

Value of the metric.Data type: Number

</td></tr></tbody> </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.

<table class=“rest_api_request_headers”><thead><tr><th>

Header

</th><th>

Description

</th></tr></thead><tbody><tr><td>

Content-Type

</td><td id=“content_type-entry-RESTAPI”>

Data format of the request body. Supported types: application/json or application/xml. Default: application/json

</td></tr></tbody> </table>|Header|Description| |——|———–| |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 code Description 200 Successful. The request was successfully processed. 401 Unauthorized. The user credentials are incorrect or have not been passed. 500 Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

Response body parameters (JSON or XML)

|Name|Description| |—-|———–| |None||

cURL request

The request body must be surrounded by square brackets, as shown in this example.

curl -X POST "https://<mid-server-host>/api/mid/sa/metrics"
-H "Content-Type: application/json"
-U "username":"password"
-d "[{
    "metric_type": "Disk C: % Free Space",
    "resource_path": "C:\\",
    "node": "lnux100",
    "value": 50,
    "timestamp": 1473183012000,
    "ci2metric_id": {
        "node": "lnux100"
    },
    "source": "Splunk"
}]"

Keep exploring.

Find another answer, or bring this documentation into your own tools.