The following tables describe the API operations available for use in IoT Platform.

Products

API Description
CreateProduct Creates a product.
UpdateProduct Modifies the information about a product.
QueryProductList Queries products.
QueryProduct Queries the details of a product.
DeleteProduct Deletes a product.
CreateProductTags Creates product tags.
UpdateProductTags Modifies the tags of a product.
DeleteProductTags Deletes product tags.
ListProductTags Queries all tags of a product.
ListProductByTags Queries products by tag.
UpdateProductFilterConfig Modifies the deduplication rule for property messages that are submitted by devices of a product.
ReleaseProduct Publishes a product.
CancelReleaseProduct Unpublishes a product.

Devices

API Description
RegisterDevice Registers a device.
QueryClientIds Queries the ClientIDs of a device. This API operation is supported for preregistration-free unique-certificate-per-product verification.
TransformClientId Specifies a valid ClientID for a device to prevent unauthorized logons if the device has multiple ClientIDs. This API operation is supported for preregistration-free unique-certificate-per-product verification.
DeleteClientIds Deletes all ClientIDs of a device if the number of ClientIDs exceeds the limit (5). This API operation is supported for preregistration-free unique-certificate-per-product verification.
QueryDeviceInfo Queries the basic information about a device. The information includes the device ID, device certificate, and alias.
QueryDeviceDetail Queries the details of a device.
BatchQueryDeviceDetail Queries the details of multiple devices.
QueryDevice Queries the devices of a product.
DeleteDevice Deletes a device.
GetDeviceStatus Queries the status of a device.
BatchGetDeviceState Queries the statuses of devices.
DisableThing Disables a device.
EnableThing Enables a device that is disabled.
ResetThing Resets a device.
BatchCheckDeviceNames Specifies names for multiple devices at a time. IoT Platform checks whether the names are valid.
BatchRegisterDeviceWithApplyId Registers multiple devices by using an application ID at a time.
BatchRegisterDevice Registers multiple devices at a time.
QueryBatchRegisterDeviceStatus Queries the processing status of registration for multiple devices.
QueryPageByApplyId Queries multiple devices by application ID.
SaveDeviceProp Creates tags for a device.
QueryDeviceProp Queries the tags of a device.
DeleteDeviceProp Deletes the tags of a device.
GetThingTopo Queries the sub-devices of a gateway device.
NotifyAddThingTopo Notifies a gateway device to establish a topological relationship with a sub-device.
BatchAddThingTopo Establishes topological relationships between multiple sub-devices and a gateway device.
RemoveThingTopo Removes the topological relationships of a device.
QueryDeviceStatistics Queries device statistics.
GetGatewayBySubDevice Queries the information about a gateway device based on sub-device information.
QueryDeviceByTags Queries devices by tag.
QueryDeviceFileList Queries the files that are uploaded to IoT Platform from a device.
QueryDeviceFile Queries the details of a file that is uploaded to IoT Platform from a device.
DeleteDeviceFile Deletes a file that is uploaded to IoT Platform from a device.
BatchUpdateDeviceNickname Modifies the aliases of multiple devices.
QueryDeviceByStatus Queries devices by status.
ListOTAModuleVersionsByDevice Queries the versions of the over-the-air (OTA) module. The versions are submitted by devices.

Device distribution

API Description
CreateDeviceDistributeJob Creates a task to distribute devices. The product to which the devices belong is also distributed.
CreateProductDistributeJob Creates a task to distribute a product to an instance.
QueryDeviceDistributeDetail Queries the result of a device distribution task.
QueryDeviceDistributeJob Queries the details of a device distribution task.
ListDeviceDistributeJob Queries device distribution tasks.
DeleteDeviceDistributeJob Deletes a device distribution task.
ListDistributedDevice Queries distributed devices.
ListDistributedProduct Queries distributed products.

Device groups

API Description
CreateDeviceGroup Creates a device group.
DeleteDeviceGroup Deletes a device group.
UpdateDeviceGroup Modifies the information about a device group.
QueryDeviceGroupInfo Queries the details of a device group.
QueryDeviceGroupList Queries all device groups.
BatchAddDeviceGroupRelations Adds devices to a device group.
BatchDeleteDeviceGroupRelations Removes devices from a device group.
SetDeviceGroupTags Creates tags for a device group or updates the tags of a device group.
QueryDeviceGroupTagList Queries the tags of a device group.
QueryDeviceGroupByDevice Queries the groups to which a device belongs.
QuerySuperDeviceGroup Queries the details of a parent group by sub-group ID.
QueryDeviceListByDeviceGroup Queries devices in a device group.
QueryDeviceGroupByTags Queries device groups by tag.

Thing Specification Language (TSL) models

API Description
CreateThingModel Adds features or extended information to the TSL model of a product.
UpdateThingModel Modifies a feature or extended information about the TSL model for a product.
QueryThingModel Queries the details of a TSL model for a product.
CopyThingModel Copies the TSL model of a product to a destination product.
PublishThingModel Publishes the TSL model of a product.
DeleteThingModel Removes a feature from the TSL model of a product.
ListThingTemplates Queries all product categories that are predefined in IoT Platform.
GetThingTemplate Queries the standard TSL model information about a category.
ListThingModelVersion Queries the TSL model versions of a product.
GetThingModelTsl Queries the TSL model of a product.
ImportThingModelTsl Imports a TSL model to a product. Extended information cannot be imported.
QueryThingModelPublished Queries the details of a published TSL model for a product.
GetThingModelTslPublished Queries the basic information about a published TSL model for a product.
QueryThingModelExtendConfig Queries the extended information about the TSL model for a product.
QueryThingModelExtendConfigPublished Queries the extended information about a published TSL model.
CreateThingScript Submits a data parsing script for a product.
UpdateThingScript Modifies a data parsing script for a product.
GetThingScript Queries a data parsing script for a product.

Use of TSL models

API Description
SetDeviceProperty Configures properties for a device.
SetDevicesProperty Configures properties for multiple devices at a time.
InvokeThingService Calls a service on a device.
InvokeThingsService Calls a service on multiple devices at a time.
QueryDevicePropertyData Queries the property records of a device.
QueryDevicePropertiesData Queries the records of multiple properties of a device.
QueryDeviceEventData Queries the event records of a device.
QueryDeviceServiceData Queries the service records of a device.
SetDeviceDesiredProperty Specifies multiple desired property values for a device at a time.
QueryDeviceDesiredProperty Queries the desired property values of a device.
QueryDevicePropertyStatus Queries the property snapshots of a device.
QueryDeviceOriginalPropertyStatus Queries the original property snapshots of a device.
QueryDeviceOriginalPropertyData Queries the original property records of a device.
QueryDeviceOriginalEventData Queries the original event records of a device.
QueryDeviceOriginalServiceData Queries the original service records of a device.

Data forwarding (old version)

API Description
ListRule Queries rules.
CreateRule Creates a rule.
GetRule Queries the details of a rule.
UpdateRule Modifies a rule.
DeleteRule Deletes a rule.
ListDataSourceItem Queries the topics of a data source in the rules engine.
ListRuleActions Queries rule actions.
GetRuleAction Queries the details of a rule action.
CreateRuleAction Creates a rule action.
UpdateRuleAction Modifies a rule action.
DeleteRuleAction Deletes a rule action.
StartRule Enables a rule.
StopRule Disables a rule.

Data forwarding (new version)

API Description
CreateParser Creates a parser.
UpdateParser Updates the name and description of a parser.
ListParser Queries the details of parsers. The details include the basic information, status, creation time, and modification time.
GetParser Queries the details of a parser. The details include the basic information, parsing script, status, and associated data source.
DeleteParser Deletes a parser.
CreateParserDataSource Creates a data source from which you want to forward data.
UpdateParserDataSource Updates the name and description of a data source.
ListParserDataSource Queries all data sources.
GetParserDataSource Queries the details of a data source.
DeleteParserDataSource Deletes a data source.
CreateDataSourceItem Adds a topic to a data source.
ListDataSourceItem Queries the topics of a data source.
DeleteDataSourceItem Disassociates a topic from a data source.
CreateDestination Creates a data destination to which you want to forward data.
UpdateDestination Updates the name, type, and description of a data destination.
ListDestination Queries data destinations.
GetDestination Queries the details of a data destination.
DeleteDestination Deletes a data destination.
AttachParserDataSource Associates a parser with a data source.
ListParserDestination Queries the data destinations that are associated with a parser.
DetachParserDataSource Disassociates a parser from a data source.
AttachDestination Associates a parser with a data destination.
DetachDestination Disassociates a parser from a data destination.
SaveScript Modifies and saves the draft of a parser script.
PublishScript Publishes the script of a parser.
StartParser Enables a parser.
StopParser Disables a parser.

Topics

API Description
CreateProductTopic Creates a custom topic category for a product.
UpdateProductTopic Modifies a custom topic category.
QueryProductTopic Queries the custom topic categories of a product.
DeleteProductTopic Deletes a custom topic category.
CreateTopicRouteTable Creates a route table for a topic.
QueryTopicRouteTable Queries the route table of a topic.
QueryTopicReverseRouteTable Queries the reverse route table of a topic.
DeleteTopicRouteTable Deletes the route table of a topic.

Server-side subscription

API Description
CreateSubscribeRelation Creates a Message Service (MNS) server-side subscription or Advanced Message Queuing Protocol (AMQP) server-side subscription.
UpdateSubscribeRelation Modifies an MNS server-side subscription or an AMQP server-side subscription.
QuerySubscribeRelation Queries the details of an MNS server-side subscription or an AMQP server-side subscription.
DeleteSubscribeRelation Deletes an MNS server-side subscription or an AMQP server-side subscription.
CreateConsumerGroup Creates a consumer group to create an AMQP server-side subscription.
UpdateConsumerGroup Changes the name of a consumer group.
QueryConsumerGroupByGroupId Queries the details of a consumer group by consumer group ID.
QueryConsumerGroupList Queries all consumer groups of an account, or performs a fuzzy search by consumer group name.
QueryConsumerGroupStatus Queries the status of a consumer group when AMQP server-side subscription is enabled. The status information includes the online client information, message consumption rate, number of accumulated messages, and most recent message consumption time.
ResetConsumerGroupPosition Clears the accumulated messages of a consumer group when an AMQP server-side subscription is enabled.
DeleteConsumerGroup Deletes a consumer group.
CreateConsumerGroupSubscribeRelation Adds a consumer group to an AMQP server-side subscription.
DeleteConsumerGroupSubscribeRelation Removes a consumer group from an AMQP server-side subscription.

Messaging

API Description
RRpc Sends a request to a device and synchronously receives a response from the device.
PubBroadcast Broadcasts a message to all devices of a product or all devices that subscribe to a topic.
Pub Publishes a message to a device by using a custom topic.
BatchPub Publishes a message to multiple devices of a product by using a custom topic.
SubscribeTopic Subscribes to a topic for a device.
QueryDeviceSubTopic Queries the topics to which a device subscribes.

Device shadows

API Description
GetDeviceShadow Queries the shadow information about a device.
UpdateDeviceShadow Modifies the shadow information about a device.

OTA updates

API Description
GenerateOTAUploadURL Generates the URL and details of an update package to be uploaded to OSS.
GenerateDeviceNameListURL Generates the URL and details of a device list file to be uploaded to OSS. When you create a static update batch, you can specify devices to be updated in a device list file.
CreateOTAFirmware Adds an update package.
DeleteOTAFirmware Removes an update package.
ListOTAFirmware Queries update packages.
QueryOTAFirmware Queries the details of an update package.
CreateOTAVerifyJob Creates a verification batch for an update package.
CreateOTAStaticUpgradeJob Creates a static update batch.
CreateOTADynamicUpgradeJob Creates a dynamic update batch.
ListOTAJobByFirmware Queries the update batches of an update package.
ListOTAJobByDevice Queries the update batches of an update package by device.
ListOTATaskByJob Queries the update tasks of a device by update batch.
QueryOTAJob Queries the details of an update batch.
CancelOTAStrategyByJob Cancels an update policy that is associated with a dynamic update batch.
CancelOTATaskByDevice Cancels the pending device update tasks of an update package.
CancelOTATaskByJob Cancels the device update tasks of an update batch.
CreateOTAModule Creates an OTA module for a product.
UpdateOTAModule Modifies the alias and description of an OTA module.
DeleteOTAModule Removes a custom OTA module.
ListOTAModuleByProduct Queries the OTA modules of a product.
ConfirmOTATask Confirms the device update tasks that are in the pending confirmation status.
ListOTAUnfinishedTaskByDevice Queries the uncompleted device update tasks of a device.