
# 查询终端设备孪生 - ShowDeviceTwin
#### 功能介绍
该API用于查询终端设备孪生。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/IEF/doc?api=ShowDeviceTwin)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-ief/ief_02_1003.html)。
#### URI
GET /v2/{project_id}/edgemgr/devices/{device_id}/twin
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述     |
|:---|:---|:---|:---|
| project_id | 是    | String | 项目ID   |
| device_id  | 是    | String | 终端设备ID |
#### 请求参数
表2请求Header参数 
| 参数              | 是否必选 | 参数类型   | 描述                                                        |
|:---|:---|:---|:---|
| Content-Type    | 是    | String | 消息体的类型（格式），默认取值为"application/json"。                       |
| X-Auth-Token    | 是    | String | 用户Token。 通过调用IAM服务获取用户Token接口获取（响应消息头中X-Subject-Token的值）。 |
| ief-instance-id | 否    | String | 企业版实例ID，专业版实例为空值。                                         |
   
#### 响应参数
**状态码：200**
表3响应Body参数 
| 参数                | 参数类型                                                                                | 描述                                                                 |
|:---|:---|:---|
| property_visitors | [ValueInPropertyVisitors] object | 孪生属性配置，与access_protocol关联。                                         |
| twin              | [ValueInTwinResponse] object         | 终端设备静态属性信息                                                         |
| access_protocol   | String                                                                              | 访问协议，有如下选项： - userdefine：自定义协议 - modbus：modbus协议 - opc-ua：opc-ua协议 |
   
 表4ValueInPropertyVisitors 
| 参数                | 参数类型                                                                    | 描述                                                                                      |
|:---|:---|:---|
| register_type     | [ValueInAttributes] object | 寄存器类型，value值字段可选为CoilsRegisters、HoldingRegisters、DiscreteInputsRegisters、InputRegisters |
| access_mode       | [ValueInAttributes] object | 访问模式，value值字段可选为r和r/w                                                                   |
| register_index    | [ValueInAttributes] object | 寄存器偏移地址，value值字段取值范围0-65535                                                             |
| register_num      | [ValueInAttributes] object | 寄存器个数                                                                                   |
| scale_index       | [ValueInAttributes] object | 缩放因子                                                                                    |
| original_datatype | [ValueInAttributes] object | 原始数据类型                                                                                  |
| expected_datatype | [ValueInAttributes] object | 期望数据类型                                                                                  |
| is_registerswap   | [ValueInAttributes] object | 是否交换寄存器顺序                                                                               |
| is_swap           | [ValueInAttributes] object | 是否交换高低字节                                                                                |
| sample_interval   | [ValueInAttributes] object | 数据采集间隔，取值范围为1-3600                                                                      |
| data_min          | [ValueInAttributes] object | 原始数据值区间最小值，与原始数据类型关联                                                                    |
| data_max          | [ValueInAttributes] object | 原始数据值区间最大值，与原始数据类型关联                                                                    |
| node_id           | [ValueInAttributes] object | 节点id                                                                                    |
| browse_name       | [ValueInAttributes] object | 节点名称                                                                                    |
   
 表5ValueInAttributes 
| 参数       | 参数类型                                                  | 描述                                                                       |
|:---|:---|:---|
| value    | String                                                | value 最大长度512，value允许英文字母、数字、下划线、中划线、点、逗号、冒号、/、@、+、?、\^、=、%、\&、\~、#、!、\* |
| optional | Boolean                                               | 标识属性是否可选，默认为true                                                         |
| metadata | [Metadata] object | 静态属性的元数据信息，默认为{"type": "string"}                                         |
   
 表6ValueInTwinResponse 
| 参数       | 参数类型                                                              | 描述                               |
|:---|:---|:---|
| excepted | [ExceptedActual] object | 动态属性的期望信息                        |
| actual   | [ExceptedActual] object | 动态属性的实际信息                        |
| metadata | [Metadata] object             | 动态属性的元数据信息                       |
| optional | Boolean                                                           | 标识属性是否可选，默认为true，继承模板的属性默认为false |
   
 表7ExceptedActual 
| 参数    | 参数类型   | 描述                                                                          |
|:---|:---|:---|
| value | String | 动态属性的初始值，最大长度512，value允许英文字母、数字、下划线、中划线、点、逗号、冒号、/、@、+、?、\^、=、%、\&、\~、#、!、\* |
   
 表8Metadata 
| 参数   | 参数类型   | 描述                                                                 |
|:---|:---|:---|
| type | String | 属性类型标识，string\|int\|float\|boolean（boolean类型为true或false），默认为string |
   
#### 请求示例
无
#### 响应示例
**状态码：200**
ok
```
{
  "access_protocol" : "userdefine",
  "property_visitors" : { },
  "twin" : {
    "devicestate" : {
      "expected" : {
        "value" : "running",
        "metadata" : {
          "timestamp" : 1523514289
        }
      },
      "actual" : {
        "value" : "stop",
        "metadata" : {
          "timestamp" : 1523514289
        }
      },
      "optional" : true,
      "metadata" : {
        "type" : "string"
      }
    }
  }
}
```
#### 状态码
| 状态码 | 描述 |
|:---|:---|
| 200 | ok |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-ief/ErrorCode.html)。
