openapi: 3.0.0
info:
version: 2015-05-28
x-release: v4
title: AWS IoT Accept Certificate Transfer Custom Metric API
description: '
IoT provides secure, bi-directional communication between Internet-connected devices (such as sensors, actuators, embedded devices, or smart appliances) and the Amazon Web Services cloud. You can discover your custom IoT-Data endpoint to communicate with, configure rules for data processing and integration with other services, organize resources associated with each device (Registry), configure logging, and create and manage policies and credentials to authenticate devices.
The service endpoints that expose this API are listed in Amazon Web Services IoT Core Endpoints and Quotas. You must use the endpoint for the region that has the resources you want to access.
The service name used by Amazon Web Services Signature Version 4 to sign the request is: execute-api.
For more information about how IoT works, see the Developer Guide.
For information about how to use the credentials provider for IoT, see Authorizing Direct Calls to Amazon Web Services Services.
' x-logo: url: https://api.apis.guru/v2/cache/logo/https_twitter.com_awscloud_profile_image.png backgroundColor: '#FFFFFF' termsOfService: https://aws.amazon.com/service-terms/ contact: name: Mike Ralphson email: mike.ralphson@gmail.com url: https://github.com/mermade/aws2openapi x-twitter: PermittedSoc license: name: Apache 2.0 License url: http://www.apache.org/licenses/ x-providerName: amazonaws.com x-serviceName: iot x-aws-signingName: iot x-origin: - contentType: application/json url: https://raw.githubusercontent.com/aws/aws-sdk-js/master/apis/iot-2015-05-28.normal.json converter: url: https://github.com/mermade/aws2openapi version: 1.0.0 x-apisguru-driver: external x-apiClientRegistration: url: https://portal.aws.amazon.com/gp/aws/developer/registration/index.html?nc2=h_ct x-apisguru-categories: - cloud x-preferred: true servers: - url: http://iot.{region}.amazonaws.com variables: region: description: The AWS region enum: - us-east-1 - us-east-2 - us-west-1 - us-west-2 - us-gov-west-1 - us-gov-east-1 - ca-central-1 - eu-north-1 - eu-west-1 - eu-west-2 - eu-west-3 - eu-central-1 - eu-south-1 - af-south-1 - ap-northeast-1 - ap-northeast-2 - ap-northeast-3 - ap-southeast-1 - ap-southeast-2 - ap-east-1 - ap-south-1 - sa-east-1 - me-south-1 default: us-east-1 description: The AWS IoT multi-region endpoint - url: https://iot.{region}.amazonaws.com variables: region: description: The AWS region enum: - us-east-1 - us-east-2 - us-west-1 - us-west-2 - us-gov-west-1 - us-gov-east-1 - ca-central-1 - eu-north-1 - eu-west-1 - eu-west-2 - eu-west-3 - eu-central-1 - eu-south-1 - af-south-1 - ap-northeast-1 - ap-northeast-2 - ap-northeast-3 - ap-southeast-1 - ap-southeast-2 - ap-east-1 - ap-south-1 - sa-east-1 - me-south-1 default: us-east-1 description: The AWS IoT multi-region endpoint - url: http://iot.{region}.amazonaws.com.cn variables: region: description: The AWS region enum: - cn-north-1 - cn-northwest-1 default: cn-north-1 description: The AWS IoT endpoint for China (Beijing) and China (Ningxia) - url: https://iot.{region}.amazonaws.com.cn variables: region: description: The AWS region enum: - cn-north-1 - cn-northwest-1 default: cn-north-1 description: The AWS IoT endpoint for China (Beijing) and China (Ningxia) security: - hmac: [] tags: - name: Custom Metric paths: /custom-metric/{metricName}: parameters: - $ref: '#/components/parameters/X-Amz-Content-Sha256' - $ref: '#/components/parameters/X-Amz-Date' - $ref: '#/components/parameters/X-Amz-Algorithm' - $ref: '#/components/parameters/X-Amz-Credential' - $ref: '#/components/parameters/X-Amz-Security-Token' - $ref: '#/components/parameters/X-Amz-Signature' - $ref: '#/components/parameters/X-Amz-SignedHeaders' post: operationId: CreateCustomMetric description:Use this API to define a Custom Metric published by your devices to Device Defender.
Requires permission to access the CreateCustomMetric action.
responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/CreateCustomMetricResponse' '480': description: InvalidRequestException content: application/json: schema: $ref: '#/components/schemas/InvalidRequestException' '481': description: LimitExceededException content: application/json: schema: $ref: '#/components/schemas/LimitExceededException' '482': description: ResourceAlreadyExistsException content: application/json: schema: $ref: '#/components/schemas/ResourceAlreadyExistsException' '483': description: ThrottlingException content: application/json: schema: $ref: '#/components/schemas/ThrottlingException' '484': description: InternalFailureException content: application/json: schema: $ref: '#/components/schemas/InternalFailureException' parameters: - name: metricName in: path required: true description: ' The name of the custom metric. This will be used in the metric report submitted from the device/thing. The name can''t begin withaws:. You can''t change the name after you define it.'
schema:
type: string
pattern: '[a-zA-Z0-9:_-]+'
minLength: 1
maxLength: 128
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- metricType
- clientRequestToken
properties:
displayName:
description: ' The friendly name in the console for the custom metric. This name doesn''t have to be unique. Don''t use this name as the metric identifier in the device metric report. You can update the friendly name after you define it.'
type: string
pattern: '[\p{Graph}\x20]*'
maxLength: 128
metricType:
description: The type of the custom metric.
The type number only takes a single metric value as an input, but when you submit the metrics value in the DeviceMetrics report, you must pass it as an array with a single value.
Deletes a Device Defender detect custom metric.
Requires permission to access the DeleteCustomMetric action.
Before you can delete a custom metric, you must first remove the custom metric from all security profiles it's a part of. The security profile associated with the custom metric can be found using the ListSecurityProfiles API with metricName set to your custom metric name.
Gets information about a Device Defender detect custom metric.
Requires permission to access the DescribeCustomMetric action.
responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/DescribeCustomMetricResponse' '480': description: InvalidRequestException content: application/json: schema: $ref: '#/components/schemas/InvalidRequestException' '481': description: ResourceNotFoundException content: application/json: schema: $ref: '#/components/schemas/ResourceNotFoundException' '482': description: ThrottlingException content: application/json: schema: $ref: '#/components/schemas/ThrottlingException' '483': description: InternalFailureException content: application/json: schema: $ref: '#/components/schemas/InternalFailureException' parameters: - name: metricName in: path required: true description: ' The name of the custom metric. ' schema: type: string pattern: '[a-zA-Z0-9:_-]+' minLength: 1 maxLength: 128 summary: Amazon IoT Device Management Describe Custom Metric x-microcks-operation: delay: 0 dispatcher: FALLBACK tags: - Custom Metric patch: operationId: UpdateCustomMetric description:Updates a Device Defender detect custom metric.
Requires permission to access the UpdateCustomMetric action.
responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/UpdateCustomMetricResponse' '480': description: InvalidRequestException content: application/json: schema: $ref: '#/components/schemas/InvalidRequestException' '481': description: ResourceNotFoundException content: application/json: schema: $ref: '#/components/schemas/ResourceNotFoundException' '482': description: ThrottlingException content: application/json: schema: $ref: '#/components/schemas/ThrottlingException' '483': description: InternalFailureException content: application/json: schema: $ref: '#/components/schemas/InternalFailureException' parameters: - name: metricName in: path required: true description: ' The name of the custom metric. Cannot be updated. ' schema: type: string pattern: '[a-zA-Z0-9:_-]+' minLength: 1 maxLength: 128 requestBody: required: true content: application/json: schema: type: object required: - displayName properties: displayName: description: ' 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. ' type: string pattern: '[\p{Graph}\x20]*' maxLength: 128 summary: Amazon IoT Device Management Update Custom Metric x-microcks-operation: delay: 0 dispatcher: FALLBACK tags: - Custom Metric components: parameters: X-Amz-Signature: name: X-Amz-Signature in: header schema: type: string required: false X-Amz-Content-Sha256: name: X-Amz-Content-Sha256 in: header schema: type: string required: false X-Amz-Algorithm: name: X-Amz-Algorithm in: header schema: type: string required: false X-Amz-Security-Token: name: X-Amz-Security-Token in: header schema: type: string required: false X-Amz-SignedHeaders: name: X-Amz-SignedHeaders in: header schema: type: string required: false X-Amz-Credential: name: X-Amz-Credential in: header schema: type: string required: false X-Amz-Date: name: X-Amz-Date in: header schema: type: string required: false schemas: Tag: type: object required: - Key properties: Key: allOf: - $ref: '#/components/schemas/TagKey' - description: The tag's key. Value: allOf: - $ref: '#/components/schemas/TagValue' - description: The tag's value. description: A set of key/value pairs that are used to manage the resource. CustomMetricArn: type: string DeleteCustomMetricResponse: type: object properties: {} ThrottlingException: {} TagKey: type: string pattern: ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$ minLength: 1 maxLength: 128 ResourceAlreadyExistsException: {} CustomMetricType: type: string enum: - string-list - ip-address-list - number-list - number Timestamp: type: string format: date-time InternalFailureException: {} MetricName: type: string pattern: '[a-zA-Z0-9:_-]+' minLength: 1 maxLength: 128 LimitExceededException: {} UpdateCustomMetricResponse: type: object properties: metricName: allOf: - $ref: '#/components/schemas/MetricName' - description: ' The name of the custom metric. ' metricArn: allOf: - $ref: '#/components/schemas/CustomMetricArn' - description: ' The Amazon Resource Number (ARN) of the custom metric. ' metricType: allOf: - $ref: '#/components/schemas/CustomMetricType' - description:The type of the custom metric.
The type number only takes a single metric value as an input, but while submitting the metrics value in the DeviceMetrics report, it must be passed as an array with a single value.
arn:aws-partition:iot:region:accountId:custommetric/metricName '
DescribeCustomMetricResponse:
type: object
properties:
metricName:
allOf:
- $ref: '#/components/schemas/MetricName'
- description: ' The name of the custom metric. '
metricArn:
allOf:
- $ref: '#/components/schemas/CustomMetricArn'
- description: ' The Amazon Resource Number (ARN) of the custom metric. '
metricType:
allOf:
- $ref: '#/components/schemas/CustomMetricType'
- description: The type of the custom metric.
The type number only takes a single metric value as an input, but while submitting the metrics value in the DeviceMetrics report, it must be passed as an array with a single value.