Amazon IoT Core Dynamic Thing Groups API

The Dynamic Thing Groups API from Amazon IoT Core — 1 operation(s) for dynamic thing groups.

OpenAPI Specification

amazon-iot-core-dynamic-thing-groups-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: 2015-05-28
  x-release: v4
  title: AWS IoT Accept Certificate Transfer Dynamic Thing Groups 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: Dynamic Thing Groups
paths:
  /dynamic-thing-groups/{thingGroupName}:
    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: CreateDynamicThingGroup
      description: <p>Creates a dynamic thing group.</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">CreateDynamicThingGroup</a> action.</p>
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateDynamicThingGroupResponse'
        '480':
          description: InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '481':
          description: ResourceAlreadyExistsException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceAlreadyExistsException'
        '482':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
        '483':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
        '484':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
        '485':
          description: InvalidQueryException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidQueryException'
        '486':
          description: LimitExceededException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LimitExceededException'
      parameters:
      - name: thingGroupName
        in: path
        required: true
        description: The dynamic thing group name to create.
        schema:
          type: string
          pattern: '[a-zA-Z0-9:_-]+'
          minLength: 1
          maxLength: 128
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - queryString
              properties:
                thingGroupProperties:
                  description: Thing group properties.
                  type: object
                  properties:
                    thingGroupDescription:
                      allOf:
                      - $ref: '#/components/schemas/ThingGroupDescription'
                      - description: The thing group description.
                    attributePayload:
                      allOf:
                      - $ref: '#/components/schemas/AttributePayload'
                      - description: The thing group attributes in JSON format.
                indexName:
                  description: '<p>The dynamic thing group index name.</p> <note> <p>Currently one index is supported: <code>AWS_Things</code>.</p> </note>'
                  type: string
                  pattern: '[a-zA-Z0-9:_-]+'
                  minLength: 1
                  maxLength: 128
                queryString:
                  description: <p>The dynamic thing group search query string.</p> <p>See <a href="https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html">Query Syntax</a> for information about query string syntax.</p>
                  type: string
                  minLength: 1
                queryVersion:
                  description: '<p>The dynamic thing group query version.</p> <note> <p>Currently one query version is supported: "2017-09-30". If not specified, the query version defaults to this value.</p> </note>'
                  type: string
                tags:
                  description: Metadata which can be used to manage the dynamic thing group.
                  type: array
                  items:
                    $ref: '#/components/schemas/Tag'
      summary: Amazon IoT Core Create Dynamic Thing Group
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - Dynamic Thing Groups
    delete:
      operationId: DeleteDynamicThingGroup
      description: <p>Deletes a dynamic thing group.</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">DeleteDynamicThingGroup</a> action.</p>
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteDynamicThingGroupResponse'
        '480':
          description: InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '481':
          description: VersionConflictException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VersionConflictException'
        '482':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
        '483':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
      parameters:
      - name: thingGroupName
        in: path
        required: true
        description: The name of the dynamic thing group to delete.
        schema:
          type: string
          pattern: '[a-zA-Z0-9:_-]+'
          minLength: 1
          maxLength: 128
      - name: expectedVersion
        in: query
        required: false
        description: The expected version of the dynamic thing group to delete.
        schema:
          type: integer
      summary: Amazon IoT Core Delete Dynamic Thing Group
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - Dynamic Thing Groups
    patch:
      operationId: UpdateDynamicThingGroup
      description: <p>Updates a dynamic thing group.</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">UpdateDynamicThingGroup</a> action.</p>
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateDynamicThingGroupResponse'
        '480':
          description: InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '481':
          description: VersionConflictException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VersionConflictException'
        '482':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
        '483':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
        '484':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
        '485':
          description: InvalidQueryException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidQueryException'
      parameters:
      - name: thingGroupName
        in: path
        required: true
        description: The name of the dynamic thing group to update.
        schema:
          type: string
          pattern: '[a-zA-Z0-9:_-]+'
          minLength: 1
          maxLength: 128
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - thingGroupProperties
              properties:
                thingGroupProperties:
                  description: Thing group properties.
                  type: object
                  properties:
                    thingGroupDescription:
                      allOf:
                      - $ref: '#/components/schemas/ThingGroupDescription'
                      - description: The thing group description.
                    attributePayload:
                      allOf:
                      - $ref: '#/components/schemas/AttributePayload'
                      - description: The thing group attributes in JSON format.
                expectedVersion:
                  description: The expected version of the dynamic thing group to update.
                  type: integer
                indexName:
                  description: '<p>The dynamic thing group index to update.</p> <note> <p>Currently one index is supported: <code>AWS_Things</code>.</p> </note>'
                  type: string
                  pattern: '[a-zA-Z0-9:_-]+'
                  minLength: 1
                  maxLength: 128
                queryString:
                  description: The dynamic thing group search query string to update.
                  type: string
                  minLength: 1
                queryVersion:
                  description: '<p>The dynamic thing group query version to update.</p> <note> <p>Currently one query version is supported: "2017-09-30". If not specified, the query version defaults to this value.</p> </note>'
                  type: string
      summary: Amazon IoT Core Update Dynamic Thing Group
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - Dynamic Thing Groups
components:
  schemas:
    ResourceNotFoundException: {}
    Version:
      type: integer
    Attributes:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/AttributeValue'
    ThingGroupArn:
      type: string
    ThingGroupDescription:
      type: string
      pattern: '[\p{Graph}\x20]*'
      maxLength: 2028
    TagKey:
      type: string
      pattern: ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$
      minLength: 1
      maxLength: 128
    ThrottlingException: {}
    QueryString:
      type: string
      minLength: 1
    InvalidRequestException: {}
    QueryVersion:
      type: string
    CreateDynamicThingGroupResponse:
      type: object
      properties:
        thingGroupName:
          allOf:
          - $ref: '#/components/schemas/ThingGroupName'
          - description: The dynamic thing group name.
        thingGroupArn:
          allOf:
          - $ref: '#/components/schemas/ThingGroupArn'
          - description: The dynamic thing group ARN.
        thingGroupId:
          allOf:
          - $ref: '#/components/schemas/ThingGroupId'
          - description: The dynamic thing group ID.
        indexName:
          allOf:
          - $ref: '#/components/schemas/IndexName'
          - description: The dynamic thing group index name.
        queryString:
          allOf:
          - $ref: '#/components/schemas/QueryString'
          - description: The dynamic thing group search query string.
        queryVersion:
          allOf:
          - $ref: '#/components/schemas/QueryVersion'
          - description: The dynamic thing group query version.
    ThingGroupName:
      type: string
      pattern: '[a-zA-Z0-9:_-]+'
      minLength: 1
      maxLength: 128
    LimitExceededException: {}
    InternalFailureException: {}
    AttributeValue:
      type: string
      pattern: '[a-zA-Z0-9_.,@/:#-]*'
      maxLength: 800
    UpdateDynamicThingGroupResponse:
      type: object
      properties:
        version:
          allOf:
          - $ref: '#/components/schemas/Version'
          - description: The dynamic thing group version.
    AttributePayload:
      type: object
      properties:
        attributes:
          allOf:
          - $ref: '#/components/schemas/Attributes'
          - description: <p>A JSON string containing up to three key-value pair in JSON format. For example:</p> <p> <code>{\"attributes\":{\"string1\":\"string2\"}}</code> </p>
        merge:
          allOf:
          - $ref: '#/components/schemas/Flag'
          - description: <p>Specifies whether the list of attributes provided in the <code>AttributePayload</code> is merged with the attributes stored in the registry, instead of overwriting them.</p> <p>To remove an attribute, call <code>UpdateThing</code> with an empty attribute value.</p> <note> <p>The <code>merge</code> attribute is only valid when calling <code>UpdateThing</code> or <code>UpdateThingGroup</code>.</p> </note>
      description: The attribute payload.
    Flag:
      type: boolean
    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.
    ResourceAlreadyExistsException: {}
    InvalidQueryException: {}
    DeleteDynamicThingGroupResponse:
      type: object
      properties: {}
    TagValue:
      type: string
      minLength: 0
      maxLength: 256
    IndexName:
      type: string
      pattern: '[a-zA-Z0-9:_-]+'
      minLength: 1
      maxLength: 128
    VersionConflictException: {}
    ThingGroupId:
      type: string
      pattern: '[a-zA-Z0-9\-]+'
      minLength: 1
      maxLength: 128
  parameters:
    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
    X-Amz-Signature:
      name: X-Amz-Signature
      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-Content-Sha256:
      name: X-Amz-Content-Sha256
      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