V2.0 List Certificate¶
显示设备绑定的证书列表。
该 API 支持在 EnOS 2.1.0 及以上环境中使用。
操作权限¶
确保已获取调用该 API 的权限。更多信息,参见 获取 API 调用权限。
请求格式¶
GET https://{apigw-address}/connect-service/v2.0/certificates?action=list
请求参数 (URI)¶
备注
以下非必需字段中,必须提供 assetId 或 productKey + deviceKey 的组合,用于指定证书。
名称  | 
位置(Path/Query)  | 
必需/可选  | 
数据类型  | 
描述  | 
|---|---|---|---|---|
orgId  | 
Query  | 
必需  | 
String  | 
证书所属的 OU ID。如何获取 orgId 信息>>  | 
assetId  | 
Query  | 
可选(见上述注解)  | 
String  | 
证书 ID。如何获取 assetId 信息>>  | 
productKey  | 
Query  | 
可选(见上述注解)  | 
String  | 
证书的 product key,需与   | 
deviceKey  | 
Query  | 
可选(见上述注解)  | 
String  | 
证书的 device key,需与   | 
响应参数¶
名称  | 
数据类型  | 
描述  | 
|---|---|---|
data  | 
DeviceCertDetailInfo 结构体数组  | 
返回的证书列表。在大多数情况下,只有一个证书会被返回。如果产品有一批证书,只有一个是有效的。有关 DeviceCertDetailInfo 的定义,见   | 
DeviceCertDetailInfo 结构体¶
名称  | 
数据类型  | 
描述  | 
|---|---|---|
certSN  | 
String  | 
证书编号。  | 
cert  | 
String  | 
申请到的证书内容。  | 
certStatus  | 
Integer  | 
证书状态: - 0: Valid - 1: Revoked - 2: Expired  | 
issuer  | 
String  | 
签发者信息。  | 
subject  | 
String  | 
请求主体信息。  | 
signDate  | 
long  | 
签发时间时间戳。  | 
effectiveDate  | 
long  | 
证书开始生效的时间戳。  | 
expireDate  | 
long  | 
证书过期的时间戳。  | 
revoker  | 
String  | 
  | 
revokerReason  | 
String  | 
  | 
错误码¶
代码  | 
类型  | 
描述  | 
解决方法  | 
|---|---|---|---|
99400  | 
invalid argument: Device identifier is invalid  | 
设备标识符无效。  | 
在请求中声明   | 
99400  | 
Call ca error!: Certificate service err info:, code: (code), message: (message content), detail message: (detailed message content)  | 
调用EnOS证书服务参数异常。  | 
详细错误信息原因由message或 detail message给出。  | 
99400  | 
Query cert is failed!message: (message content), detail message: (detailed message content)  | 
查询证书失败。  | 
详细错误信息原因由message或 detail message给出。  | 
99400  | 
When calling Certificate Services, the call parameters are invalid.message: (message content), detail message: (detailed message content)  | 
当调用证书服务时,调用参数无效。  | 
详细错误信息原因由message或 detail message给出。  | 
11404  | 
Device cannot be found  | 
设备未找到。  | 
确认该设备确实存在。  | 
99500  | 
Internal error of certificate service  | 
设备连接与管理证书服务内部错误。  | 
联系管理员。  | 
99500  | 
Internal error of product service.  | 
设备连接与管理产品服务内部错误。  | 
联系管理员。  | 
99500  | 
Internal error of IoT hub service  | 
设备连接与管理内部服务错误。  | 
联系管理员。  | 
示例¶
请求示例¶
url: https://{apigw-address}/connect-service/v2.0/certificates?action=list&assetId=yourAssetId&orgId=youOrgId
method: GET
响应示例¶
{
    "code": 0,
    "msg": "OK",
    "requestId": "318d8b1f-1f27-4dd4-8299-b75a2015d425",
    "data": [
        {
            "certSN": "52725",
            "cert": "52725",
            "certStatus": 1,
            "issuer": "EMAILADDRESS=ca@eniot.io, CN=EnOS CA, OU=EnOS CA, O=EnOS, L=Shanghai, ST=Shanghai, C=CN",
            "subject": "EMAILADDRESS=xT7EaR, OU=EnOS, CN=xMen1, O=EnOS, L=Shanghai, ST=Shanghai, C=CN",
            "signDate": 1581216505000,
            "effetiveDate": 1581216505000,
            "expireDate": 1582080505000,
            "revoker": "IoT_Hub",
            "revokerReason": "KEY COMPROMISE",
            "isEnosCert": true,
            "issueAuthority": "RSA"
        },
        {
            "certSN": "52726",
            "cert": "52726",
            "certStatus": 0,
            "issuer": "EMAILADDRESS=ca@eniot.io, CN=EnOS ECC CA, OU=EnOS, O=EnOS, L=Shanghai, ST=Shanghai, C=CN",
            "subject": "EMAILADDRESS=uKGdK, OU=EnOS, CN=yPI9z8z, O=EnOS, L=Shanghai, ST=Shanghai, C=CN",
            "signDate": 1581218161000,
            "effetiveDate": 1581218161000,
            "expireDate": 1582082161000,
            "audit": {
                "createBy": "youOrgId",
                "createTime": 1581218161773,
                "updateBy": "youOrgId",
                "updateTime": 1581218161773,
                "ns": "youOrgId",
                "deleted": false
            },
            "revoker": "",
            "revokerReason": "",
            "isEnosCert": true,
            "issueAuthority": "ECC"
        },
        {
            "certSN": "52727",
            "cert": "52727",
            "certStatus": 2,
            "issuer": "EMAILADDRESS=ca@eniot.io, CN=EnOS ECC CA, OU=EnOS, O=EnOS, L=Shanghai, ST=Shanghai, C=CN",
            "subject": "EMAILADDRESS=xT7EaR, OU=EnOS, CN=xMen1, O=EnOS, L=Shanghai, ST=Shanghai, C=CN",
            "signDate": 1581234648000,
            "effetiveDate": 1581234648000,
            "expireDate": 1581493848000,
            "revoker": "",
            "revokerReason": "",
            "isEnosCert": true,
            "issueAuthority": "ECC"
        }
    ]
}
SDK 示例¶
你可以在 Github 上获取接入服务的 SDK 示例: