V2.1 Create Device¶
创建设备。
当前 API 支持在 EnOS 2.1.0 及以上环境中使用,并已新增 V2.4 版本。推荐使用最新版本,参见 V2.4 Create Device。
请求格式¶
POST https://{apigw-address}/connect-service/v2.1/devices?action=create
请求参数(URI)¶
名称 | 位置(Path/Query) | 必需/可选 | 数据类型 | 描述 |
---|---|---|---|---|
orgId | Query | 必需 | String | 资产所属的组织 ID。如何获取 orgId 信息>> |
请求参数(Body)¶
名称 | 必需/可选 | 数据类型 | 描述 |
---|---|---|---|
productKey | 必需 | String | 设备的 product key。 |
deviceName | 必需 | StringI18n | 设备名称。结构参见 国际化名称结构体。 |
timezone | 必需 | String | 设备所在时区。时区表示方法 >> |
deviceAttributes | 可选 | Map | 设备属性。 |
deviceKey | 可选 | String | 设备的 Device Key。 |
deviceDesc | 可选 | String | 设备描述信息。 |
deviceTags | 可选 | Map | 设备标签。 |
响应参数¶
名称 | 数据类型 | 描述 |
---|---|---|
data | DeviceCreateResult 结构体 | 设备创建返回结果。DeviceCreateResult 结构体>> |
DeviceCreateResult 结构体 ¶
名称 | 数据类型 | 描述 |
---|---|---|
productKey | String | 设备的 product key。 |
deviceKey | String | 设备的 device key。 |
deviceSecret | String | 设备的 device secret。 |
assetId | String | 资产 ID。 |
错误码¶
代码 | 错误信息 | 描述 |
---|---|---|
11702 | DeviceKey existed | deviceKey 在数据库中已存在( deviceKey 提供的情况下)。 |
11714 | Generate deviceKey failed | 暂时无法分配设备的key( deviceKey 未提供的情况下),请重试。 |
11739 | Exceed max device size | 该操作将导致超过产品下限定的设备数量。 |
99400 | Invalid arguments | 参数错误。 |
示例¶
请求示例¶
url:https://{apigw-address}/connect-service/v2.1/devices?action=create&orgId=yourOrgId
method: POST
requestBody:
{
"productKey":"yourProductKey",
"deviceName":{
"defaultValue":"Device Name",
"i18nValue":{
"zh_CN": "设备名称",
"en_US": "Device Name"
}
},
"timezone":"+08:00",
"deviceAttributes":{
"serial":111111
},
"deviceDesc":"Device description",
"deviceTags":{
"tag1":"tag value"
}
}
返回示例¶
{
"code":0,
"msg":"OK",
"requestId":"fd79d0f5-69c5-4fa8-add4-69f5ca1b635f",
"data":{
"assetId":"Uvmm5AXU",
"productKey":"yourProductKey",
"deviceKey":"yourDeviceKey",
"deviceSecret":"yourDeviceSecret"
}
}