Modifying a Device
Function
This API is used to modify information of a device.
URI
PUT /v2/{project_id}/link/instances/{instance_id}/devices/{device_id}
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
project_id |
Yes |
String |
Project ID. For details about how to obtain the project ID, see Appendix > Obtaining a Project ID in the ROMA Connect API Reference. Minimum: 0 Maximum: 32 |
instance_id |
Yes |
String |
Instance ID. Minimum: 0 Maximum: 36 |
device_id |
Yes |
Integer |
Device ID. Minimum: 0 Maximum: 99999999999999999 |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
Yes |
String |
User token, which can be obtained by calling the IAM API (value of X-Subject-Token in the response header). Minimum: 1 Maximum: 100000 |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
device_name |
Yes |
String |
Device name. The value is a string of 2 to 64 characters, which can contain letters, digits, and the following special characters: ()_,#.?''-@%&!, Minimum: 2 Maximum: 64 |
status |
Yes |
Integer |
Device status. The options are as follows: 0: enabled; 1: disabled. Minimum: 0 Maximum: 10 |
description |
No |
String |
Description. Minimum: 0 Maximum: 200 |
tags |
No |
Array of strings |
Tag. Minimum: 1 Maximum: 64 |
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
permissions |
Array of strings |
Permission. |
id |
Integer |
Device ID. Minimum: 1 Maximum: 99999999999999999 |
device_id |
Integer |
Device ID (compatible with 20.0). Minimum: 1 Maximum: 99999999999999999 |
parent_device_id |
Integer |
Parent device ID. Minimum: 1 Maximum: 99999999999999999 |
parent_device_name |
String |
Parent device name. Minimum: 2 Maximum: 64 |
product |
ProductReferer object |
Product. |
device_name |
String |
Device name. The value is a string of 2 to 64 characters, which can contain letters, digits, and the following special characters: ()_,#.?''-@%&!, Minimum: 2 Maximum: 64 |
instance_id |
String |
Instance ID. Minimum: 2 Maximum: 64 |
client_id |
String |
Client ID, which is the unique device ID generated by the ROMA platform. Minimum: 0 Maximum: 32 |
node_id |
String |
Physical number of a device. The value is a string of 2 to 64 characters, which can contain only letters, digits, underscores (_), and hyphens (-). Generally, the MAC address or IMEI is used. Minimum: 2 Maximum: 64 |
app_name |
String |
Application name. Minimum: 0 Maximum: 256 |
status |
Integer |
Device status. The options are as follows: 0: enabled; 1: disabled. Minimum: 0 Maximum: 10 |
online_status |
Integer |
Connection status. The options are as follows: 0: disconnected; 1: online; 2: offline. Minimum: 0 Maximum: 10 |
description |
String |
Description. Minimum: 0 Maximum: 200 |
authentication |
Authentication object |
Authentication. |
created_user |
CreatedUser object |
Name of the user who created the attribute. |
last_updated_user |
LastUpdatedUser object |
User who performed the last update. |
tags |
Array of strings |
Tag. Minimum: 1 Maximum: 64 |
created_datetime |
Long |
Creation start time. The format is timestamp(ms) and the UTC time zone is used. Minimum: 1 Maximum: 99999999999999999 |
last_updated_datetime |
Long |
Last modification time (timestamp, in milliseconds). The UTC time zone is used. Minimum: 1 Maximum: 99999999999999999 |
connect_address |
String |
Device access address. Minimum: 0 Maximum: 200 |
ssl_connect_address |
String |
Device access SSL address. Minimum: 0 Maximum: 200 |
ipv6_connect_address |
String |
IPv6 address for device access. This parameter is valid only when IPv6 is enabled. Minimum: 0 Maximum: 200 |
ipv6_ssl_connect_address |
String |
IPv6 SSL address for device access. This parameter is valid only when IPv6 is enabled. Minimum: 0 Maximum: 200 |
last_login_datetime |
Long |
Last login time. Minimum: 1 Maximum: 99999999999999999 |
node_type |
Integer |
Node type. The options are as follows: 0: direct connection; 1: gateway; 2: subdevice. Minimum: 1 Maximum: 99999999999999999 |
device_type |
Integer |
Device type. The options are as follows: [/topic/body/section/table/tgroup/tbody/row/entry/p/br {""}) (br]0: common device (without a child device or parent device); [/topic/body/section/table/tgroup/tbody/row/entry/p/br {""}) (br]1: gateway device (which can contain subdevices); [/topic/body/section/table/tgroup/tbody/row/entry/p/br {""}) (br]2: child device (belonging to a gateway device). Minimum: 0 Maximum: 10 |
client_ip |
String |
Client IP address. Minimum: 0 Maximum: 64 |
keep_alive |
String |
Heartbeat time. Minimum: 0 Maximum: 200 |
last_active_time |
Long |
Last login time. Minimum: 1 Maximum: 99999999999999999 |
version |
String |
Device version. Minimum: 0 Maximum: 64 |
app_id |
String |
Application ID. Minimum: 0 Maximum: 36 |
Parameter |
Type |
Description |
---|---|---|
product_id |
Integer |
Product ID. The product ID is mandatory if the manufacturer ID and model are not set. Minimum: 1 Maximum: 99999999999999999 |
product_name |
String |
Product name. Minimum: 0 Maximum: 64 |
manufacturer_id |
String |
Manufacturer ID. If the product ID is not specified, the manufacturer ID and model are mandatory. Minimum: 0 Maximum: 64 |
model |
String |
Model. If the product ID is not specified, the manufacturer ID and model are mandatory. Minimum: 0 Maximum: 64 |
protocol_type |
Integer |
Protocol type of the product. 0: mqtt 1: CoAP 2: modbus 4: opcua 5: extended protocol Minimum: 0 Maximum: 5 |
product_type |
Integer |
Product type. The options are as follows: 0: common; 1: gateway. Minimum: 0 Maximum: 10 |
extend_protocol_name |
String |
Extended protocol name. Minimum: 0 Maximum: 64 |
Parameter |
Type |
Description |
---|---|---|
user_name |
String |
One-model-one-secret or one-device-one-secret username. Minimum: 0 Maximum: 64 |
password |
String |
One-model-one-secret or one-device-one-secret password. The password must contain 8 to 32 characters, including at least one digit, one uppercase letter, one lowercase letter, and one special character (~!@#$%^&*()-_=+|[{}];:<>/?). Minimum: 0 Maximum: 64 |
Parameter |
Type |
Description |
---|---|---|
user_id |
String |
User ID (reserved). Minimum: 0 Maximum: 64 |
user_name |
String |
Username. Minimum: 0 Maximum: 64 |
Parameter |
Type |
Description |
---|---|---|
user_id |
String |
User ID (reserved). Minimum: 0 Maximum: 64 |
user_name |
String |
Username. Minimum: 0 Maximum: 64 |
Status code: 400
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
System error code, which is the detailed error code of HTTP error codes 4xx and 5xx. Minimum: 0 Maximum: 64 |
error_msg |
String |
Error description. Minimum: 0 Maximum: 200 |
request_id |
String |
Message ID. Minimum: 0 Maximum: 64 |
Status code: 404
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
System error code, which is the detailed error code of HTTP error codes 4xx and 5xx. Minimum: 0 Maximum: 64 |
error_msg |
String |
Error description. Minimum: 0 Maximum: 200 |
request_id |
String |
Message ID. Minimum: 0 Maximum: 64 |
Status code: 500
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
System error code, which is the detailed error code of HTTP error codes 4xx and 5xx. Minimum: 0 Maximum: 64 |
error_msg |
String |
Error description. Minimum: 0 Maximum: 200 |
request_id |
String |
Message ID. Minimum: 0 Maximum: 64 |
Example Requests
{ "device_name" : "device", "status" : 0, "description" : "device", "tags" : [ "tag1", "tag2" ] }
Example Responses
Status code: 200
OK
{ "permissions" : [ "read", "access", "delete", "modify" ], "id" : 711537, "device_id" : 711537, "parent_device_id" : 711536, "parent_device_name" : "parent-device", "product" : { "product_id" : 116303, "product_name" : "p1", "manufacturer_id" : "p1", "model" : "p1", "product_type" : 0, "protocol_type" : 0 }, "device_name" : "device", "instance_id" : "8993a690-cf61-46af-880d-587d823d14e5", "client_id" : "D116303711537sGDtK", "node_id" : "string", "app_name" : "app", "status" : 0, "online_status" : 2, "description" : "device", "authentication" : { "user_name" : "F01A8D25FE6E4CF5A286B711B31888AE", "password" : "************************" }, "created_user" : { "user_id" : "", "user_name" : "user" }, "last_updated_user" : { "user_id" : "", "user_name" : "user" }, "tags" : [ ], "created_datetime" : 1607408244841, "last_updated_datetime" : 1607422571094, "connect_address" : "xx.xx.xx.xx", "ssl_connect_address" : "xx.xx.xx.xx", "ipv6_connect_address" : "xx.xx.xx.xx", "ipv6_ssl_connect_address" : "xx.xx.xx.xx", "node_type" : 0, "device_type" : 0, "app_id" : "cb4b3ec0-8f7f-432f-b05e-fc149d05da5d" }
Status code: 400
Bad Request
{ "error_code" : "SCB.00000000", "error_msg" : "Parameter is not valid for operation [romalink.link-device.update]. Parameter is [deviceOid]. Processor is [path].", "request_id" : "cb39e78a-afd3-4e04-901d-70468b1c23dc-1619602712496-cnnorth7a-P-romalink-service01" }
Status code: 404
Not Found
{ "error_code" : "ROMA.00110006", "error_msg" : "The resource does not exist. Check whether the resource ID 1 is correct.", "request_id" : "624c8be1-39b6-47b7-941d-c159aced368a-1619602544650-cnnorth7a-P-romalink-service01" }
Status code: 500
Internal Server Error
{ "error_code" : "ROMA.00110002", "error_msg" : "The instance does not exist. project_id: 397cd10b30544c588b2f4a56d83856c4, instance_id: f3bb386a-23ec-47aa-9943-4c60ac658611", "request_id" : "c8c06d0a-be92-4fdf-9d10-bc20131ab158-1619593104919-cnnorth7a-P-romalink-service01" }
Status Codes
Status Code |
Description |
---|---|
200 |
OK |
400 |
Bad Request |
404 |
Not Found |
500 |
Internal Server Error |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot