This topic describes the error codes that can be returned when you call IoT Platform API operations. For more information about how to troubleshoot errors that are related to request parameters, see operation-specific request parameters in the API documentation. These errors include invalid data formats, invalid data length, and invalid values.
System error codes
An error code that starts with iot.system
or iot.Sre
indicates a system error.
Error code | Description | Solution |
iot.system.SystemException | A system exception occurred. | Try again later. If the issue persists, submit a ticket. |
iot.system.InstanceNotFound | The specified instance ID does not exist. | Make sure that the request parameters are valid. Try again later. |
iot.Sre.IotInstanceNotFound | ||
iot.system.UidNotFound | The specified Alibaba Cloud account does not exist or IoT Platform is not activated for the account. | Make sure that the specified Alibaba Cloud account is valid and IoT Platform is activated for the account. Try again later. |
iot.system.IllegalRequest | The request parameter is invalid. | Make sure that the request parameters are valid. Try again later. |
iot.system.InstanceIdSame | The ID of the specified source instance is the same as that of the specified destination instance. | Make sure that the ID of the specified source instance is different from that of the specified destination instance. Try again later. |
Iot.system.BillIsOverDue | The Alibaba Cloud account has overdue payments. | Go to the User Center and add funds to your Alibaba Cloud account. |
Common error codes
An error code that starts with iot.common
or iot.check
indicates a common error.
Error code | Description | Solution |
iot.common.InvalidPageParams | The specified page size or page number is invalid. | Make sure that the specified pagination parameters such as PageSize are valid. Try again later. For more information, see the API documentation. |
iot.common.InvalidTenant | The specified tenant is invalid. | Specify a valid Alibaba Cloud account and grant the required permissions to the account. |
iot.common.QueryDeviceActionError | The system failed to obtain the device information. | Make sure that the request parameters are valid. Try again later. |
iot.common.QueryDevicePropertyActionError | The system failed to obtain device properties. | |
iot.common.QueryProductActionError | The system failed to obtain the product information. | |
iot.common.QueryProductCountActionError | The system failed to obtain the total number of products. | |
iot.common.RamActionPermissionDeny | The specified Resource Access Management (RAM) user does not have the required permissions. | Use your Alibaba Cloud account to grant the required permissions to the RAM user. For more information, see RAM and STS. |
iot.common.AuthActionPermissionDeny | The authentication failed. This error may occur when the specified device information does not match the account. | Make sure that the AccessKey pair matches the device information. Try again later. |
iot.check.ParameterIsNotLessThanMax | The value of Parameter A must be less than the value of Parameter B. For example, the value of the startTime parameter must be less than the value of the endTime parameter. | Make sure that the request parameters conform to the preceding rule. Try again later. |
iot.check.InvalidFormattedParameter | The parameter format is invalid. | Make sure that the request parameters are valid. Try again later. |
iot.common.APINotSupportedInInstance | The operation is unavailable for the instance. This feature is unavailable for public instances. | Specify an Enterprise Edition instance. Then, call the operation. |
iot.common.InvalidFormattedParameter | The parameter format is invalid. | Make sure that the request parameters are valid. Try again later. |
iot.common.IllegalFileBizCode | The business type of the file is invalid. | |
iot.common.IllegalFileFormat | The format of the file is invalid. | |
iot.common.FileNotExist | The specified file does not exist. | |
iot.common.UpdateThingModelOverLimit | The number of valid characters in a single Thing Specification Language (TSL) file exceeds the limit, which is 256 KB or 256 × 1024 characters. | Make sure that the number of valid characters in a single TSL file does not exceed the limit. |
Product-related error codes
An error code that starts with iot.prod
indicates a product-related error.
Error code | Description | Solution |
iot.prod.AlreadyExistedProductName | The product name already exists. The name of each product in an instance must be unique. | Make sure that the name of each product in an Enterprise Edition instance is unique. Try again later. |
iot.prod.CreateProductFailed | The system failed to create the product. | Make sure that the request parameters are valid. Try again later. |
iot.prod.CreateProductTopicFailed | The system failed to create the topic category for the product. | |
iot.prod.InvalidAliyunCommodityCode | The value of the AliyunCommodityCode parameter is invalid. | The valid values of the AliyunCommodityCode parameter are iothub_senior and iothub. Make sure that the AliyunCommodityCode parameter is valid. Try again later. |
iot.prod.InvalidFormattedCatId | The CategoryId parameter is invalid. | Make sure that the specified parameters that are related to the product category are valid. Try again later. |
iot.prod.InvalidFormattedProductkey | The format of the value of the ProductKey parameter is invalid. | Make sure that the value that you specify for the ProductKey parameter is valid. Try again later. |
iot.prod.InvalidFormattedProductName | The format of the product name is invalid. | Make sure that the format of the name that you specify for the product is valid. Try again later. 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. Make sure that the length of the product description does not exceed the limit. Try again later. |
iot.prod.InvalidNodeType | The NodeType parameter is invalid. | Make sure that the value that you specify for the NodeType parameter is valid. Try again later. For more information about the valid values of the NoteType parameter, see CreateProduct. |
iot.prod.NotExistedProduct | The specified product does not exist. The value of the ProductKey parameter does not exist in the account. | Make sure that the specified ProductKey and instance ID are valid. Try again later. |
iot.prod.NotSeniorProduct | The product does not support TSL models. The TSL model was not enabled for the product when you created the product. | Make sure that the request parameters are valid. Try again later. |
iot.prod.NullProductKey | You must specify the ProductKey parameter with a valid value. | |
iot.prod.NullProductName | You must specify a valid product name. | |
iot.prod.ProductCountExceedMax | The total number of products exceeds the limit. You can create up to 1,000 products for an instance. | Delete the products that you no longer use. Try again later. |
iot.prod.QueryDeviceCountActionError | The system failed to obtain the number of devices that belong to the product. | Make sure that the request parameters are valid. Try again later. |
iot.prod.QueryProductAbilitiesFailed | The system failed to obtain product features. | Make sure that the request parameters such as the Identifier parameter are valid. Try again later. |
iot.prod.QueryProductAbilityFailed | The system failed to obtain product features. | Check whether the request parameters are valid. For example, you can check the value of the Identifier parameter. |
iot.prod.QueryProductListActionError | The system failed to obtain the list of products. | Make sure that the request parameters are valid. Try again later. |
iot.prod.UpdateProductFailed | The system failed to update the product information. | |
iot.prod.QueryExtendPropertyFailed | The system failed to obtain product tags. | |
iot.prod.InvalidScriptType | The type of the data parsing script is invalid. | Make sure that the type that you specify for the data parsing script is valid. Try again later. |
iot.prod.ThingScriptExisted | A draft of a new data parsing script or the modified draft of an existing script is available for the product. | Check whether the draft of a new data parsing script or the modified draft of an existing script is available for the product. If the draft of a new data parsing script or the modified draft of an existing script is available for the product, you do not need to create the new script or update the existing script again. |
iot.prod.ConcurrentScriptOperation | The required operation on the data parsing script failed. | You cannot perform multiple operations in parallel on the data parsing script. |
iot.prod.ThingScriptDataFormatError | The type of the data parsing script for the product is invalid. | Make sure that the request parameters are valid. Try again later. |
iot.prod.BatchCreateThingModelFailed | The system failed to create the TSL model. | |
iot.prod.ThingModelNameDuplicated | Duplicate feature names exist in the TSL model. | Specify a different feature name. Try again later. |
iot.Prod.NotProductOwner | The current operator is not the owner of the product. | Make sure that you have the required permissions to access the product. Try again later. |
iot.prod.ProductDataFormatIsNull | The data parsing script failed to be submitted. You did not specify a value for the DataFormat parameter when you created the product. | Make sure that you specify a data format when you create the product. For more information, see CreateProduct. |
Device-related error codes
An error code that starts with iot.device
, Iot.Device
, or iot.devicesearch
indicates a device-related error.
Error code | Description | Solution |
iot.device.DistributedProductCanNotCreateDevice | The product for which you want to register the device is a distributed product. If you distribute a product from a source to a destination, you cannot create a device for the distributed product on the destination side. | Register the device for a product that you created in the current account. |
Iot.Device.NotDeviceOwner | The current operator is not the owner of the device. | Use your Alibaba Cloud account to log on to the IoT Platform console. Then, check whether the device exists in the instance that you want to manage. |
iot.device.AddTopoRelationFailed | The system failed to add the topological relationship. | Make sure that the request parameters are valid. Try again later. |
iot.device.AlreadyExistedDeviceName | The DeviceName already exists. Each DeviceName must be unique in the product. | Specify another DeviceName. Try again later. |
iot.device.ApplyManyDevicesFailed | The system failed to create multiple devices at a time. | Make sure that the request parameters are valid. Try again later. |
iot.device.CreateDeviceFailed | The system failed to create the device. | |
iot.device.CreateDeviceTaskIsRunning | The device creation task is in progress. | The task that is used to create multiple devices at a time is in progress. Try again later. |
iot.device.DeviceApplyIsNotFound | The ApplyId parameter is invalid. | Make sure that the value of the ApplyId parameter is the same as the value of the ApplyId parameter that is returned from the BatchCheckDeviceNames operation. Try again later. |
iot.device.DeviceCountExceeded | The number of devices that you want to create at a time exceeds the limit. You can create up to 10,000 devices in a single operation. | Reduce the number of devices that you want to create. Try again later. |
iot.device.DeleteDeviceFailed | The system failed to delete the device. | Make sure that the request parameters are valid. Try again later. |
iot.device.DeleteDevicePropertyFailed | The system failed to delete the device property. | |
iot.device.DisableDeviceFailed | The system failed to disable the device. | |
iot.device.EnableDeviceFailed | The system failed to enable the device. | |
iot.device.InactiveDevice | The device is in the inactive state. This indicates that the device has never been connected to IoT Platform. | Log on to the IoT Platform console and check the device status. Make sure that the device is connected. |
iot.device.InvalidFormattedApplyId | The ApplyId parameter is invalid. | Make sure that the value of the ApplyId parameter is the same as the value of the ApplyId parameter that is returned from the BatchCheckDeviceNames operation. Try again later. |
iot.device.IncorrentDeviceApplyInfo | The device application information is invalid. | Make sure that the request parameters such as ApplyId are valid. Try again later. |
iot.device.InvalidFormattedDeviceName | The format of the DeviceName is invalid. | Make sure that the format of the specified DeviceName is valid. Try again later. For more information about the format of DeviceName parameter values, see RegisterDevice. |
iot.device.InvalidDeviceNickNameExisted | An invalid device alias exists in the list of DeviceName parameter values. For more information, see the list of returned invalid device aliases. | Make sure that the alias of each device is valid when you create multiple devices at a time. |
iot.device.InvalidFormattedDevicePropertyKey | The format of the device property identifier is invalid. For more information about the supported formats for device properties, see the API documentation. | Make sure that the format of the specified device property identifier is valid. |
iot.device.InvalidFormattedDevicePropertiesString | The format of the device property is invalid. | Make sure that the format of the specified device property is valid. For more information about the supported formats for device properties, see the API documentation. |
iot.device.InvalidIoTId | The device ID is invalid. | Log on to the IoT Platform console and query information about the device. Then, check whether the IotId value is valid. You can call the QueryDeviceDetail or QueryDevice operation to obtain the IotId value. You can also replace the IotId value with a combination of the ProductKey and DeviceName values. |
iot.device.InvalidTimeBucket | The specified time range is invalid. Specify a valid value for the parameter. For more information, see the API documentation. | Make sure that the specified start time and end time meet the requirements of the operation. |
iot.device.InvokeThingServiceFailed | The system failed to call the service of the device. Check whether the request parameters are valid. For example, you can check the format and value of the Args parameter. | Make sure that the request parameters comply with the feature definition of the product. Then, log on to the IoT Platform console and make sure that the device is connected. Try again later. |
iot.device.LongDevicePropertiesString | The length of the device property exceeds the limit. For more information about limits, see the API documentation. | Reduce the length. Try again later. |
iot.device.NoneDeviceNameElement | The DeviceName list is empty. | Make sure that the specified value of the DeviceName parameter is valid. Try again later. |
iot.device.NoneDeviceProperties | No valid device properties exist. Check whether the identifier of the property is same as the identifier that is defined in the TSL model. | Make sure that the request parameters are valid. Try again later. |
iot.device.NotExistedDevice | The device does not exist. The value of the specified IotId, ProductKey, or DeviceName parameter is invalid. You can call the QueryDeviceDetail or QueryDevice operation to view the valid value of the ProductKey or DeviceName parameter. | Log on to the IoT Platform console and check whether the device exists. |
iot.device.NullApplyId | You must specify a valid value for the ApplyId parameter. | Make sure that the value of the ApplyId parameter is valid. Try again later. |
iot.device.NullDeviceName | No DeviceName is specified for the device. | Make sure that the request parameters are valid. Try again later. |
iot.device.NullDevicePropertyKey | You must specify a valid name for the device property. | |
iot.device.NullDevicePropertiesString | You must specify a valid device property in request parameters. | |
iot.device.QueryDeviceApplyActionError | The system failed to obtain the application ID. | Make sure that the value of the ApplyId parameter is valid. Try again later. |
iot.device.QueryDeviceAttrDataHistoryFailed | The system failed to obtain the historical records of the device property. | Make sure that the request parameters are valid. Try again later. |
iot.device.QueryDeviceAttrStatusFailed | The system failed to obtain the status of the device property. | |
iot.device.QueryDeviceEventHistoryFailed | The system failed to obtain invocation records of the device event. | |
iot.device.QueryDeviceListActionError | The system failed to obtain the list of devices. | |
iot.device.QueryDeviceServiceHistoryFailed | The system failed to obtain the invocation records of the device service. | |
iot.device.QueryDeviceStatisticsFailed | The system failed to obtain the statistics of the device. | |
iot.device.QueryDeviceStatusFailed | The system failed to obtain the status of the device. | |
iot.device.QueryTopoRelationFailed | The system failed to obtain topological relationships. Check whether the request parameters are valid. For example, if the value of the PageSize parameter exceeds 50, this error occurs. | |
iot.device.RemoveTopoRelationFailed | The system failed to remove the topological relationship. | |
iot.device.SaveOrUpdateDevicePropertiesFailed | The system failed to add or modify the device property. | |
iot.device.SetDevicePropertyFailed | The system failed to set the device property. Check whether the value and format of the Items parameter are valid and the specified property is readable or writable. | Make sure that the specified device property complies with the feature definition of the product. Try again later. |
iot.device.TooManyDevicePropertiesPerTime | The number of the specified properties exceeds the limit. For more information about limits, see the API documentation. | Make sure that the number of the properties that you want to specify does not exceed the limit. |
iot.device.TopoRelationCountExceeded | The number of the specified topological relationships exceeds the limit. For more information about the limits on the number of gateways or sub-devices, see Limits. | Remove the topological relationships that you no longer use. Try again later. |
iot.device.VerifyDeviceFailed | The system failed to authenticate the device. | Make sure that the request parameters such as the parameters about device information are valid. Try again later. |
iot.device.TooManyDeviceNamesPerRequest | The number of device names that you specified in the request exceeds the limit. | Make sure that the number of device names in the request does not exceed 10,000. Try again later. |
iot.device.InvalidDeviceParams | The request parameter is invalid. | Check whether the request parameters such as the parameters that contains device information are valid. Try again later. |
iot.devicesearch.InvalidSQLError | The SQL statement is invalid. | Make sure that the SQL syntax is valid. Try again later. |
iot.devicesearch.InvalidSQLOffsetError | The SQL offset is invalid. | Check the SQL statement and specify a valid offset. Try again later. |
iot.devicesearch.InvalidSQLFieldError | The SQL statement includes an invalid field name. | Check the SQL statement and specify a valid field name. Try again later. |
iot.devicesearch.InvalidSQLConditionError | The number of SQL conjunctions exceeds the limit. | Check the SQL statement and reduce the number of the specified conjunctions. Try again later. |
iot.devicesearch.InvalidSQLOrderError | The SQL collation is invalid. | Check the SQL statement and specify a valid SQL collation. Try again later. |
iot.devicesearch.InvalidSQLOperatorTypeError | The SQL operator does not match the data type. | Check the SQL statement and specify a valid operator. Try again later. |
iot.devicesearch.InvalidSQLParamError | The SQL syntax is invalid. | Check the SQL statement and remove the clause from the invalid syntax. Try again later. |
iot.tsl.InvalidIdentifierInEventError | The system failed to obtain the original event records of the device. | Check whether the specified property identifier is valid. |
InvalidIdentifierInServiceError | The system failed to obtain the original service records of the device. | Check whether the specified property identifier is valid. |
InvalidIdentifierInPropertyError | The system failed to obtain the original property records of the device. | Check whether the specified property identifier is valid. |
iot.device.PageTokenIsIllegal | The system failed to obtain the original snapshots, property records, service records, and event records. | Make sure that the value of the NextPageToken parameter is valid. Try again later. |
iot.device.DeviceHasDistributed | The device was already distributed. Specify another value for the DeviceName parameter. Try again later. | The specified value of the DeviceName parameter is used by an existing device in the product. Specify another valid value. Try again later. |
iot.device.FuzzyRuntimeSearchMinLengthLimit | The content of a fuzzy match is less than five characters in length. | Increase the length limit on keywords of fuzzy match. Try again later. |
iot.device.RegionNotSupportDynamicGroup | The dynamic group feature is not supported in the region. The dynamic group feature is supported only in the China (Shanghai) region. | Make sure that you specify China (Shanghai) for the region parameter. Try again later. |
Error codes related to device distribution
An error code that starts with iot.provisioning
indicates a device distribution-related error.
Error code | Description | Solution |
iot.provisioning.RunningTaskExceedLimit | The maximum number of concurrent distribution tasks is reached within the specified Alibaba Cloud account. Each Alibaba Cloud account can create up to 10 tasks to distribute products and devices. | Wait for the running tasks to complete before you add new concurrent tasks. |
iot.provisioning.TaskNotFinish | The distribution task is not complete. | Wait until the distribution task is complete. |
iot.provisioning.TaskIsProcessing | The distribution task is still in progress. | Wait until the distribution task is complete. |
iot.provisioning.DeviceIsInAnotherTask | The device is added to a different distribution task. | If a device is added to multiple distribution tasks at the same time, only one distribution task can be used to distribute the device. |
iot.provisioning.TaskNotExist | The distribution task does not exist. | Make sure that the distribution task exists. Try again later. |
iot.provisioning.TaskAlreadyFinish | The distribution task is complete. | Check whether the request parameters are valid. Try again later. |
iot.provisioning.UidAndTaskNotMatch | The ID of the specified Alibaba Cloud account is different from that of the Alibaba Cloud account that creates the distribution task. | |
iot.provisioning.DeviceIsDistributing | The device is being distributed. | Wait until the device is distributed. |
iot.provisioning.ProductIsDistributing | The product is being distributed. | The system executes the distribution task that you create only after the task of distributing the product is complete. |
iot.provisioning.AccountNotFound | The specified Alibaba Cloud account does not exist. | Make sure that the request parameters are valid. Try again later. |
iot.provisioning.TargetAccountParamsError | You must specify valid account information. | |
iot.provisioning.CrmServiceError | The specified Alibaba Cloud account is in an abnormal service state. | Try again later. |
iot.provisioning.InstanceOperationDeny | The destination instance does not belong to the destination Alibaba Cloud account. | Make sure that the request parameters are valid. Try again later. |
iot.provisioning.SourceInstanceNotFound | The ID of the specified source instance does not exist. | |
iot.provisioning.TargetInstanceNotFound | The ID of the specified destination instance does not exist. | |
iot.provisioning.CaptchaNotNull | No verification code is provided for the operation. | |
iot.provisioning.CaptchaNotFound | The verification code is invalid. | |
iot.provisioning.SendCaptchaFlowControl | Excessive operation requests are submitted in a short period of time. Try again one minute later. | Try again later. The interval at which the system sends the verification code must be greater than one minute. |
iot.provisioning.LimitExceeded | The maximum number of distributed devices has been reached. | Reduce the number of devices that you want to distribute. Try again later. |
iot.provisioning.FailGetLogLat | The system failed to obtain the longitude and latitude information. | Make sure that the request parameters are valid. Try again later. |
iot.provisioning.NotCrossTenantId | This operation cannot be performed across Alibaba Cloud accounts. | This operation cannot be performed across Alibaba Cloud accounts. |
iot.provisioning.ErrorStrategy | The distribution policy is not supported. | Specify a valid distribution policy. Try again later. |
iot.provisioning.InstanceRegionConflict | Only one instance ID can be selected for each region. | Make sure that the request parameters are valid. Try again later. |
iot.provisioning.NotDeviceOwner | The current operator is not the owner of the device. | Only the owner of the device can distribute the device. |
iot.provisioning.NextTokenNotNull | The NextToken request parameter cannot be empty. For more information, see ListDeviceDistributeJob. | Make sure that the request parameters are valid. Try again later. |
Error codes related to device groups
An error code that starts with iot.group
indicates an error related to device groups.
Error code | Description | Solution |
iot.group.NullGroupId | The group ID is left empty in the request. | Make sure that the request parameters are valid. Try again later. |
iot.group.DeleteGroupFailed | The system failed to delete the group. | |
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. | Delete all subgroups and then delete 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. | Make sure that the request parameters are valid. Try again later. |
iot.group.GroupNameExisted | The group name already exists. | Specify a valid name for the group. Try again later. |
iot.group.QueryGroupInfoFailed | The system failed to obtain the details of the group. | Make sure that the request parameters are valid. Try again later. |
iot.group.NotExistedGroup | The group does not exist. Check the value of the GroupId parameter. | Log on to the IoT Platform console and make sure that the group exists. Try again later. |
iot.group.QueryGroupCountFailed | The system failed to obtain the number of groups. | Make sure that the request parameters are valid. Try again later. |
iot.group.QueryGroupListFailed | The system failed to obtain the list of groups. | |
iot.group.BindGroupRelationFailed | The system failed to establish a relationship between the groups. | |
iot.group.UpdateGroupFailed | The system failed to modify the information of the group. | |
iot.group.QueryGroupTreeFailed | The system failed to obtain the structure of group relationships. | |
iot.group.CreateGroupFailed | The system failed to create the group. | |
iot.group.InvalidFormattedTagString | The tag format is invalid. | Tags are in the JSON format. A tag consists of the tagKey and tagValue. You must specify valid tagKey and tagValue for a tag. Separate multiple tags with commas (,). Example: |
iot.group.TagCountExceedMax | The number of tags exceeds the limit. You can add a maximum of 100 tags to a group. | Delete tags that you no longer use. Try again later. |
iot.group.GroupCountExceedMax | The number of groups exceeds the limit.
| Delete idle subgroups or idle devices from a group. Try again later. |
iot.group.SetGroupTagFailed | The system failed to specify the group tag. | Make sure that the request parameters are valid. Try again later. |
iot.group.QueryGroupTagFailed | The system failed to obtain the information of the group tag. | |
iot.group.LongGroupDescError | The length of the group description exceeds the limit. The description must be 1 to 100 characters in length. | Modify the description of the group. Try again later. |
iot.group.QueryGroupRelationFailed | The system failed to obtain the relationships of groups. | Make sure that 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 levels. These levels include groups, subgroups, and child-subgroups. | Log on to the IoT Platform console and check the nesting levels of groups. |
iot.group.SuperGroupUnsupport | The subgroup cannot be added to the current group. | Log on to the IoT Platform console and check whether the group is a dynamic group. You cannot add a subgroup to a dynamic group. |
Message-related error codes
In most cases, error codes that start with iot.messagebroker
indicate message-related errors. These error codes are returned if you fail to call API operations related to messaging, device shadows, and the rules engine. For more information about error codes that are returned by API operations related to the rules engine, see the following section.
Error code | Description | Solution |
iot.messagebroker.CreateTopicRouteFailed | The system failed to create message routes between topics. | Make sure that the request parameters are valid. Try again later. |
iot.messagebroker.CreateTopicTemplateException | An exception occurred while the topic category was being created. | |
iot.messagebroker.CreateTopicTemplateFailed | The system failed to create the topic category. | |
Iot.MessageBroker.BatchSubTopicFailed | The system failed to subscribe to multiple topics. | |
Iot.MessageBroker.EmptySubTopicList | The list of subscribed topics is empty. | Specify valid topics. Try again later. |
iot.messagebroker.DeleteTopicTemplateException | An exception occurred while the topic category was being deleted. | Make sure that the request parameters are valid. Try again later. |
iot.messagebroker.DeleteTopicTemplateFailed | The system failed to delete the topic category. | |
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. Make sure that the related parameters are valid. Try again later. |
iot.messagebroker.DeleteTopicRouteFailed | The system failed to delete the message route between the topics. | Make sure that 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. | Specify a value in the JSON format for the desire parameter. Try again later. |
iot.messagebroker.DesireValueIsNullInShadowMessage | The value of the desire parameter in the device shadow is empty. | Specify a valid value for the desire parameter. Try again later. |
iot.messagebroker.ElementKeyOrValueIsNullInDesire | The desire parameter includes an empty property identifier or property value. | Make sure that the desire parameter does not include empty property identifiers or property values. Try again later. |
iot.messagebroker.ElementKeyOrValueIsNullInReport | The report parameter includes an empty property identifier or property value. | Make sure that the report parameter does not include empty property identifiers or property values. Try again later. |
iot.messagebroker.HALFCONN | The connection fails because the device is in the half-open state. | Make sure that the connection status of the device is normal. Try again later. |
iot.messagebroker.InvalidFormattedSrcTopicName | The format of the source topic name is invalid. | Make sure that the format of the topic name is valid. Try again later. 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. | Make sure that the format of the topic is valid. Try again later. 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. | Make sure that the format of the topic category ID is valid. Try again later. You can call the QueryProductTopic operation to query the value of the TopicId parameter. |
iot.messagebroker.InvalidTimeoutValue | The specified timeout period is invalid. | Make sure that the specified timeout period is valid. Try again later. For more information, see the API documentation. |
iot.messagebroker.InvalidTopicTemplateOperationValue | The permissions on the topic category are invalid. | Make sure that the permissions on the topic category are valid. Try again later. 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. | Make sure that the value of the version parameter in the device shadow is valid. Try again later. |
iot.messagebroker.MethodValueIsNotUpdate | You must set the method parameter to update in the device shadow. | Make sure that the method parameter is set to update. Try again later. |
iot.messagebroker.MessageContentIsNotBase64Encode | The message content must be encoded in Base64. | Make sure that the message content is encoded in Base64. Try again later. |
iot.messagebroker.NoneElementInDesire | No property exists in the desire parameter. | Make sure that one or more properties are specified for the desire parameter. Try again later. |
iot.messagebroker.NoneElementInReport | No property exists in the report parameter. | Make sure that one or more properties are specified for the report parameter. Try again later. |
iot.messagebroker.NoneElementDestTopicNameInArray | No element exists in the destination topic list. | Make sure that one or more elements exist in the destination topic list. Try again later. |
iot.messagebroker.NotFoundDesireInShadowMessage | The desire parameter does not exist in the state parameter of the device shadow. | Make sure that the desire parameter exists in the state parameter of the device shadow. |
iot.messagebroker.NotFoundMethodInShadowMessage | The method parameter does not exist in the device shadow. | Make sure that the method parameter exists in the device shadow. Try again later. |
iot.messagebroker.NotFoundReportInShadowMessage | The report parameter does not exist in the device shadow. | Make sure that the report parameter exists in the device shadow. Try again later. |
iot.messagebroker.NotFoundStateInShadowMessage | The state parameter does not exist in the device shadow. | Make sure that the state parameter exists in the device shadow. Try again later. |
iot.messagebroker.NotFoundVersionOrNullVersionValue | The version parameter does not exist or the value of the version parameter is empty. | Make sure that the value of the version parameter is valid. Try again later. |
iot.messagebroker.NotMatchedProductKeyWithSrcTopicOwner | The ProductKey of the product that subscribes to the source topic does not belong to the current user. | Make sure that the product of the topic belongs to the current user. Try again later. |
iot.messagebroker.NullMessageContent | You must specify valid message contents. | Make sure that the message content is valid. Try again later. |
iot.messagebroker.NullShadowMessage | You must specify valid contents of the device shadow. | Make sure that the content that you specify for the device shadow is valid. Try again later. |
iot.messagebroker.NullSrcTopicName | You must specify a valid name for the source topic. | Make sure that the topic name is valid. Try again later. |
iot.messagebroker.NullTopicName | You must specify a valid topic. | Make sure that the topic is valid. Try again later. |
iot.messagebroker.NullTopicTemplateId | You must specify a valid ID for the topic category. | Make sure that the ID of the topic category is valid. Try again later. |
iot.messagebroker.NullTopicTemplateOperation | You must grant valid permissions on the topic category. | Make sure that the permissions on the topic category are valid. Try again later. |
iot.messagebroker.OFFLINE | The connection fails because the device is not connected to IoT Platform. | Make sure that the device is connected to IoT Platform and try again. |
iot.messagebroker.PublishMessageException | An exception occurred in messaging. | Make sure that the request parameters are valid. Try again later. |
iot.messagebroker.PublishMessageFailed | The system failed to send the message. | |
iot.messagebroker.QueryDeviceShadowActionError | The system failed to query the device shadow. | |
iot.messagebroker.QueryProductTopicListActionError | The system failed to obtain the list of topic categories. | |
iot.messageborker.QueryTopicReverseRouteTableListActionError | The system failed to obtain the list of source topics. | |
iot.messageborker.QueryTopicRouteTableListActionError | The system failed to obtain the list of message routes. | |
iot.messagebroker.QueryTopicTemplateActionError | The system failed to obtain the topic category. | |
iot.messagebroker.QueryTopicTemplateException | An exception occurred while the topic category was being queried. | |
iot.messagebroker.RateLimit | The connection fails due to throttling. | Make sure that the call frequency of the API operation exceeds the limit. Excessive calls may trigger throttling. For more information, see Limits. |
iot.messagebroker.ReportInShadowMessageIsNotJson | The value of the report parameter in the state parameter of the device shadow is not in the JSON format. | Make sure that the value of the report parameter in the state parameter of the device shadow is in the JSON format. Try again later. |
iot.messagebroker.RrpcException | An exception occurred while the message was sent by using Revert Remote Procedure Call (RRPC). | Make sure that the request parameters are valid. Try again later. |
iot.messagebroker.RrpcFailed | The system failed to send the message by using RRPC. | |
iot.messagebroker.ShadowMessageIsNotJson | The device shadow is not in the JSON format. | Make sure that the device shadow is in the JSON format. Try again later. |
iot.messagebroker.ShadowMessageLengthIsLarge | The size of the device shadow exceeds the limit. | Make sure that the size of the device shadow does not exceed the limit. Try again later. The maximum size of a device shadow is 16 KB. |
iot.messagebroker.TIMEOUT | The connection failed due to a timeout issue. | Try again. |
iot.messagebroker.TooManyElementInDesire | The total number of properties that are included in the desire parameter exceeds the limit. | Make sure that the number of properties in the desire parameter does not exceed the limit. Try again later. 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. | Make sure that the number of properties in the report parameter does not exceed the limit. Try again later. 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. | Make sure that the name of each topic category in the product is unique. Try again later. |
iot.messagebroker.TopicTemplateCountExceedMax | The number of topic categories in the product exceeds the limit. | Make sure that the number of topic categories in the product does not exceed the limit. Try again later. You can define a maximum of 50 topic categories for a product. |
iot.messagebroker.TopicTemplateIsNotFound | The topic category does not exist. | Make sure that the topic category exists. Try again later. You can call the QueryProductTopic operation to view all the topic categories in the product. |
iot.messagebroker.UpdateDeviceShadowMessageFailed | The system failed to update the device shadow. | Make sure that the request parameters are valid. Try again later. |
iot.messagebroker.UpdateTopicTemplateException | An error occurred while the topic category was being updated. | |
iot.messagebroker.UpdateTopicTemplateFailed | The system failed to update the topic category. | |
iot.messagebroker.TooManyUserProperties | The number of custom properties in Message Queuing Telemetry Transport (MQTT) 5.0 exceeds 20. | Make sure that the number of custom properties does not exceed the limit. Try again later. |
iot.messagebroker.UserPropertyListExceedMaxLength | The total length of custom properties in MQTT 5.0 exceeds 8,192 characters. | Make sure that the total length of custom properties does not exceed the limit. Try again later. |
iot.messagebroker.InvalidUserProperty | The format of custom properties in MQTT 5.0 is invalid. | Make sure that the request parameters are valid. Try again later. |
iot.messagebroker.CorrelationDataNotBase64Encode | The correlation data in MQTT 5.0 is not encoded in Base64. | Make sure that the correlation data is encoded in Base64. Try again later. |
iot.messagebroker.NullCorrelationData | The correlation data in MQTT 5.0 is empty. | Make sure that the correlation data is valid. Try again later. |
iot.messagebroker.CorrelationDataExceedMaxLength | The length of correlation data in MQTT 5.0 exceeds 128 characters. | Make sure that the length of correlation data does not exceed the limit. Try again later. |
iot.messagebroker.InvalidMqttResponseTopic | The response topic in MQTT 5.0 is invalid. | Make sure that the response topic is valid. Try again later. |
Error codes related to the rules engine
Error codes that start with iot.rule
or iot.ruleng
, and some error codes that start with iot.messagebroker
indicate errors related to the rules engine.
If an exception or error occurs, check whether the request parameters are valid and try again later.
Error code | Description | Solution |
iot.rule.CreateRuleException | The system failed to create the rule. | Make sure that the request parameters are valid. Try again later. |
iot.rule.DeleteRuleFailed | The system failed to delete the rule. | |
iot.rule.IncorrentRuleActionId | The ID of the rule action is invalid. | Call the ListRuleActions operation to query the ID of the rule action. Make sure that the request parameters are valid. Try again later. |
iot.rule.IncorrentRuleActionType | The type of the rule action is invalid. | Make sure that the request parameters are valid. Try again later. For more information, see the description of the Type parameter in the CreateRuleAction topic. |
iot.rule.NullForwardDestForRule | You must specify a valid data forwarding destination. | Make sure that a valid data forwarding destination is specified for the rule. For more information about how to configure the Configuration parameter, see CreateRuleAction. |
iot.rule.NullSqlForRule | You must specify a valid SQL statement for the rule. | Make sure that a valid SQL statement is specified for the rule. Try again later. |
iot.rule.NotFoundRule | The rule does not exist. | Specify a valid value for the RuleId parameter. Try again later. Call the ListRule operation to obtain the IDs of all rules in the account. |
iot.rule.NotFoundRuleAction | The rule action does not exist. | Specify a valid value for the ActionId parameter. Try again later. Call the ListRuleActions operation to obtain all action IDs of a rule. |
iot.rule.EmptyScript | The parser script is empty. | Make sure that the parser script is saved and submitted. Try again later. |
iot.rule.EmptyScriptDraft | The draft of the parser script is empty. | Make sure that the request parameters are valid. Try again later. |
iot.rule.scriptSyntaxError | The syntax of the script is invalid. | |
iot.rule.DataSourceNotExists | The specified data source does not exist. | |
iot.rule.DataSourceItemNotExists | The specified topic of the data source does not exist. | |
iot.rule.DestinationNotBound | The parser is not associated with a data destination. | Make sure that the parser is associated with a data destination and try again. |
iot.rule.destinationNotExists | The specified destination of data forwarding does not exist. | Make sure that the data destination ID is valid and try again. |
iot.rule.ParseRuleActionConfigError | The system failed to parse the settings of the rule action. | Make sure that the request parameters are valid. Try again later. |
iot.rule.QueryRuleActionListError | The system failed to obtain the list of rule actions. | |
iot.rule.QueryRuleFailed | The system failed to obtain the parser information. | |
iot.rule.QueryRulePageActionError | The system failed to obtain the list of rules by page. | |
iot.rule.RuleActionIsAlreadyCreated | The specified rule action already exists. | |
iot.rule.RuleCountExceedMax | The total number of rules exceeds the limit. | |
iot.rule.RuleNameIsAlreadyExisted | The specified rule name already exists. | |
iot.rule.StartRuleFailed | The system failed to enable the rule. | Make sure that the rule settings and request parameters are valid. Try again later. |
iot.rule.StopRuleFailed | The system failed to disable the rule. | Make sure that the rule settings and request parameters are valid. Try again later. |
iot.rule.TooManyRuleAction | The number of rule actions exceeds the limit. | Make sure that the request parameters are valid. Try again later. You can specify a maximum of 10 data forwarding actions in a rule. |
iot.rule.UpdateRuleFailed | The system failed to update the rule. | Make sure that the request parameters are valid. Try again later. |
iot.ruleng.CreateRuleActionFailed | The system failed to create the rule action. | |
iot.ruleng.DeleteRuleActionFailed | The system failed to delete the rule action. | |
iot.ruleng.IncorrectActionTypeForError | The rule for error data forwarding is unavailable for the cloud service. | |
iot.ruleng.IncorrectRegionName | In the Chinese mainland, data can be forwarded from a region to other regions. Outside the Chinese mainland, data can be forwarded only in the same region. | |
iot.ruleng.IncorrectSysTopic | The basic communication topic or TSL communication topic is invalid. | Make sure that the request parameters are valid. Try again later. Specify a valid topic. For more information, see CreateRule. |
iot.ruleng.IncorrectType | The topic type of the rule is invalid. Valid values of the TopicType parameter:
| Make sure that the request parameters are valid. Try again later. |
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 to view information about the role. Make sure that the request parameters are valid. Try again later. |
iot.ruleng.ListInstancesError | The system failed to obtain the list of instances. | Make sure that the request parameters are valid. Try again later. |
iot.ruleng.OnlyAllowOneErrorAction | You can specify only one destination to receive error messages for a rule. | |
iot.ruleng.QueryInstanceError | The system failed to obtain the details of the instance. | |
iot.ruleng.QueryRuleActionFailed | The system failed to obtain the rule action. | |
iot.ruleng.RegionNotSupportRuleForwardCloudProduct | Data forwarding to the Alibaba Cloud service is not supported in this region. | Make sure that the request parameters are valid. Try again later. For more information about cloud services that are supported by each region, see Regions and zones. |
iot.ruleng.RuleActionConfigurationIsNotJson | The Configuration parameter value of the rule action is not in the JSON format. The value of the Configuration parameter must be in the JSON format. For more information, see CreateRuleAction. | Make sure that the request parameters are valid. Try again later. |
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 | The system failed to update the rule action. | |
iot.messagebroker.IncorrectRuleSql | The SQL statement of the rule is invalid. | Make sure that the request parameters are valid. Try again later. For more information about how to configure an SQL statement, see CreateRule. |
iot.messagebroker.QueryRuleConfigActionException | The system failed to obtain the configurations of the rule. | Make sure that 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 | Solution |
iot.messagebroker.InvalidFormattedTopicName | The format of the topic is invalid. | View the format of the topic on the Topic List tab in the IoT Platform console. Make sure that the request parameters are valid. Try again later. |
iot.prod.NotExistedProduct | The specified product does not exist. | Make sure that the specified ProductKey is valid, the product belongs to the Alibaba Cloud account, and the request parameters are valid. Try again later. |
iot.common.QueryProductActionError | The system failed to obtain the product information. | Make sure that the request parameters are valid. Try again later. |
iot.ruleng.IncorrectSysTopic | The basic communication topic or TSL communication topic is invalid. Specify a valid topic. For more information, see CreateRule. | |
iot.messagebroker.NullTopicName | You must specify a valid topic name. |
Error code | Description | Solution |
iot.ruleng.NullOtsInstanceName | You must specify a valid name for the Tablestore (OTS) instance. | Make sure that the request parameters are valid. Try again later. |
iot.ruleng.NullTableNameInOtsInstance | You must specify a valid name for the table of the OTS instance. | |
iot.ruleng.NullPrimaryKeyInOtsTable | You must 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. | View the primary key that you specified when you created the data table in the OTS console. Make sure that the request parameters are valid. Try again later. |
Error code | Description | Solution |
iot.ruleng.NullTopicNameInMns | You must specify a valid MNS topic. | Make sure that the request parameters are valid. Try again later. |
iot.ruleng.NotFoundTopicInMns | The MNS topic does not exist. Check the name of the MNS topic. | Make sure that the name of the MNS topic and other request parameters are valid. Try again later. |
iot.ruleng.QueryMnsTopicListActionError | The system failed to obtain the list of MNS topics. | Make sure that the request parameters are valid. Try again later. |
Error code | Description | Solution |
iot.ruleng.NullServiceNameInFc | The name of the Function Compute service is invalid. | Make sure that the request parameters are valid. Try again later. |
iot.ruleng.NullFunctionNameInFc | You must specify a valid name for the function. | |
iot.ruleng.NotFoundServiceInFc | The Function Compute service does not exist. | Obtain the correct name of the Function Compute service in the Function Compute console. Make sure that the request parameters are valid. Try again later. |
Error code | Description | Solution |
iot.messagebroker.NullTopicName | You must specify a valid Message Queue topic to receive messages. | Make sure that the request parameters are valid. Try again later. |
iot.ruleng.InstanceNotFound | The instance is not found. | |
iot.ruleng.ListMqTopicsError | The system failed to obtain the Message Queue topic. | |
iot.ruleng.TopicIsNotUnique | The specified topic already exists. | |
iot.ruleng.TopicNotFound | The specified topic does not exist. |
Error code | Description | Solution |
iot.ruleng.InvalidFormattedTagNameInHitsdb | The format of the TSDB tag is invalid. | Make sure that the request parameters are valid. Try again later. |
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 only TSDB instances that reside in the same region. |
Error code | Description | Solution |
iot.ruleng.GrantVpcInstanceFailed | The system failed to authorize the VPC. | Make sure that the request parameters are valid. Try again later. |
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 | The system failed to obtain the accounts for the ApsaraDB RDS instance. | |
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 the ApsaraDB RDS instance does not exist. | Make sure that you specify a valid VPC and vSwitch for the ApsaraDB RDS instance. Try again later. |
iot.ruleng.NotMatchedField | The specified field does not match the table of the ApsaraDB RDS database. | Make sure that the request parameters are valid. Try again later. |
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 ApsaraDB RDS table. | |
iot.ruleng.NullRdsFieldName | You must specify a valid name for the ApsaraDB RDS field. | |
iot.ruleng.NullRdsFieldValue | You must specify a valid value for the ApsaraDB RDS field. | |
iot.ruleng.NullVpcInstance | You must specify a valid VPC. | |
iot.ruleng.OnlySupportSameRegionRds | Data can be forwarded to ApsaraDB RDS instances that reside in the same region. | |
iot.ruleng.QueryServerMappingInfoError | The system failed to obtain the mapping information of the VPC. |
Error codes related to server-side subscription
An error code that starts with iot.consumer
indicates an error related to server-side subscription.
Error code | Description | Solution |
iot.consumer.group.CallbackTypeEmpty | You cannot set the CallbackType parameter of all consumer groups to false. | Make sure that the request parameters are valid. Try again later. |
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 | The system failed to add the consumer group. | |
iot.consumer.group.DeleteConsumerGroupFailed | The system 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 | The system failed to authenticate MNS. | |
iot.consumer.group.MnsNotSupport | A product that has a transferred device does not support the 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 | The system failed to obtain the status of the consumer group. | |
iot.consumer.group.UpdateConsumerGroupFailed | The system failed to update the consumer group. | |
iot.consumer.group.SubscribeNotExist | The MNS or AMQP server-side subscription does not exist. |
Error codes related to over-the-air (OTA) updates
An error code that starts with iot.firmware
or iot.ota
indicates an error related to the OTA update.
Error code | Description | Solution |
iot.firmware.AlreadyExistedFirmwareName | The specified name of the OTA update package already exists. | Specify a valid name for the OTA update package. Try again later. |
iot.firmware.AlreadyExistedFirmwareVersion | The version of the OTA update package already exists in the product. | Specify a valid version for the OTA update package. Try again later. |
iot.firmware.BadlyFormattedGrayPercent | The format of the update percentage is invalid. | Make sure that the request parameters are valid. Try again later. |
iot.firmware.BatchCancelDeviceUpgradeFailed | The system failed to cancel the device update. | Submit a ticket. |
iot.firmware.BlankFirmwareName | The name of the OTA update package contains only spaces. | Make sure that the request parameters are valid. Try again later. |
iot.firmware.CancelOTAStrategyByJobFailed | The system failed to cancel the update policy that is related to the dynamic update batch. | Submit a ticket. |
iot.firmware.CancelOTATaskByJobFailed | The system failed to cancel the device update tasks of the update batch. | |
iot.firmware.CancelOptionIsMandatory | You must specify the required parameters. | Make sure that the request parameters are valid. Try again later. |
iot.firmware.CancelUpgradeTaskFailed | The system failed to cancel the update batch. | Submit a ticket. |
iot.firmware.CreateFirmwareFailure | The system failed to create the OTA update package. | |
iot.firmware.CreateOTAUpgradeJobFailure | The system failed to create the update batch. | |
iot.firmware.DeleteFirmwareFailure | The system failed to delete the OTA update package. | |
iot.firmware.DeviceUpgradeRecordNotFound | The device is not being updated. | Make sure that the update task is running and the request parameters are valid. Try again later. |
iot.firmware.DeviceWithDestinationVersionInArray | The device firmware version is the same as the version to which you want the firmware to update. | Check whether a device that is updated exists. |
iot.firmware.DynamicGrayNotSupported | You cannot perform a dynamic phased update on the device. | This feature is not supported. |
iot.firmware.DynamicSpecificNotSupported | You cannot perform a dynamic specific update on the device. | |
iot.firmware.EmptyFirmwareFile | The size of the OTA update package is 0. | Make sure that the OTA update package that you upload is valid. Try again later. |
iot.firmware.FireTimeMustLargeThanCurrentTime | The scheduled update time must be later than the current time. | Make sure that the request parameters are valid. Try again later. |
iot.firmware.FireTimeTooLate | The scheduled update time must be up to seven days later than the current time. | |
iot.firmware.FireTimeTooShort | The scheduled update time must be at least 5 minutes later than the current time. | |
iot.firmware.FirmwareAndProductKeyMismatch | The OTA update package does not match the ProductKey parameter. | |
iot.firmware.FirmwareCountExceedMax | The number of OTA update packages exceeds 500. | Delete OTA update packages that you no longer use. Try again later. |
iot.firmware.FirmwareDescriptionExceedMaxLength | The description of the OTA update package exceeds 100 characters in length. | Make sure that the request parameters are valid. Try again later. |
iot.firmware.FirmwareNotFound | The OTA update package does not exist. | |
iot.firmware.FirmwareNotVerified | You cannot start an update because the OTA update package is not verified. | Make sure that the OTA update package is verified. Try again later. |
iot.firmware.GenerateOTAUploadURLFailure | The system failed to generate an upload URL for the update package. | Make sure that the request parameters are valid. Try again later. |
iot.firmware.GrayAppliesToStaticOnly | To perform phased updates, you can configure only static update batches. | |
iot.firmware.InProgressDynamicJobExisted | A running dynamic batch already exists. | You can use an OTA update package to create only one dynamic update batch. Cancel the ongoing dynamic update batch and try to create the dynamic update batch again. |
iot.firmware.InProgressVerifyJobExisted | A task of verifying the OTA update package is in progress. | Wait for the ongoing verification task to complete before you create a task of verifying the OTA update package. |
iot.firmware.IncorrectDeviceUpgradeJobStatus | The status of the device update task to be canceled is invalid. | The device update task cannot be canceled. Check whether the device update task is in progress. |
iot.firmware.IncorrectFormattedFirmwareName | The format of the OTA update package name is invalid. | Make sure that the request parameters are valid. Try again later. |
iot.firmware.IncorrectFormattedFirmwareVersion | The format of the OTA update package 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 OTA update package is invalid. | |
iot.firmware.InvalidFirmwareId | The ID of the OTA update package is invalid. | |
iot.firmware.InvalidFirmwareSign | The signature of the OTA update package is invalid. | |
iot.firmware.InvalidFirmwareSignMethod | The signature algorithm of the OTA update package is invalid. | |
iot.firmware.InvalidFirmwareSize | The size of the OTA update package is invalid. | |
iot.firmware.InvalidFirmwareType | The type of the OTA update package is invalid. | |
iot.firmware.InvalidFirmwareUrl | The URL of the OTA update package is invalid. | |
iot.firmware.InvalidGenerateOTAUploadURLParam | The system failed to generate a URL for the update package because the specified parameters are invalid. | |
iot.firmware.InvalidGrayPercent | The update percentage of the phased update is invalid. | |
iot.firmware.InvalidMaximumPerMinute | The maximum update rate does not meet the requirement. | |
iot.firmware.InvalidOTAJobId | The batch ID is invalid. | |
iot.firmware.InvalidOTATaskId | The ID of the update task is invalid. | |
iot.firmware.InvalidOverwriteMode | The overwrite mode is invalid. | |
iot.firmware.InvalidProductKey | The ProductKey parameter value 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 target is invalid. | |
iot.firmware.InvalidTaskStatus | The status of the update task 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 | The system failed to obtain the list of OTA update packages. | |
iot.firmware.ListOTAJobFailed | The system failed to obtain the list of update batches. | |
iot.firmware.ListOTAModuleFailed | The system failed to obtain the list of modules. | |
iot.firmware.ListOTAModuleNameByProductFailed | The system failed to obtain the list of modules of the product. | |
iot.firmware.ListOTATaskByDeviceFailed | The system failed to obtain the update tasks of the device. | |
iot.firmware.ListOTATaskByJobFailed | The system failed to obtain the update tasks of the batch. | |
iot.firmware.MalformedFirmwareUrl | The URL of the OTA update package is invalid. | |
iot.firmware.ModuleCountLimitExceeded | The number of modules exceeds the limit. | |
iot.firmware.ModuleNameReserved | The module name is reserved. You must specify another valid module name. | |
iot.firmware.MoreThanOneSrcVersion | You can specify only one source version when you use the OTA update package for a differential update. | |
iot.firmware.NoDeviceCanUpgrade | No device can be updated. | Check whether the device is updated. |
iot.firmware.NonVersionedDeviceInArray | A device in the device group does not submit the firmware version or submits an invalid firmware version. | Make sure that the request parameters are valid. Try again later. |
iot.firmware.NotDynamicJob | You can only cancel the dynamic update policy that is related to a dynamic update batch. | |
iot.firmware.NullFirmwareId | You must specify the ID of the OTA update package. | |
iot.firmware.NullFirmwareName | You must specify the name of the OTA update package. | |
iot.firmware.NullFirmwareUrl | You must specify the URL of the OTA update package. | |
iot.firmware.NullFirmwareVersion | You must specify the version of the OTA update package. | |
iot.firmware.NullGrayPercent | You must specify a valid update percentage for the phased update. | |
iot.firmware.NullOTAJobId | You must specify a valid batch ID. | |
iot.firmware.NullSelectionType | You must specify a valid type. | |
iot.firmware.NullSrcVersions | You must specify valid firmware versions to be updated. | |
iot.firmware.NullTargetDeviceNames | You must specify a valid scope of devices on which the static specific update will be performed. | |
iot.firmware.NullTargetSelection | You must specify a valid target. | |
iot.firmware.NullTaskId | You must specify a valid batch ID. | |
iot.firmware.ParameterSizeExceedMax | The number of parameters in the list exceeds the limit. | |
iot.firmware.ReUpgradeFailedFirmwareNotVerified | You cannot restart the update because the OTA update package is not 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 at least 60 minutes later than the start time. | |
iot.firmware.ScheduleFinishTimeTooLate | The end time of the scheduled update cannot be more than 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 is the same as the destination firmware version. | |
iot.firmware.SrcVersionIsMandatory | You must specify a source version for the differential update package. | |
iot.firmware.SrcVersionMismatch | The current firmware version of the device is different from the source version of the OTA update package. | |
iot.firmware.SrcVersionsNotAllowed | You cannot specify multiple source firmware versions. | |
iot.firmware.SrcVersionsSizeExceedMax | The number of source firmware versions exceeds the limit. | |
iot.firmware.SystemBusy | The system is busy. Try again later. | If the issue persists, submit a ticket. |
iot.firmware.SystemBusyForScheduleTime | The system is busy. You must specify another point in time to perform the scheduled update. | |
iot.firmware.TargetDeviceNamesNotAllowed | You cannot perform a static specific update on the device. | Make sure that the request parameters are valid. Try again later. |
iot.firmware.TooManyDeviceUpgrade | The number of devices that sent update requests exceeded the limit. Try again later. | Make sure that the request parameters are valid. Try again 1 minute later. |
iot.firmware.TooManyDeviceUpgradeForScheduleTime | The number of devices that sent update requests at the scheduled time exceeded the limit. You must specify another time to perform the schedule update. | |
iot.firmware.UpgradeSrcVersionMismatch | The source firmware version to be updated is different from the source version of the differential OTA update package. | Make sure that the request parameters are valid. Try again later. |
iot.firmware.VerifyFirmwareFailed | The system failed to verify the OTA update package. | Submit a ticket. |
iot.firmware.InvalidOTATaskId | The specified value of the TaskId request parameter does not exist. | Make sure that the request parameters are valid. Try again later. |
iot.firmware.InvalidTaskStatus | The status of the device update task that corresponds to the TaskId parameter is invalid. | |
iot.firmware.JobTagIsTooLong | When you create an update batch, the total number of tag characters exceeds 4,096. | |
iot.firmware.JobTagKeyInvalid | When you create an update batch, the tag key is invalid. | |
iot.firmware.JobTagValueInvalid | When you create an update batch, the tag value is invalid. | |
iot.firmware.JobTagTooMany | When you create an update batch, the number of tags in the | |
iot.ota.PackageFileAmountExceed | When you create an update package, the number of update package files exceeds 20. | |
iot.ota.PackageFileParamConflict | When you create an update package, a conflict occurs on the parameters of the update package files. You cannot specify the parameters related to a single file and parameters related to multiple files at the same time. | |
iot.ota.PackageFileNameDuplicated | When you create an update package, the names of update package files are duplicate. | |
iot.ota.PackageFileUrlDuplicated | When you create an update package, the URLs of update package files are duplicate. | |
iot.ota.PackageFileSignDuplicated | When you create an update package, the signature values of update package files are duplicate. | |
iot.ota.tag.KeyDuplicated | Duplicate keys exist in the tag list. | |
iot.ota.CreateOTAModuleFailure | An error occurred while you created the OTA module. | Submit a ticket. |
iot.ota.CreateOTAModuleParamError | The request parameter is invalid when you create the OTA module. | Make sure that the request parameters are valid. Try again later. |
iot.ota.CreateOTAModuleExceedLimit | The number of OTA modules for the product exceeds the limit. | Delete modules that you no longer use. Try again later. |
iot.ota.CreateOTAModuleNameExist | The name of the OTA module that you want to create already exists. | Specify a valid and unique name for the OTA module. Try again later. |
iot.ota.UpdateOTAModuleFailure | An error occurred while you updated the OTA module. | Submit a ticket. |
iot.ota.UpdateOTAModuleParamError | The request parameter used to update the OTA module is invalid. | Make sure that the request parameters are valid. Try again later. |
iot.ota.DeleteOTAModuleParamError | The request parameter used to delete the OTA module is invalid. | |
iot.ota.DeleteOTAModuleFailure | An error occurred while you attempted to delete the OTA module. | |
iot.ota.DeleteOTAModulePackageExist | You cannot delete the OTA module to which an update package is attached. | |
iot.ota.DeleteOtaDefaultModule | You cannot delete the default module. | |
iot.ota.ListOTAModuleParamError | The request parameter used to obtain the list of OTA modules is invalid. | |
iot.ota.ListOTAModuleFailure | An error occurred while you attempted to obtain the list of OTA modules. | |
iot.ota.OTAModuleNotExist | The system failed to delete or update the OTA module because the OTA module did not exist in the product. | |
iot.ota.TooManyOtaTask | The number of task IDs that is specified by the TaskId.N request parameter exceeds the limit. | |
iot.ota.TaskIdIsNull | You must specify valid values for the TaskId.N parameter. | |
iot.ota.ConfirmNotAllowedNow | The device cannot be updated at the current time, and the device update task that is pending confirmation cannot be confirmed. | |
iot.ota.EmptyDeviceInfoParams | You must specify the device information. | |
iot.ota.InvalidOtaModuleName | The format of the OTA module name is invalid. | |
iot.ota.GroupNotExist | The group does not exist. Make sure that the request parameters are valid. Try again later. | |
iot.ota.DynamicGroupExpressionInvalid | When you perform an OTA update on a dynamic group, you must specify the module name and module version in the update conditions. | |
iot.ota.DynamicGroupTaskCountExceedLimit | The number of update batches for the dynamic group exceeds 5. | |
iot.ota.UpgradeDeviceCountExceedLimit | The number of devices that send update requests exceeds the limit. For more information, see Limits. | Submit a ticket. |
iot.ota.GroupUpgradeTenantInvalid | The group-based update that is initiated by the Alibaba Cloud account is invalid. Make sure that the request parameters are valid. Try again later. | Make sure that the request parameters are valid. Try again later. |
iot.ota.GroupTypeInvalid | The group type that is specified for the group-based update is invalid. Make sure that the request parameters are valid. Try again later. | |
iot.firmware.VerifyFirmwareNoNeed | The current update package does not need to be verified. | |
iot.ota.DownloadProtocolInvalid | The protocol that is used to download the update package for the current update batch is invalid. | |
iot.ota.DownloadProtocolMqttNotSuitable | You cannot use the MQTT protocol to download the update package for the current update batch. | |
iot.ota.DynamicGroupConflict | The values of the OverwriteMode and MultiModuleMode parameters are inconsistent across new and existing update batches of a dynamic group. | |
iot.ota.OverWriteAndMultiModuleConflict | You can set the OverwriteMode parameter to 2 or the MultiModuleMode parameter to true. | |
iot.ota.dynamicGroupForbiddenInDefaultInstance | Devices in public instances of the previous version do not support group-based dynamic updates. | Devices in public instances of the previous version do not support the dynamic group feature. |
iot.ota.multiModuleModeForbiddenInDefaultInstance | Devices in public instances of the previous version do not support simultaneous updates of multiple modules. | Public instances of the previous version do not support simultaneous updates of multiple modules. |
iot.ota.InvalidTaskExist | At least one device update task that you specify is invalid. | Make sure that the request parameters are valid. Try again later. |
iot.ota.UnmatchedJob | The ID of the update batch does not match the ID of the device update task. | |
iot.ota.JobCanceled | The update batch is canceled. | |
iot.ota.InvalidJobId | The ID of the update batch does not exist. | |
iot.ota.InvalidFirmwareUid | The OTA update package does not exist. | |
iot.ota.InvalidTaskId | The ID of the device update task does not exist. | |
iot.ota.FailedTaskNotFound | The system did not find any failed or canceled device update task in the update batch. | |
iot.ota.DeviceNotReUpgraded | The system did not find any device on which an update can be restarted. | |
iot.ota.DeviceNotExist | The device does not exist. | Make sure that the request parameters are valid. Try again later. |
iot.ota.FirmwareNotVerified | The OTA update package is being verified. The system cannot restart the update. | Try again after the OTA update package is verified. |
iot.ota.NotFirmwareOwner | The current user is not the owner of the update package. | The user does not have permissions to call the operation. Make sure that the request parameters are valid. Try again later. |