Updated on 2026-09-01 GMT+08:00

Actions Supported by Identity Policy-based Authorization

IAM provides system-defined identity policies to define common actions supported by cloud services. You can also create custom identity policies using the actions supported by cloud services for more refined access control.

In addition to IAM, the Organizations service also provides Service Control Policies (SCPs, see SCP Introduction) to set access control policies.

SCPs do not actually grant any permissions to a principal. They only set the permissions boundary for the principal. When SCPs are attached to a member account or an organizational unit (OU), they do not directly grant permissions to that member account or OU. Instead, the SCPs just determine what permissions are available for that member account or the member accounts under that OU. The granted permissions can be applied only if they are allowed by the SCPs.

To learn more about how IAM is different from Organizations for access control, see What Are the Differences in Access Control Between IAM and Organizations?

This section describes the elements used by IAM custom identity policies and Organizations SCPs. The elements include actions, resources, and conditions.

Actions

Actions are specific operations that are allowed or denied in an identity policy.

  • The Access Level column describes how the action is classified (List, Read, or Write). This classification helps you understand the level of access that an action grants when you use it in an identity policy.
  • The Resource Type column indicates whether the action supports resource-level permissions.
    • You can use a wildcard (*) to indicate all resource types. If this column is empty (-), the action does not support resource-level permissions and you must specify all resources ("*") in your identity policy statements.
    • If this column includes a resource type, you must specify the URN in the Resource element of your statements.
    • Required resources are marked with asterisks (*) in the table. If you specify a resource in a statement using this action, then it must be of this type.

    For details about the resource types defined by IoTDA, see Resources.

  • The Condition Key column contains keys that you can specify in the Condition element of an identity policy statement.
    • If the Resource Type column has values for an action, the condition key takes effect only for the listed resource types.
    • If the Resource Type column is empty (-) for an action, the condition key takes effect for all resources that action supports.
    • If the Condition Key column is empty (-) for an action, the action does not support any condition keys.

    For details about the condition keys defined by IoTDA, see Conditions.

  • The Alias column lists the policy actions that are configured in identity policies. With these actions, you can use APIs for policy-based authorization. For details, see How Are Identity Policies Compatible with Policies?

    The following table lists the actions that you can define in identity policy statements for IoTDA.

    Table 1 Actions supported by IoTDA

    Action

    Description

    Access Level

    Resource Type

    Condition Key

    iotda:accesscode:create

    Creating an access code

    write

    -

    g:EnterpriseProjectId

    iotda:amqpqueue:create

    Creating an AMQP queue

    write

    -

    g:EnterpriseProjectId

    iotda:amqpqueue:delete

    Deleting an AMQP queue

    write

    -

    g:EnterpriseProjectId

    iotda:amqpqueue:disconnect

    Disconnecting an AMQP queue

    write

    -

    g:EnterpriseProjectId

    iotda:amqpqueue:query

    Querying AMQP queue details

    read

    -

    g:EnterpriseProjectId

    iotda:amqpqueue:queryList

    Querying the AMQP queue list

    list

    -

    g:EnterpriseProjectId

    iotda:appcacertificate:create

    Uploading CA certificates on the application side

    write

    -

    g:EnterpriseProjectId

    iotda:appcacertificate:delete

    Deleting CA certificates on the application side

    write

    -

    g:EnterpriseProjectId

    iotda:appcacertificate:queryList

    Querying CA certificates on the application side

    list

    -

    g:EnterpriseProjectId

    iotda:appcacertificate:update

    Updating CA certificates on the application side

    write

    -

    g:EnterpriseProjectId

    iotda:app:create

    Creating a resource space

    write

    app

    g:EnterpriseProjectId

    iotda:apps:delete

    Deleting a resource space

    write

    app

    g:EnterpriseProjectId

    iotda:apps:query

    Querying a resource space

    read

    app

    g:EnterpriseProjectId

    iotda:apps:queryList

    Querying the resource space list

    list

    app

    g:EnterpriseProjectId

    iotda:apps:update

    Modifying a resource space

    write

    app

    g:EnterpriseProjectId

    iotda:asynccommands:query

    Querying an asynchronous command

    read

    app

    g:EnterpriseProjectId

    iotda:asynccommands:queryList

    Querying the asynchronous command list

    list

    app

    g:EnterpriseProjectId

    iotda:asynccommands:send

    Sending an asynchronous command

    write

    app

    g:EnterpriseProjectId

    iotda:batchtaskfiles:create

    Uploading a batch task file

    write

    -

    g:EnterpriseProjectId

    iotda:batchtaskfiles:delete

    Deleting a batch task file

    write

    -

    g:EnterpriseProjectId

    iotda:batchtaskfiles:queryList

    Querying the list of batch task files

    list

    -

    g:EnterpriseProjectId

    iotda:batchtasks:confirm

    Confirming a batch task

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:batchtasks:create

    Creating a batch task

    write

    -

    g:EnterpriseProjectId

    iotda:batchtasks:delete

    Deleting a batch task

    write

    -

    g:EnterpriseProjectId

    iotda:batchtasks:query

    Querying a batch task

    read

    -

    g:EnterpriseProjectId

    iotda:batchtasks:queryList

    Querying the batch task list

    list

    -

    g:EnterpriseProjectId

    iotda:batchtasks:retry

    Retrying a batch task

    write

    -

    g:EnterpriseProjectId

    iotda:batchtasks:stop

    Stopping a batch task

    write

    -

    g:EnterpriseProjectId

    iotda:bridge:create

    Creating a bridge

    write

    -

    g:EnterpriseProjectId

    iotda:bridge:delete

    Deleting a bridge

    write

    -

    g:EnterpriseProjectId

    iotda:bridge:queryList

    Querying the bridge list

    list

    -

    g:EnterpriseProjectId

    iotda:bridge:reset

    Resetting a bridge key

    write

    -

    g:EnterpriseProjectId

    iotda:bundle:create

    Creating plugin information

    write

    app

    g:EnterpriseProjectId

    iotda:bundle:query

    Querying plugin information

    read

    app

    g:EnterpriseProjectId

    iotda:bundle:queryList

    Querying the plugin list

    list

    app

    g:EnterpriseProjectId

    iotda:bundle:update

    Updating plugin information

    write

    app

    g:EnterpriseProjectId

    iotda:bundlemapping:query

    Querying the codec mapping

    read

    -

    g:EnterpriseProjectId

    iotda:bundlemapping:save

    Saving the codec mapping

    write

    -

    g:EnterpriseProjectId

    iotda:bundlemessage:query

    Querying plugin messages

    read

    -

    g:EnterpriseProjectId

    iotda:bundlemessage:save

    Saving plugin messages

    write

    -

    g:EnterpriseProjectId

    iotda:certificate:query

    Querying a device CA certificate

    read

    app

    g:EnterpriseProjectId

    iotda:certificates:check

    Verifying a device CA certificate

    write

    app

    g:EnterpriseProjectId

    iotda:certificates:debug

    Commissioning a device CA certificate

    write

    app

    g:EnterpriseProjectId

    iotda:certificates:delete

    Deleting a device CA certificate

    write

    app

    g:EnterpriseProjectId

    iotda:certificates:queryList

    Obtaining the device CA certificate list

    list

    app

    g:EnterpriseProjectId

    iotda:certificates:update

    Updating a device CA certificate

    write

    app

    g:EnterpriseProjectId

    iotda:certificates:upload

    Uploading a device CA certificate

    write

    app

    g:EnterpriseProjectId

    iotda:commands:send

    Delivering a device command

    write

    app

    g:EnterpriseProjectId

    iotda:dbtable:query

    Querying database table structures

    read

    -

    g:EnterpriseProjectId

    iotda:dbtable:queryList

    Querying database tables

    list

    -

    g:EnterpriseProjectId

    iotda:deviceauthenticationtemplate:create

    Creating a device authentication template

    write

    instance

    g:EnterpriseProjectId

    iotda:deviceauthenticationtemplate:debug

    Debugging a device authentication template

    write

    instance

    g:EnterpriseProjectId

    iotda:deviceauthenticationtemplate:delete

    Deleting a device authentication template

    write

    instance

    g:EnterpriseProjectId

    iotda:deviceauthenticationtemplate:query

    Querying a device authentication template

    read

    instance

    g:EnterpriseProjectId

    iotda:deviceauthenticationtemplate:queryList

    Querying the device authentication template list

    list

    instance

    g:EnterpriseProjectId

    iotda:deviceauthenticationtemplate:update

    Updating a device authentication template

    write

    instance

    g:EnterpriseProjectId

    iotda:deviceauthorizers:create

    Creating a custom authenticator

    write

    instance

    g:EnterpriseProjectId

    iotda:deviceauthorizers:delete

    Deleting a custom authenticator

    write

    instance

    g:EnterpriseProjectId

    iotda:deviceauthorizers:query

    Querying custom authenticator details

    read

    instance

    g:EnterpriseProjectId

    iotda:deviceauthorizers:queryList

    Querying the custom authenticator list

    list

    instance

    g:EnterpriseProjectId

    iotda:deviceauthorizers:update

    Updating a custom authenticator

    write

    instance

    g:EnterpriseProjectId

    iotda:devicecertificates:delete

    Deleting a device certificate

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:devicecertificates:query

    Querying a device certificate

    read

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:devicecertificates:queryDeviceList

    Querying the list of devices associated with a specified device certificate

    read

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:devicecertificates:queryList

    Querying the device certificate list

    list

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:devicecertificates:update

    Updating a device certificate

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:devicedebugmessage:queryList

    Querying the list of device debugging messages

    list

    -

    g:EnterpriseProjectId

    iotda:devicedebugmessage:send

    Sending device debugging messages

    write

    -

    g:EnterpriseProjectId

    iotda:devicepolicy:bind

    Binding a device policy

    permission_management

    app

    g:EnterpriseProjectId

    iotda:devicepolicy:create

    Creating a device policy

    write

    app

    g:EnterpriseProjectId

    iotda:devicepolicy:delete

    Deleting a device policy

    write

    app

    g:EnterpriseProjectId

    iotda:devicepolicy:query

    Querying a device policy

    read

    app

    g:EnterpriseProjectId

    iotda:devicepolicy:queryList

    Querying the device policy list

    list

    app

    g:EnterpriseProjectId

    iotda:devicepolicy:queryTargets

    Querying devices bound to a policy

    list

    app

    g:EnterpriseProjectId

    iotda:devicepolicy:unbind

    Unbinding a device policy

    permission_management

    app

    g:EnterpriseProjectId

    iotda:devicepolicy:update

    Modifying a device policy

    write

    app

    g:EnterpriseProjectId

    iotda:device-proxies:create

    Creating a device proxy

    write

    app

    g:EnterpriseProjectId

    iotda:device-proxies:delete

    Deleting a device proxy

    write

    app

    g:EnterpriseProjectId

    iotda:device-proxies:modify

    Modifying a device proxy

    write

    app

    g:EnterpriseProjectId

    iotda:device-proxies:query

    Querying a device proxy

    read

    app

    g:EnterpriseProjectId

    iotda:device-proxies:queryList

    Querying the device proxy list

    list

    app

    g:EnterpriseProjectId

    iotda:devices:changeGateway

    Modifying the gateway of a device

    write

    app

    g:EnterpriseProjectId

    iotda:devices:delete

    Deleting a device

    write

    app

    g:EnterpriseProjectId

    iotda:devices:freeze

    Freezing a device

    write

    app

    g:EnterpriseProjectId

    iotda:devices:modify

    Modifying a device

    write

    app

    g:EnterpriseProjectId

    iotda:devices:query

    Querying a device

    read

    app

    g:EnterpriseProjectId

    iotda:devices:queryGroupList

    Querying the group list

    list

    app

    g:EnterpriseProjectId

    iotda:devices:queryHistoryData

    Querying historical device data

    list

    app

    g:EnterpriseProjectId

    iotda:devices:queryList

    Querying the device list

    list

    app

    g:EnterpriseProjectId

    iotda:devices:register

    Registering a device

    write

    app

    g:EnterpriseProjectId

    iotda:devices:resetFingerprint

    Resetting a device fingerprint

    write

    app

    g:EnterpriseProjectId

    iotda:devices:resetSecret

    Resetting a device secret

    write

    app

    g:EnterpriseProjectId

    iotda:devices:unfreeze

    Unfreezing a device

    write

    app

    g:EnterpriseProjectId

    iotda:domainconfiguration:create

    Creating domain configurations

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:domainconfiguration:delete

    Deleting domain configurations

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:domainconfiguration:query

    Querying domain configurations

    read

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:domainconfiguration:queryList

    Querying the domain configuration list

    list

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:domainconfiguration:update

    Updating domain configurations

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:exporttasks:create

    Creating an export task

    write

    -

    g:EnterpriseProjectId

    iotda:exporttasks:delete

    Deleting an export task

    write

    -

    g:EnterpriseProjectId

    iotda:exporttasks:query

    Downloading the export result file

    read

    -

    g:EnterpriseProjectId

    iotda:exporttasks:queryList

    Querying the export task list

    list

    -

    g:EnterpriseProjectId

    iotda:group:addDevice

    Managing devices in a device group

    write

    app

    g:EnterpriseProjectId

    iotda:group:create

    Adding a device group

    write

    app

    g:EnterpriseProjectId

    iotda:group:delete

    Deleting a device group

    write

    app

    g:EnterpriseProjectId

    iotda:group:modify

    Modifying a device group

    write

    app

    g:EnterpriseProjectId

    iotda:group:query

    Querying a device group

    read

    app

    g:EnterpriseProjectId

    iotda:group:queryDeviceList

    Querying devices in a device group

    list

    app

    g:EnterpriseProjectId

    iotda:group:queryList

    Querying the device group list

    list

    app

    g:EnterpriseProjectId

    iotda:harmonysoftbus:create

    Creating a HarmonyOS soft bus

    write

    -

    g:EnterpriseProjectId

    iotda:harmonysoftbus:delete

    Deleting a HarmonyOS soft bus

    write

    -

    g:EnterpriseProjectId

    iotda:harmonysoftbus:query

    Querying HarmonyOS soft bus details

    read

    -

    g:EnterpriseProjectId

    iotda:harmonysoftbus:queryList

    Querying the HarmonyOS soft bus list

    list

    -

    g:EnterpriseProjectId

    iotda:harmonysoftbus:reset

    Resetting a HarmonyOS soft bus key

    write

    -

    g:EnterpriseProjectId

    iotda:harmonysoftbus:sync

    Synchronizing a HarmonyOS soft bus

    write

    -

    g:EnterpriseProjectId

    iotda:historycommands:queryCommandsCount

    Querying the total number of historical asynchronous commands

    read

    app

    g:EnterpriseProjectId

    iotda:historycommands:queryList

    Querying the historical asynchronous command list

    list

    app

    g:EnterpriseProjectId

    iotda:instance:create

    Creating an instance

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>
    • g:TagKeys

    iotda:instance:createOutBoundChannel

    Creating an outbound interconnection channel

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:instance:createProtocolAdaptor

    Creating a protocol-layer plugin adapter

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:instance:delete

    Deleting an instance

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:instance:deleteProtocolAdaptor

    Deleting a protocol-layer plugin adapter

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:instance:listTags

    Querying the instance tag list

    list

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:instance:operateTag

    Performing operations on instance tags

    tagging

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>
    • g:TagKeys

    iotda:instance:query

    Querying instance details

    read

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:instance:queryList

    Querying the instance list

    list

    instance

    -

    iotda:instance:queryOutBoundChannelList

    Querying the outbound interconnection channel list

    list

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:instance:queryProtocolAdaptor

    Querying protocol-layer plugin adapter details

    read

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:instance:queryProtocolAdaptorList

    Querying the protocol-layer plugin adapter list

    list

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:instance:queryProtocolAdaptorLog

    Querying running logs of a generic-protocol adapter

    read

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:instance:queryTask

    Querying the instance task details

    read

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:instance:queryTaskList

    Querying the instance task list

    list

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:instance:restart

    Restarting an instance

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:instance:update

    Updating an instance

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>
    • iotda:AllowPublicAccess
    • iotda:AllowPublicForwarding
    • iotda:DomainConfiguration

    iotda:instance:updateProtocolAdaptor

    Updating a protocol-layer plugin adapter

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:integration:create

    Adding interconnection information

    write

    -

    g:EnterpriseProjectId

    iotda:integration:delete

    Deleting interconnection information

    write

    -

    g:EnterpriseProjectId

    iotda:integration:queryList

    Querying the interconnection information list

    list

    -

    g:EnterpriseProjectId

    iotda:integration:update

    Modifying interconnection information

    write

    -

    g:EnterpriseProjectId

    iotda:message:broadcast

    Broadcasting a message

    write

    app

    g:EnterpriseProjectId

    iotda:messagequeues:create

    Creating a message queue

    write

    app

    g:EnterpriseProjectId

    iotda:messagequeues:delete

    Deleting a message queue

    write

    app

    g:EnterpriseProjectId

    iotda:messagequeues:query

    Querying message queue details

    read

    app

    g:EnterpriseProjectId

    iotda:messagequeues:queryList

    Querying the message queue list

    list

    app

    g:EnterpriseProjectId

    iotda:messagequeues:update

    Modifying a message queue

    write

    app

    g:EnterpriseProjectId

    iotda:messages:delete

    Deleting a message with a specified ID

    write

    app

    g:EnterpriseProjectId

    iotda:messages:query

    Querying a message with a specified ID

    read

    app

    g:EnterpriseProjectId

    iotda:messages:queryList

    Querying device messages

    list

    app

    g:EnterpriseProjectId

    iotda:messages:send

    Delivering a message to a device

    write

    app

    g:EnterpriseProjectId

    iotda:messagetrace:queryList

    Querying the message tracing configuration list

    list

    -

    g:EnterpriseProjectId

    iotda:messagetrace:update

    Modifying message tracing configurations

    write

    -

    g:EnterpriseProjectId

    iotda:messagetracedata:delete

    Deleting message tracing data

    write

    -

    g:EnterpriseProjectId

    iotda:messagetracedata:queryList

    Querying the message tracing data list

    list

    -

    g:EnterpriseProjectId

    iotda:obsbucket:create

    Configuring an OBS bucket for file upload

    write

    -

    g:EnterpriseProjectId

    iotda:obsbucket:query

    Querying the configured file upload bucket name

    read

    -

    g:EnterpriseProjectId

    iotda:offlinebundle:deploy

    Deploying an offline plugin

    write

    app

    g:EnterpriseProjectId

    iotda:onlinebundle:deploy

    Deploying an online plugin

    write

    app

    g:EnterpriseProjectId

    iotda:otamodules:create

    Creating an OTA module

    write

    app

    g:EnterpriseProjectId

    iotda:otamodules:delete

    Deleting an OTA module

    write

    app

    g:EnterpriseProjectId

    iotda:otamodules:query

    Querying OTA module details

    read

    app

    g:EnterpriseProjectId

    iotda:otamodules:queryList

    Querying the OTA module list

    list

    app

    g:EnterpriseProjectId

    iotda:otamodules:update

    Modifying an OTA module

    write

    app

    g:EnterpriseProjectId

    iotda:otapackages:create

    Creating an upgrade package

    write

    -

    g:EnterpriseProjectId

    iotda:otapackages:delete

    Deleting an upgrade package

    write

    -

    g:EnterpriseProjectId

    iotda:otapackages:query

    Query upgrade package details

    read

    -

    g:EnterpriseProjectId

    iotda:otapackages:queryList

    Querying the upgrade package list

    list

    -

    g:EnterpriseProjectId

    iotda:productconfig:create

    Creating a product configuration

    write

    -

    g:EnterpriseProjectId

    iotda:productconfig:query

    Querying the product configuration

    read

    -

    g:EnterpriseProjectId

    iotda:productconfig:queryList

    Querying the product configuration list

    list

    -

    g:EnterpriseProjectId

    iotda:productfunctions:create

    Creating a product function

    write

    app

    g:EnterpriseProjectId

    iotda:productfunctions:delete

    Deleting a product function

    write

    app

    g:EnterpriseProjectId

    iotda:productfunctions:queryList

    Querying the product function list

    list

    app

    g:EnterpriseProjectId

    iotda:products:create

    Creating a product

    write

    app

    g:EnterpriseProjectId

    iotda:products:delete

    Deleting a product

    write

    app

    g:EnterpriseProjectId

    iotda:products:modify

    Modifying a product

    write

    app

    g:EnterpriseProjectId

    iotda:products:query

    Querying a product

    read

    app

    g:EnterpriseProjectId

    iotda:products:queryList

    Querying the product list

    list

    app

    g:EnterpriseProjectId

    iotda:properties:modify

    Modifying device properties

    write

    app

    g:EnterpriseProjectId

    iotda:properties:query

    Querying device properties

    read

    app

    g:EnterpriseProjectId

    iotda:protocoladaptorimage:create

    Creating a generic-protocol image

    write

    -

    -

    iotda:protocoladaptorimage:delete

    Deleting a generic-protocol image

    write

    -

    -

    iotda:protocoladaptorimage:queryList

    Querying the generic-protocol image list

    list

    -

    -

    iotda:protocoladaptorimage:update

    Updating a generic-protocol image

    write

    -

    -

    iotda:protocolconfigs:create

    Creating a generic-protocol configuration

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>
    • iotda:ProtocolConfigEnableSSL

    iotda:protocolconfigs:delete

    Deleting a generic-protocol configuration

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:protocolconfigs:query

    Querying details about a generic-protocol configuration

    read

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:protocolconfigs:queryList

    Querying the generic-protocol configuration list

    list

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:protocolconfigs:update

    Updating a generic-protocol configuration

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>
    • iotda:ProtocolConfigEnableSSL

    iotda:provisioningtemplate:create

    Creating a self-registration template

    write

    -

    g:EnterpriseProjectId

    iotda:provisioningtemplate:delete

    Deleting a self-registration template

    write

    -

    g:EnterpriseProjectId

    iotda:provisioningtemplate:query

    Querying a self-registration template

    read

    -

    g:EnterpriseProjectId

    iotda:provisioningtemplate:queryList

    Querying a self-registration template

    list

    -

    g:EnterpriseProjectId

    iotda:provisioningtemplate:update

    Updating a self-registration template

    write

    -

    g:EnterpriseProjectId

    iotda:routingactions:clearMessage

    Clearing stacked rule action data

    write

    app

    g:EnterpriseProjectId

    iotda:routingactions:create

    Creating a rule action

    write

    app

    • g:EnterpriseProjectId
    • iotda:HttpForwardingEnableSSL
    • iotda:HttpForwardingEnableAuthentication
    • iotda:DMSKafkaForwardingEnableAuthentication
    • iotda:DMSKafkaForwardingEnableSSL
    • iotda:MysqlForwardingEnableSSL
    • iotda:PostgresqlForwardingEnableSSL
    • iotda:InfluxDBForwardingEnableSSL
    • iotda:MRSKafkaForwardingEnableAuthentication
    • iotda:DMSRocketMQForwardingEnableSSL
    • iotda:MongoDBForwardingEnableSSL

    iotda:routingactions:delete

    Deleting a rule action

    write

    app

    g:EnterpriseProjectId

    iotda:routingactions:modify

    Modifying a rule action

    write

    app

    • g:EnterpriseProjectId
    • iotda:HttpForwardingEnableSSL
    • iotda:HttpForwardingEnableAuthentication
    • iotda:DMSKafkaForwardingEnableAuthentication
    • iotda:DMSKafkaForwardingEnableSSL
    • iotda:MysqlForwardingEnableSSL
    • iotda:PostgresqlForwardingEnableSSL
    • iotda:InfluxDBForwardingEnableSSL
    • iotda:MRSKafkaForwardingEnableAuthentication
    • iotda:DMSRocketMQForwardingEnableSSL
    • iotda:MongoDBForwardingEnableSSL

    iotda:routingactions:query

    Querying a rule action

    read

    app

    g:EnterpriseProjectId

    iotda:routingactions:queryList

    Querying the rule action list

    list

    app

    g:EnterpriseProjectId

    iotda:routingactions:queryStats

    Querying rule action statistics

    read

    app

    g:EnterpriseProjectId

    iotda:routingactions:verifyConnectivity

    Verifying connectivity

    write

    app

    g:EnterpriseProjectId

    iotda:routingbacklogpolicy:create

    Creating an outbound push stack policy

    write

    -

    g:EnterpriseProjectId

    iotda:routingbacklogpolicy:delete

    Deleting an outbound push stack policy

    write

    -

    g:EnterpriseProjectId

    iotda:routingbacklogpolicy:query

    Querying an outbound push stack policy

    read

    -

    g:EnterpriseProjectId

    iotda:routingbacklogpolicy:queryList

    Querying the outbound push stack policy list

    list

    -

    g:EnterPRISEPROJECTID

    iotda:routingbacklogpolicy:update

    Modifying an outbound push stack policy

    write

    -

    g:EnterpriseProjectId

    iotda:routingflowcontrolpolicy:create

    Creating an outbound flow control policy

    write

    -

    g:EnterpriseProjectId

    iotda:routingflowcontrolpolicy:delete

    Deleting an outbound flow control policy

    write

    -

    g:EnterpriseProjectId

    iotda:routingflowcontrolpolicy:query

    Querying the flow control policy details

    read

    -

    g:EnterpriseProjectId

    iotda:routingflowcontrolpolicy:queryList

    Querying the outbound flow control policy list

    list

    -

    g:EnterpriseProjectId

    iotda:routingflowcontrolpolicy:update

    Updating an outbound flow control policy

    write

    -

    g:EnterpriseProjectId

    iotda:routingprivatelink:create

    Creating a private connection for a forwarding rule

    write

    -

    g:EnterpriseProjectId

    iotda:routingprivatelink:delete

    Deleting the private connection of a forwarding rule

    write

    -

    g:EnterpriseProjectId

    iotda:routingprivatelink:query

    Querying the private connection of a forwarding rule

    read

    -

    g:EnterpriseProjectId

    iotda:routingprivatelink:queryList

    Querying the private connection list of a forwarding rule

    list

    -

    g:EnterpriseProjectId

    iotda:routingrules:create

    Creating a rule triggering condition

    write

    app

    g:EnterpriseProjectId

    iotda:routingrules:delete

    Deleting a rule triggering condition

    write

    app

    g:EnterpriseProjectId

    iotda:routingrules:modify

    Modifying a rule triggering condition

    write

    app

    g:EnterpriseProjectId

    iotda:routingrules:query

    Querying a rule triggering condition

    read

    app

    g:EnterpriseProjectId

    iotda:routingrules:queryList

    Querying the rule triggering condition list

    list

    app

    g:EnterpriseProjectId

    iotda:routingrules:verifySql

    Verifying SQL validity

    write

    -

    g:EnterpriseProjectId

    iotda:rules:create

    Creating a device data rule

    write

    -

    g:EnterpriseProjectId

    iotda:rules:delete

    Deleting a rule

    write

    -

    g:EnterpriseProjectId

    iotda:rules:modify

    Modifying a rule

    write

    -

    g:EnterpriseProjectId

    iotda:rules:modifyStatus

    Modifying the rule status

    write

    -

    g:EnterpriseProjectId

    iotda:rules:query

    Querying a rule

    read

    -

    g:EnterpriseProjectId

    iotda:rules:queryList

    Querying the rule list

    list

    -

    g:EnterpriseProjectId

    iotda:scripts:create

    Uploading a JavaScript plugin script

    write

    app

    g:EnterpriseProjectId

    iotda:scripts:delete

    Uninstalling a JavaScript plugin script

    write

    app

    g:EnterpriseProjectId

    iotda:scripts:query

    Querying a JavaScript plugin script

    read

    app

    g:EnterpriseProjectId

    iotda:scripts:run

    Running a JavaScript plugin script

    write

    app

    g:EnterpriseProjectId

    iotda:securityprofile:create

    Creating a security situation awareness configuration

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:securityprofile:delete

    Deleting a security situation awareness configuration

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:securityprofile:query

    Querying a security situation awareness configuration

    read

    instance

    g:EnterpriseProjectId

    iotda:securityprofile:queryList

    Querying the security situation awareness configuration list

    list

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:securityprofile:update

    Updating a security situation awareness configuration

    write

    instance

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>

    iotda:servercertificate:create

    Creating an access certificate

    write

    -

    g:EnterpriseProjectId

    iotda:servercertificate:delete

    Deleting an access certificate

    write

    -

    g:EnterpriseProjectId

    iotda:servercertificate:query

    Querying an access certificate

    read

    -

    g:EnterpriseProjectId

    iotda:servercertificate:queryList

    Querying the access certificate list

    list

    -

    g:EnterpriseProjectId

    iotda:servercertificate:update

    Updating an access certificate

    write

    -

    g:EnterpriseProjectId

    iotda:shadow:config

    Configuring desired device shadow data

    write

    app

    g:EnterpriseProjectId

    iotda:shadow:delete

    Deleting device shadow data

    write

    app

    g:EnterpriseProjectId

    iotda:shadow:query

    Querying device shadow data

    read

    app

    g:EnterpriseProjectId

    iotda:simulator:delete

    Deleting a device simulator

    write

    app

    g:EnterpriseProjectId

    iotda:simulator:queryHistoryData

    Querying historical device simulator data

    list

    app

    g:EnterpriseProjectId

    iotda:simulator:register

    Registering a device simulator

    write

    app

    g:EnterpriseProjectId

    iotda:tags:bind

    Binding a tag

    tagging

    -

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>
    • g:TagKeys

    iotda:tags:queryResourceList

    Querying resources by tag

    list

    -

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>
    • g:TagKeys

    iotda:tags:unbind

    Unbinding a tag

    tagging

    -

    • g:EnterpriseProjectId
    • g:ResourceTag/<tag-key>
    • g:TagKeys

    iotda:topics:create

    Creating a custom topic

    write

    app

    g:EnterpriseProjectId

    iotda:topics:delete

    Deleting a custom topic

    write

    app

    g:EnterpriseProjectId

    iotda:topics:modify

    Modifying a custom topic

    write

    app

    g:EnterpriseProjectId

    iotda:topics:query

    Querying details about a custom topic

    read

    app

    g:EnterpriseProjectId

    iotda:topics:queryList

    Querying the list of custom topics

    list

    app

    g:EnterpriseProjectId

    iotda:tunnel:close

    Disabling a tunnel

    write

    -

    g:EnterpriseProjectId

    iotda:tunnel:create

    Creating a tunnel

    write

    -

    • g:EnterpriseProjectId
    • iotda:DeviceGroupId

    iotda:tunnel:delete

    Deleting a tunnel

    write

    -

    g:EnterpriseProjectId

    iotda:tunnel:query

    Querying a tunnel

    read

    -

    g:EnterpriseProjectId

    iotda:tunnel:queryList

    Querying the tunnel list

    list

    -

    g:EnterpriseProjectId

    Each API of IoTDA usually supports one or more actions. Table 2 lists the supported actions and dependencies.

    Table 2 Actions and dependencies supported by IoTDA APIs

    API

    Action

    Dependencies

    POST /v5/iot/{project_id}/auth/accesscode

    iotda:accesscode:create

    -

    POST /v5/iot/{project_id}/amqp-queues

    iotda:amqpqueue:create

    -

    DELETE /v5/iot/{project_id}/amqp-queues/{queue_id}

    iotda:amqpqueue:delete

    -

    POST /v5/iot/{project_id}/amqp-queues/{queue_id}/disconnect

    iotda:amqpqueue:disconnect

    -

    POST /v5/iot/{project_id}/amqp-queues/{queue_id}/detail-query

    iotda:amqpqueue:query

    -

    GET /v5/iot/{project_id}/amqp-queues

    iotda:amqpqueue:queryList

    -

    POST /v5/iot/{project_id}/certificates/app-cert

    iotda:appcacertificate:create

    -

    DELETE /v5/iot/{project_id}/certificates/app-cert/{id}

    iotda:appcacertificate:delete

    -

    GET /v5/iot/{project_id}/certificates/app-cert

    iotda:appcacertificate:queryList

    -

    PUT /v5/iot/{project_id}/certificates/app-cert/{id}

    iotda:appcacertificate:update

    -

    POST /v5/iot/{project_id}/apps

    iotda:app:create

    -

    DELETE /v5/iot/{project_id}/apps/{app_id}

    iotda:apps:delete

    -

    GET /v5/iot/{project_id}/apps/{app_id}

    iotda:apps:query

    -

    GET /v5/iot/{project_id}/apps

    iotda:apps:queryList

    -

    PUT /v5/iot/{project_id}/apps/{app_id}

    iotda:apps:update

    -

    GET /v5/iot/{project_id}/devices/{device_id}/async-commands/{command_id}

    iotda:asynccommands:query

    -

    GET /v5/iot/{project_id}/devices/{device_id}/async-commands

    iotda:asynccommands:queryList

    -

    POST /v5/iot/{project_id}/devices/{device_id}/async-commands

    iotda:asynccommands:send

    -

    POST /v5/iot/{project_id}/batchtask-files

    iotda:batchtaskfiles:create

    -

    DELETE /v5/iot/{project_id}/batchtask-files/{file_id}

    iotda:batchtaskfiles:delete

    -

    GET /v5/iot/{project_id}/batchtask-files

    iotda:batchtaskfiles:queryList

    -

    POST /v5/iot/{project_id}/batchtasks/{task_id}/confirm

    iotda:batchtasks:confirm

    -

    POST /v5/iot/{project_id}/batchtasks

    iotda:batchtasks:create

    -

    DELETE /v5/iot/{project_id}/batchtasks/{task_id}

    iotda:batchtasks:delete

    -

    GET /v5/iot/{project_id}/batchtasks/{task_id}

    iotda:batchtasks:query

    -

    GET /v5/iot/{project_id}/batchtasks

    iotda:batchtasks:queryList

    -

    POST /v5/iot/{project_id}/batchtasks/{task_id}/retry

    iotda:batchtasks:retry

    -

    POST /v5/iot/{project_id}/batchtasks/{task_id}/stop

    iotda:batchtasks:stop

    -

    POST /v5/iot/{project_id}/bridges

    iotda:bridge:create

    -

    DELETE /v5/iot/{project_id}/bridges/{bridge_id}

    iotda:bridge:delete

    -

    GET /v5/iot/{project_id}/bridges

    iotda:bridge:queryList

    -

    POST /v5/iot/{project_id}/bridges/{bridge_id}/reset-secret

    iotda:bridge:reset

    -

    POST /sps/portal/cigcodec/device

    iotda:bundle:create

    -

    GET /sps/portal/bundle/v1.3.0/apps/{app_id}/bundleInfo

    iotda:bundle:query

    -

    GET /sps/portal/cigcodec/historydevices

    iotda:bundle:queryList

    -

    PUT /sps/portal/cigcodec/device

    iotda:bundle:update

    -

    GET /sps/portal/cigcodec/device/{id}/mapping

    iotda:bundlemapping:query

    -

    PUT /sps/portal/cigcodec/device/{id}/mapping

    iotda:bundlemapping:save

    -

    GET /sps/portal/cigcodec/device/{id}/message

    iotda:bundlemessage:query

    -

    PUT /sps/portal/cigcodec/device/{id}/message

    iotda:bundlemessage:save

    -

    GET /v5/iot/{project_id}/certificates/{certificate_id}

    iotda:certificate:query

    -

    POST /v5/iot/{project_id}/certificates/{certificate_id}/action

    iotda:certificates:check

    -

    POST /v5/iot/{project_id}/certificates/{certificate_id}/debug

    iotda:certificates:debug

    -

    DELETE /v5/iot/{project_id}/certificates/{certificate_id}

    iotda:certificates:delete

    -

    GET /v5/iot/{project_id}/certificates

    iotda:certificates:queryList

    -

    PUT /v5/iot/{project_id}/certificates/{certificate_id}

    iotda:certificates:update

    -

    POST /v5/iot/{project_id}/certificates

    iotda:certificates:upload

    -

    POST /v5/iot/{project_id}/devices/{device_id}/commands

    iotda:commands:send

    -

    POST /v5/iot/{project_id}/iodbagent/tables/detail-query

    iotda:dbtable:query

    -

    POST /v5/iot/{project_id}/iodbagent/tables/list-query

    iotda:dbtable:queryList

    -

    POST /v5/iot/{project_id}/device-authentication-templates

    iotda:deviceauthenticationtemplate:create

    -

    POST /v5/iot/{project_id}/device-authentication-templates/{template_id}/debug

    iotda:deviceauthenticationtemplate:debug

    -

    DELETE /v5/iot/{project_id}/device-authentication-templates/{template_id}

    iotda:deviceauthenticationtemplate:delete

    -

    GET /v5/iot/{project_id}/device-authentication-templates/{template_id}

    iotda:deviceauthenticationtemplate:query

    -

    GET /v5/iot/{project_id}/device-authentication-templates

    iotda:deviceauthenticationtemplate:queryList

    -

    PUT /v5/iot/{project_id}/device-authentication-templates/{template_id}

    iotda:deviceauthenticationtemplate:update

    -

    POST /v5/iot/{project_id}/device-authorizers

    iotda:deviceauthorizers:create

    -

    DELETE /v5/iot/{project_id}/device-authorizers/{authorizer_id}

    iotda:deviceauthorizers:delete

    -

    GET /v5/iot/{project_id}/device-authorizers/{authorizer_id}

    iotda:deviceauthorizers:query

    -

    GET /v5/iot/{project_id}/device-authorizers

    iotda:deviceauthorizers:queryList

    -

    PUT /v5/iot/{project_id}/device-authorizers/{authorizer_id}

    iotda:deviceauthorizers:update

    -

    DELETE /v5/iot/{project_id}/device-certificates/{certificate_id}

    iotda:devicecertificates:delete

    -

    GET /v5/iot/{project_id}/device-certificates/{certificate_id}

    iotda:devicecertificates:query

    -

    POST /v5/iot/{project_id}/device-certificates/{certificate_id}/list-device

    iotda:devicecertificates:queryDeviceList

    -

    GET /v5/iot/{project_id}/device-certificates

    iotda:devicecertificates:queryList

    -

    PUT /v5/iot/{project_id}/device-certificates/{certificate_id}

    iotda:devicecertificates:update

    -

    GET /iodev/portal/authorized/v1.5.0/apps/{appId}/nbDevice/hexLogs/{id}

    iotda:devicedebugmessage:queryList

    -

    POST /iodev/portal/authorized/v1.5.0/apps/{appId}/nbDeviceData

    iotda:devicedebugmessage:send

    -

    POST /v5/iot/{project_id}/device-policies/{policy_id}/bind

    iotda:devicepolicy:bind

    -

    POST /v5/iot/{project_id}/device-policies

    iotda:devicepolicy:create

    -

    DELETE /v5/iot/{project_id}/device-policies/{policy_id}

    iotda:devicepolicy:delete

    -

    GET /v5/iot/{project_id}/device-policies/{policy_id}

    iotda:devicepolicy:query

    -

    GET /v5/iot/{project_id}/device-policies

    iotda:devicepolicy:queryList

    -

    GET /v5/iot/{project_id}/device-policies/{policy_id}/targets

    iotda:devicepolicy:queryTargets

    -

    POST /v5/iot/{project_id}/device-policies/{policy_id}/unbind

    iotda:devicepolicy:unbind

    -

    PUT /v5/iot/{project_id}/device-policies/{policy_id}

    iotda:devicepolicy:update

    -

    POST /v5/iot/{project_id}/device-proxies

    iotda:device-proxies:create

    -

    DELETE /v5/iot/{project_id}/device-proxies/{proxy_id}

    iotda:device-proxies:delete

    -

    PUT /v5/iot/{project_id}/device-proxies/{proxy_id}

    iotda:device-proxies:modify

    -

    GET /v5/iot/{project_id}/device-proxies/{proxy_id}

    iotda:device-proxies:query

    -

    GET /v5/iot/{project_id}/device-proxies

    iotda:device-proxies:queryList

    -

    POST /v5/iot/{project_id}/devices/{device_id}/change-gateway

    iotda:devices:changeGateway

    -

    DELETE /v5/iot/{project_id}/devices/{device_id}

    iotda:devices:delete

    -

    POST /v5/iot/{project_id}/devices/{device_id}/freeze

    iotda:devices:freeze

    -

    PUT /v5/iot/{project_id}/devices/{device_id}

    iotda:devices:modify

    -

    GET /v5/iot/{project_id}/devices/{device_id}

    iotda:devices:query

    -

    POST /v5/iot/{project_id}/devices/{device_id}/list-device-group

    iotda:devices:queryGroupList

    -

    GET /v5/iot/{project_id}/devices/{device_id}/list-data-url

    iotda:devices:queryHistoryData

    -

    GET /v5/iot/{project_id}/devices

    iotda:devices:queryList

    -

    POST /v5/iot/{project_id}/devices

    iotda:devices:register

    -

    POST /v5/iot/{project_id}/devices/{device_id}/reset-fingerprint

    iotda:devices:resetFingerprint

    -

    POST /v5/iot/{project_id}/devices/{device_id}/action

    iotda:devices:resetSecret

    -

    POST /v5/iot/{project_id}/devices/{device_id}/unfreeze

    iotda:devices:unfreeze

    -

    POST /v5/iot/{project_id}/domain-configurations

    iotda:domainconfiguration:create

    -

    DELETE /v5/iot/{project_id}/domain-configurations/{configuration_id}

    iotda:domainconfiguration:delete

    -

    GET /v5/iot/{project_id}/domain-configurations/{configuration_id}

    iotda:domainconfiguration:query

    -

    GET /v5/iot/{project_id}/domain-configurations

    iotda:domainconfiguration:queryList

    -

    PUT /v5/iot/{project_id}/domain-configurations/{configuration_id}

    iotda:domainconfiguration:update

    -

    POST /v5/iot/{project_id}/export-tasks

    iotda:exporttasks:create

    -

    DELETE /v5/iot/{project_id}/export-tasks/{export_task_id}

    iotda:exporttasks:delete

    -

    GET /v5/iot/{project_id}/export-tasks/{id}/file

    iotda:exporttasks:query

    -

    GET /v5/iot/{project_id}/export-tasks

    iotda:exporttasks:queryList

    -

    POST /v5/iot/{project_id}/device-group/{group_id}/action

    iotda:group:addDevice

    -

    POST /v5/iot/{project_id}/device-group

    iotda:group:create

    -

    DELETE /v5/iot/{project_id}/device-group/{group_id}

    iotda:group:delete

    -

    PUT /v5/iot/{project_id}/device-group/{group_id}

    iotda:group:modify

    -

    GET /v5/iot/{project_id}/device-group/{group_id}

    iotda:group:query

    -

    GET /v5/iot/{project_id}/device-group/{group_id}/devices

    iotda:group:queryDeviceList

    -

    GET /v5/iot/{project_id}/device-group

    iotda:group:queryList

    -

    POST /v5/iot/{project_id}/harmony-soft-bus

    iotda:harmonysoftbus:create

    -

    DELETE /v5/iot/{project_id}/harmony-soft-bus/{id}

    iotda:harmonysoftbus:delete

    -

    GET /v5/iot/{project_id}/harmony-soft-bus/{bus_id}

    iotda:harmonysoftbus:query

    -

    GET /v5/iot/{project_id}/harmony-soft-bus

    iotda:harmonysoftbus:queryList

    -

    POST /v5/iot/{project_id}/harmony-soft-bus/{id}/reset-bus-key

    iotda:harmonysoftbus:reset

    -

    POST /v5/iot/{project_id}/harmony-soft-bus/{id}/sync

    iotda:harmonysoftbus:sync

    -

    POST /v5/iot/{project_id}/devices/{device_id}/async-commands-history/count

    iotda:historycommands:queryCommandsCount

    -

    GET /v5/iot/{project_id}/devices/{deviceId}/async-commands-history

    iotda:historycommands:queryList

    -

    POST /v5/iot/{project_id}/iotda-instances

    iotda:instance:create

    -

    POST /v5/iot/{project_id}/instances/{instance_id}/outbound-channel

    iotda:instance:createOutBoundChannel

    -

    POST /v5/iot/{project_id}/instances/{instance_id}/protocol-adaptors

    iotda:instance:createProtocolAdaptor

    -

    DELETE /v5/iot/{project_id}/iotda-instances/{instance_id}

    iotda:instance:delete

    -

    DELETE /v5/iot/{project_id}/instances/{instance_id}/protocol-adaptors/{id}

    iotda:instance:deleteProtocolAdaptor

    -

    GET /v5/iot/{project_id}/instances/{instance_id}/tags

    iotda:instance:listTags

    -

    • POST /v5/iot/{project_id}/iotda-instances/{instance_id}/bind-tags
    • DELETE /v5/iot/{project_id}/iotda-instances/{instance_id}/unbind-tags

    iotda:instance:operateTag

    -

    GET /v5/iot/{project_id}/iotda-instances/{instance_id}

    iotda:instance:query

    -

    GET /v5/iot/{project_id}/iotda-instances

    iotda:instance:queryList

    -

    GET /v5/iot/{project_id}/instances/{instance_id}/outbound-channel

    iotda:instance:queryOutBoundChannelList

    -

    GET /v5/iot/{project_id}/instances/{instance_id}/protocol-adaptors/{id}

    iotda:instance:queryProtocolAdaptor

    -

    GET /v5/iot/{project_id}/instances/{instance_id}/protocol-adaptors

    iotda:instance:queryProtocolAdaptorList

    -

    POST /v5/iot/{project_id}/instances/{instance_id}/protocol-adaptors/{id}/query-logs

    iotda:instance:queryProtocolAdaptorLog

    -

    GET /v5/iot/{project_id}/iotda-instances/{instance_id}/tasks/{id}

    iotda:instance:queryTask

    -

    GET /v5/iot/{project_id}/iotda-instances/{instance_id}/tasks

    iotda:instance:queryTaskList

    -

    POST /v5/iot/{project_id}/iotda-instances/{instance_id}/tasks/{task_id}/retry

    iotda:instance:restart

    -

    • PUT /v5/iot/{project_id}/iotda-instances/{instance_id}
    • POST /v5/iot/{project_id}/iotda-instances/{instance_id}/resize
    • POST /v5/iot/{project_id}/iotda-instances/{instance_id}/change-charge-mode

    iotda:instance:update

    -

    PUT /v5/iot/{project_id}/instances/{instance_id}/protocol-adaptors/{id}

    iotda:instance:updateProtocolAdaptor

    -

    POST /v5/iot/{project_id}/service-integration/{type}/connect-config

    iotda:integration:create

    -

    DELETE /v5/iot/{project_id}/service-integration/{type}/connect-config/{id}

    iotda:integration:delete

    -

    GET /v5/iot/{project_id}/service-integration/{type}/connect-config

    iotda:integration:queryList

    -

    PUT /v5/iot/{project_id}/service-integration/{type}/connect-config/{id}

    iotda:integration:update

    -

    POST /v5/iot/{project_id}/broadcast-messages

    iotda:message:broadcast

    -

    POST /v5/iot/{project_id}/message-queues

    iotda:messagequeues:create

    -

    DELETE /v5/iot/{project_id}/message-queues/{queue_id}

    iotda:messagequeues:delete

    -

    GET /v5/iot/{project_id}/message-queues/{queue_id}

    iotda:messagequeues:query

    -

    GET /v5/iot/{project_id}/message-queues

    iotda:messagequeues:queryList

    -

    PUT /v5/iot/{project_id}/message-queues/{queue_id}

    iotda:messagequeues:update

    -

    DELETE /v5/iot/{project_id}/devices/{device_id}/messages/{message_id}

    iotda:messages:delete

    -

    GET /v5/iot/{project_id}/devices/{device_id}/messages/{message_id}

    iotda:messages:query

    -

    GET /v5/iot/{project_id}/devices/{device_id}/messages

    iotda:messages:queryList

    -

    POST /v5/iot/{project_id}/devices/{device_id}/messages

    iotda:messages:send

    -

    GET /v5/iot/{project_id}/monitor/device-config

    iotda:messagetrace:queryList

    -

    PUT /v5/iot/{project_id}/monitor/device-config/{device_id}

    iotda:messagetrace:update

    -

    DELETE /v5/iot/{project_id}/monitor/message-trace-data

    iotda:messagetracedata:delete

    -

    GET /v5/iot/{project_id}/monitor/message-trace-data

    iotda:messagetracedata:queryList

    -

    POST /v5/iot/{project_id}/file-storage/device

    iotda:obsbucket:create

    -

    GET /v5/iot/{project_id}/file-storage/device

    iotda:obsbucket:query

    -

    POST /sps/portal/bundle/v2.0.0/apps/{id}/defaultCIGAppId/bundlePackages/newSign

    iotda:offlinebundle:deploy

    -

    POST /sps/portal/cigcodec/device/deploy2

    iotda:onlinebundle:deploy

    -

    POST /v5/iot/{project_id}/ota-upgrades/modules

    iotda:otamodules:create

    -

    DELETE /v5/iot/{project_id}/ota-upgrades/modules/{module_id}

    iotda:otamodules:delete

    -

    GET /v5/iot/{project_id}/ota-upgrades/modules/{module_id}

    iotda:otamodules:query

    -

    GET /v5/iot/{project_id}/ota-upgrades/modules

    iotda:otamodules:queryList

    -

    PUT /v5/iot/{project_id}/ota-upgrades/modules/{module_id}

    iotda:otamodules:update

    -

    POST /v5/iot/{project_id}/ota-upgrades/packages

    iotda:otapackages:create

    -

    DELETE /v5/iot/{project_id}/ota-upgrades/packages/{package_id}

    iotda:otapackages:delete

    -

    GET /v5/iot/{project_id}/ota-upgrades/packages/{package_id}

    iotda:otapackages:query

    -

    GET /v5/iot/{project_id}/ota-upgrades/packages

    iotda:otapackages:queryList

    -

    POST /v5/iot/{project_id}/product-config

    iotda:productconfig:create

    -

    GET /v5/iot/{project_id}/product-config/{id}

    iotda:productconfig:query

    -

    GET /v5/iot/{project_id}/product-config

    iotda:productconfig:queryList

    -

    POST /v5/iot/{project_id}/product-functions

    iotda:productfunctions:create

    -

    DELETE /v5/iot/{project_id}/product-functions/{function_id}

    iotda:productfunctions:delete

    -

    GET /v5/iot/{project_id}/product-functions

    iotda:productfunctions:queryList

    -

    POST /v5/iot/{project_id}/products

    iotda:products:create

    -

    DELETE /v5/iot/{project_id}/products/{product_id}

    iotda:products:delete

    -

    PUT /v5/iot/{project_id}/products/{product_id}

    iotda:products:modify

    -

    GET /v5/iot/{project_id}/products/{product_id}

    iotda:products:query

    -

    GET /v5/iot/{project_id}/products

    iotda:products:queryList

    -

    PUT /v5/iot/{project_id}/devices/{device_id}/properties

    iotda:properties:modify

    -

    GET /v5/iot/{project_id}/devices/{device_id}/properties

    iotda:properties:query

    -

    POST /v5/iot/{project_id}/protocol-adaptors/images

    iotda:protocoladaptorimage:create

    -

    DELETE /v5/iot/{project_id}/protocol-adaptors/images/{id}

    iotda:protocoladaptorimage:delete

    -

    GET /v5/iot/{project_id}/protocol-adaptors/images

    iotda:protocoladaptorimage:queryList

    -

    PUT /v5/iot/{project_id}/protocol-adaptors/images/{id}

    iotda:protocoladaptorimage:update

    -

    POST /v5/iot/{project_id}/protocol-configs

    iotda:protocolconfigs:create

    -

    DELETE /v5/iot/{project_id}/protocol-configs/{protocol_id}

    iotda:protocolconfigs:delete

    -

    GET /v5/iot/{project_id}/protocol-configs/{protocol_id}

    iotda:protocolconfigs:query

    -

    GET /v5/iot/{project_id}/protocol-configs

    iotda:protocolconfigs:queryList

    -

    PUT /v5/iot/{project_id}/protocol-configs/{protocol_id}

    iotda:protocolconfigs:update

    -

    POST /v5/iot/{project_id}/provisioning-templates

    iotda:provisioningtemplate:create

    -

    DELETE /v5/iot/{project_id}/provisioning-templates/{template_id}

    iotda:provisioningtemplate:delete

    -

    GET /v5/iot/{project_id}/provisioning-templates/{template_id}

    iotda:provisioningtemplate:query

    -

    GET /v5/iot/{project_id}/provisioning-templates

    iotda:provisioningtemplate:queryList

    -

    PUT /v5/iot/{project_id}/provisioning-templates/{template_id}

    iotda:provisioningtemplate:update

    -

    POST /v5/iot/{project_id}/routing-rule/actions/{action_id}/clear-message

    iotda:routingactions:clearMessage

    -

    POST /v5/iot/{project_id}/routing-rule/actions

    iotda:routingactions:create

    -

    DELETE /v5/iot/{project_id}/routing-rule/actions/{action_id}

    iotda:routingactions:delete

    -

    PUT /v5/iot/{project_id}/routing-rule/actions/{action_id}

    iotda:routingactions:modify

    -

    GET /v5/iot/{project_id}/routing-rule/actions/{action_id}

    iotda:routingactions:query

    -

    GET /v5/iot/{project_id}/routing-rule/actions

    iotda:routingactions:queryList

    -

    POST /v5/iot/{project_id}/routing-rule/actions/{action_id}/stats-query

    iotda:routingactions:queryStats

    -

    POST /v5/iot/{project_id}/routing-rule/actions/{action_id}/send-message

    iotda:routingactions:verifyConnectivity

    -

    POST /v5/iot/{project_id}/routing-rule/backlog-policy

    iotda:routingbacklogpolicy:create

    -

    DELETE /v5/iot/{project_id}/routing-rule/backlog-policy/{id}

    iotda:routingbacklogpolicy:delete

    -

    GET /v5/iot/{project_id}/routing-rule/backlog-policy/{id}

    iotda:routingbacklogpolicy:query

    -

    GET /v5/iot/{project_id}/routing-rule/backlog-policy

    iotda:routingbacklogpolicy:queryList

    -

    PUT /v5/iot/{project_id}/routing-rule/backlog-policy/{id}

    iotda:routingbacklogpolicy:update

    -

    POST /v5/iot/{project_id}/routing-rule/flowcontrol-policy

    iotda:routingflowcontrolpolicy:create

    -

    DELETE /v5/iot/{project_id}/routing-rule/flowcontrol-policy/{policy_id}

    iotda:routingflowcontrolpolicy:delete

    -

    GET /v5/iot/{project_id}/routing-rule/flowcontrol-policy/{policy_id}

    iotda:routingflowcontrolpolicy:query

    -

    GET /v5/iot/{project_id}/routing-rule/flowcontrol-policy

    iotda:routingflowcontrolpolicy:queryList

    -

    PUT /v5/iot/{project_id}/routing-rule/flowcontrol-policy/{policy_id}

    iotda:routingflowcontrolpolicy:update

    -

    POST /v5/iot/{project_id}/routing-rule/private-links

    iotda:routingprivatelink:create

    -

    DELETE /v5/iot/{project_id}/routing-rule/private-links/{link_id}

    iotda:routingprivatelink:delete

    -

    GET /v5/iot/{project_id}/routing-rule/private-links/{link_id}

    iotda:routingprivatelink:query

    -

    GET /v5/iot/{project_id}/routing-rule/private-links

    iotda:routingprivatelink:queryList

    -

    POST /v5/iot/{project_id}/routing-rule/rules

    iotda:routingrules:create

    -

    DELETE /v5/iot/{project_id}/routing-rule/rules/{rule_id}

    iotda:routingrules:delete

    -

    PUT /v5/iot/{project_id}/routing-rule/rules/{rule_id}

    iotda:routingrules:modify

    -

    GET /v5/iot/{project_id}/routing-rule/rules/{rule_id}

    iotda:routingrules:query

    -

    GET /v5/iot/{project_id}/routing-rule/rules

    iotda:routingrules:queryList

    -

    POST /v5/iot/{project_id}/routing-rule/check-sql

    iotda:routingrules:verifySql

    -

    POST /v5/iot/{project_id}/rules

    iotda:rules:create

    -

    DELETE /v5/iot/{project_id}/rules/{rule_id}

    iotda:rules:delete

    -

    PUT /v5/iot/{project_id}/rules/{rule_id}

    iotda:rules:modify

    -

    PUT /v5/iot/{project_id}/rules/{rule_id}/status

    iotda:rules:modifyStatus

    -

    GET /v5/iot/{project_id}/rules/{rule_id}

    iotda:rules:query

    -

    GET /v5/iot/{project_id}/rules

    iotda:rules:queryList

    -

    POST /v5/iot/{project_id}/products/{product_id}/scripts

    iotda:scripts:create

    -

    DELETE /v5/iot/{project_id}/products/{product_id}/scripts

    iotda:scripts:delete

    -

    GET /v5/iot/{project_id}/products/{product_id}/scripts

    iotda:scripts:query

    -

    POST /v5/iot/{project_id}/products/{product_id}/scripts/action

    iotda:scripts:run

    -

    POST /v5/iot/{project_id}/security-profiles

    iotda:securityprofile:create

    -

    DELETE /v5/iot/{project_id}/security-profiles/{profile_id}

    iotda:securityprofile:delete

    -

    GET /v5/iot/{project_id}/security-profiles/{profile_id}

    iotda:securityprofile:query

    -

    GET /v5/iot/{project_id}/security-profiles

    iotda:securityprofile:queryList

    -

    PUT /v5/iot/{project_id}/security-profiles/{profile_id}

    iotda:securityprofile:update

    -

    POST /v5/iot/{project_id}/server-certificates

    iotda:servercertificate:create

    -

    DELETE /v5/iot/{project_id}/server-certificates/{server_certificate_id}

    iotda:servercertificate:delete

    -

    GET /v5/iot/{project_id}/server-certificates/{server_certificate_id}

    iotda:servercertificate:query

    -

    GET /v5/iot/{project_id}/server-certificates

    iotda:servercertificate:queryList

    -

    PUT /v5/iot/{project_id}/server-certificates/{server_certificate_id}

    iotda:servercertificate:update

    -

    PUT /v5/iot/{project_id}/devices/{device_id}/shadow

    iotda:shadow:config

    -

    DELETE /v5/iot/{project_id}/devices/{device_id}/shadow

    iotda:shadow:delete

    -

    GET /v5/iot/{project_id}/devices/{device_id}/shadow

    iotda:shadow:query

    -

    DELETE /iodev/portal/authorized/v1.5.0/apps/{appId}/simulator/devices/{deviceId}

    iotda:simulator:delete

    -

    GET /iodev/portal/authorized/v1.5.0/apps/{appId}/simulator/devices/{deviceId}/historyData

    iotda:simulator:queryHistoryData

    -

    PUT /iodev/portal/authorized/v1.5.0/apps/{appId}/nbDevices

    iotda:simulator:register

    -

    POST /v5/iot/{project_id}/tags/bind-resource

    iotda:tags:bind

    -

    POST /v5/iot/{project_id}/tags/query-resources

    iotda:tags:queryResourceList

    -

    POST /v5/iot/{project_id}/tags/unbind-resource

    iotda:tags:unbind

    -

    POST /v5/iot/{project_id}/topics

    iotda:topics:create

    -

    DELETE /v5/iot/{project_id}/topics/{id}

    iotda:topics:delete

    -

    PUT /v5/iot/{project_id}/topics/{id}

    iotda:topics:modify

    -

    GET /v5/iot/{project_id}/topics/{topic_id}

    iotda:topics:query

    -

    GET /v5/iot/{project_id}/topics

    iotda:topics:queryList

    -

    PUT /v5/iot/{project_id}/tunnels/{id}

    iotda:tunnel:close

    -

    POST /v5/iot/{project_id}/tunnels

    iotda:tunnel:create

    -

    DELETE /v5/iot/{project_id}/tunnels/{id}

    iotda:tunnel:delete

    -

    GET /v5/iot/{project_id}/tunnels/{id}

    iotda:tunnel:query

    -

    GET /v5/iot/{project_id}/tunnels

    iotda:tunnel:queryList

    -

Resources

A resource type (Resource) defines the resources on which an identity policy takes effect. In Table 3, if a specific operation has an associated resource type, then in the identity policy statement containing that operation, the policy will only take effect on the specified resource when the corresponding resource URN is provided. If no resource type is defined, the default value of Resource is *, meaning the policy applies to all resources. In addition, you can set conditions in the identity policy to further refine and restrict the resource type.

Table 3 Resource types supported by IoTDA

Resource Type

URN

app

iotda:<region>:<account-id>:app:<app-id>

instance

iotda:<region>:<account-id>:instance:<instance-id>

Conditions

A Condition element lets you specify conditions for when an identity policy is in effect. It contains condition keys and operators.

  • The condition key that you specify can be a global condition key or a service-specific condition key.
    • Global condition keys (with the g: prefix) apply to all actions. Cloud services do not need to provide user identity information. Instead, the system automatically obtains such information and authenticates users. For details, see Global Condition Keys.
    • Service-specific condition keys (with the abbreviation of a service name plus a colon as the prefix, for example, iotda:) only apply to operations of the IoTDA service. For details, see Table 4.
    • The number of values associated with a condition key in the request context of an API call makes the condition key single-valued or multivalued. Single-valued condition keys have at most one value in the request context of an API call. Multivalued condition keys can have multiple values in the request context of an API call. For example, a request can originate from at most one VPC endpoint, so g:SourceVpce is a single-valued condition key. You can tag resources and include multiple tag key-value pairs in a request, so g:TagKeys is a multivalued condition key.
  • A condition operator, condition key, and a condition value together constitute a complete condition statement. An identity policy can be applied only when its request conditions are met. For supported condition operators, see operators.

The following table lists the condition keys that you can define in identity policies for IoTDA. You can include these condition keys to specify conditions for when your identity policy is in effect.

Table 4 Service-specific condition keys supported by IoTDA

Service-specific Condition Key

Type

Single-valued/Multivalued

Description

iotda:AllowPublicAccess

Boolean

Single-valued

Filters requests based on the public network access configuration set during instance modification.

iotda:AllowPublicForwarding

Boolean

Single-valued

Filters requests based on the public network forwarding configuration set during instance modification.

iotda:DomainConfiguration

Boolean

Single-valued

Filters requests based on the domain name configuration set during instance modification.

iotda:DeviceGroupId

String

Single-valued

Filters requests based on the group to which the device belongs, which is set during tunnel creation.

iotda:HttpForwardingEnableSSL

Boolean

Single-valued

Filters requests based on the configuration of enabling the TLS protocol for HTTP channels, which is set during rule action creation or modification.

iotda:HttpForwardingEnableAuthentication

Boolean

Single-valued

Filters requests based on the configuration of enabling token authentication for HTTP channels, which is set during rule action creation or modification.

iotda:DMSKafkaForwardingEnableAuthentication

Boolean

Single-valued

Filters requests based on the configuration of enabling the SCRAM-SHA-512 mechanism for DMS for Kafka channels, which is set during rule action creation or modification.

iotda:DMSKafkaForwardingEnableSSL

Boolean

Single-valued

Filters requests based on the configuration of enabling the TLS protocol for DMS for Kafka channels, which is set during rule action creation or modification.

iotda:MysqlForwardingEnableSSL

Boolean

Single-valued

Filters requests based on the configuration of enabling the TLS protocol for MySQL channels, which is set during rule action creation or modification.

iotda:PostgresqlForwardingEnableSSL

Boolean

Single-valued

Filters requests based on the configuration of enabling the TLS protocol for PostgreSQL channels, which is set during rule action creation or modification.

iotda:InfluxDBForwardingEnableSSL

Boolean

Single-valued

Filters requests based on the configuration of enabling the TLS protocol for InfluxDB channels, which is set during rule action creation or modification.

iotda:MRSKafkaForwardingEnableAuthentication

Boolean

Single-valued

Filters requests based on the configuration of enabling Kerberos authentication for MRS Kafka channels, which is set during rule action creation or modification.

iotda:DMSRocketMQForwardingEnableSSL

Boolean

Single-valued

Filters requests based on the configuration of enabling the TLS protocol for RocketMQ channels, which is set during rule action creation or modification.

iotda:MongoDBForwardingEnableSSL

Boolean

Single-valued

Filters requests based on the configuration of enabling the TLS protocol for MongoDB channels, which is set during rule action creation or modification.

iotda:ProtocolConfigEnableSSL

Boolean

Single-valued

Filters requests based on the configuration of enabling the TLS protocol for generic-protocol channels, which is set during generic-protocol configuration creation or modification.