This topic describes error codes that the Link IoT Edge API can return. For more information about error handling, see the API Reference. Errors occur due to invalid request parameters, incomplete request parameters, limits exceeded, or other causes.

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 Description
iot.common.InvalidTenant The specified Alibaba Cloud account is invalid.

You must specify a valid Alibaba Cloud account and make sure that the account has the required permissions.

iot.common.InvalidParam The specified request parameter is invalid.

You must specify a valid request parameter. Try again later.

iot.common.AuthActionPermissionDeny Authentication failed.

This error may occur when the specified account information is invalid. You must specify a valid AccessKey pair and resource information.

iot.common.RamActionPermissionDeny The specified RAM user does not have the required permissions.

For more information, see Grant permissions to a RAM user.

iot.common.HighFrequentDeny You have made the request too many times.

Try again later.

iot.common.ParameterSizeLimit The value that you specified for the request parameter exceeds the limit.

You must specify a valid request parameter. Try again later.

Error codes for edge instances

An error code that starts with iot.edge.Instance indicates an error related to an edge instance.

Error code Description
iot.edge.InstanceNotExist The specified edge instance does not exist.

You must specify a valid edge instance ID or name.

iot.edge.InstanceNameExist The specified edge instance name already exists.

The name of each edge instance must be unique. You must specify a valid name for the edge instance.

iot.edge.InstanceNumLimitation The number of edge instances exceeds the limit.

You can use an Alibaba Cloud account to create a maximum of 100,000 edge instances.

iot.edge.InstanceAlreadyBindGateway The edge instance is attached to a gateway.
iot.edge.InstanceIsRunning The edge instance is running.
iot.edge.InstanceHasDevice Failed to delete the edge instance because a sub-device is attached.

Before you delete an edge instance, you must remove all connected sub-devices from the edge instance. Otherwise, you cannot delete the edge instance.

iot.edge.InstanceHasNoGateway The specified edge instance does not connect to any gateways.

You can call the BindGatewayToEdgeInstance operation to connect the edge instance to a gateway.

iot.edge.InstanceDeviceLimitation The number of sub-devices that you want to connect to the edge instance exceeds the limit.

You can assign a maximum of 1,000 sub-devices to each edge instance.

iot.edge.InstanceGatewayLimitation The number of gateways with which an edge instance can associate exceeds the limit.
  • You can connect each edge instance of Link IoT Edge Pro Edition or Link IoT Edge Lite Edition to only one gateway.
  • You can associate each edge instance of Link IoT Edge Standard Edition with a maximum of two gateways.
iot.edge.InstanceDriverLimitation The number of drivers that you want to assign to the edge instance exceeds the limit.

You can assign a maximum of 30 drivers to each edge instance.

iot.edge.InstanceHasDriver Failed to delete the edge instance because a driver is attached.

Before you delete an edge instance, you must remove all drivers from the edge instance. Otherwise, you cannot delete the edge instance.

iot.edge.InstanceHasSameNameDriver The name that you specified is the same as that of an existing driver in the edge instance.

The name of each driver that you want to assign in an edge instance must be unique.

iot.edge.InstanceAuthorized You cannot delete or modify the edge instance because the edge instance is authorized to another Alibaba Cloud account.

Error codes for gateways

An error code that starts with iot.edge.Gateway indicates an error related to a gateway.

Error code Description
iot.edge.GatewayNotExist The specified gateway does not exist.

Make sure that the gateway is not deleted.

iot.edge.GatewayDisable The specified gateway is disabled.

You must check the status of the gateway.

iot.edge.GatewayInactive The specified gateway is inactive.

You must first activate the gateway. Try again later.

iot.edge.GatewayOffline The specified gateway is offline.

You must check the status of the gateway.

iot.edge.GatewayNotBindToInstance The specified gateway is not associated with any edge instances.

You must specify a valid gateway or specify the gateway for an edge instance.

iot.edge.GatewayAlreadyBindToInstance The specified gateway is linked to an edge instance.
iot.device.DeviceNotGateway The specified device is not a gateway.

You must specify a gateway.

Error codes for sub-devices

An error code that starts with iot.edge.Device indicates an error related to a sub-device.

Error code Description
iot.edge.DeviceAlreadyBindToInstance The specified sub-device is assigned to an edge instance.
iot.edge.DeviceNotBindToInstance The specified sub-device does not exist in the edge instance.

You must specify a valid sub-device name or assign the sub-device to an edge instance.

iot.edge.DeviceNumLimitation The number of sub-devices that you want to add to the edge instance exceeds the limit.

You can assign a maximum of 1,000 sub-devices to each edge instance.

iot.edge.DeviceInactive The device is inactive.
iot.edge.DeviceDebugDisable You cannot debug the sub-device because the sub-device is offline.

The status of the sub-device must be online. Try again later.

iot.edge.DeviceNotMatchDriverProtocol The specified sub-device does not match the driver protocol.

You must ensure the network connection method of the sub-devicematches the communication protocol of the driver protocol.

iot.edge.DeviceAlreadyAttachOtherDriver The specified sub-device is associated with a driver.

Only one driver can be associated with each sub-device in the same gateway.

iot.edge.DeviceNotAttachDriver You must associate the sub-device with a driver.

Before you add a sub-device to an edge-instance, you must associate the sub-device with a driver.

iot.edge.DeviceNotAttachSameDriver Failed to perform the batch operation because the specified sub-devices are not associated with the same driver.

You can perform batch operations on multiple sub-devices that have the same driver assigned.

iot.edge.DeviceConfigIllegal The parameter that you specified for the sub-device is invalid.

You must specify a valid parameter. Try again later.

iot.device.NotExistedDevice The specified sub-device does not exist.

You must specify a valid sub-device name or a sub-device that exists in the IoT Platform console. Try again later.

iot.device.DeviceAlreadyBindToOtherInstance The sub-device is assigned to another edge instance.

You must specify a valid sub-device. The sub-device is not assigned to any edge instances.

iot.device.DeviceNotSubDevice The specified device is not a sub-device.

You must specify a sub-device or follow these steps to create a sub-device. In the IoT Platform console, choose Devices -> Products, click Create Product, and select Gateway Sub-device in the Node Type field. After you create the sub-device, you can add the sub-device. For more information, see CreateProduct.

iot.device.Disabled The specified sub-device is disabled.

Error codes for drivers

An error code that starts with iot.driver, iot.edge.driver, or iot.edge.Driver indicates an error related to a driver.

Error code Description
iot.edge.DriverNotExist The specified driver does not exist.

You must specify a valid driver. Try again later.

iot.edge.DriverNumLimitation The number of custom drivers exceeds the limit.

You can use an Alibaba Cloud account to create a maximum of 50 custom drivers. To create a custom driver, follow these steps. Log on to the IoT Platform console, choose Link IoT Edge > Drivers, select the Custom Driver tab, and click Create Driver to create a custom driver.

iot.edge.DriverNameProtocolRuntimeCpuArchMustBeUnique The driver name, communication protocol, programming language, and CPU architecture that you specified are the same as those of the custom driver.

You can differentiate between custom drivers based on the driver name, communication protocol, programming language, or CPU architecture. For example, if the driver name, programming language, and communication protocol for two custom drivers are the same, the CPU architecture must be different.

iot.edge.DriverVersionNotExist The driver version that you specified for the custom driver does not exist.

You must specify a valid driver version. Try again later.

iot.edge.DriverVersionAlreadyExist The version that you specified for the custom driver already exists.

You must specify a valid version. Try again later.

iot.edge.DriverOssContentNotExist The driver does not exist in the specified OSS bucket.

You must specify a valid OSS bucket or ensure the driver is uploaded to the OSS bucket.

iot.edge.DriverVersionLimitation The number of versions that you want to create for the driver exceeds the limit.

You can create a maximum of 10 versions for each driver.

iot.edge.DriverHasReleasedVersion The driver has a released version.

If a driver has a released version, you cannot delete the driver.

iot.edge.DriverVersionAlreadyBindToInstance A version for the driver is assigned to the edge instance.

If a driver version is assigned to an edge instance, you cannot delete the related driver.

iot.edge.DriverVersionHasBeenReleased The driver version is already released. You cannot release it again.
iot.edge.DriverAlreadyBindToInstance The driver is assigned to the edge instance.
iot.edge.DriverNotBindToInstance The specified driver does not exist in the edge instance.

You must attach the driver to the edge instance. Try again later.

iot.edge.DriverHasDevice The sub-device is associated with the driver.

If a driver is associated with a sub-device, you cannot remove the driver from the edge instance. Try again after you remove all sub-devices of the driver.

iot.edge.DriverConfigIllegal The format of the parameter that you specified for the driver configuration is invalid.

You must specify a valid format.

iot.edge.ReleasedVersionCannotBeDeletedOrModified Failed to delete or modify the version for the driver because the version is released.
iot.edge.PurchasedDriverCannotAccessUnreleasedVersion Failed to view the version for the purchased driver because the version has not been released.

You must first release the version. Try again later.

Error codes for deployment tasks

An error code that starts with iot.edge.deploy indicates an error related to a deployment task.

Error code Description
iot.edge.deploySheetAlreadyExist The deployment of the edge instance is in progress.

You cannot perform the operation because the deployment of the edge instance is in progress. Try again later.

iot.edge.deploySheetAlreadyFinish All deployment tasks are completed.
iot.edge.deploySheetNotExist The deployment task that you specified does not exist.

You must specify a valid deployment task. Try again later.