
# 查询设备列表
#### 功能介绍
应用服务器可调用此接口查询物联网平台中的设备信息列表。
#### URI
GET /v5/iotps/{project_id}/devices
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                           |
|:---|:---|:---|:---|
| project_id | 是    | String | 项目ID。 最小长度：**1** 最大长度：**32** |
表2Query参数 
| 参数          | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| product_id  | 否    | String  | 设备关联的产品ID，用于唯一标识一个产品模型，在管理门户导入产品模型后由平台分配获得。 最小长度：**1** 最大长度：**36**                                                                                                                                                                                   |
| gateway_id  | 否    | String  | 网关ID，用于标识一个网关设备。当设备是直连设备时，gatewayId与设备的deviceId一致。当设备是非直连设备时，gatewayId为设备所关联的直连设备（即网关）的deviceId。 最小长度：**1** 最大长度：**128**                                                                                                                             |
| node_id     | 否    | String  | 设备标识码，通常使用IMEI、MAC地址或Serial No作为node_id。 最小长度：**1** 最大长度：**64**                                                                                                                                                                                      |
| device_name | 否    | String  | 设备名称。 最小长度：**1** 最大长度：**256**                                                                                                                                                                                                                        |
| limit       | 否    | Integer | 分页查询时每页显示的记录数，默认值为10，取值范围为1-50的整数。 最小值：**1** 最大值：**50** 缺省值：**10**                                                                                                                                                                                   |
| marker      | 否    | String  | 上一次分页查询结果中最后一条记录的ID，在上一次分页查询时由物联网平台返回获得。分页查询时物联网平台是按marker也就是记录ID降序查询的，越新的数据记录ID也会越大。若填写marker，则本次只查询记录ID小于marker的数据记录。若不填写，则从记录ID最大也就是最新的一条数据开始查询。如果需要依次查询所有数据，则每次查询时必须填写上一次查询响应中的marker值。 缺省值：**999999999999999999999999** 最小长度：**24** 最大长度：**24** |
| start_time  | 否    | String  | 查询设备注册时间在startTime之后的记录，格式：yyyyMMdd'T'HHmmss'Z'，如20151212T121212Z。                                                                                                                                                                                   |
| end_time    | 否    | String  | 查询设备注册时间在endTime之前的记录，格式：yyyyMMdd'T'HHmmss'Z'，如20151212T121212Z。                                                                                                                                                                                     |
#### 请求参数
表3请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                        |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | 用户Token。 通过调用IAM服务获取用户Token接口获取（响应消息头中X-Subject-Token的值）。 |
   
#### 响应参数
**状态码： 200**
表4响应Body参数 
| 参数      | 参数类型                                                                                                | 描述                        |
|:---|:---|:---|
| devices | Array of [QueryDeviceSimplify] objects | 设备信息列表。 数组长度：**0 - 1000** |
| page    | [Page] object                                         | 查询结果的分页信息。                |
   
 表5QueryDeviceSimplify 
| 参数             | 参数类型                                                                                  | 描述                                                                                                                       |
|:---|:---|:---|
| device_id      | String                                                                                | 设备ID，用于唯一标识一个设备，在注册设备时由物联网平台分配获得。 最小长度：**0** 最大长度：**256**                                                                |
| node_id        | String                                                                                | 设备标识码，通常使用IMEI、MAC地址或Serial No作为nodeId。 最小长度：**0** 最大长度：**256**                                                          |
| gateway_id     | String                                                                                | 网关ID，用于标识一个网关设备。当设备是直连设备时，gatewayId与设备的deviceId一致。当设备是非直连设备时，gatewayId为设备所关联的直连设备（即网关）的deviceId。 最小长度：**0** 最大长度：**256** |
| device_name    | String                                                                                | 设备名称。 最小长度：**0** 最大长度：**256**                                                                                            |
| node_type      | String                                                                                | 设备节点类型。 - ENDPOINT：非直连设备。 - GATEWAY：直连设备或网关。 - UNKNOWN：未知。                                                               |
| description    | String                                                                                | 设备的描述信息。 最小长度：**0** 最大长度：**2048**                                                                                        |
| product_id     | String                                                                                | 设备关联的产品ID，用于唯一标识一个产品模型。                                                                                                  |
| provision_info | [ProvisionInfoResp] object | 设备的发放信息。                                                                                                                 |
   
 表6ProvisionInfoResp 
| 参数                       | 参数类型                                                                              | 描述                                                                                           |
|:---|:---|:---|
| access_point             | [AccessPointResp] object | 发放区域。                                                                                        |
| allocation_status        | Integer                                                                           | 设备发放状态。 取值如下： - 0：成功； - 1：失败； - 2：发放中； - 3：未发放（默认）。 最小值：**0** 最大值：**3**                      |
| allocation_strategy_type | String                                                                            | 策略类型。 取值如下： - base：静态策略； - certificates：证书策略； - functions：自定义策略； - nearby：就近策略。 缺省值：**base** |
| life_time                | Integer                                                                           | LWM2M设备导入的默认生命周期。 最小值：**0** 最大值：**864000**                                                   |
   
 表7AccessPointResp 
| 参数                | 参数类型   | 描述                                                                               |
|:---|:---|:---|
| access_point_id   | String | 接入点id。 最小长度：**1** 最大长度：**256**                                                   |
| access_point_name | String | 接入点名称。 最小长度：**1** 最大长度：**256**                                                   |
| region_id         | String | 华为云终端节点ID。节选自https://developer.huaweicloud.com/endpoint。 最小长度：**1** 最大长度：**128** |
   
 表8Page 
| 参数     | 参数类型   | 描述                                                      |
|:---|:---|:---|
| count  | Long   | 满足查询条件的记录总数，最大返回1000条记录。 最小值：**0** 最大值：**1000**         |
| marker | String | 本次分页查询结果中最后一条记录的ID，可在下一次分页查询时使用。 最小长度：**0** 最大长度：**64** |
   
#### 请求示例
无
#### 响应示例
**状态码： 200**
OK
```
{
  "devices" : [ {
    "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",
    "auth_info" : {
      "auth_type" : "SECRET",
      "secret" : "3b935a250c50dc2c6d481d048cefdc3c",
      "fingerprint" : "dc0f1016f495157344ac5f1296335cff725ef22f",
      "secure_access" : true,
      "timeout" : 300
    },
    "product_id" : "b640f4c203b7910fc3cbd446ed437cbd",
    "create_time" : "20190303T081011Z",
    "provision_info" : {
      "access_point" : {
        "access_point_id" : "cn-north-4",
        "access_point_name" : "cn-north-4",
        "region_id" : "cn-north-4"
      },
      "allocation_status" : 0,
      "allocation_strategy_type" : "base"
    }
  } ],
  "page" : {
    "count" : 1,
    "marker" : "d4922d8a-6c8e-4396-852c-164aefa6638f"
  }
}
```
#### 状态码
| 状态码 | 描述                    |
|:---|:---|
| 200 | OK                    |
| 400 | Bad Request           |
| 403 | Forbidden             |
| 500 | Internal Server Error |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-iotps/ErrorCode.html)。
