調用該接口對指定Topic新建一個規則。
使用說明
調用該接口時,請求參數ProductKey必須傳入。
QPS限制
單個阿里云賬號調用該接口的每秒請求數(QPS)最大限制為50。
調試
您可以在OpenAPI Explorer中直接運行該接口,免去您計算簽名的困擾。運行成功后,OpenAPI Explorer可以自動生成SDK代碼示例。
請求參數
名稱 | 類型 | 是否必選 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | CreateRule | 系統規定參數。取值:CreateRule。 |
Name | String | 是 | iot_test1 | 規則名稱。支持中文、英文字母、日文、數字、下劃線(_)和短劃線(-),長度為1~30個字符,一個中文或日文占2個字符。 |
IotInstanceId | String | 否 | iot-cn-0pp1n8t**** | 實例ID。您可在物聯網平臺控制臺的實例概覽頁面,查看當前實例的ID。 重要
實例的更多信息,請參見實例概述。 |
Select | String | 否 | deviceName() as deviceName, items.Humidity.value as Humidity, items.Temperature.value as Temperature | 要執行的SQL SELECT語句。具體內容參照SQL表達式。 說明 此處傳入的是SELECT下的內容。例如,如果SELECT語句為 SELECT a,b,c ,則此處傳入a,b,c 。 |
ShortTopic | String | 否 | +/thing/event/property/post | 應用該規則的具體Topic,格式一般為:
|
Where | String | 否 | Temperature>35 | 規則的觸發條件。具體內容參照SQL表達式。 說明 此處傳入的是Where中的內容。例如,如果Where語句為 Where a>10 ,則此處傳入a>10 。 |
ProductKey | String | 否 | a1T27vz**** | 應用該規則的產品ProductKey。 |
RuleDesc | String | 否 | rule test | 規則的描述信息。長度限制為100個字符,一個中文字符計為1個字符。 |
DataType | String | 否 | JSON | 規則處理的數據格式,需與待處理的設備數據格式一致。取值:
說明 若選擇為BINARY,TopicType不能選擇為0(基礎通信Topic或物模型通信Topic),且不支持將數據轉發至實例內的時序數據存儲、時序數據庫、表格存儲和云數據庫RDS版。 |
TopicType | Integer | 否 | 1 |
|
ResourceGroupId | String | 否 | rg-acfmxazb4ph**** | 資源組ID。 重要
|
Topic | String | 否 | /sys/g18l***/device1/thing/event/property/post | 待添加規則的完整Topic。 如果傳入此參數,無需再傳入參數ShortTopic和TopicType。 |
調用API時,除了本文介紹的該API的特有請求參數,還需傳入公共請求參數。公共請求參數說明,請參見公共參數文檔。
返回數據
名稱 | 類型 | 示例值 | 描述 |
---|---|---|---|
Code | String | iot.system.SystemException | 調用失敗時,返回的錯誤碼。更多信息,請參見錯誤碼。 |
ErrorMessage | String | 系統異常 | 調用失敗時,返回的出錯信息。 |
RequestId | String | E4C0FF92-2A86-41DB-92D3-73B60310D25E | 阿里云為該請求生成的唯一標識符。 |
RuleId | Long | 100000 | 調用成功時,規則引擎為該規則生成的規則ID,作為該規則的標識符。 說明 請妥善保管該信息。在調用和規則相關的接口時,您可能需要提供對應的規則ID。 |
Success | Boolean | true | 是否調用成功。
|
示例
請求示例
https://iot.cn-shanghai.aliyuncs.com/?Action=CreateRule
&Name=iot_test1
&ProductKey=a1T27vz****
&ShortTopic=+/thing/event/property/post
&Select=deviceName() as deviceName, items.Humidity.value as Humidity, items.Temperature.value as Temperature
&RuleDesc=rule test
&DataType=JSON
&Where=Temperature>35
&TopicType=1
&<公共請求參數>
正常返回示例
XML
格式
<CreateRuleResponse>
<RequestId>E4C0FF92-2A86-41DB-92D3-73B60310D25E</RequestId>
<RuleId>100000</RuleId>
<Success>true</Success>
</CreateRuleResponse>
JSON
格式
{
"RequestId": "E4C0FF92-2A86-41DB-92D3-73B60310D25E",
"RuleId": 100000,
"Success": true
}