Modifies a Message Service (MNS) or AMQP server-side subscription.
Limits
Each Alibaba Cloud account can run a maximum of 5 queries per second (QPS).
Debugging
Request parameters
Parameter | Type | Required | Example | Description |
---|---|---|---|---|
Action | String | Yes | UpdateSubscribeRelation |
The operation that you want to perform. Set the value to UpdateSubscribeRelation. |
ProductKey | String | Yes | a1fyXVF**** |
The ProductKey of the product that is specified for the subscription. |
Type | String | Yes | AMQP |
The type of the subscription. Valid values:
|
IotInstanceId | String | No | iot-cn-0pp1n8t**** |
The ID of the instance. You can view the instance ID on the Overview page in the IoT Platform console. Notice
For more information, see Overview. |
DeviceDataFlag | Boolean | No | true |
Specifies whether to push upstream device messages. Valid values:
Default value: false. |
DeviceStatusChangeFlag | Boolean | No | true |
Specifies whether to push messages about device status changes. Valid values:
Default value: false. |
FoundDeviceListFlag | Boolean | No | true |
Specifies whether to push messages if a gateway detects new sub-devices. Valid values:
Default value: false. |
DeviceTopoLifeCycleFlag | Boolean | No | true |
Specifies whether to push messages about topological relationship changes of devices. Valid values:
Default value: false. |
DeviceLifeCycleFlag | Boolean | No | true |
Specifies whether to push messages about device lifecycle changes. Valid values:
Default value: false. |
ThingHistoryFlag | Boolean | No | true |
Specifies whether to push upstream historical Thing Specification Language (TSL) data. Valid values:
Default value: false. |
OtaEventFlag | Boolean | No | true |
Specifies whether to push notifications about the status of OTA update batches. Valid values:
Default value: false. |
DeviceTagFlag | Boolean | No | true |
Specifies whether to push messages about topological relationship changes of devices. Valid values:
Default value: false. |
OtaVersionFlag | Boolean | No | true |
Specifies whether to push messages about OTA module version numbers. Valid values:
Default value: false. |
OtaJobFlag | Boolean | No | true |
Specifies whether to push notifications about the statuses of OTA update batches. Valid values:
Default value: false. |
MnsConfiguration | String | No | { "queueName": "mns-test-topic1", "regionName": "cn-shanghai", "role": { "roleArn": "acs:ram::5645***:role/aliyuniotaccessingmnsrole", "roleName": "AliyunIOTAccessingMNSRole" } } |
The configurations of the MNS queue. This parameter is required if the Type parameter is set to AMQP. For more information, see the "Definition of the MnsConfiguration parameter" section. |
ConsumerGroupIds.N | RepeatList | No | nJRaJPn5U1JITGfjBO9l00**** |
The IDs of the consumer groups that are created in the AMQP subscription. This parameter is required if the Type parameter is set to AMQP. After you call the CreateConsumerGroup operation to create a consumer group, the consumer group ID is returned. You can call the QueryConsumerGroupList operation to query the consumer group ID by group name. You can also go to the IoT Platform console,and choose Rules > Server-side Subscription > Consumer Groups to view the consumer group ID. |
Parameter |
Description |
---|---|
queueName |
The name of the MNS topic that is used to receive data. You must create a queue in the MNS console and obtain the queue name. For more information, see Create a queue. |
regionName |
The code of the region in which MNS is deployed. Example: cn-shanghai. |
role |
The information about the RAM role. To grant IoT Platform the access to MNS, you can assign a RAM role to IoT Platform. The following script shows the syntax of a RAM role:
Replace
|
Example of the MnsConfiguration parameter
{
"queueName": "mns-test-topic1",
"regionName": "cn-shanghai",
"role": {
"roleArn": "acs:ram::5645***:role/aliyuniotaccessingmnsrole",
"roleName": "AliyunIOTAccessingMNSRole"
}
}
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. |
ErrorMessage | String | A system exception occurred. |
The error message returned if the call fails. |
RequestId | String | 21D327AF-A7DE-4E59-B5D1-ACAC8C024555 |
The ID of the request. |
Success | Boolean | true |
Indicates whether the call was successful.
|
Examples
Sample requests
https://iot.cn-shanghai.aliyuncs.com/?Action=UpdateSubscribeRelation
&OtaEventFlag=true
&ProductKey=a1Zkii7****
&Type=AMQP
&ConsumerGroupIds.1=Xs95KifeaSKbi8tKkcoD00****
&<Common request parameters>
Sample success responses
XML
format
<UpdateSubscribeRelationResponse>
<RequestId>C21DA94F-07D7-482F-8A0C-5BB0E3CC1A82</RequestId>
<Success>true</Success>
</UpdateSubscribeRelationResponse>
JSON
format
{
"RequestId": "C21DA94F-07D7-482F-8A0C-5BB0E3CC1A82",
"Success": true
}
Error codes
For a list of error codes, visit the API Error Center.