Queries the desired property values of a specified device.

Limits

  • The desired values of read-only properties cannot be queried.
  • A maximum of 10 properties can be queried at a time.
  • Each Alibaba Cloud account can run a maximum of 50 queries per second (QPS).
    Note RAM users of an Alibaba Cloud account share the quota of the account.

Debugging

OpenAPI Explorer automatically calculates the signature value. For your convenience, we recommend that you call this operation in OpenAPI Explorer. OpenAPI Explorer dynamically generates the sample code of the operation for different SDKs.

Request parameters

Parameter Type Required Example Description
Action String Yes QueryDeviceDesiredProperty

The operation that you want to perform. Set the value to QueryDeviceDesiredProperty.

IotInstanceId String No iot_instc_pu****_c*-v64********

The ID of the instance. This parameter is not required for public instances. However, the parameter is required for the instances that you have purchased.

ProductKey String No a1BwAGV****

The ProductKey of the product to which the device belongs.

Note If you specify this parameter, you must also specify the DeviceName parameter.
DeviceName String No light

The name of the device.

Note If you specify this parameter, you must also specify the ProductKey parameter.
Identifier.N RepeatList No Temperature

The identifiers of properties that you want to query.

You can view the property identifiers in the IoT Platform console. Go to the Define Feature tab of the Product Details page.

  • A maximum of 10 identifiers can be specified in a single call.
  • The property identifiers must be unique.
  • If you do not specify this parameter, the desired values of all properties are returned.
IotId String No Q7uOhVRdZRRlDnTLv****00100

The ID of the device. The device ID is issued by IoT Platform.

Note If you specify this parameter, you do not need to specify the ProductKey or DeviceName parameter. The IotId parameter is a globally unique identifier (GUID), and corresponds to a combination of the ProductKey and DeviceName parameters. If you specify the IotId parameter and a combination of the ProductKey and DeviceName parameters at the same time, the IotId parameter is used.

In addition to the preceding operation-specific request parameters, you must specify common request parameters when you call this operation. For more information, see Common request parameters.

Response parameters

Parameter Type Example Description
Code String iot.system.SystemException

The error code returned if the call fails. For more information, see Error codes.

Data Struct

The data returned if the call is successful. For more information, see List.

List Array of DesiredPropertyInfo

The desired property information. For more information, see DesiredPropertyInfo.

DesiredPropertyInfo
DataType String int

The data type of the property.

Identifier String Temperature

The identifier of the property.

Name String airconditioning

The name of the property.

Time String 1579335899000

The time when the desired value of a property was modified. Unit: milliseconds.

Unit String °C

The unit of the property.

Value String 34

The desired value of the property.

Version Long 1

The version of the desired value.

ErrorMessage String A system exception occurred.

The error message returned if the call fails.

RequestId String E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565

The ID of the request.

Success Boolean true

Indicates whether the call was successful.

  • true: The call was successful.
  • false: The call failed.

Examples

Sample requests

https://iot.cn-shanghai.aliyuncs.com/?Action=QueryDeviceDesiredProperty
&IotId=SR8FiTu1R9tlUR2****0010300
&Identifier.1=Weight
&Identifier.2=Circle
&<Common request parameters>

Sample success responses

XML format

<QueryDeviceDesiredPropertyResponse>
  <Data>
        <List>
              <DesiredPropertyInfo>
                    <Name>Guan</Name>
                    <Value>35</Value>
                    <Time>1581778567154</Time>
                    <DataType>float</DataType>
                    <Version>1</Version>
                    <Identifier>Temperature</Identifier>
                    <Unit>°C</Unit>
              </DesiredPropertyInfo>
        </List>
  </Data>
  <RequestId>F0B1F7C8-A799-44C3-BDF8-1B8F9E91E675</RequestId>
  <Success>true</Success>
</QueryDeviceDesiredPropertyResponse>

JSON format

{
  "Data": {
    "List": {
      "DesiredPropertyInfo": [
        {
          "Name": "Temperature", 
          "Value": "35", 
          "Time": "1581778567154", 
          "DataType": "float", 
          "Version": 1, 
          "Identifier": "Temperature", 
          "Unit": "°C"
        }
      ]
    }
  }, 
  "RequestId": "F0B1F7C8-A799-44C3-BDF8-1B8F9E91E675", 
  "Success": true
}

Error codes

For a list of error codes, visit the API Error Center.