修改设备信息
典型场景
应用服务器在物联网平台注册设备后,若设备的基本信息发生变更,可调用此接口在物联网平台修改设备的信息。
接口功能
支持应用服务器修改设备的基本信息,包括设备类型、设备模型、厂商信息、接入协议等。
接口原型
请求方法 |
PUT |
---|---|
请求地址 |
https://server:port/iocm/app/dm/v1.4.0/devices/{deviceId}?appId={appId} |
传输协议 |
HTTPS |
请求参数
参数 |
必选/可选 |
类型 |
位置 |
描述 |
---|---|---|---|---|
app_key |
必选 |
String |
header |
访问物联网平台的应用ID,在物联网平台创建应用时由平台分配获得。 |
Authorization |
必选 |
String |
header |
访问物联网平台的认证信息,值为“Bearer {accessToken}”,其中{accessToken}为调用鉴权接口返回的accessToken。 |
deviceId |
必选 |
String |
path |
设备ID,用于唯一标识一个设备,在注册设备时由物联网平台分配获得。 |
appId |
可选 |
String |
query |
访问物联网平台的应用ID,在物联网平台创建应用时由平台分配获得。此处填写授权应用的appId。 |
customFields |
可选 |
List<CustomField> |
Body |
自定义字段列表,用户可设置自定义字段。 |
deviceConfig |
可选 |
body |
设备配置信息。 |
|
deviceType |
可选 |
String(1~256) |
body |
设备类型,大驼峰命名方式,例如:MultiSensor、ContactSensor、CameraGateway。 |
endUser |
可选 |
String(1~256) |
body |
终端用户,若为直连设备,则endUser可选;若为非直连设备,则endUser可以为null。 |
location |
可选 |
String(1~1024) |
body |
设备位置。 |
productId |
可选 |
String(256) |
Body |
设备所属的产品ID。 |
manufacturerId |
可选 |
String(1~256) |
body |
厂商ID,唯一标识一个厂商。 |
manufacturerName |
可选 |
String(1~256) |
body |
厂商名称。 |
model |
可选 |
String(1~256) |
body |
设备型号,由厂商定义。 |
mute |
可选 |
String(1-256) |
body |
表示设备是否处于冻结状态,即设备上报数据时,平台是否会管理和保存。
|
name |
可选 |
String(1~256) |
body |
设备名称。 |
organization |
可选 |
String(1~256) |
body |
设备所属的组织信息。 |
protocolType |
可选 |
String(1~256) |
body |
设备使用的协议类型,当前支持的协议类型:CoAP,LWM2M,MQTT。 |
region |
可选 |
String(1~256) |
body |
设备区域信息。 |
timezone |
可选 |
String(1~256) |
body |
设备所在时区信息,使用时区编码,如Asia/Shanghai, America/New_York。 |
imsi |
可选 |
String(64) |
Body |
NB-IoT终端的IMSI。 |
ip |
可选 |
String(128) |
Body |
设备的IP地址。 |
isSecure |
可选 |
Boolean |
body |
指定设备是否为安全设备,默认值为false。在NB-IoT场景下,注册的设备为加密设备时,isSecure要设置为true。
|
psk |
可选 |
String(8~32) |
body |
psk参数,取值范围是a-f、A-F、0-9组成的字符串。 |
设备的标签信息。 |
参数 |
必选/可选 |
类型 |
位置 |
描述 |
---|---|---|---|---|
fieldName |
可选 |
String(256) |
Body |
字段名字。 |
fieldType |
可选 |
String(256) |
Body |
字段类型。 |
fieldValue |
可选 |
Object |
Body |
字段值。 |
参数 |
必选/可选 |
字段类型 |
描述 |
---|---|---|---|
dataConfig |
可选 |
数据配置信息。 |
参数 |
必选/可选 |
字段类型 |
描述 |
---|---|---|---|
dataAgingTime |
可选 |
Integer[0,90] |
数据老化时长,取值范围:0-90,单位:天。 |
参数 |
必选/可选 |
类型 |
位置 |
描述 |
---|---|---|---|---|
tagName |
必选 |
String(1-128) |
body |
标签名称。 |
tagValue |
必选 |
String(1-1024) |
body |
标签值。 |
tagType |
可选 |
Integer |
body |
标签类型。 |
响应参数
Status Code: 204 No Content
请求示例
Method: PUT request: https://server:port/iocm/app/dm/v1.4.0/devices/{deviceId}?appId={appId} Header: app_key: ****** Authorization: Bearer ****** Content-Type: application/json Body: { "name": "****", "endUser": "****", "mute": "****", "deviceConfig": { "dataConfig": { "dataAgingTime": 30 } } }
响应示例
response: Status Code: 204 No Content
错误码
Http状态码 |
错误码 |
错误描述 |
说明 |
---|---|---|---|
200 |
100203 |
The application is not existed. |
应用不存在。 处理建议:
|
400 |
100022 |
The input is invalid. |
输入参数无效。 处理建议:请检查接口调用请求中携带参数的合法性。 |
400 |
100440 |
The isSecure is invalid. |
isSecure参数值有误。 |
400 |
50400 |
The input is invalid. |
输入参数无效。 处理建议:请检查接口调用请求中携带参数的合法性。 |
403 |
100203 |
The application is not existed. |
应用不存在。 处理建议:
|
403 |
100217 |
The application hasn't been authorized. |
应用未被授权。 处理建议:若非应用授权场景,请确认请求参数中的appId为空。 |
403 |
1010009 |
app throttle exceed. |
应用调用接口过于频繁,超过流控值(默认值是100次/60s)。 处理建议:联系物联网平台维护人员调大流控阈值或者控制接口的调用频率。 |
403 |
1010005 |
App_key or access_token is invalid. |
错误的token信息。 处理建议:请检查接口请求中所携带的accessToken是否有误。 |
403 |
500004 |
The amount of frozen devices has reached the limit. |
被冻结设备已达到上限。 |
404 |
100403 |
The device is not existed. |
设备不存在。 处理建议:物联网平台未找到deviceId对应的设备,请检查deviceId是否有误。 |
404 |
100418 |
The deviceData is not existed. |
设备信息不存在。 处理建议:
|
500 |
100203 |
The application is not existed. |
应用不存在。 处理建议:
|
500 |
100441 |
The amount of nonSecure device has reached the limit. |
非安全设备数量已达到上限。 |
500 |
50252 |
Internal server error. |
服务器运行内部错误。 处理建议:物联网平台内部错误,请联系物联网平台维护人员处理。 |