This article describes the error codes that are returned by IoT Platform API operations. For more information about how to fix errors that are related to request parameters, see operation-specific request parameters in the API documentation. These errors include the invalid data format, invalid data length, and invalid value.
System error codes
An error code that starts with iot.system
indicates a system error.
Error code | Description |
---|---|
iot.system.SystemException | A system error occurred.
Try again later. |
Common error codes
An error code that starts with iot.common
indicates a common error.
Error code | Description |
---|---|
iot.common.InvalidPageParams | The specified page size or page number is invalid.
For more information, see the pagination-related parameters in the API documentation, for example, PageSize. |
iot.common.InvalidTenant | The specified tenant is invalid.
You must specify a valid Alibaba Cloud account and grant the required permissions to the account. |
iot.common.QueryDeviceActionError | Failed to query the device.
Check whether the request parameters are valid. Try again later. |
iot.common.QueryDevicePropertyActionError | Failed to query device properties.
Check whether the request parameters are valid. Try again later. |
iot.common.QueryProductActionError | Failed to query the product.
Check whether the request parameters are valid. Try again later. |
iot.common.QueryProductCountActionError | Failed to query the total number of products.
Check whether the request parameters are valid. Try again later. |
iot.common.RamActionPermissionDeny | The specified Resource Access Management (RAM) user does not have the required permissions.
For more information, see Grant permissions to a RAM user. |
iot.common.AuthActionPermissionDeny | Authentication failed.
This error may occur when the specified device information does not match the account. You must specify a valid AccessKey pair and device information. |
Product-related error codes
An error code that start with iot.prod
indicates a product-related error.
Error code | Description |
---|---|
iot.prod.AlreadyExistedProductName | The product name already exists. Each product name must be unique in an Alibaba Cloud account. |
iot.prod.CreateProductFailed | Failed to create the product.
Check whether the request parameters are valid. Try again later. |
iot.prod.CreateProductTopicFailed | Failed to create the topic category.
Check whether the request parameters are valid. Try again later. |
iot.prod.InvalidAliyunCommodityCode | The value of the AliyunCommodityCode parameter is invalid.
Valid values for the AliyunCommodityCode parameter are iothub_senior and iothub. |
iot.prod.InvalidFormattedCatId | The CategoryId parameter is invalid. |
iot.prod.InvalidFormattedProductkey | The format of the ProductKey parameter is invalid.
Check the value of the ProductKey parameter. |
iot.prod.InvalidFormattedProductName | The format of the product name is invalid.
For more information about the format of product names, see CreateProduct. |
iot.prod.LongProductDesc | The length of the product description exceeds the limit.
The description must be 1 to 100 characters in length. |
iot.prod.InvalidNodeType | The node type of the product is invalid.
For more information about supported node types, see CreateProduct. |
iot.prod.NotExistedProduct | The product does not exist.
The value of the ProductKey parameter does not exist in the account. |
iot.prod.NotSeniorProduct | The product does not support Thing Specification Language (TSL) models. The TSL model feature is not enabled for the product when the product is created. |
iot.prod.NullProductKey | You must specify a valid product key. |
iot.prod.NullProductName | You must specify a valid product name. |
iot.prod.ProductCountExceedMax | The total number of products exceeds the limit.
Each Alibaba Cloud account can have a maximum of 1,000 products. |
iot.prod.QueryDeviceCountActionError | Failed to query the number of devices that belong to the product.
You must specify valid parameters. Try again later. |
iot.prod.QueryProductAbilitiesFailed | Failed to query product features.
You must specify valid parameters, for example, check value of the Identifier parameter. |
iot.prod.QueryProductAbilityFailed | Failed to query product features.
You must check whether request parameters are validrequest parameter, for example, check value of the Identifier parameter. |
iot.prod.QueryProductListActionError | Failed to query products.
Check whether the request parameters are valid. Try again later. |
iot.prod.UpdateProductFailed | Failed to query the product information.
Check whether the request parameters are valid. Try again later. |
Device-related error codes
An error code that starts with iot.device
or iot.devicesearch
indicates a device-related error.
Error code | Description |
---|---|
iot.device.AddTopoRelationFailed | Failed to add the topological relationship.
Check whether the request parameters are valid. Try again later. |
iot.device.AlreadyExistedDeviceName | The device name already exists.
Each device name must be unique in the product. |
iot.device.ApplyManyDevicesFailed | Failed to create devices in batches.
Check whether the request parameters are valid. Try again later. |
iot.device.CreateDeviceFailed | Failed to create the device.
Check whether the request parameters are valid. Try again later. |
iot.device.CreateDeviceTaskIsRunning | The device creation task is running. |
iot.device.DeviceApplyIsNotFound | The application form does not exist.
You must specify a valid value for the ApplyId parameter. The value must be the same as the value of the ApplyId parameter that is returned after you call the BatchCheckDeviceNames API operation. |
iot.device.DeviceCountExceeded | The number of devices that you want to create at a time exceeds the limit.
You can create a maximum of 1,000 devices each time you call the API operation. |
iot.device.DeleteDeviceFailed | Failed to delete the device.
Check whether the request parameters are valid. Try again later. |
iot.device.DeleteDevicePropertyFailed | Failed to delete the device attribute.
Check whether the request parameters are valid. Try again later. |
iot.device.DisableDeviceFailed | Failed to disable the device.
Check whether the request parameters are valid. Try again later. |
iot.device.EnableDeviceFailed | Failed to enable the device.
Check whether the request parameters are valid. Try again later. |
iot.device.InactiveDevice | The device is in the inactive state. This indicates that the device has never been connected to IoT Platform. |
iot.device.InvalidFormattedApplyId | The ApplyId parameter is invalid.
The value must be the same as the value of the ApplyId parameter that is returned after you call the BatchCheckDeviceNames API operation. |
iot.device.IncorrentDeviceApplyInfo | The device application information is invalid.
You must specify valid parameters, such as the ApplyId parameter. |
iot.device.InvalidFormattedDeviceName | The format of the device name is invalid.
For more information about supported formats, see RegisterDevice. |
iot.device.InvalidDeviceNickNameExisted | An invalid device alias exists in the list of device names.
For more information, see the list of returned invalid device aliases. |
iot.device.InvalidFormattedDevicePropertyKey | The format of the device property identifier is invalid.
For more information about the support formats for devices properties, see the API documentation. |
iot.device.InvalidFormattedDevicePropertiesString | The format of the device property is invalid.
Check whether the request parameters are valid. Try again later. |
iot.device.InvalidIoTId | The device ID is invalid.
You must call the QueryDeviceDetail or QueryDevice API operation to view the valid value of the IotId parameter. You can use a combination of the product key and device name to replace the value of the IotId parameter. |
iot.device.InvalidTimeBucket | The specified time range is invalid.
You must specify valid parameters based on the API documentation.
|
iot.device.InvokeThingServiceFailed | Failed to invoke the service of the device.
You must check whether request parameters are invalid, for example, check the format and value of the Args parameter. |
iot.device.LongDevicePropertiesString | The length of the device property exceeds the limit.
For more information about limits, see the API documentation. |
iot.device.NoneDeviceNameElement | The device name list is empty. |
iot.device.NoneDeviceProperties | You must specify a valid device property.
Check whether the identifier of the property is same as the identifier that is defined in the TSL model. |
iot.device.NotExistedDevice | The specified sub-device does not exist.
The value of the specified IotId, ProductKey, or DeviceName parameter is invalid. You must call the QueryDeviceDetail or QueryDevice API operation to view the valid value. |
iot.device.NullApplyId | You must specify a valid application ID. |
iot.device.NullDeviceName | The name of the business unit. This parameter cannot be empty. |
iot.device.NullDevicePropertyKey | You must specify a valid property name for the device. |
iot.device.NullDevicePropertiesString | You must specify a valid property for the device. |
iot.device.QueryDeviceApplyActionError | Failed to query the information of the application form.
Check whether the request parameters are valid. Try again later. |
iot.device.QueryDeviceAttrDataHistoryFailed | Failed to query the historical records of the device property.
Check whether the request parameters are valid. Try again later. |
iot.device.QueryDeviceAttrStatusFailed | Failed to query the status of the device property.
Check whether the request parameters are valid. Try again later. |
iot.device.QueryDeviceEventHistoryFailed | Failed to query invocation records of the device event.
Check whether the request parameters are valid. Try again later. |
iot.device.QueryDeviceListActionError | Failed to query devices.
You must specify valid parameters. Try again later. |
iot.device.QueryDeviceServiceHistoryFailed | Failed to query the invocation records of the device service.
Check whether the request parameters are valid. Try again later. |
iot.device.QueryDeviceStatisticsFailed | Failed to query the statistics of the device.
Check whether the request parameters are valid. Try again later. |
iot.device.QueryDeviceStatusFailed | Failed to query the status of the device.
Check whether the request parameters are valid. Try again later. |
iot.device.QueryTopoRelationFailed | Failed to query topological relationships.
Check whether the request parameters are valid. For example, if the value of the PageSize parameter exceeds a limit of 50, the error occurs. |
iot.device.RemoveTopoRelationFailed | Failed to remove the topological relationship.
Check whether the request parameters are valid. Try again later. |
iot.device.SaveOrUpdateDevicePropertiesFailed | Failed to create or modify the device property.
Check whether the request parameters are valid. Try again later. |
iot.device.SetDevicePropertyFailed | Failed to set the device property.
You must check whether the value and format of the Items parameter are valid and the specified property is read/write. |
iot.device.TooManyDevicePropertiesPerTime | The number of the specified properties exceeds the limit.
For more information about limits, see the API documentation. |
iot.device.TopoRelationCountExceeded | The number of the specified topological relationships exceeds the limit.
For more information about the limits on the numbers of gateways and sub-devices, see Limits. |
iot.device.VerifyDeviceFailed | Failed to authenticate the device.
You must specify valid parameters. Try again later. |
iot.devicesearch.InvalidSQLError | The SQL statement is invalid. |
iot.devicesearch.InvalidSQLOffsetError | The SQL offset is invalid. |
iot.devicesearch.InvalidSQLFieldError | The SQL statement includes an invalid field name. |
iot.devicesearch.InvalidSQLConditionError | The number of SQL conjunctions exceeds the limit. |
iot.devicesearch.InvalidSQLOrderError | The SQL collation is invalid. |
iot.devicesearch.InvalidSQLOperatorTypeError | The SQL operator does not match the data type. |
iot.devicesearch.InvalidSQLParamError | The SQL syntax is invalid. |
Device group-related error codes
An error code starts with iot.group
indicates a device group-related error.
Error code | Description |
---|---|
iot.group.NullGroupId | You must specify a valid group ID. |
iot.group.DeleteGroupFailed | Failed to delete the group.
You must specify a valid deployment task. Try again later. |
iot.group.SubGroupNotNull | A subgroup exists in the group.
You cannot delete a group that has a subgroup. To delete the group, you must first remove all subgroups from the group. |
iot.group.InvalidGroupName | The group name is invalid.
The name can contain letters, digits, and underscores (_). The name must be 4 to 30 characters in length. |
iot.group.GroupNameExisted | The group name already exists. |
iot.group.QueryGroupInfoFailed | Failed to query the details of the group.
Check whether the request parameters are valid. Try again later. |
iot.group.NotExistedGroup | The specified group does not exist.
Check the value of the GroupId parameter. |
iot.group.QueryGroupCountFailed | Failed to query the number of groups.
Check whether the request parameters are valid. Try again later. |
iot.group.QueryGroupListFailed | Failed to query groups.
Check whether request parameters are valid. Try again later. |
iot.group.BindGroupRelationFailed | Failed to establish a relationship between the groups.
Check whether the request parameters are valid. Try again later. |
iot.group.UpdateGroupFailed | Failed to modify the information of a device group.
Check whether the request parameters are valid. Try again later. |
iot.group.QueryGroupTreeFailed | Failed to query the structure of group relationships.
Check whether the request parameters are valid. Try again later. |
iot.group.CreateGroupFailed | Failed to create the group.
Check whether the request parameters are valid. Try again later. |
iot.group.InvalidFormattedTagString | The tag format is invalid.
Tags are in the JSON format. A tag consists of a tagKey and tagValue. You must specify
a valid tagKey and tagValue for a tag. Separate multiple tags with commas (,), for
example, |
iot.group.TagCountExceedMax | The number of tags exceeds the limit.
You can add a maximum of 100 tags to a group. |
iot.group.GroupCountExceedMax | The number of groups exceeds the limit.
|
iot.group.SetGroupTagFailed | Failed to specify a group tag.
Check whether the request parameters are valid. Try again later. |
iot.group.QueryGroupTagFailed | Failed to query the information of the group tag.
Check whether the request parameters are valid. Try again later. |
iot.group.LongGroupDescError | The length of the group description exceeds the limit.
The description must be 1 to 100 characters in length. |
iot.group.QueryGroupRelationFailed | Failed to query the relationships of groups.
Check whether the request parameters are valid. Try again later. |
iot.group.GroupLevelExceedingLimitError | The number of group levels exceeds the limit.
Groups can be nested in only three layers. These layers include groups, subgroups, and child-subgroups. |
Message-related error codes
In most cases, error codes that start with iot.messagebroker
indicate message-related errors. These error codes are returned after you fail to
call messaging-related, device shadow-related, and rules engine-related API operations.
For more information about error codes that are returned from rules engine-related
API operations, see the following section.
Error code | Description |
---|---|
iot.messagebroker.CreateTopicRouteFailed | Failed to create message routes between topics.
Check whether the request parameters are valid. Try again later. |
iot.messagebroker.CreateTopicTemplateException | An exception occurred while creating the topic category.
Check whether the request parameters are valid. Try again later. |
iot.messagebroker.CreateTopicTemplateFailed | Failed to create the topic category.
Check whether the request parameters are valid. Try again later. |
iot.messagebroker.DeleteTopicTemplateException | An exception occurred while deleting the topic category.
Check whether the request parameters are valid. Try again later. |
iot.messagebroker.DeleteTopicTemplateFailed | Failed to delete the topic category.
Check whether the request parameters are valid. Try again later. |
iot.messagebroker.DestTopicNameArraySizeIsLarge | The number of destination topics that you specify for the source topic exceeds the
limit.
You can specify a maximum of 100 destination topics for a source topic. |
iot.messagebroker.DeleteTopicRouteFailed | Failed to delete the message route between the topics.
Check whether the request parameters are valid. Try again later. |
iot.messagebroker.DesireInfoInShadowMessageIsNotJson | The value of the desire parameter in the device shadow is not in the JSON format. |
iot.messagebroker.DesireValueIsNullInShadowMessage | The value of the desire parameter in the device shadow is empty. |
iot.messagebroker.ElementKeyOrValueIsNullInDesire | The desire parameter includes an empty property identifier or property value. |
iot.messagebroker.ElementKeyOrValueIsNullInReport | The report parameter includes an empty property identifier or property value. |
iot.messagebroker.HALFCONN | The connection fails because the device is in the half-open state. |
iot.messagebroker.InvalidFormattedSrcTopicName | The format of the source topic name is invalid.
You can view the topics of the device on the Topic List tab of the Device Details page in the IoT Platform console. |
iot.messagebroker.InvalidFormattedTopicName | The format of the topic is invalid.
You can view the topics of the device on the Topic List tab of the Device Details page in the IoT Platform console. |
iot.messagebroker.InvalidFormattedTopicTemplateId | The format of the topic category ID is invalid.
You can call the QueryProductTopic API operation to view the value of the TopicId parameter. |
iot.messagebroker.InvalidTimeoutValue | The specified timeout period is invalid.
For more information, see the API documentation. |
iot.messagebroker.InvalidTopicTemplateOperationValue | The allowed operation that you specified for the topic category is invalid. Valid
values:
SUB: subscribe. PUB: publish. ALL: publish and subscribe. |
iot.messagebroker.InvalidVersionValueInShadowMessage | The value of the version parameter in the device shadow is invalid. |
iot.messagebroker.MethodValueIsNotUpdate | You must set the method parameter to update in the device shadow. |
iot.messagebroker.MessageContentIsNotBase64Encode | The message content must be encoded by using Base64. |
iot.messagebroker.NoneElementInDesire | No property exists in the desire parameter. |
iot.messagebroker.NoneElementInReport | No property exists in the report parameter. |
iot.messagebroker.NoneElementDestTopicNameInArray | No element exists in the destination topic list. |
iot.messagebroker.NotFoundDesireInShadowMessage | The desire parameter does not exist in the state parameter of the device shadow. |
iot.messagebroker.NotFoundMethodInShadowMessage | The method parameter does not exist in the device shadow. |
iot.messagebroker.NotFoundReportInShadowMessage | The report parameter does not exist in the device shadow. |
iot.messagebroker.NotFoundStateInShadowMessage | The state parameter does not exist in the device shadow. |
iot.messagebroker.NotFoundVersionOrNullVersionValue | The version parameter does not exist or the value of the version parameter is empty. |
iot.messagebroker.NotMatchedProductKeyWithSrcTopicOwner | The product key of the source topic does not belong to the current user. |
iot.messagebroker.NullMessageContent | The message content cannot be empty. |
iot.messagebroker.NullShadowMessage | The content of the device shadow cannot be empty. |
iot.messagebroker.NullSrcTopicName | You must specify a valid name for the source topic. |
iot.messagebroker.NullTopicName | You must specify a valid topic. |
iot.messagebroker.NullTopicTemplateId | You must specify an ID for the topic category. |
iot.messagebroker.NullTopicTemplateOperation | You must specify an allowed operation for the topic category. |
iot.messagebroker.OFFLINE | The connection fails because the device is in the offline state. |
iot.messagebroker.PublishMessageException | An exception occurred while sending the message.
Check whether the request parameters are valid. Try again later. |
iot.messagebroker.PublishMessageFailed | Failed to send the message.
Check whether the request parameters are valid. Try again later. |
iot.messagebroker.QueryDeviceShadowActionError | Failed to query the device shadow.
Check whether the request parameters are valid. Try again later. |
iot.messagebroker.QueryProductTopicListActionError | Failed to query topic categories.
Check whether the request parameters are valid. Try again later. |
iot.messageborker.QueryTopicReverseRouteTableListActionError | Failed to query the source topics.
Check whether the request parameters are valid. Try again later. |
iot.messageborker.QueryTopicRouteTableListActionError | Failed to query message routes.
Check whether the request parameters are valid. Try again later. |
iot.messagebroker.QueryTopicTemplateActionError | Failed to query the topic category.
Check whether the request parameters are valid. Try again later. |
iot.messagebroker.QueryTopicTemplateException | An exception occurred while querying the topic category.
Check whether the request parameters are valid. Try again later. |
iot.messagebroker.RateLimit | The connection fails due to throttling.
For more information, see Limits. |
iot.messagebroker.ReportInShadowMessageIsNotJson | The value of the report parameter in the report parameter of the device shadow is not in the JSON format. |
iot.messagebroker.RrpcException | An exception occurred while sending the message by using Revert Remote Procedure Call
(RRPC).
Check whether the request parameters are valid. Try again later. |
iot.messagebroker.RrpcFailed | Failed to send the message by using RRPC.
Check whether the request parameters are valid. Try again later. |
iot.messagebroker.ShadowMessageIsNotJson | The device shadow is not in the JSON format. |
iot.messagebroker.ShadowMessageLengthIsLarge | The size of the device shadow exceeds the limit.
The maximum size of a device shadow is 16 KB. |
iot.messagebroker.TIMEOUT | The connection fails due to a timeout issue. |
iot.messagebroker.TooManyElementInDesire | The total number of properties that are included in the desire parameter exceeds the limit.
A device shadow in the JSON format can include a maximum of 128 properties. |
iot.messagebroker.TooManyElementInReport | The total number of properties that are included in the report parameter exceeds the limit.
A device shadow in the JSON format can include a maximum of 128 properties. |
iot.messagebroker.TopicAlreadyFound | The name of the topic category already exists in the product. |
iot.messagebroker.TopicTemplateCountExceedMax | The number of topic categories in the product exceeds the limit.
You can define a maximum of 50 topic categories for a product. |
iot.messagebroker.TopicTemplateIsNotFound | The topic category does not exist.
You can call the QueryProductTopic API operation to view the topic categories of a product. |
iot.messagebroker.UpdateDeviceShadowMessageFailed | Failed to modify the device shadow.
Check whether the request parameters are valid. Try again later. |
iot.messagebroker.UpdateTopicTemplateException | An exception occurred while updating the topic category.
Check whether the request parameters are valid. Try again later. |
iot.messagebroker.UpdateTopicTemplateFailed | Failed to update the topic category.
Check whether the request parameters are valid. Try again later. |
Rules engine-related error codes
Error codes that start with iot.rule
or iot.ruleng
, and a minority of error codes that start iot.messagebroker
indicate rules engine-related errors.
If an exception or error occurs, check whether the request parameters are valid and try again later.
Error code | Description |
---|---|
iot.rule.CreateRuleException | An exception occurred while creating the rule.
Check whether the request parameters are valid. Try again later. |
iot.rule.DeleteRuleFailed | Failed to delete the rule.
Check whether the request parameters are valid. Try again later. |
iot.rule.IncorrentRuleActionId | The ID of the rule action is invalid.
You can call the ListRuleActions API operation to view the ID of the rule action. |
iot.rule.IncorrentRuleActionType | The type of the rule action is invalid.
Valid values for the Type parameter include:
|
iot.rule.IncorrentRuleId | The rule ID is invalid. |
iot.rule.NullForwardDestForRule | You must specify a valid data forwarding destination.
For more information about how to set the Configuration parameter, see CreateRuleAction. |
iot.rule.NullSqlForRule | You must specify an SQL statement for the rule. |
iot.rule.NotFoundRule | The rule does not exist.
You must specify a valid rule ID. You can call the ListRule API operation to view the IDs of all rules that belong to the account. |
iot.rule.NotFoundRuleAction | The rule action does not exist.
You must specify a valid ID for the rule action. You can call the ListRuleActions API operation to view all the action IDs of a rule. |
iot.rule.ParseRuleActionConfigError | Failed to parse the settings of the rule action.
Check whether the request parameters are valid. Try again later. |
iot.rule.QueryRuleActionListError | Failed to query rule actions.
Check whether the request parameters are valid. Try again later. |
iot.rule.QueryRulePageActionError | Failed to query rules by page.
Check whether the request parameters are valid. Try again later. |
iot.rule.RuleActionIsAlreadyCreated | The specified rule action already exists. |
iot.rule.RuleCountExceedMax | The total number of rules exceeds the limit.
You can use an Alibaba Cloud account to create a maximum of 1,000 rules. |
iot.rule.RuleNameIsAlreadyExisted | The specified rule name already exists. |
iot.rule.StartRuleFailed | Failed to enable the rule.
Check whether the request parameters are valid. Try again later. |
iot.rule.StopRuleFailed | Failed to disable the rule.
Check whether the request parameters are valid. Try again later. |
iot.rule.TooManyRuleAction | The number of rule actions exceeds the limit.
You can specify a maximum of 10 data forwarding actions in a rule. |
iot.rule.UpdateRuleFailed | Failed to update the rule.
Check whether the request parameters are valid. Try again later. |
iot.ruleng.CreateRuleActionFailed | Failed to create the rule action.
Check whether the request parameters are valid. Try again later. |
iot.ruleng.DeleteRuleActionFailed | Failed to delete the rule.
Check whether the request parameters are valid. Try again later. |
iot.ruleng.IncorrectActionTypeForError | The data forwarding rule is unavailable for the cloud service. |
iot.ruleng.IncorrectRegionName | Data of a mainland China region can be forwarded to other mainland China regions. Data of an overseas region can be forwarded only in the same region. |
iot.ruleng.IncorrectSysTopic | The basic communication topic or TSL communication topic is invalid.
For more information about how to specify a valid topic, see CreateRule. |
iot.ruleng.IncorrectType | The topic type of the rule is invalid.
Valid values for the TopicType parameter include:
|
iot.ruleng.InvalidEndpoint | The endpoint is invalid. |
iot.ruleng.InvalidFormattedTagInConfiguration | The length of the tag in the Configuration parameter exceeds the limit. |
iot.ruleng.InvalidRamRole | The RAM role is invalid.
Log on to the RAM console and view the details of the RAM role. |
iot.ruleng.ListInstancesError | Failed to query instances. |
iot.ruleng.OnlyAllowOneErrorAction | You can specify only one destination to receive error messages for a rule. |
iot.ruleng.QueryInstanceError | Failed to query the details of the instance. |
iot.ruleng.QueryRuleActionFailed | Failed to query the rule action.
You must specify a valid parameter. Try again later. |
iot.ruleng.RegionNotSupportRuleForwardCloudProduct | The region does not support data forwarding rules for this cloud service.
For more information about cloud services that are supported by each region, see Regions and zones. |
iot.ruleng.RuleActionConfigurationIsNotJson | The configurations of the rule action are not in the JSON format.
The value of the Configuration parameter must be in the JSON format. For more information, see CreateRuleAction. |
iot.ruleng.RuleAlreadyIsStarted | The rule is in the Running state. |
iot.ruleng.NullRamRoleArn | You must specify the roleArn parameter. |
iot.ruleng.NullRamRoleName | You must specify the roleName parameter. |
iot.ruleng.NullRuleActionConfig | You must specify the Configuration parameter for the rule action. |
iot.ruleng.NullRuleActionType | You must specify the Type parameter for the rule action. |
iot.ruleng.UpdateRuleActionFailed | Failed to update the rule action. |
iot.messagebroker.IncorrectRuleSql | The SQL statement of the rule is invalid.
For more information about how to write a valid SQL statement, see CreateRule. |
iot.messagebroker.QueryRuleConfigActionException | An exception occurred while querying the configurations of the rule.
Check whether the request parameters are valid. Try again later. |
The following table describes the error codes that are returned after you fail to set a data forwarding destination.
Error code | Description |
---|---|
iot.messagebroker.InvalidFormattedTopicName | The format of the topic is invalid.
You can view the valid format of topics on the Topic List tab of the Device Details page in the IoT Platform console. |
iot.prod.NotExistedProduct | The specified product does not exist.
You must specify a valid product key. Make sure that the product belongs to the Alibaba Cloud account. |
iot.common.QueryProductActionError | Failed to query the product.
Check whether the request parameters are valid. Try again later. |
iot.ruleng.IncorrectSysTopic | The basic communication topic or TSL communication topic is invalid.
For more information about how to specify a valid topic, see CreateRule. |
iot.messagebroker.NullTopicName | You must specify a valid topic name. |
Error code | Description |
---|---|
iot.ruleng.NullOtsInstanceName | You must specify a valid name for the Tablestore (OTS) instance. |
iot.ruleng.NullTableNameInOtsInstance | You must specify a valid name for the table of the OTS instance. |
iot.ruleng.NullPrimaryKeyInOtsTable | You can specify a valid primary key for the OTS table. |
iot.ruleng.NullPrimaryKeyNameInOts | You must specify a valid name for the primary key. |
iot.ruleng.NullPrimaryKeyTypeInOts | You must specify a valid type for the primary key. |
iot.ruleng.NullPrimaryKeyValueInOts | You must specify a valid value for the primary key. |
iot.ruleng.IncorrectPrimaryKeyValueInOtsTable | The value of the primary key for the OTS table is invalid.
You can view the primary key that you specified when you created the table in the OTS console. |
Error code | Description |
---|---|
iot.ruleng.NullTopicNameInMns | You must specify a valid Message Service (MNS) topic. |
iot.ruleng.NotFoundTopicInMns | The MNS topic does not exist.
Check the name of the MNS topic. |
iot.ruleng.QueryMnsTopicListActionError | Failed to query MNS topics.
Check whether the request parameters are valid. Try again later. |
Error code | Description |
---|---|
iot.ruleng.NullServiceNameInFc | You must specify a valid name for the Function Compute (FC) service. |
iot.ruleng.NullFunctionNameInFc | You must specify a valid name for the FC function. |
iot.ruleng.NotFoundServiceInFc | The FC service does not exist.
Check the name of the FC service. |
Error code | Description |
---|---|
iot.messagebroker.NullTopicName | You must specify a valid Message Queue topic to receive messages. |
iot.ruleng.InstanceNotFound | The instance does not exist. |
iot.ruleng.ListMqTopicsError | Failed to query the Message Queue topic. |
iot.ruleng.TopicIsNotUnique | The specified topic already exists. |
iot.ruleng.TopicNotFound | The specified topic does not exist. |
Error code | Description |
---|---|
iot.ruleng.InvalidFormattedTagNameInHitsdb | The format of the ApsaraDB for Lindorm (TSDB) tag is invalid. |
iot.ruleng.InvalidFormattedTimestampInHitsdb | The format of the timestamp is invalid. |
iot.ruleng.NotBindCustomerVpc | No VPC is attached to the instance. |
iot.ruleng.NullInstanceNameInHitsdb | You must specify a valid name for the TSDB instance. |
iot.ruleng.NullTagNameInHitsdb | You must specify a valid name for the TSDB tag. |
iot.ruleng.NullTagValueInHitsdb | You must specify a valid value for the TSDB tag. |
iot.ruleng.NullTimestampInHitsdb | You must specify a valid tag for the timestamp. |
iot.ruleng.OnlySameRegionHitsdbSupport | Data can be forwarded to TSDB instances that reside only in the same region. |
Error code | Description |
---|---|
iot.ruleng.GrantVpcInstanceFailed | Failed to authorized the VPC. |
iot.ruleng.InvalidFormattedConnectionIp | The format of the endpoint is invalid. |
iot.ruleng.InvalidFormattedConnectionPort | The format of the port is invalid. |
iot.ruleng.InvalidFormattedRdsDatabaseName | The name of the ApsaraDB RDS database is invalid. |
iot.ruleng.InvalidFormattedRdsTableName | The name of the ApsaraDB RDS table is invalid. |
iot.ruleng.ListRdsAccountError | Failed to query the account of the ApsaraDB RDS database. |
iot.ruleng.NotFoundTable | The ApsaraDB RDS table does not exist. |
iot.ruleng.NotFoundVpcInstance | The VPC does not exist. |
iot.ruleng.NotFoundVpcInstanceConnection | The VPC endpoint of ApsaraDB RDS instance does not exist.
Make sure that you specify a valid VPC and VSwitch for the ApsaraDB RDS instance. |
iot.ruleng.NotMatchedField | The specified field does not match the table of the ApsaraDB RDS database. |
iot.ruleng.NullConnectionIp | You must specify a valid endpoint. |
iot.ruleng.NullConnectionPort | You must specify a valid port. |
iot.ruleng.NullRdsInstanceName | You must specify a valid name for the ApsaraDB RDS instance. |
iot.ruleng.NullRdsDatabaseName | You must specify a valid name for the ApsaraDB RDS database. |
iot.ruleng.NullRdsAccountName | You must specify a valid name for the account. |
iot.ruleng.NullRdsPassword | You must specify a valid password for the account. |
iot.ruleng.NullRdsTableName | You must specify a valid name for the table. |
iot.ruleng.NullRdsFieldName | You must specify a valid name for the field. |
iot.ruleng.NullRdsFieldValue | You must specify a valid value for the field. |
iot.ruleng.NullVpcInstance | You must specify a valid VPC. |
iot.ruleng.OnlySupportSameRegionRds | Data can be forwarded to ApsaraDB RDS instances that reside only in the same region. |
iot.ruleng.QueryServerMappingInfoError | Failed to query the mapping information of the VPC. |
Server-side subscription-related error codes
An error code that starts with iot.consumer
indicates an server-side subscription-related error.
Error code | Description |
---|---|
iot.consumer.group.CallbackTypeEmpty | You cannot set the CallbackType parameter of all consumer groups to false. |
iot.consumer.group.ChangeDefaultConsumerGroupNotAllowed | You cannot change the default consumer group. |
iot.consumer.group.ConsumerGroupExceedsLimit | The number of subscribed consumer groups exceeds the limit. |
iot.consumer.group.ConsumerGroupExceedLimit | The number of consumer groups exceeds the limit. |
iot.consumer.group.ConsumerGroupNameExisted | The name of the consumer group already exists. |
iot.consumer.group.ConsumerGroupNotExist | The consumer group does not exist. |
iot.consumer.group.CreateConsumerGroupFailed | Failed to add the consumer group. |
iot.consumer.group.DeleteConsumerGroupFailed | Failed to delete the consumer group. |
iot.consumer.group.InvalidConsumerGroupName | The name of the consumer group is invalid. |
iot.consumer.group.InvalidConsumerGroupId | The ID of the consumer group is invalid. |
iot.consumer.group.InvalidConsumerGroup | The consumer group is invalid. |
iot.consumer.group.InvalidGroupBy | The groupby parameter is invalid. |
iot.consumer.group.InvalidSubscribeType | The subscription type is invalid. |
iot.consumer.group.MnsCheckFailed | Failed to authenticate MNS. |
iot.consumer.group.MnsNotSupport | A product that has a transferred device does not support an MNS server-side subscription. |
iot.consumer.group.ProductKeyExceedsLimit | The number of services to which the consumer group subscribes exceeds the limit. |
iot.consumer.group.QueryConsumerGroupStatusFailed | Failed to query the status of the consumer group. |
iot.consumer.group.UpdateConsumerGroupFailed | Failed to update the consumer group. |
OTA update-related error codes
An error code that starts with iot.firmware
or iot.ota
indicates an OTA update-related error.
Error code | Description |
---|---|
iot.firmware.AlreadyExistedFirmwareName | The firmware name already exists. |
iot.firmware.AlreadyExistedFirmwareVersion | The firmware version already exists in the product. |
iot.firmware.BadlyFormattedGrayPercent | The format of the phase ratio is invalid. |
iot.firmware.BatchCancelDeviceUpgradeFailed | Failed to cancel the device update. |
iot.firmware.BlankFirmwareName | The firmware name can contain only spaces. |
iot.firmware.CancelOTAStrategyByJobFailed | Failed to cancel the update policy that is related to the dynamic update batch. |
iot.firmware.CancelOTATaskByJobFailed | Failed to cancel the update for the devices of the batch. |
iot.firmware.CancelOptionIsMandatory | You must specify the required parameters. |
iot.firmware.CancelUpgradeTaskFailed | Failed to cancel the update batch. |
iot.firmware.CreateFirmwareFailure | Failed to create the firmware. |
iot.firmware.CreateOTAUpgradeJobFailure | Failed to create the batch update task. |
iot.firmware.DeleteFirmwareFailure | Failed to delete the firmware. |
iot.firmware.DeviceUpgradeRecordNotFound | The device is not being updated. |
iot.firmware.DeviceWithDestinationVersionInArray | The device firmware version is the same as the destination firmware version. |
iot.firmware.DynamicGrayNotSupported | You cannot perform a dynamic canary update on the device. |
iot.firmware.DynamicSpecificNotSupported | You cannot perform a dynamic specific update on the device. |
iot.firmware.EmptyFirmwareFile | The length of the firmware file is 0. |
iot.firmware.FireTimeMustLargeThanCurrentTime | The time of the scheduled update must be later than the present time. |
iot.firmware.FireTimeTooLate | The scheduled update time must be a maximum of 7 days later than the present time. |
iot.firmware.FireTimeTooShort | The scheduled update time must be a minimum of 5 minutes later than the present time. |
iot.firmware.FirmwareAndProductKeyMismatch | The firmware does not match the product key. |
iot.firmware.FirmwareCountExceedMax | The number of firmware files exceeds a limit of 500. |
iot.firmware.FirmwareDescriptionExceedMaxLength | The length of the firmware description exceeds 100. |
iot.firmware.FirmwareNotFound | The firmware does not exist. |
iot.firmware.FirmwareNotVerified | You cannot start an update because the firmware is being verified. |
iot.firmware.GenerateOTAUploadURLFailure | Failed to generate an upload URL for the update package. |
iot.firmware.GrayAppliesToStaticOnly | You can perform only a static update in batches. |
iot.firmware.InProgressDynamicJobExisted | A running dynamic batch already exists. |
iot.firmware.InProgressVerifyJobExisted | An incomplete verification task for the firmware exists. |
iot.firmware.IncorrectDeviceUpgradeJobStatus | The status of the device update to be canceled is invalid. |
iot.firmware.IncorrectFormattedFirmwareName | The format of the firmware name is invalid. |
iot.firmware.IncorrectFormattedFirmwareVersion | The format of the firmware version is invalid. |
iot.firmware.IncorrectFormattedModuleName | The format of the module name is invalid. |
iot.firmware.IncorrectFormattedSrcVersion | The format of the source version is invalid. |
iot.firmware.InvalidDynamicMode | The mode of the dynamic update is invalid. |
iot.firmware.InvalidFirmware | The firmware is invalid. |
iot.firmware.InvalidFirmwareId | The firmware ID is invalid. |
iot.firmware.InvalidFirmwareSign | The firmware signature is invalid. |
iot.firmware.InvalidFirmwareSignMethod | The signature method of the firmware is invalid. |
iot.firmware.InvalidFirmwareSize | The firmware size is invalid. |
iot.firmware.InvalidFirmwareType | The firmware type is invalid. |
iot.firmware.InvalidFirmwareUrl | The URL of the firmware file is invalid. |
iot.firmware.InvalidGenerateOTAUploadURLParam | Failed to generate the update URL for the update package because the specified parameters are invalid. |
iot.firmware.InvalidGrayPercent | The update percentage of the canary update is invalid. |
iot.firmware.InvalidMaximumPerMinute | The push rate is invalid. |
iot.firmware.InvalidOTAJobId | The batch ID is invalid. |
iot.firmware.InvalidOTATaskId | The ID of the update record is invalid. |
iot.firmware.InvalidOverwriteMode | The write mode is invalid. |
iot.firmware.InvalidProductKey | The product key is invalid. |
iot.firmware.InvalidRetryCount | The retry count is invalid. |
iot.firmware.InvalidRetryInterval | The retry interval is invalid. |
iot.firmware.InvalidSelectionType | The specified type is invalid. |
iot.firmware.InvalidTargetSelection | The specified value is invalid. |
iot.firmware.InvalidTaskStatus | The status of the update is invalid. |
iot.firmware.InvalidTimeoutSetting | The timeout period is invalid. |
iot.firmware.JobAlreadyCanceled | The batch is canceled. |
iot.firmware.JobHasNoScheduleTime | The batch is not a scheduled batch. |
iot.firmware.ListOTAFirmwareFailed | Failed to query firmware files. |
iot.firmware.ListOTAJobFailed | Failed to query update batches. |
iot.firmware.ListOTAModuleFailed | Failed to query modules. |
iot.firmware.ListOTAModuleNameByProductFailed | Failed to query the modules of the product. |
iot.firmware.ListOTATaskByDeviceFailed | Failed to query the update records of the device. |
iot.firmware.ListOTATaskByJobFailed | Failed to query the update records of the batch. |
iot.firmware.MalformedFirmwareUrl | The URL of the firmware file is invalid. |
iot.firmware.ModuleCountLimitExceeded | The number of modules exceeds the limit. |
iot.firmware.ModuleNameReserved | The module name is reserved. You must specify a valid module name. |
iot.firmware.MoreThanOneSrcVersion | You can specify only one source firmware version for a differential batch update. |
iot.firmware.NoDeviceCanUpgrade | No device can be updated. |
iot.firmware.NonVersionedDeviceInArray | A device in the device group does not report the firmware version or reports an invalid firmware version. |
iot.firmware.NotDynamicJob | You can only cancel the dynamic update policy that is related to a dynamic update batch. |
iot.firmware.NullFirmwareId | The firmware ID is invalid. |
iot.firmware.NullFirmwareName | The error message returned because the name of the event source is empty. |
iot.firmware.NullFirmwareUrl | The URL of the firmware file is invalid. |
iot.firmware.NullFirmwareVersion | The firmware version is invalid. |
iot.firmware.NullGrayPercent | The phase ratio of the canary update. |
iot.firmware.NullOTAJobId | The batch ID is invalid. |
iot.firmware.NullSelectionType | The specified type is invalid. |
iot.firmware.NullSrcVersions | The list of firmware versions to be updated. |
iot.firmware.NullTargetDeviceNames | You must specify a valid device range for the static specific update. |
iot.firmware.NullTargetSelection | The specified value is invalid. |
iot.firmware.NullTaskId | The batch ID is invalid. |
iot.firmware.ParameterSizeExceedMax | The number of parameters in the list exceeds the limit. |
iot.firmware.ReUpgradeFailedFirmwareNotVerified | You cannot start an update because the firmware is being verified. |
iot.firmware.ScheduleFinishTimeEarlierThanStartTime | The end time of the scheduled update must be later than the start time. |
iot.firmware.ScheduleFinishTimeTooEarly | The end time of the scheduled update must be a minimum of 60 minutes later than the start time. |
iot.firmware.ScheduleFinishTimeTooLate | The end time of the scheduled update must be a maximum of 30 days later than the start time. |
iot.firmware.ScheduleFinishTimeWithoutStartTime | You must specify the start time and end time of a scheduled update at the same time. |
iot.firmware.SrcDestVersionMatched | The source firmware version must be different from the destination firmware version. |
iot.firmware.SrcVersionIsMandatory | You must specify a source firmware version for the differential update package. |
iot.firmware.SrcVersionMismatch | The present version of the device is different from the firmware version to be updated. |
iot.firmware.SrcVersionsNotAllowed | You cannot specify multiple source firmware versions for the update package. |
iot.firmware.SrcVersionsSizeExceedMax | The number of source firmware versions exceeds the limit. |
iot.firmware.SystemBusy | The system is busy. Try again later. |
iot.firmware.SystemBusyForScheduleTime | The system is busy. You must specify another time to perform the scheduled update. |
iot.firmware.TargetDeviceNamesNotAllowed | You cannot perform a static specific update on the device. |
iot.firmware.TooManyDeviceUpgrade | The number of devices that send update requests exceeds the limit. Try again later. |
iot.firmware.TooManyDeviceUpgradeForScheduleTime | The system cannot process the number of devices that send update requests at the scheduled update time. You must specify another time to perform the schedule update. |
iot.firmware.UpgradeSrcVersionMismatch | The source version of the update is different from the source version of the differential firmware. |
iot.firmware.VerifyFirmwareFailed | Failed to verify the firmware. |
iot.ota.tag.KeyDuplicated | Duplicate keys exist in the tag list. |
iot.ota.CreateOTAModuleFailure | Failed to create the OTA module. |
iot.ota.CreateOTAModuleParamError | Failed to create the OTA module. |
iot.ota.CreateOTAModuleExceedLimit | The number of OTA modules for the product exceeds the limit. |
iot.ota.CreateOTAModuleNameExist | The name of the OTA module that you want to create already exists. |
iot.ota.UpdateOTAModuleFailure | Failed to update the OTA module. |
iot.ota.UpdateOTAModuleParamError | Failed to update the OTA module. |
iot.ota.DeleteOTAModuleParamError | Failed to delete the OTA module. |
iot.ota.DeleteOTAModuleFailure | Failed to delete the OTA module. |
iot.ota.DeleteOTAModulePackageExist | Failed to delete the OTA module because an update package is attached to the OTA module. |
iot.ota.DeleteOtaDefaultModule | You cannot delete the default module. |
iot.ota.ListOTAModuleParamError | Failed to query the OTA module. |
iot.ota.ListOTAModuleFailure | Failed to query OTA modules. |