CreateCustomMetric
Use this API to define a Custom Metric published by your devices to Device Defender.
Request Syntax
POST /custom-metric/metricName
HTTP/1.1
Content-type: application/json
{
"clientRequestToken": "string
",
"displayName": "string
",
"metricType": "string
",
"tags": [
{
"Key": "string
",
"Value": "string
"
}
]
}
URI Request Parameters
The request uses the following URI parameters.
- metricName
-
The name of the custom metric. This will be used in the metric report submitted from the device/thing. Shouldn't begin with
aws:
. Cannot be updated once defined.Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
[a-zA-Z0-9:_-]+
Required: Yes
Request Body
The request accepts the following data in JSON format.
- clientRequestToken
-
Each custom metric must have a unique client request token. If you try to create a new custom metric that already exists with a different token, an exception occurs. If you omit this value, AWS SDKs will automatically generate a unique client request.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 64.
Pattern:
^[a-zA-Z0-9-_]+$
Required: Yes
- displayName
-
Field represents a friendly name in the console for the custom metric; it doesn't have to be unique. Don't use this name as the metric identifier in the device metric report. Can be updated once defined.
Type: String
Length Constraints: Maximum length of 128.
Pattern:
[\p{Graph}\x20]*
Required: No
- metricType
-
The type of the custom metric. Types include
string-list
,ip-address-list
,number-list
, andnumber
.Type: String
Valid Values:
string-list | ip-address-list | number-list | number
Required: Yes
- tags
-
Metadata that can be used to manage the custom metric.
Type: Array of Tag objects
Required: No
Response Syntax
HTTP/1.1 200
Content-type: application/json
{
"metricArn": "string",
"metricName": "string"
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
- metricArn
-
The Amazon Resource Number (ARN) of the custom metric, e.g.
arn:aws-partition:iot:region:accountId:custommetric/metricName
Type: String
- metricName
-
The name of the custom metric to be used in the metric report.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
[a-zA-Z0-9:_-]+
Errors
- InternalFailureException
-
An unexpected error has occurred.
HTTP Status Code: 500
- InvalidRequestException
-
The request is not valid.
HTTP Status Code: 400
- LimitExceededException
-
A limit has been exceeded.
HTTP Status Code: 410
- ResourceAlreadyExistsException
-
The resource already exists.
HTTP Status Code: 409
- ThrottlingException
-
The rate exceeds the limit.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: