创建终端设备模板 - CreateDeviceTemplate
功能介绍
创建一个终端设备模板
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限,具体权限要求请参见权限和授权项。
URI
POST /v2/{project_id}/edgemgr/device-templates
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
project_id | 是 | String | 项目ID |
请求参数
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
Content-Type | 是 | String | 消息体的类型(格式),默认取值为“application/json”。 |
X-Auth-Token | 是 | String | 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 |
ief-instance-id | 否 | String | 企业版实例ID,专业版实例为空值。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
device_template | 是 | EdgemgrDeviceReq object | 终端设备属性 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
name | 是 | String | 终端设备名称,只允许中文字符、英文字母、数字、下划线、中划线,长度限制为1~64 |
access_protocol | 否 | String | 访问协议,有如下选项:
默认为userdefine |
description | 否 | String | 终端设备描述,最大长度255,不允许^ ~ # $ % & * < > ( ) [ ] { } ' " \ |
attributes | 否 | Map<String,ValueInAttributes> | 静态属性 |
twin | 否 | Map<String,ValueInTwin> | 终端设备动态属性 |
tags | 否 | ResourceTag object | 标签属性 |
property_visitors | 否 | Map<String,ValueInPropertyVisitors> | 孪生属性配置 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
excepted | 否 | Excepted object | 动态属性的期望信息 |
optional | 否 | Boolean | 动态属性的实际信息 |
metadata | 否 | metadata object | 动态属性的元数据信息 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
value | 否 | String | 动态属性的初始值,最大长度512,value允许英文字母、数字、下划线、中划线、点、逗号、冒号、/、@、+、?、^、=、%、&、~、#、!、* |
metadata | 否 | metadata object | 期望值设置的时间信息 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
key | 否 | String | 键。最大长度36个unicode字符。 不能为空,只能包含大小写字母,数字,中划线“-”,下划线“_”。 |
value | 否 | String | 值。每个值最大长度43个unicode字符,删除时如果value有值按照key/value删除,如果value没值,则按照key删除。 不能为空,只能包含大小写字母,数字,中划线“-”,下划线“_”。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
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 | 节点名称 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
value | 是 | String | value 最大长度512,value允许英文字母、数字、下划线、中划线、点、逗号、冒号、/、@、+、?、^、=、%、&、~、#、!、* |
optional | 否 | Boolean | 标识属性是否可选,默认为true |
metadata | 否 | Metadata object | 静态属性的元数据信息,默认为{"type": "string"} |
响应参数
状态码:201
参数 | 参数类型 | 描述 |
|---|---|---|
device_template | EdgemgrDevice object | 终端设备属性 |
参数 | 参数类型 | 描述 |
|---|---|---|
id | String | 终端设备ID,只允许英文字母、数字、下划线、中划线,必须以英文字母和数字开头,长度限制为24~64之间 |
name | String | 终端设备名称,只允许中文字符、英文字母、数字、下划线、中划线,长度限制为1~64 |
access_protocol | String | 访问协议,有如下选项:
默认为userdefine |
description | String | 终端设备描述,最大长度255,不允许^ ~ # $ % & * < > ( ) [ ] { } ' " \ |
attributes | Map<String,ValueInAttributes> | 静态属性 |
twin | Map<String,ValueInTwinResponse> | 终端设备静态属性信息 |
project_id | String | 项目ID |
created_at | String | 创建时间 |
updated_at | String | 更新时间 |
property_visitors | Map<String,ValueInPropertyVisitors> | 孪生属性配置 |
tags | ResourceTag object | 标签属性 |
参数 | 参数类型 | 描述 |
|---|---|---|
excepted | ExceptedActual object | 动态属性的期望信息 |
actual | ExceptedActual object | 动态属性的实际信息 |
metadata | Metadata object | 动态属性的元数据信息 |
optional | Boolean | 标识属性是否可选,默认为true,继承模板的属性默认为false |
参数 | 参数类型 | 描述 |
|---|---|---|
value | String | 动态属性的初始值,最大长度512,value允许英文字母、数字、下划线、中划线、点、逗号、冒号、/、@、+、?、^、=、%、&、~、#、!、* |
参数 | 参数类型 | 描述 |
|---|---|---|
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 | 节点名称 |
参数 | 参数类型 | 描述 |
|---|---|---|
value | String | value 最大长度512,value允许英文字母、数字、下划线、中划线、点、逗号、冒号、/、@、+、?、^、=、%、&、~、#、!、* |
optional | Boolean | 标识属性是否可选,默认为true |
metadata | Metadata object | 静态属性的元数据信息,默认为{"type": "string"} |
请求示例
创建终端设备模板,访问协议为自定义协议。
{
"device_template" : {
"name" : "CameraTemplate",
"access_protocol" : "userdefine",
"description" : "This is a camera template",
"attributes" : {
"cameraURL" : {
"value" : "127.0.0.1",
"optional" : true,
"metadata" : {
"type" : "string"
}
}
},
"twin" : {
"runstate" : {
"expected" : {
"value" : "running"
},
"optional" : false,
"metadata" : {
"type" : "string"
}
}
},
"tags" : {
"dev" : "dev1"
}
}
} 响应示例
状态码:201
ok
{
"device_template" : {
"name" : "CameraTemplate",
"description" : "This is a camera template",
"created_at" : "2018-07-16T04:01:21.212072",
"project_id" : "d16e6eb6cc0d49a0941df2f31285757a",
"id" : "82952098-ec24-4643-94e6-9989174fce05",
"attributes" : {
"cameraURL" : {
"value" : "127.0.0.1",
"metadata" : {
"type" : "string"
}
}
},
"twin" : {
"runstate" : {
"expected" : {
"value" : "running"
},
"metadata" : {
"type" : "string"
}
}
}
}
} 状态码
状态码 | 描述 |
|---|---|
201 | ok |
错误码
请参见错误码。

