Introduction
In contrast to the Tech Insights/M API queries, all metrics are obtained by POSTing the request to a single endpoint. The nature of the metric being requested is determined by parameters sent to https://api.vyopta.com/cpmm/api/v1/orgs/{orgId}/metrics
In further contrast, all parameters are sent in a JSON request body, with content type of application/json.
There are two types of metrics available - KPI, which returns a single value, and trend, which returns time-series data downsampled appropriately for the duration requested.
Metrics calls are authenticated in the same manner as all other API calls. Please see How Do I Authenticate to use the Query Service API? for more information, or consult the Postman examples.
Prerequisites
Refer to the following articles:
Endpoint
POST https://api.vyopta.com/cpmm/api/v1/orgs/{orgId}/metrics
Content-Type: application/json
Authorization: Bearer <access_token>
Request body format
Parameters are sent in JSON.
Metrics calls use the same authentication as other API calls.
There are two types of metrics:
KPI – returns a single value.
Trend – returns time-series data, downsampled for the time range.
Device filters (models)
Filter metrics by device type. Get the list of valid device types with:
GET https://api.vyopta.com/cpmm/api/v1/orgs/{orgId}/metrics/models
The response is a JSON array. (See the Postman example "Names" in the Metrics folder.)
Available metrics (names)
Get the list of supported metric names with:
GET https://api.vyopta.com/cpmm/api/v1/orgs/{orgId}/metrics/names
The response is a JSON array. (See the Postman example "Names" in the Metrics folder.)
Metric types
KPI
The KPI metric type returns a single value, and are requested by setting the query parameter of resultType to the value of kpi.
The value returned will be the value associated with the last timestamped data in the window specified by query parameters start and end.
The metrics that can be requested are those returned by the Names request, above, and are specified using the name parameter.
Trend
Trend data is returned as time-series data in a JSON array - this data may be used to feed into any up-stream processing system of your choice.
Trend data is requested by setting the query parameter of resultType to the value of kpi.
The value returned will be the value associated with the last timestamped data in the window specified by query parameters start and end.
The metrics that can be requested are those returned by the Names request, above, and are specified using the name parameter.
Results may be grouped using the group_by parameter
Refining the request
Filtering
Requests can contain a filter in the query parameter of the JSON body. Filters are constructed in the same way as for the API query calls, although care to correctly escape quotation characters etc (using a back-slash) should be taken, as per JSON syntax requirements.
The items available for filtering differ by device types.
Endpoints
deleted
endpoint_id
firmware
manufacturer
model
name
endpoint_tag
System devices
deleted
manufacturer
name
system_id
type
Example
"query": "tags==\"system_id=1*\" or tags==\"system_id=3\" or tags==\"type=RMX\""
Grouping
Group results with the group_by field. Provide a comma-separated list of fields such as:
deleted
endpoint_id
firmware
model
name
endpoint_tag
manufacturer
system_id
type
*
Example
"group_by": "type"
Aggregation
The returned values will be determined by the aggregation function used, such as:
latest: first matching value in the range (use with care)
min: minimum value
max: maximum value
average: mean value
sum: arithmetic total
unknown: not recommended
Downsampling
The data returned as time-series data may be down-sampled depending upon the time window selected. The range of down-sampling is from 10 minutes to 12 hours (10, 60, or 720 minutes). Should higher precision data be required then the query window should be reduced.
Examples (Postman)
The following Postman examples are provided:
Names: get metric names
Models: get model entities for filters
Endpoints Available KPI: single value for endpoint.status.available
Endpoints Available Trend: time series for endpoint.status.available
Calls Min KPI: minimum calls over a time window
Calls Max KPI: maximum calls over a time window
Calls Trend: time series for call count over a time window
The examples are attached to The Tech Insights Monitoring Query API - Information Queries, which should be read before using the above.
Contact Us
For any assistance, Create a support case or email us at support@wxp.hp.com.