V2.0 Batch Create Devices¶
批量创建设备。
当前 API 支持在 EnOS 2.2.0 及以上环境中使用,并已新增 V2.4 版本。推荐使用最新版本,参见 V2.4 Batch Create Devices。
请求格式¶
POST https://{apigw-address}/connect-service/v2.0/devices?action=batchCreate
请求参数(URI)¶
名称 | 位置(Path/Query) | 必需/可选 | 数据类型 | 描述 |
---|---|---|---|---|
orgId | Query | 必需 | String | 资产所属的组织 ID。如何获取 orgId 信息>> |
请求参数(Body)¶
名称 | 必需/可选 | 数据类型 | 描述 |
---|---|---|---|
deviceList | 必需 | CreateOption 结构体数组 | 创建设备的参数。其结构参见 CreateOption 结构体。 |
响应参数¶
名称 | 数据类型 | 描述 |
---|---|---|
data | EnosBatchEachData 结构体数组 | 成功或失败消息列表。其结构参见 EnosBatchEachData 结构体。 |
successSize | Integer | 成功数。 |
totalSize | Integer | 总数。 |
EnosBatchEachData 结构体 ¶
名称 | 数据类型 | 描述 |
---|---|---|
code | Integer |
|
msg | String | 成功时返回 OK ;如果返回其他值,则为失败。 |
data | DeviceCreateResult 结构体 | 单个设备创建返回结果,其结构参见 DeviceCreateResult 结构体。 |
DeviceCreateResult 结构体 ¶
名称 | 数据类型 | 描述 |
---|---|---|
productKey | String | 设备的 product key。 |
deviceKey | String | 设备的 device key。 |
deviceSecret | String | 设备的 device secret。 |
assetId | String | 资产 ID。 |
错误码¶
代码 | 错误信息 | 描述 |
---|---|---|
11702 | DeviceKey already exists | deviceKey 在数据库中已存在( deviceKey 提供的情况下)。 |
11714 | Generate deviceKey failed | 暂时无法分配设备的key( deviceKey 未提供的情况下),请重试。 |
11739 | Exceed max device size | 该操作将导致超过产品下限定的设备数量。 |
99400 | Invalid arguments | 参数错误。本次请求创建的设备数量超过当前组织设置的单次批量创建最大设备数量限制。更多信息,参见 使用限制。 |
示例¶
请求示例¶
url:https://{apigw-address}/connect-service/v2.0/devices?action=batchCreate&orgId=yourOrgId
method: POST
requestBody:
{
"deviceList":
[
{
"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"
}
},
{
"productKey": "yourProductKey2",
"deviceName":
{
"defaultValue": "Device Name 2",
"i18nValue":
{
"zh_CN": "设备名称 2",
"en_US": "Device Name 2"
}
},
"timezone": "+08:00",
"deviceAttributes":
{
"serial": 222222
},
"deviceDesc": "Device description 2",
"deviceTags":
{
"tag2": "tag value"
}
}
]
}
返回示例¶
{
"code": 0,
"msg": "OK",
"requestId": "21938538-9266-495d-b1b9-b15597ad3e1f",
"data":
[
{
"code": 0,
"msg": "OK",
"data":
{
"assetId": "yourAssetId",
"productKey": "yourProductKey",
"deviceKey": "yourDeviceKey",
"deviceSecret": "yourDeviceSecret"
}
},
{
"code": 0,
"msg": "OK",
"data":
{
"assetId": "yourAssetId2",
"productKey": "yourProductKey2",
"deviceKey": "yourDeviceKey2",
"deviceSecret": "yourDeviceSecret2"
}
}
],
"successSize": 2,
"totalSize": 2
}