查询设备
接口说明
应用服务器可调用此接口查询物联网平台中指定设备的详细信息。
调试
您可以在API Explorer中直接运行调试该接口。
URI
| 请求方法 | GET |
|---|---|
| URI | /v5/iot/{project_id}/devices/{device_id} |
| 传输协议 | HTTPS |
请求参数
| 名称 | 必选/可选 | 类型 | 位置 | 说明 |
|---|---|---|---|---|
| X-Auth-Token | 必选 | String | Header | 参数说明:用户Token。通过调用IAM服务 获取IAM用户Token接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。简要的获取方法样例请参见 Token认证。 |
| Instance-Id | 可选 | String | Header | 参数说明:实例ID。物理多租下各实例的唯一标识,一般华为云租户无需携带该参数,仅在物理多租场景下从管理面访问API时需要携带该参数。 |
| project_id | 必选 | String | Path | 参数说明:项目ID。获取方法请参见 获取项目ID。 |
| device_id | 必选 | String | Path | 参数说明:设备ID,用于唯一标识一个设备。在注册设备时直接指定,或者由物联网平台分配获得。由物联网平台分配时,生成规则为"product_id" + "_" + "node_id"拼接而成。 取值范围:长度不超过128,只允许字母、数字、下划线(_)、连接符(-)的组合。 |
响应参数
| 名称 | 类型 | 说明 |
|---|---|---|
| app_id | String | 资源空间ID。 |
| app_name | String | 资源空间名称。 |
| device_id | String | 设备ID,用于唯一标识一个设备。在注册设备时直接指定,或者由物联网平台分配获得。由物联网平台分配时,生成规则为"product_id" + "_" + "node_id"拼接而成。 |
| node_id | String | 设备标识码,通常使用IMEI、MAC地址或Serial No作为node_id。 |
| gateway_id | String | 网关ID,用于标识设备所属的父设备,即父设备的设备ID。当设备是直连设备时,gateway_id与设备的device_id一致。当设备是非直连设备时,gateway_id为设备所关联的父设备的device_id。 |
| device_name | String | 设备名称。 |
| node_type | String | 设备节点类型。
|
| description | String | 设备的描述信息。 |
| fw_version | String | 设备的固件版本。 |
| sw_version | String | 设备的软件版本。 |
| device_sdk_version | String | 设备的sdk信息。 |
| auth_info | AuthInfo Object | 设备的接入认证信息。 |
| product_id | String | 设备关联的产品ID,用于唯一标识一个产品模型。 |
| product_name | String | 设备关联的产品名称。 |
| status | String | 设备的状态。
|
| create_time | String | 在物联网平台注册设备的时间。格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。 |
| extension_info | Object | 设备扩展信息。用户可以自定义任何想要的扩展信息,如果在创建设备时为子设备指定该字段,将会通过MQTT接口“平台通知网关子设备新增“将该信息通知给网关。 |
| 名称 | 类型 | 说明 |
|---|---|---|
| auth_type | String | 参数说明:鉴权类型。注意:不填写auth_type默认为密钥认证接入方式(SECRET)。 取值范围:
|
| secret | String | 参数说明:设备密钥,认证类型使用密钥认证接入(SECRET)可填写该字段。注意:NB设备密钥由于协议特殊性,只支持十六进制密钥接入;查询设备列表接口不返回该参数。 取值范围:长度不低于8不超过32,只允许字母、数字、下划线(_)、连接符(-)的组合。 |
| fingerprint | String | 参数说明:证书指纹,认证类型使用证书认证接入(CERTIFICATES)可填写该字段,注册设备时不填写该字段则取第一次设备接入时的证书指纹。 取值范围:长度为40的十六进制字符串或者长度为64的十六进制字符串。 |
| secure_access | Boolean | 参数说明:指设备是否通过安全协议方式接入。默认值为true。 取值范围:
|
| timeout | Integer | 参数说明:设备接入的有效时间,单位:秒,默认值:0 若设备在有效时间内未接入物联网平台并激活,则平台会删除该设备的注册信息。若设置为“0”,则表示平台不会删除该设备的注册信息(建议填写为“0”)。 注意:只有注册设备接口或者修改设备接口修改timeout时返回该参数。 |
请求示例
GET https://{Endpoint}/v5/iot/{project_id}/devices/{device_id}
Content-Type: application/json
X-Auth-Token: ********
Instance-Id: ********
响应示例
Status Code: 200 OK
Content-Type: application/json
{
"app_id" : "jeQDJQZltU8iKgFFoW060F5SGZka",
"app_name" : "testAPP01",
"device_id" : "d4922d8a-6c8e-4396-852c-164aefa6638f",
"node_id" : "ABC123456789",
"gateway_id" : "d4922d8a-6c8e-4396-852c-164aefa6638f",
"device_name" : "dianadevice",
"node_type" : "ENDPOINT",
"description" : "watermeter device",
"fw_version" : "1.1.0",
"sw_version" : "1.1.0",
"auth_info" : {
"auth_type" : "SECRET",
"secret" : "3b935a250c50dc2c6d481d048cefdc3c",
"fingerprint" : "dc0f1016f495157344ac5f1296335cff725ef22f",
"secure_access" : true,
"timeout" : 0
},
"product_id" : "b640f4c203b7910fc3cbd446ed437cbd",
"product_name" : "Thermometer",
"status" : "INACTIVE",
"create_time" : "20190303T081011Z",
"tags" : [ {
"tag_key" : "testTagName",
"tag_value" : "testTagValue"
} ],
"extension_info" : {
"aaa" : "xxx",
"bbb" : 0
}
} 错误码
| HTTP状态码 | 错误码 | 错误码英文描述 | 错误码中文描述 | 处理建议 |
|---|---|---|---|---|
| 403 | IOTDA.000022 | Operation not allowed. The user does not have the permission | 该用户没有权限 | 请排查该用户是否有权限访问。 |
| IOTDA.001000 | The application does not exist. | 该应用不存在 | 请确定是否已在平台注册应用并检查应用ID是否正确。 | |
| IOTDA.001002 | Operation not allowed. The application has not been authorized. | 该应用没有权限访问 | 请检查该应用是否已被授权。 | |
| 404 | IOTDA.014000 | The device does not exist. | 设备不存在 | 请排查请求参数是否有误并确认是否有在平台注册该设备。 |
Did this article solve your problem?
Thank you for your score!Your feedback would help us improve the website.