
# 错误码
#### 功能说明
公有云的扩展接口发生400、500等错误时，会有自定义错误信息返回，本章节为您介绍每个错误码的含义。
#### 返回体格式
- HTTP状态码
 
```
400
```
- 返回体样例
```
{
     "error_code": 104902,
     "error_desc": "get cloud CA Certificates exceptions"
}
```
#### 错误码说明
当您调用API时，如果遇到"APIGW"开头的错误码，请参见[API网关错误码](https://support.huaweicloud.com/devg-apisign/api-sign-errorcode.html)进行处理。
| 状态码 | 错误码          | 错误信息                                                                  | 描述                       | 处理措施                       |
|:---|:---|:---|:---|:---|
| 400 | IoTDP.100001 | The resource size exceed the limit.                                   | 文件大小超出限制                 | 请上传大小满足要求的文件               |
| 400 | IoTDP.100002 | The resource-suffix is wrong.                                         | 文件后缀错误                   | 请确认文件类型是否正确，并上传文件类型满足要求的文件 |
| 400 | IoTDP.100101 | User not found.                                                       | 用户不存在                    | 请确认用户信息是否填写正确              |
| 400 | IoTDP.100102 | the user not available.                                               | 用户当前不可用                  | 请确认用户状态是否可用                |
| 400 | IoTDP.100104 | password must meet complexity requirements.                           | 密码复杂度不满足要求               | 请确认密码是否满足复杂度要求             |
| 400 | IoTDP.100105 | username already exists.                                              | 用户已存在                    | 请确认用户是否已存在                 |
| 400 | IoTDP.100106 | user need update password.                                            | 密码需要更新                   | 请及时更新密码                    |
| 400 | IoTDP.100109 | NO BEAR TYPE AUTHORIZATION HEADER                                     | 无头部凭证类型                  | 请确认凭证是否有效                  |
| 400 | IoTDP.100110 | WRONG TOKEN TYPE.                                                     | 凭证类型错误                   | 请确认凭证类型是否正确                |
| 400 | IoTDP.100121 | length of userId must not be empty and within 128.                    | 用户ID长度不能为空且不大于128个字符     | 请确认用户信息是否正确                |
| 400 | IoTDP.100202 | Invalid input device name.                                            | 设备名称非法                   | 请填写正确的设备名称                 |
| 400 | IoTDP.100203 | Exceed device num of batch reg                                        | 超出批量注册设备数量限制             | 请检查模板内的设备数量是否超出限制          |
| 400 | IoTDP.100204 | Invalid input. The device already exists.                             | 设备已存在                    | 请确认设备信息填写是否正确              |
| 400 | IoTDP.100205 | LWM2M safety devices psk or bootstrapPsk is empty.                    | LWM2M设备PSK填写错误           | 请确认设备秘钥是否填写正确              |
| 400 | IoTDP.100206 | Secret auth device cannot use certificates strategy.                  | 密钥认证设备无法使用证书策略           | 请确认设备的策略类型和认证方式的正确性        |
| 400 | IoTDP.100210 | Device not exists.                                                    | 设备不存在                    | 请确认设备信息填写是否正确              |
| 400 | IoTDP.100211 | node id already exists.                                               | 设备标识码已存在                 | 请确认设备信息填写是否正确              |
| 400 | IoTDP.100212 | Device cannot update.                                                 | 设备信息不可更新                 | 当前设备信息不可更新                 |
| 400 | IoTDP.100213 | delete device on iothub failed.                                       | 删除设备失败                   | 请联系服务管理员                   |
| 400 | IoTDP.100214 | device reg template file is invalid.                                  | 设备注册模板不合法                | 请确认设备注册模板是否正确              |
| 400 | IoTDP.100215 | cert name is exist                                                    | 证书名已存在                   | 请确认证书信息是否正确                |
| 400 | IoTDP.100216 | certificate parsing error                                             | 证书解析失败                   | 请确认证书内容是否正确                |
| 400 | IoTDP.100217 | certificate already exists                                            | 证书已存在                    | 请更换证书                      |
| 400 | IoTDP.100218 | certificate already use                                               | 证书正在使用，不可删除              | 当前证书不可删除                   |
| 400 | IoTDP.100219 | cert's number exceeding the limit.                                    | 证书数量超出限制                 | 请确认是否超出限制                  |
| 400 | IoTDP.100220 | cert is not exist.                                                    | 证书不存在                    | 请确认证书信息是否正确                |
| 400 | IoTDP.100221 | certificate is not in the certificate center                          | 证书在证书中心不存在               | 请联系服务管理员                   |
| 400 | IoTDP.100222 | set hashvalue failed. input is invalid or hashflag not open.          | 设置hash值失败，输入无效或hash开关未打开 | 请确认设备证书hash是否正确或hash开关是否打开 |
| 400 | IoTDP.100223 | get cert from cert center failed。                                     | 从证书中心获取证书失败              | 请联系服务管理员                   |
| 400 | IoTDP.100224 | response error from cert center.                                      | 证书中心返回失败                 | 请联系服务管理员                   |
| 400 | IoTDP.100225 | verify CA cert by certificate error.                                  | 证书校验失败                   | 请确认证书是否正确                  |
| 400 | IoTDP.100226 | cert commonName is null.                                              | 证书CommonName为空           | 请检查使用的证书的CommonName是否为空    |
| 400 | IoTDP.100301 | product not exist.                                                    | 产品不存在                    | 请确认产品信息是否填写正确              |
| 400 | IoTDP.100302 | the product has been used.                                            | 产品正在使用，不可删除              | 当前产品不可删除                   |
| 400 | IoTDP.100303 | The product already exists.                                           | 产品已存在                    | 请确认产品信息是否填写正确              |
| 400 | IoTDP.100304 | Private product install failed.                                       | 私有产品安装失败                 | 请联系服务管理员                   |
| 400 | IoTDP.100305 | Product install failed.                                               | 产品安装失败                   | 请联系服务管理员                   |
| 400 | IoTDP.100306 | Create product in iotdm error.                                        | 接入点创建产品失败                | 请联系服务管理员                   |
| 400 | IoTDP.100401 | strategy case already exists.                                         | 策略实例已存在                  | 请确认策略信息是否填写正确              |
| 400 | IoTDP.100402 | release task not exist.                                               | 发放任务不存在                  | 请确认发放任务是否存在                |
| 400 | IoTDP.100403 | task cannot stop.                                                     | 任务不能启动                   | 请确认任务状态是否正常                |
| 400 | IoTDP.100404 | STRATEGY_NOT_EXIST.                                                   | 策略不存在                    | 请确认策略信息是否填写正确              |
| 400 | IoTDP.100405 | TASK_CANNOT_START.                                                    | 任务不能启动                   | 请确认任务状态是否正常                |
| 400 | IoTDP.100406 | access_point not exist.                                               | 接入点不存在                   | 请填写正确的接入点信息                |
| 400 | IoTDP.100407 | strategy exceed limit:0-20.                                           | 策略数量超出限制                 | 请确认是否超出限制                  |
| 400 | IoTDP.100408 | access point not exist or not active.                                 | 接入点不存在或未激活               | 请填写正确的接入点信息                |
| 400 | IoTDP.100410 | strategy type is invalid.                                             | 策略类型无效                   | 请填写正确的策略类型                 |
| 400 | IoTDP.100411 | function urn not exist.                                               | 函数不存在                    | 请填写正确的函数信息                 |
| 400 | IoTDP.100412 | function urn is exist by this domain.                                 | 函数名已存在                   | 请填写正确的函数信息                 |
| 400 | IoTDP.100413 | strategy already used by device or register group.                    | 策略实例使用中                  | 请确认该策略实例是否已被设备或注册组使用       |
| 400 | IoTDP.100414 | there is no strategy matching device.                                 | 未匹配到策略实例                 | 请确认是否存在能够被设备匹配到的策略实例       |
| 400 | IoTDP.100415 | there is no strategy of this type.                                    | 该策略类型无策略实例               | 请检查该策略类型是否存在可用的策略实例        |
| 400 | IoTDP.100501 | IoTHub server exception.                                              | 设备管理服务内部异常               | 请联系服务管理员                   |
| 400 | IoTDP.100502 | Current access points have no available applications                  | 当前接入点无可用应用               | 请联系服务管理员                   |
| 400 | IoTDP.100503 | app info not right.                                                   | 应用信息填写错误                 | 请填写正确的应用信息                 |
| 400 | IoTDP.100505 | Reset DeviceFingerprint is fail.                                      | 向设备接入服务重置设备证书指纹失败        | 请联系服务管理员                   |
| 400 | IoTDP.100701 | ResourceManager Region server exception.                              | 查询可用区域异常                 | 请联系服务管理员                   |
| 400 | IoTDP.100702 | ResourceManager Region AppCode is null or empty                       | 查询可用区域异常                 | 请联系服务管理员                   |
| 400 | IoTDP.100901 | captcha is error                                                      | 短信验证码校验失败                | 请确认短信验证码是否正确               |
| 400 | IoTDP.100902 | captcha is invalid                                                    | 短信验证码已失效                 | 请确认短信验证码的时效                |
| 400 | IoTDP.100903 | captcha's number exceeding the limit                                  | 验证码发送次数已达上限              | 请稍后重试                      |
| 400 | IoTDP.100906 | address is null                                                       | 服务与消息中心交互异常              | 请联系服务管理员                   |
| 400 | IoTDP.100907 | build captcha fail                                                    | 发送验证码失败                  | 请联系服务管理员                   |
| 400 | IoTDP.100908 | already has a captcha                                                 | 验证码已发送                   | 请查收已发送的验证码                 |
| 400 | IoTDP.100909 | authorizing user not found.                                           | 授权租户不存在                  | 请确认授权租户是否存在                |
| 400 | IoTDP.100910 | authorizing user not available.                                       | 授权租户状态不可用                | 请确认授权租户是否可用                |
| 400 | IoTDP.100911 | send captcha count exceeding the limit.try again in a minute          | 发送的验证码数量超过限制。请在一分钟后重试    | 请在一分钟后重试                   |
| 400 | IoTDP.102001 | jwt token is illegal                                                  | JWT凭证无效                  | 请确认凭证是否有效                  |
| 400 | IoTDP.104601 | device can't support bootstrap parameter,please change profile        | 设备不支持引导参数，请修改设备Profile   | 请修改设备Profile               |
| 400 | IoTDP.104603 | only allocated device can trigger bootstrap                           | 已发放设备才能重引导               | 请确认设备是否已发放                 |
| 400 | IoTDP.104701 | flow control user info is not exist                                   | 用户不存在流控信息                | 请确认用户是否存在流控信息              |
| 400 | IoTDP.104702 | flow control info is not exist                                        | 流控信息不存在                  | 请确认是否已存在该流控信息              |
| 400 | IoTDP.104703 | consoleUser is not administrator account                              | 用户不为流控管理员用户              | 请联系服务管理员                   |
| 400 | IoTDP.104704 | consoleUser is exist                                                  | 用户流控信息已存在                | 请确认用户是否已存在流控信息             |
| 400 | IoTDP.104801 | register_group is exist                                               | 注册组已存在                   | 请确认注册组信息填写是否正确             |
| 400 | IoTDP.104802 | register_group not exist.                                             | 注册组不存在                   | 请确认注册组是否存在                 |
| 400 | IoTDP.104803 | register_group 's number exceeding the limit.                         | 注册组数量已达上限                | 请确认注册组数量是否已达上限             |
| 400 | IoTDP.104804 | cert is used by register_group                                        | 证书已被注册组使用                | 请确认证书是否已被注册组关联             |
| 400 | IoTDP.104805 | only support functions                                                | 仅支持自定义策略                 | 请确认策略类型是否正确                |
| 400 | IoTDP.104806 | register_group's cert is not exist                                    | 注册组关联的CA证书不存在            | 请确认注册组关联的证书是否存在            |
| 400 | IoTDP.104807 | initConfig is not json                                                | 初始化配置信息格式不为JSON          | 请确认填入的初始化配置信息格式是否正确        |
| 400 | IoTDP.104901 | cloudCertificates address is empty                                    | 服务与云证书服务交互异常             | 请联系服务管理员                   |
| 400 | IoTDP.104902 | get cloud CA Certificates exceptions                                  | 向云证书服务获取CA证书失败           | 请联系服务管理员                   |
| 400 | IoTDP.104903 | creat cloud device Certificates exceptions                            | 向云证书服务创建设备证书失败           | 请联系服务管理员                   |
| 400 | IoTDP.104904 | device cert name is exist                                             | 设备证书名已存在                 | 请确认设备证书名填写是否正确             |
| 400 | IoTDP.104905 | delete cloud device Certificates exceptions                           | 向云证书服务删除设备证书失败           | 请联系服务管理员                   |
| 400 | IoTDP.104906 | device cert Validity is bad                                           | 设备证书有效期填写错误              | 请确认设备证书有效期是否符合要求           |
| 400 | IoTDP.104907 | device cert is not exist                                              | 设备证书不存在                  | 请确认设备证书是否存在                |
| 400 | IoTDP.105001 | Authorization is not exist                                            | 授权关系不存在                  | 请确认授权关系是否存在                |
| 400 | IoTDP.105002 | Authorization is existed                                              | 授权关系已存在                  | 请确认授权关系是否已存在               |
| 400 | IoTDP.105003 | authorizee and authorizer are the same                                | 授权租户和被授权租户不能相同           | 请确认授权租户和被授权租户填写是否正确        |
| 400 | IoTDP.105004 | authorizingDomainId and authorizingUserName is null                   | 授权租户的账号名和账号ID均为空         | 请填写正确的账号名或账号ID             |
| 400 | IoTDP.105005 | Authorization is not enabled                                          | 授权关系不可用                  | 请确认授权关系是否已启用               |
| 400 | IoTDP.105006 | authorized user is not allowed to modify                              | 被授权用户不允许修改授权关系           | 请确认当前登录用户是否是授权用户           |
| 400 | IoTDP.200001 | Request parameter is invalid                                          | 参数无效                     | 请确认输入参数是否正确                |
| 400 | IoTDP.200007 | request exceed limit                                                  | 请求超出限制                   | 请稍后尝试                      |
| 401 | IoTDP.100107 | NO AUTHORIZATION HEADER                                               | HTTP头缺少鉴权信息              | 请确认头部鉴权信息是否填写正确            |
| 401 | IoTDP.100108 | INVALID AUTHORIZATION HEADER                                          | 头部鉴权信息非法                 | 请确认头部鉴权信息是否填写正确            |
| 401 | IoTDP.200003 | sys bad request                                                       | 系统内部错误                   | 请联系服务管理员                   |
| 403 | IoTDP.100103 | user and password not match.                                          | 用户名或用户密码不匹配              | 请填写正确的用户名和密码               |
| 403 | IoTDP.100122 | requested project not valid in IoTProvisioning.                       | 请求的项目ID与服务开通的项目ID不匹配     | 请联系服务管理员                   |
| 403 | IoTDP.104420 | project in token not match the requested project                      | 请求的项目与用户token中携带的项目信息不匹配 | 请确认项目信息或token信息填写是否正确      |
| 403 | IoTDP.104421 | user in token not match user in request                               | 权限错误                     | 请检查权限是否正确                  |
| 404 | IoTDP.104437 | agency not exist                                                      | 委托不存在                    | 请确认委托是否已建立                 |
| 500 | IoTDP.100201 | Cannot fetch template file.                                           | 获取模板文件失败                 | 请联系服务管理员                   |
| 500 | IoTDP.100230 | push cert to iothub error.                                            | 发放证书失败                   | 请联系服务管理员                   |
| 500 | IoTDP.100310 | Product center server exception                                       | 产品中心服务不可用                | 请联系服务管理员                   |
| 500 | IoTDP.100409 | Fail to query access point by device ip.                              | 根据设备IP查询设备接入点失败          | 请联系服务管理员                   |
| 500 | IoTDP.100504 | get app info from iothub error.                                       | 获取应用信息失败                 | 请联系服务管理员                   |
| 500 | IoTDP.100601 | Call APIG exception.                                                  | 服务与APIG交互异常              | 请联系服务管理员                   |
| 500 | IoTDP.100703 | ResourceManager Region Request, the domainId or accessPointId is null | 查询可用区域参数错误               | 请联系服务管理员                   |
| 500 | IoTDP.102002 | jwt token address is empty                                            | 服务与APIGW交互异常             | 请联系服务管理员                   |
| 500 | IoTDP.102003 | jwt token getting exceptions                                          | 服务与APIGW交互异常             | 请联系服务管理员                   |
| 500 | IoTDP.102004 | jwt public key analytical error                                       | 服务与APIGW交互异常             | 请联系服务管理员                   |
| 500 | IoTDP.102005 | jwt token is invalid                                                  | JWT凭证无效                  | 请确认凭证是否有效                  |
| 500 | IoTDP.102006 | jwt token is expired                                                  | JWT凭证已失效                 | 请确认JWT凭证的有效性               |
| 500 | IoTDP.102010 | get jwk error                                                         | 服务与APIGW交互异常             | 请联系服务管理员                   |
| 500 | IoTDP.102011 | get jwk exception                                                     | 服务与APIGW交互异常             | 请联系服务管理员                   |
| 500 | IoTDP.102012 | get jwk response error                                                | 服务与APIGW交互异常             | 请联系服务管理员                   |
| 500 | IoTDP.103000 | invalid IAM service                                                   | 服务与IAM交互异常               | 请联系服务管理员                   |
| 500 | IoTDP.103001 | invalid token                                                         | 不合法的token                | 请确认token填写正确               |
| 500 | IoTDP.103002 | empty token                                                           | token为空                  | 请确认token填写正确               |
| 500 | IoTDP.103003 | error token                                                           | token错误                  | 请确认token填写正确               |
| 500 | IoTDP.104401 | send get CA pem request error                                         | 服务与IAM交互异常               | 请联系服务管理员                   |
| 500 | IoTDP.104402 | get CA pem response error                                             | 服务与IAM交互异常               | 请联系服务管理员                   |
| 500 | IoTDP.104403 | send get iam signing pem request error                                | 服务与IAM交互异常               | 请联系服务管理员                   |
| 500 | IoTDP.104404 | send get iam signing pem request error                                | 服务与IAM交互异常               | 请联系服务管理员                   |
| 500 | IoTDP.104411 | verify token failed                                                   | 校验token失败                | 请联系服务管理员                   |
| 500 | IoTDP.104412 | resign token request failed                                           | 换取token失败                | 请联系服务管理员                   |
| 500 | IoTDP.104413 | resign token response error                                           | 换取token失败                | 请联系服务管理员                   |
| 500 | IoTDP.104414 | token does not have any user info                                     | token内无用户信息              | 请确认token填写正确               |
| 500 | IoTDP.104415 | token does not have any project info                                  | token内无项目信息              | 请确认token填写正确               |
| 500 | IoTDP.104416 | token does not have any domain info                                   | token内无账户信息              | 请确认token填写正确               |
| 500 | IoTDP.104417 | get token request failed                                              | 获取IAM token失败            | 请联系服务管理员                   |
| 500 | IoTDP.104418 | get token response error                                              | 获取IAM token失败            | 请联系服务管理员                   |
| 500 | IoTDP.104419 | response have no x-subject-token header                               | 响应中无x-subject-token      | 请联系服务管理员                   |
| 500 | IoTDP.104431 | send agency create request failed                                     | 创建委托失败                   | 请联系服务管理员                   |
| 500 | IoTDP.104432 | create agency failed                                                  | 创建委托失败                   | 请联系服务管理员                   |
| 500 | IoTDP.104433 | send agency delete request failed                                     | 删除委托失败                   | 请联系服务管理员                   |
| 500 | IoTDP.104434 | send agency token get request failed                                  | 获取委托Token失败              | 请联系服务管理员                   |
| 500 | IoTDP.104435 | get agency token failed                                               | 获取委托Token失败              | 请联系服务管理员                   |
| 500 | IoTDP.104436 | query agency detail by id failed                                      | 查询委托Token失败              | 请联系服务管理员                   |
| 500 | IoTDP.104438 | agency already expired                                                | 委托已过期                    | 请重新创建委托                    |
| 500 | IoTDP.104441 | query role list error                                                 | 查询IAM系统角色失败              | 请联系服务管理员                   |
| 500 | IoTDP.104442 | grant role to agency error                                            | 授予委托权限失败                 | 请联系服务管理员                   |
| 500 | IoTDP.104443 | query policy list error                                               | 获取委托权限失败                 | 请联系服务管理员                   |
| 500 | IoTDP.104444 | query agency roles list error                                         | 获取委托权限失败                 | 请联系服务管理员                   |
| 500 | IoTDP.104445 | could not find agency error                                           | 校验委托权限失败                 | 请联系服务管理员                   |
| 500 | IoTDP.104501 | function address is empty                                             | 服务与函数服务交互异常              | 请联系服务管理员                   |
| 500 | IoTDP.104502 | function getting exceptions                                           | 调用函数服务失败                 | 请联系服务管理员                   |
| 500 | IoTDP.104503 | get function graph admin role error                                   | 获取函数服务管理员权限失败            | 请联系服务管理员                   |
| 500 | IoTDP.104504 | get function graph policies error                                     | 获取函数服务/设备接入服务角色失败        | 请联系服务管理员                   |
| 500 | IoTDP.104505 | get function graph agency roles error                                 | 创建函数服务委托角色失败             | 请联系服务管理员                   |
| 500 | IoTDP.104602 | BootStrap error                                                       | 重引导失败                    | 请联系服务管理员                   |
| 500 | IoTDP.200002 | System runtime exception.                                             | 系统内部错误                   | 请联系服务管理员                   |
| 500 | IoTDP.200004 | proxy host exception                                                  | 内部网络配置错误                 | 请联系服务管理员                   |
| 500 | IoTDP.200005 | IOM Internal server error.                                            | 内部服务错误                   | 请联系服务管理员                   |
| 500 | IoTDP.200006 | sys iom disconnected exception                                        | 内部网络连接错误                 | 请联系服务管理员                   |
   
