Amazon IoT Device Management Dimensions API

The Dimensions API from Amazon IoT Device Management — 2 operation(s) for dimensions.

OpenAPI Specification

amazon-iot-device-management-dimensions-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: 2015-05-28
  x-release: v4
  title: AWS IoT Accept Certificate Transfer Dimensions API
  description: '<fullname>IoT</fullname> <p>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.</p> <p>The service endpoints that expose this API are listed in <a href="https://docs.aws.amazon.com/general/latest/gr/iot-core.html">Amazon Web Services IoT Core Endpoints and Quotas</a>. You must use the endpoint for the region that has the resources you want to access.</p> <p>The service name used by <a href="https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html">Amazon Web Services Signature Version 4</a> to sign the request is: <i>execute-api</i>.</p> <p>For more information about how IoT works, see the <a href="https://docs.aws.amazon.com/iot/latest/developerguide/aws-iot-how-it-works.html">Developer Guide</a>.</p> <p>For information about how to use the credentials provider for IoT, see <a href="https://docs.aws.amazon.com/iot/latest/developerguide/authorizing-direct-aws.html">Authorizing Direct Calls to Amazon Web Services Services</a>.</p>'
  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: Dimensions
paths:
  /dimensions/{name}:
    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: CreateDimension
      description: <p>Create a dimension that you can use to limit the scope of a metric used in a security profile for IoT Device Defender. For example, using a <code>TOPIC_FILTER</code> dimension, you can narrow down the scope of the metric only to MQTT topics whose name match the pattern specified in the dimension.</p> <p>Requires permission to access the <a href="https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions">CreateDimension</a> action.</p>
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateDimensionResponse'
        '480':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
        '481':
          description: InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '482':
          description: LimitExceededException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LimitExceededException'
        '483':
          description: ResourceAlreadyExistsException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceAlreadyExistsException'
        '484':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
      parameters:
      - name: name
        in: path
        required: true
        description: A unique identifier for the dimension. Choose something that describes the type and value to make it easy to remember what it does.
        schema:
          type: string
          pattern: '[a-zA-Z0-9:_-]+'
          minLength: 1
          maxLength: 128
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - type
              - stringValues
              - clientRequestToken
              properties:
                type:
                  description: 'Specifies the type of dimension. Supported types: <code>TOPIC_FILTER.</code> '
                  type: string
                  enum:
                  - TOPIC_FILTER
                stringValues:
                  description: Specifies the value or list of values for the dimension. For <code>TOPIC_FILTER</code> dimensions, this is a pattern used to match the MQTT topic (for example, "admin/#").
                  type: array
                  items:
                    $ref: '#/components/schemas/DimensionStringValue'
                  minItems: 1
                  maxItems: 100
                tags:
                  description: Metadata that can be used to manage the dimension.
                  type: array
                  items:
                    $ref: '#/components/schemas/Tag'
                clientRequestToken:
                  description: Each dimension must have a unique client request token. If you try to create a new dimension with the same token as a dimension that already exists, an exception occurs. If you omit this value, Amazon Web Services SDKs will automatically generate a unique client request.
                  type: string
                  pattern: ^[a-zA-Z0-9-_]+$
                  minLength: 1
                  maxLength: 64
      summary: Amazon IoT Device Management Create Dimension
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - Dimensions
    delete:
      operationId: DeleteDimension
      description: <p>Removes the specified dimension from your Amazon Web Services accounts.</p> <p>Requires permission to access the <a href="https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions">DeleteDimension</a> action.</p>
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteDimensionResponse'
        '480':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
        '481':
          description: InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '482':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
      parameters:
      - name: name
        in: path
        required: true
        description: The unique identifier for the dimension that you want to delete.
        schema:
          type: string
          pattern: '[a-zA-Z0-9:_-]+'
          minLength: 1
          maxLength: 128
      summary: Amazon IoT Device Management Delete Dimension
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - Dimensions
    get:
      operationId: DescribeDimension
      description: <p>Provides details about a dimension that is defined in your Amazon Web Services accounts.</p> <p>Requires permission to access the <a href="https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions">DescribeDimension</a> action.</p>
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DescribeDimensionResponse'
        '480':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
        '481':
          description: InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '482':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
        '483':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
      parameters:
      - name: name
        in: path
        required: true
        description: The unique identifier for the dimension.
        schema:
          type: string
          pattern: '[a-zA-Z0-9:_-]+'
          minLength: 1
          maxLength: 128
      summary: Amazon IoT Device Management Describe Dimension
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - Dimensions
    patch:
      operationId: UpdateDimension
      description: <p>Updates the definition for a dimension. You cannot change the type of a dimension after it is created (you can delete it and recreate it).</p> <p>Requires permission to access the <a href="https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions">UpdateDimension</a> action.</p>
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateDimensionResponse'
        '480':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
        '481':
          description: InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '482':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
        '483':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
      parameters:
      - name: name
        in: path
        required: true
        description: A unique identifier for the dimension. Choose something that describes the type and value to make it easy to remember what it does.
        schema:
          type: string
          pattern: '[a-zA-Z0-9:_-]+'
          minLength: 1
          maxLength: 128
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - stringValues
              properties:
                stringValues:
                  description: Specifies the value or list of values for the dimension. For <code>TOPIC_FILTER</code> dimensions, this is a pattern used to match the MQTT topic (for example, "admin/#").
                  type: array
                  items:
                    $ref: '#/components/schemas/DimensionStringValue'
                  minItems: 1
                  maxItems: 100
      summary: Amazon IoT Device Management Update Dimension
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - Dimensions
  /dimensions:
    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'
    get:
      operationId: ListDimensions
      description: <p>List the set of dimensions that are defined for your Amazon Web Services accounts.</p> <p>Requires permission to access the <a href="https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions">ListDimensions</a> action.</p>
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListDimensionsResponse'
        '480':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
        '481':
          description: InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '482':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
      parameters:
      - name: nextToken
        in: query
        required: false
        description: The token for the next set of results.
        schema:
          type: string
      - name: maxResults
        in: query
        required: false
        description: The maximum number of results to retrieve at one time.
        schema:
          type: integer
          minimum: 1
          maximum: 250
      summary: Amazon IoT Device Management List Dimensions
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - Dimensions
components:
  schemas:
    DimensionArn:
      type: string
    UpdateDimensionResponse:
      type: object
      properties:
        name:
          allOf:
          - $ref: '#/components/schemas/DimensionName'
          - description: A unique identifier for the dimension.
        arn:
          allOf:
          - $ref: '#/components/schemas/DimensionArn'
          - description: The Amazon Resource Name (ARN)of the created dimension.
        type:
          allOf:
          - $ref: '#/components/schemas/DimensionType'
          - description: The type of the dimension.
        stringValues:
          allOf:
          - $ref: '#/components/schemas/DimensionStringValues'
          - description: The value or list of values used to scope the dimension. For example, for topic filters, this is the pattern used to match the MQTT topic name.
        creationDate:
          allOf:
          - $ref: '#/components/schemas/Timestamp'
          - description: The date and time, in milliseconds since epoch, when the dimension was initially created.
        lastModifiedDate:
          allOf:
          - $ref: '#/components/schemas/Timestamp'
          - description: The date and time, in milliseconds since epoch, when the dimension was most recently updated.
    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.
    ThrottlingException: {}
    TagKey:
      type: string
      pattern: ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$
      minLength: 1
      maxLength: 128
    ResourceAlreadyExistsException: {}
    DimensionName:
      type: string
      pattern: '[a-zA-Z0-9:_-]+'
      minLength: 1
      maxLength: 128
    DescribeDimensionResponse:
      type: object
      properties:
        name:
          allOf:
          - $ref: '#/components/schemas/DimensionName'
          - description: The unique identifier for the dimension.
        arn:
          allOf:
          - $ref: '#/components/schemas/DimensionArn'
          - description: The Amazon Resource Name (ARN) for the dimension.
        type:
          allOf:
          - $ref: '#/components/schemas/DimensionType'
          - description: The type of the dimension.
        stringValues:
          allOf:
          - $ref: '#/components/schemas/DimensionStringValues'
          - description: The value or list of values used to scope the dimension. For example, for topic filters, this is the pattern used to match the MQTT topic name.
        creationDate:
          allOf:
          - $ref: '#/components/schemas/Timestamp'
          - description: The date the dimension was created.
        lastModifiedDate:
          allOf:
          - $ref: '#/components/schemas/Timestamp'
          - description: The date the dimension was last modified.
    DimensionType:
      type: string
      enum:
      - TOPIC_FILTER
    Timestamp:
      type: string
      format: date-time
    InternalFailureException: {}
    CreateDimensionResponse:
      type: object
      properties:
        name:
          allOf:
          - $ref: '#/components/schemas/DimensionName'
          - description: A unique identifier for the dimension.
        arn:
          allOf:
          - $ref: '#/components/schemas/DimensionArn'
          - description: The Amazon Resource Name (ARN) of the created dimension.
    DimensionStringValues:
      type: array
      items:
        $ref: '#/components/schemas/DimensionStringValue'
      minItems: 1
      maxItems: 100
    LimitExceededException: {}
    DimensionNames:
      type: array
      items:
        $ref: '#/components/schemas/DimensionName'
    NextToken:
      type: string
    InvalidRequestException: {}
    ListDimensionsResponse:
      type: object
      properties:
        dimensionNames:
          allOf:
          - $ref: '#/components/schemas/DimensionNames'
          - description: A list of the names of the defined dimensions. Use <code>DescribeDimension</code> to get details for a dimension.
        nextToken:
          allOf:
          - $ref: '#/components/schemas/NextToken'
          - description: A token that can be used to retrieve the next set of results, or <code>null</code> if there are no additional results.
    ResourceNotFoundException: {}
    DimensionStringValue:
      type: string
      minLength: 1
      maxLength: 256
    DeleteDimensionResponse:
      type: object
      properties: {}
    TagValue:
      type: string
      minLength: 0
      maxLength: 256
  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
  securitySchemes:
    hmac:
      type: apiKey
      name: Authorization
      in: header
      description: Amazon Signature authorization v4
      x-amazon-apigateway-authtype: awsSigv4
externalDocs:
  description: Amazon Web Services documentation
  url: https://docs.aws.amazon.com/iot/
x-hasEquivalentPaths: true