Last Updated on : 2024-08-20 03:34:08download
This topic describes how to call the following API operations to query information about your devices.
Request method | API | Description |
---|---|---|
PUT | /v1.0/illumination/device/{deviceSaasId}/name | Modify the device name. |
GET | /v1.0/illumination/devices | Get a list of devices. |
GET | /v1.0/illumination/devices/{deviceSaasId}/detail | Query the details of a single device by device ID. |
GET | /v1.0/illumination/devices/unassignedRoom | Get a list of unassigned devices. |
GET | /v1.0/illumination/devices/roomstate/{roomId} | Query the status of devices in a room. |
POST | /v1.0/illumination/device/relations/save | Assign a device to a space. |
API description
Modify the name of a device.
API endpoint
PUT /v1.0/illumination/device/{deviceSaasId}/name
Request parameter
Parameter name | Type | Parameter type | Description | Required |
---|---|---|---|---|
deviceSaasId | String | url | The device ID. | true |
name | String | url | The device name. | true |
Return parameter
Parameter | Type | Description |
---|---|---|
code | Integer | The response code. For more information, see the error code section. It is empty when the operation succeeded. |
success | Boolean | Indicates whether the operation is successful. Valid values: true : succeeded. false : failed. |
msg | String | The error message that is returned if the request fails. It is empty if the request is successful. |
t | Long | The returned 13-bit timestamp. |
result | Object | The returned result. |
Description of result parameter
ResponseVO{}
Sample request
{
"name": "The device name",
"deviceSaasId": "The device ID"
}
Sample response
ResponseVO{}
API description
Get a list of device information on pages according to the specified criteria.
API endpoint
GET /v1.0/illumination/devices
Request parameter
Parameter | Type | Type | Description | Required |
---|---|---|---|---|
projectId | String | body | The project ID. | No |
roomId | String | body | The room ID. | Yes |
roomType | int | body | The room type. | Yes |
page | int | body | The page number starting from 1 . |
Yes |
pageSize | int | body | The number of entries per page. Valid values: 0 to 100. | Yes |
deviceStatus | String[] | body | The device status. Valid values:
|
No |
Return parameter
Parameter | Type | Description |
---|---|---|
code | Integer | The response code. For more information, see the error code section. It is empty when the operation succeeded. |
success | Boolean | Indicates whether the operation is successful. Valid values: true : succeeded. false : failed. |
msg | String | The error message that is returned if the request fails. It is empty if the request is successful. |
t | Long | The returned 13-bit timestamp. |
result | Object | The returned result. |
Description of result parameter
{
"total": "int",
"list": [
{
"deviceSaasId": "String // The unique ID of the commercial lighting device.",
"deviceId": "String // The device ID. Each device ID corresponds with one hardware device. Because the device is re-bound to a new point, the device ID is not unique.",
"deviceName": "String // The device name.",
"deviceType": "String // The device type. For more information, see `DeviceTypeEnum`.",
"deviceTypeValue": "int // The value of the device type. For more information, see `DeviceTypeEnum`.",
"topCategory": "String // The major category of the product. For more information, see the type description of `ProductCategoryEnum`.",
"devicePower": "double // The device power.",
"deviceStatus": "The device status. Valid values: `NORMAL`, `OFFLINE`, `EXPIRING`, and `EXCEPTION`.",
"installTime": "long // The installation time of the device.",
"activeTime": "long // The active time of the device.",
"productId": "String // The device category (product) ID.",
"projectId": "String // The project ID",
"roomId": "String // The ID of the room to which the device belongs.",
"roomName": "String // The name of the room to which the device belongs.",
"ownerId": "String // The ID of the home group to which the device belongs",
"properties": [
{
"dpId": "Integer // The DP ID.",
"dpCode": "String // The DP code.",
"dpName": "String // The DP name.",
"dpValueStd": "String // The current DP value.",
"property": {
"range": "String[] // The value range of the attribute."
},
"propertyDetail": {},
"mode": "String // The mode such as `ro` and `rw`. This feature is added to v1.4.3.",
"dpFrom": "String"
}
],
"masterGroupJoinStatus": "int // Indicates whether the device has joined the main group. Valid values: `0`: no. `1`: yes. `2`: a non-lighting device that has not joined the main group.",
"currentBrightness": "int // The brightness threshold of the room to which the device belongs.",
"supportGroup": "boolean // Check whether the device can be grouped.",
"switchStatus": "boolean // The switch status.",
"switchDpCode": "String // The switch DP code.",
"colourValue": "String // The color value.",
"brightPercentValue": "String // The brightness percentage value."
"iconUrl": "String // The icon of a device.",
}
]
}
Sample request
{
"pageSize": "The number of items per page",
"page": "The page number"
"projectId": "The project ID",
"roomId": "The room ID",
"roomType": "The room type",
"deviceStatus": "The device status"
}
Sample response
{
"total": "int",
"list": [
{
"deviceSaasId": "String // The unique ID of the commercial lighting device",
"deviceId": "The device ID. Each device ID corresponds with one hardware device. Because the device is re-bound to a new point, the device ID is not unique here",
"deviceName": "The device name",
"deviceType": "The device type. For more information, see `DeviceTypeEnum`.",
"deviceTypeValue": "The value of the device type. For more information, see `DeviceTypeEnum`.",
"topCategory": "The major category of the product. For more information, see the type description of `ProductCategoryEnum`.",
"devicePower": "The device power",
"deviceStatus": "The device status. Valid values: `NORMAL`, `OFFLINE`, `EXPIRING`, and `EXCEPTION`.",
"installTime": "The installation time of the device",
"activeTime": "The active time of the device",
"productId": "The device category (product) ID",
"projectId": "The project ID",
"roomId": "The ID of the room to which the device belongs",
"roomName": "The name of the room to which the device belongs",
"pointId": "The ID of the point where the device is located",
"ownerId": "The ID of the home group to which the device belongs",
"properties": [
{
"dpId": "The DP ID",
"dpCode": "The DP code",
"dpName": "The DP name",
"dpValueStd": "The current DP value",
"property": {
"range": "The value range of the attribute"
},
"propertyDetail": {},
"mode": "The mode such as `ro` and `rw`. This feature is added to v1.4.3.",
"dpFrom": "String"
}
],
"masterGroupJoinStatus": "Indicates whether the device has joined the main group. Valid values: `0`: no. `1`: yes. `2`: a non-lighting device that has not joined the main group",
"currentBrightness": "The brightness threshold of the room to which the device belongs",
"supportGroup": "Check whether the device can be grouped",
"switchStatus": "The switch status",
"switchDpCode": "The switch DP code",
"colourValue": "The color value",
"brightPercentValue": "The brightness percentage value"
"iconUrl": "The icon of a device",
"pointDeviceType": "The device type on the location map",
"switchCount": "int",
"dpFrom": "String"
}
]
}
API description
Get the details of a single device by deviceSaasId
.
API endpoint
GET /v1.0/illumination/devices/{deviceSaasId}/detail
Request parameter
Parameter | Type | Type | Description | Required |
---|---|---|---|---|
deviceSaasId | String | url | The device ID. | Yes |
Return parameter
Parameter | Type | Description |
---|---|---|
code | Integer | The response code. For more information, see the error code section. It is empty when the operation succeeded. |
success | Boolean | Indicates whether the operation is successful. Valid values: true : succeeded. false : failed. |
msg | String | The error message that is returned if the request fails. It is empty if the request is successful. |
t | Long | The returned 13-bit timestamp. |
result | Object | The returned result. |
Description of result parameter
The parameters are the same as the API operation that returns the device list.
Sample request
{
"deviceSaasId": "The device ID"
}
Sample response
The parameters are the same as the API operation that returns the device list.
API description
Query the list of devices that are not allocated space under the project.
API endpoint
GET /v1.0/illumination/devices/unassignedRoom
Request parameter
Parameter | Type | Type | Description | Required |
---|---|---|---|---|
page | int | body | The page number starting from 1 . |
No |
pageSize | int | body | The number of entries per page. Valid values: 1 to 100. | No |
projectId | String | body | The project ID. | Yes |
deviceStatus | String[] | body | The device status. Valid values:
|
No |
deviceTypes | int[] | body | The device type. Valid values:
|
No |
Return parameter
Parameter | Type | Description |
---|---|---|
code | Integer | The response code. For more information, see the error code section. It is empty when the operation succeeded. |
success | Boolean | Indicates whether the operation is successful. Valid values: true : succeeded. false : failed. |
msg | String | The error message that is returned if the request fails. It is empty if the request is successful. |
t | Long | The returned 13-bit timestamp. |
result | Object | The returned result. |
Description of result parameter
The parameters are the same as the API operation that returns the device list.
Sample request
{
"pageSize": "The number of items per page",
"page": "The page number"
"projectId": "The project ID",
"topCategories": "The code of the list of devices based on the status (electrical products: `dgzm`, lighting products: `zm`, small home appliances: `xjd`, security sensor: `jjaf`, gateway and central control: `wgzk`, and other categories: `qt`)",
"deviceName": "The device name",
"roomId": "The room ID",
"deviceStatus": "The list of devices based on the status"
}
Sample response
The parameters are the same as the API operation that returns the device list.
API description
Query the status of devices in a room. This feature is added to v1.4.3.
API endpoint
GET /v1.0/illumination/devices/roomstate/{roomId}
Request parameter
Parameter | Type | Type | Description | Required |
---|---|---|---|---|
roomId | String | url | The room ID. | Yes |
Return parameter
Parameter | Type | Description |
---|---|---|
code | Integer | The response code. For more information, see the error code section. It is empty when the operation succeeded. |
success | Boolean | Indicates whether the operation is successful. Valid values: true : succeeded. false : failed. |
msg | String | The error message that is returned if the request fails. It is empty if the request is successful. |
t | Long | The returned 13-bit timestamp. |
result | Object | The returned result. |
Description of result parameter
{
"properties": [
{
"dpCode": "String // The DP code.",
"dpName": "String // The DP name.",
"dpValueStd": "String // The current DP value.",
"property": {
"range": "String[] // The value range of the attribute."
},
"propertyDetail": {},
"mode": "String // The mode such as `ro` and `rw`. This feature is added to v1.4.3",
"dpFrom": "String"
}
],
"count": {
"total": "long // The total number of devices",
"online": "long // The number of online devices",
"offline": "long // The number of offline devices",
"expiring": "long // The number of the replaced alarm devices",
"exception": "long // The number of the DP alarm devices"
}
}
Sample request
{
"roomId": "The room ID",
}
Sample response
{
"properties": [
{
"dpCode": "The DP code",
"dpName": "The DP name",
"dpValueStd": "The current DP value",
"property": {
"range": "The value range of the attribute"
},
"propertyDetail": {},
"mode": "The mode such as `ro` and `rw`. This feature is added to v1.4.3",
"dpFrom": "String"
}
],
"count": {
"total": "The total number of devices",
"online": "The number of online devices",
"offline": "The number of offline devices",
"expiring": "The number of replaced alarm devices",
"exception": "The number of DP alarm devices"
}
}
API description
Assign a specified device to a specified space.
API endpoint
POST /v1.0/illumination/device/relations/save
Request parameter
Parameter name | Type | Parameter type | Description | Required |
---|---|---|---|---|
projectId | String | body | The project ID | Yes |
roomId | String | body | The space ID. The value is 0 for an unassigned space. |
Yes |
deviceIds | List | body | The list of device IDs. | Yes |
Return parameter
Parameter | Type | Description |
---|---|---|
code | Integer | The response code. For more information, see the error code section. It is empty when the operation succeeded. |
success | Boolean | Indicates whether the operation is successful. Valid values: true : succeeded. false : failed. |
msg | String | The error message that is returned if the request fails. It is empty if the request is successful. |
t | Long | The returned 13-bit timestamp. |
result | Object | The returned result. |
Description of result parameter
{
"expiredSeconds": "The remaining seconds before the task expires. The task will expire after this duration.",
"taskId": "The number of device status"
}
Sample request
{
"deviceIds": "The list of device IDs",
"projectId": "The project ID",
"roomId": "The space ID. The value is `0` for an unassigned space."
}
Sample response
{
"expiredSeconds": "The remaining seconds before the task expires. The task will expire after this duration.",
"taskId": "The number of device status"
}
Error code
The following table describes common error messages for this interface. For more errors, see Global Error Codes.
Error code | Description |
---|---|
500 | A system error has occurred while processing your request. |
Is this page helpful?
YesFeedbackIs this page helpful?
YesFeedback