Description
The addDeviceMetricsIntegrations operation handles configuration related to DeviceMetricsIntegrations model.
HTTP request
POST /api/fdm/v6/devicesettings/default/devicemetricsintegrations
Data Parameters
| Parameter | Required | Type | Description | |||
|---|---|---|---|---|---|---|
| name | True | string | Field level constraints: cannot be null, cannot be blank or empty, length must be between 0 and 128 (inclusive). (Note: Additional constraints might exist) |
|||
| description | False | string | Field level constraints: length must be between 0 and 200 (inclusive). (Note: Additional constraints might exist) |
|||
| integrationTargets | True | [object] | An object of type Azure Application Insights that represents the targeted application to which the metrics will be emitted. Field level constraints: cannot be null. (Note: Additional constraints might exist) Allowed types are: [AwsCloudWatch, AzureApplicationInsights] |
|||
| deviceIdentifier | True | string | A String object used to differentiate statistics from this device and other devices emitting telemetry to Azure Application Field level constraints: cannot be null, cannot be blank or empty, length must be between 0 and 64 (inclusive), must match pattern ^((?!;).)*$. (Note: Additional constraints might exist) |
|||
| metricSettings | True | [object] | An object of type Metric Settings to configure the metrics that needs to be emitted. Field level constraints: cannot be null. (Note: Additional constraints might exist) |
|||
| type | True | string | A UTF8 string, all letters lower-case, that represents the class-type. This corresponds to the class name. | |||
Example
curl -X POST \
--header "Accept: application/json" \
--header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Content-Type: application/json" \
-d '{
"description": "string",
"deviceIdentifier": "string",
"id": "string",
"integrationTargets": [
{
"id": "string",
"name": "string",
"type": "string",
"version": "string"
}
],
"metricSettings": [
{
"metricGroups": [
"string"
],
"type": "metricsettings",
"uploadPeriodMinutes": 0
}
],
"name": "string",
"type": "devicemetricsintegrations",
"version": "string"
}' \
"https://${HOST}:${PORT}/api/fdm/v6/devicesettings/default/devicemetricsintegrations"
from bravado.requests_client import RequestsClient
from bravado.client import SwaggerClient
def get_client(host, token):
http_client = RequestsClient()
http_client.ssl_verify = False
http_client.set_api_key(
host,
"Bearer {}".format(token),
param_name="Authorization",
param_in="header"
)
return SwaggerClient.from_url(
"https://{}/apispec/ngfw.json".format(host),
http_client=http_client,
config={
"validate_responses": False,
"validate_swagger_spec": False
}
)
def add_device_metrics_integrations(client, body):
return client.DeviceMetrics.addDeviceMetricsIntegrations(
body=body
).response().result
if __name__ == "__main__":
host = "ftd.example.com"
token = "access_token"
client = get_client(host, token)
body = {'description': 'string',
'deviceIdentifier': 'string',
'integrationTargets': [{'id': 'string',
'name': 'string',
'type': 'string',
'version': 'string'}],
'metricSettings': [{'metricGroups': ['string'],
'type': 'metricsettings',
'uploadPeriodMinutes': 0}],
'name': 'string',
'type': 'devicemetricsintegrations'}
add_device_metrics_integrations(client, body)