Amazon IoT Device Management Role Aliases API

The Role Aliases API from Amazon IoT Device Management — 2 operation(s) for role aliases.

OpenAPI Specification

amazon-iot-device-management-role-aliases-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: 2015-05-28
  x-release: v4
  title: AWS IoT Accept Certificate Transfer Role Aliases 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: Role Aliases
paths:
  /role-aliases/{roleAlias}:
    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: CreateRoleAlias
      description: <p>Creates a role alias.</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">CreateRoleAlias</a> action.</p>
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateRoleAliasResponse'
        '480':
          description: ResourceAlreadyExistsException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceAlreadyExistsException'
        '481':
          description: InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '482':
          description: LimitExceededException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LimitExceededException'
        '483':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
        '484':
          description: UnauthorizedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedException'
        '485':
          description: ServiceUnavailableException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableException'
        '486':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
      parameters:
      - name: roleAlias
        in: path
        required: true
        description: The role alias that points to a role ARN. This allows you to change the role without having to update the device.
        schema:
          type: string
          pattern: '[\w=,@-]+'
          minLength: 1
          maxLength: 128
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - roleArn
              properties:
                roleArn:
                  description: The role ARN.
                  type: string
                  minLength: 20
                  maxLength: 2048
                credentialDurationSeconds:
                  description: <p>How long (in seconds) the credentials will be valid. The default value is 3,600 seconds.</p> <p>This value must be less than or equal to the maximum session duration of the IAM role that the role alias references.</p>
                  type: integer
                  minimum: 900
                  maximum: 43200
                tags:
                  description: '<p>Metadata which can be used to manage the role alias.</p> <note> <p>For URI Request parameters use format: ...key1=value1&amp;key2=value2...</p> <p>For the CLI command-line parameter use format: &amp;&amp;tags "key1=value1&amp;key2=value2..."</p> <p>For the cli-input-json file use format: "tags": "key1=value1&amp;key2=value2..."</p> </note>'
                  type: array
                  items:
                    $ref: '#/components/schemas/Tag'
      summary: Amazon IoT Device Management Create Role Alias
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - Role Aliases
    delete:
      operationId: DeleteRoleAlias
      description: <p>Deletes a role alias</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">DeleteRoleAlias</a> action.</p>
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteRoleAliasResponse'
        '480':
          description: DeleteConflictException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteConflictException'
        '481':
          description: InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '482':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
        '483':
          description: UnauthorizedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedException'
        '484':
          description: ServiceUnavailableException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableException'
        '485':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
        '486':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
      parameters:
      - name: roleAlias
        in: path
        required: true
        description: The role alias to delete.
        schema:
          type: string
          pattern: '[\w=,@-]+'
          minLength: 1
          maxLength: 128
      summary: Amazon IoT Device Management Delete Role Alias
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - Role Aliases
    get:
      operationId: DescribeRoleAlias
      description: <p>Describes a role alias.</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">DescribeRoleAlias</a> action.</p>
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DescribeRoleAliasResponse'
        '480':
          description: InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '481':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
        '482':
          description: UnauthorizedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedException'
        '483':
          description: ServiceUnavailableException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableException'
        '484':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
        '485':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
      parameters:
      - name: roleAlias
        in: path
        required: true
        description: The role alias to describe.
        schema:
          type: string
          pattern: '[\w=,@-]+'
          minLength: 1
          maxLength: 128
      summary: Amazon IoT Device Management Describe Role Alias
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - Role Aliases
    put:
      operationId: UpdateRoleAlias
      description: <p>Updates a role alias.</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">UpdateRoleAlias</a> action.</p>
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateRoleAliasResponse'
        '480':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
        '481':
          description: InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '482':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
        '483':
          description: UnauthorizedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedException'
        '484':
          description: ServiceUnavailableException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableException'
        '485':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
      parameters:
      - name: roleAlias
        in: path
        required: true
        description: The role alias to update.
        schema:
          type: string
          pattern: '[\w=,@-]+'
          minLength: 1
          maxLength: 128
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                roleArn:
                  description: The role ARN.
                  type: string
                  minLength: 20
                  maxLength: 2048
                credentialDurationSeconds:
                  description: <p>The number of seconds the credential will be valid.</p> <p>This value must be less than or equal to the maximum session duration of the IAM role that the role alias references.</p>
                  type: integer
                  minimum: 900
                  maximum: 43200
      summary: Amazon IoT Device Management Update Role Alias
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - Role Aliases
  /role-aliases:
    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: ListRoleAliases
      description: <p>Lists the role aliases registered in your account.</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">ListRoleAliases</a> action.</p>
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListRoleAliasesResponse'
        '480':
          description: InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '481':
          description: ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottlingException'
        '482':
          description: UnauthorizedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedException'
        '483':
          description: ServiceUnavailableException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableException'
        '484':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
      parameters:
      - name: pageSize
        in: query
        required: false
        description: The maximum number of results to return at one time.
        schema:
          type: integer
          minimum: 1
          maximum: 250
      - name: marker
        in: query
        required: false
        description: A marker used to get the next set of results.
        schema:
          type: string
          pattern: '[A-Za-z0-9+/]+={0,2}'
          maxLength: 1024
      - name: isAscendingOrder
        in: query
        required: false
        description: Return the list of role aliases in ascending alphabetical order.
        schema:
          type: boolean
      summary: Amazon IoT Device Management List Role Aliases
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - Role Aliases
components:
  schemas:
    RoleArn:
      type: string
      minLength: 20
      maxLength: 2048
    DescribeRoleAliasResponse:
      type: object
      properties:
        roleAliasDescription:
          allOf:
          - $ref: '#/components/schemas/RoleAliasDescription'
          - description: The role alias description.
    CreateRoleAliasResponse:
      type: object
      properties:
        roleAlias:
          allOf:
          - $ref: '#/components/schemas/RoleAlias'
          - description: The role alias.
        roleAliasArn:
          allOf:
          - $ref: '#/components/schemas/RoleAliasArn'
          - description: The role alias ARN.
    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.
    ServiceUnavailableException: {}
    UnauthorizedException: {}
    ThrottlingException: {}
    CredentialDurationSeconds:
      type: integer
      minimum: 900
      maximum: 43200
    TagKey:
      type: string
      pattern: ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$
      minLength: 1
      maxLength: 128
    ResourceAlreadyExistsException: {}
    Marker:
      type: string
      pattern: '[A-Za-z0-9+/]+={0,2}'
      maxLength: 1024
    UpdateRoleAliasResponse:
      type: object
      properties:
        roleAlias:
          allOf:
          - $ref: '#/components/schemas/RoleAlias'
          - description: The role alias.
        roleAliasArn:
          allOf:
          - $ref: '#/components/schemas/RoleAliasArn'
          - description: The role alias ARN.
    InternalFailureException: {}
    DeleteConflictException: {}
    LimitExceededException: {}
    RoleAlias:
      type: string
      pattern: '[\w=,@-]+'
      minLength: 1
      maxLength: 128
    InvalidRequestException: {}
    RoleAliasArn:
      type: string
      minLength: 1
      maxLength: 2048
    DeleteRoleAliasResponse:
      type: object
      properties: {}
    AwsAccountId:
      type: string
      pattern: '[0-9]+'
      minLength: 12
      maxLength: 12
    RoleAliasDescription:
      type: object
      properties:
        roleAlias:
          allOf:
          - $ref: '#/components/schemas/RoleAlias'
          - description: The role alias.
        roleAliasArn:
          allOf:
          - $ref: '#/components/schemas/RoleAliasArn'
          - description: The ARN of the role alias.
        roleArn:
          allOf:
          - $ref: '#/components/schemas/RoleArn'
          - description: The role ARN.
        owner:
          allOf:
          - $ref: '#/components/schemas/AwsAccountId'
          - description: The role alias owner.
        credentialDurationSeconds:
          allOf:
          - $ref: '#/components/schemas/CredentialDurationSeconds'
          - description: The number of seconds for which the credential is valid.
        creationDate:
          allOf:
          - $ref: '#/components/schemas/DateType'
          - description: The UNIX timestamp of when the role alias was created.
        lastModifiedDate:
          allOf:
          - $ref: '#/components/schemas/DateType'
          - description: The UNIX timestamp of when the role alias was last modified.
      description: Role alias description.
    ListRoleAliasesResponse:
      type: object
      properties:
        roleAliases:
          allOf:
          - $ref: '#/components/schemas/RoleAliases'
          - description: The role aliases.
        nextMarker:
          allOf:
          - $ref: '#/components/schemas/Marker'
          - description: A marker used to get the next set of results.
    DateType:
      type: string
      format: date-time
    ResourceNotFoundException: {}
    RoleAliases:
      type: array
      items:
        $ref: '#/components/schemas/RoleAlias'
    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