調用接口更新指定產品物模型中的單個功能,支持同步更新物模型的擴展描述。

使用說明

  • 如果指定產品已發布,需先調用接口CancelReleaseProduct取消該產品發布,才能調用本接口更新物模型功能。
  • 如需更新功能定義信息,您可通過json-schemaThingModelJson中的入參進行預校驗,請參見ThingModelJson數據說明中的“校驗”。
  • 單次調用最多可更新1個功能,即更新1個屬性、服務或事件的定義信息。

QPS限制

單個阿里云賬號調用該接口的每秒請求數(QPS)最大限制為5。

說明 RAM用戶共享阿里云賬號配額。

調試

您可以在OpenAPI Explorer中直接運行該接口,免去您計算簽名的困擾。運行成功后,OpenAPI Explorer可以自動生成SDK代碼示例。

請求參數

名稱 類型 是否必選 示例值 描述
Action String UpdateThingModel

系統規定參數。取值:UpdateThingModel。

ProductKey String a1BwAGV****

產品的ProductKey

可以在物聯網平臺控制臺產品頁查看,或調用QueryProductList查看ProductKey的取值。

IotInstanceId String iot-cn-0pp1n8t****

實例ID。您可在物聯網平臺控制臺的實例概覽頁面,查看當前實例的ID

注意
  • 若有ID值,必須傳入該ID值,否則調用會失敗。
  • 若無ID值,則無需傳入。

實例的更多信息,請參見實例概述

Identifier String Temperature

功能原有的標識符。

您可調用GetThingModelTsl,從返回參數TslStr中查看具體功能的identifier

ThingModelJson String { "properties":[ { "identifier": "SimCardType", "extendConfig":"{...}", "dataSpecs": { "max": "1", "dataType": "INT", "unit": "mmHg", "min": "0", "step": "1" }, "std": false, "custom": true, "dataType": "INT", "rwFlag": "READ_ONLY", "productKey": "a1Jw4i****", "required": false, "customFlag": true, "name": "sim卡類型" } ] }

新的功能定義詳情。

  • Identifier不為空時,表示更新功能的標識符,最多能包含1個功能的標識符定義信息。
  • Identifier為空時,表示更新一個服務或事件下,輸入或輸出參數的定義,可包含多個參數的定義信息,最多不超過50個。

ThingModelJson的編寫指導,請參見ThingModelJson數據說明

FunctionBlockId String BatteryModule

物模型自定義模塊標識符,在產品中具有唯一性。

此參數和FunctionBlockName均不傳入時,更新默認模塊中功能。

FunctionBlockName String 電池模塊

物模型的自定義模塊名稱。支持中文、英文字母、日文、數字和下劃線(_),長度限制為4~30個字符,一個中文、一個日文算1個字符。

  • 此參數和FunctionBlockId均不傳入時,更新默認模塊中功能。
  • 如果傳入此參數,必須與FunctionBlockId結合使用,可修改FunctionBlockId對應的自定義模塊名稱。
說明 不支持修改默認模塊名稱。

調用API時,除了本文介紹的該API的特有請求參數,還需傳入公共請求參數。公共請求參數說明,請參見公共參數文檔

返回數據

名稱 類型 示例值 描述
Code String iot.system.SystemException

調用失敗時,返回的錯誤碼。更多信息,請參見錯誤碼

ErrorMessage String 系統異常

調用失敗時,返回的出錯信息。

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

阿里云為該請求生成的唯一標識符。

Success Boolean true

表示是否調用成功。

  • true:調用成功。
  • false:調用失敗。

示例

請求示例

https://iot.cn-shanghai.aliyuncs.com/?Action=UpdateThingModel
&ProductKey=a1Jw4id****
&ThingModelJson={"properties":[{"identifier": "SimCardType","dataSpecs": {"max": "1", "dataType": "INT","unit": "mmHg","min": "0","step": "1"},"std": false,"custom": true,"dataType": "INT","rwFlag": "READ_ONLY","productKey": "a1Jw4id****","required": false,"customFlag": true, "name": "sim卡類型"}]}
&Identifier=SimCardType
&<公共請求參數>

正常返回示例

XML格式

<UpdateThingModelResponse>
  <RequestId>5573D217-8E3E-47AD-9331-2083B88E64B2</RequestId>
  <Success>true</Success>
</UpdateThingModelResponse>

JSON格式

{
  "RequestId": "5573D217-8E3E-47AD-9331-2083B88E64B2",
  "Success": true
}