调用该接口在指定产品下注册设备。
接口说明
注册设备指在物联网平台产品下添加设备。在指定产品下成功注册设备后,阿里云物联网平台为设备颁发全局唯一的设备ID(IotId),用来标识该设备。在进行与设备相关的操作时,您可能需要提供目标设备的IotId。
您也可以使用ProductKey和DeviceName组合来标识一个设备。其中ProductKey是新建产品时,物联网平台为产品颁发的ProductKey,DeviceName是注册设备时,由您指定或由系统随机生成的设备名称。IotId的优先级高于ProductKey和DeviceName组合。
如需在同一产品下,批量注册多个设备,请参见BatchRegisterDeviceWithApplyId接口的使用说明。
QPS限制
单个阿里云账号调用该接口的每秒请求数(QPS)最大限制为30。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | RegisterDevice |
系统规定参数。取值:RegisterDevice。 |
ProductKey | String | 是 | a1BwAGV**** |
待注册设备所隶属的产品的ProductKey。ProductKey是物联网平台为新建产品颁发的产品Key,作为其全局唯一标识符。 您可以在物联网平台控制台查看或调用QueryProductList查看当前账号下所有产品的信息。 |
IotInstanceId | String | 否 | iot_instc_pu****_c*-v64******** |
实例ID。您可在物联网平台控制台的实例概览页面,查看当前实例的ID。 注意
实例的更多信息,请参见实例概述。 |
DeviceName | String | 否 | light |
为待注册的设备命名。设备名称长度为4~32个字符,可以包含英文字母、数字和特殊字符:短划线(-)、下划线(_)、at(@)、半角句号(.)、半角冒号(:)。 DeviceName通常与ProductKey组合使用,用作设备标识。 说明 如果不传入该参数,则由系统随机生成设备名称。
|
DevEui | String | 否 | e8SDdgeIlk3nED**** |
LoRaWAN设备的DevEUI。 创建LoRaWAN设备时,该参数必传。 |
Nickname | String | 否 | 园区灯 |
为待注册的设备设置备注名称。备注名称长度为4~64个字符,可包含中文汉字、英文字母、数字和下划线(_)。一个中文汉字算2个字符。 说明 如果不传入该参数,系统不会为设备生成备注名称。
|
PinCode | String | 否 | DIe80dfeg***** |
LoRaWAN设备的PIN Code,用于校验DevEUI的合法性。 创建LoRaWAN设备时,LoraNodeType为ALIYUNDEFINED,该参数必传。 |
JoinEui | String | 否 | Ede4tde8erth**** |
LoRaWAN设备的入网凭证JoinEui。 创建LoRaWAN设备时,LoraNodeType为USERDEFINED,该参数必传。 |
AppKey | String | 否 | 674f*** |
LoRaWAN设备的AppKey。 创建LoRaWAN设备时,LoraNodeType为USERDEFINED,该参数必传。 |
LoraNodeType | String | 否 | ALIYUNDEFINED |
LoRaWAN设备类型。可取值:
|
调用API时,除了本文介绍的该API的特有请求参数,还需传入公共请求参数。公共请求参数说明,请参见公共参数文档。
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
Code | String | iot.system.SystemException |
调用失败时,返回的错误码。更多信息,请参见错误码。 |
Data | Struct |
调用成功时,返回注册的设备信息。 |
|
DevEui | String | e8SDdgeIlk3nED**** |
LoRaWAN设备的DevEUI。仅LoRaWAN设备才会返回该参数。 |
DeviceName | String | light |
设备名称。 注意 请妥善保管,勿泄露。
|
DeviceSecret | String | mz2Canp4GB7qRVf1OYPNtRqB2anu**** |
设备密钥。 注意 请妥善保管,勿泄露。
|
IotId | String | 1O4YPNtRqB2anumz2Canp4GB7q**** |
物联网平台为该设备颁发的设备ID,作为该设备的唯一标识符。 注意 请妥善保管,勿泄露。
|
JoinEui | String | Ede4tde8erth**** |
LoRaWAN设备的入网凭证 JoinEUI。仅LoRaWAN设备才会返回该参数。 |
Nickname | String | 园区灯 |
设备的备注名称。 若您没有为该设备设置备注名称,则该参数返回为空。 |
ProductKey | String | a1BwAGV**** |
设备所属产品的ProductKey。 |
ErrorMessage | String | 系统异常 |
调用失败时,返回的错误信息。 |
RequestId | String | E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565 |
阿里云为该请求生成的唯一标识符。 |
Success | Boolean | true |
表示是否调用成功。
|
示例
请求示例
https://iot.cn-shanghai.aliyuncs.com/?Action=RegisterDevice
&ProductKey=a1rYuVF****
&DeviceName=device1
&Nickname=detectors_in_beijing
&<公共请求参数>
正常返回示例
XML
格式
<RegisterDeviceResponse>
<RequestId>57b144cf-09fc-4916-a272-a62902d5b207</RequestId>
<Success>true</Success>
<Data>
<DeviceName>device1</DeviceName>
<ProductKey>a1rYuVF****</ProductKey>
<DeviceSecret>tXHf4ezGEHcwdyMwoCDHGBmk9avi****</DeviceSecret>
<IotId>CqXL5h5ysRTA4NxjABjj0010fa****</IotId>
<Nickname>detectors_in_beijing</Nickname>
</Data>
</RegisterDeviceResponse>
JSON
格式
{
"RequestId": "57b144cf-09fc-4916-a272-a62902d5b207",
"Success": true,
"Data": {
"DeviceName": "device1",
"ProductKey": "a1rYuVF****",
"DeviceSecret": "tXHf4ezGEHcwdyMwoCDHGBmk9avi****",
"IotId": "CqXL5h5ysRTA4NxjABjj0010fa****",
"Nickname": "detectors_in_beijing"
}
}