調(diào)用該接口為指定產(chǎn)品的物模型新增功能,支持同時(shí)新增物模型擴(kuò)展描述。

使用說明

  • 如果指定產(chǎn)品已發(fā)布,需先調(diào)用接口CancelReleaseProduct取消該產(chǎn)品發(fā)布,才能調(diào)用本接口新增物模型功能。
  • 調(diào)用接口前,您可通過json-schemaThingModelJson中的入?yún)⑦M(jìn)行預(yù)校驗(yàn),請參見ThingModelJson數(shù)據(jù)說明中的“校驗(yàn)”。
  • 單次調(diào)用最多可新增10個(gè)功能,即新增屬性、服務(wù)和事件的數(shù)量總計(jì)不超過10。

QPS限制

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

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

調(diào)試

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

請求參數(shù)

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

系統(tǒng)規(guī)定參數(shù)。取值:CreateThingModel。

ProductKey String a1BwAGV****

產(chǎn)品的ProductKey,物聯(lián)網(wǎng)平臺為產(chǎn)品頒發(fā)的全局唯一標(biāo)識符。

您可以在物聯(lián)網(wǎng)平臺控制臺或調(diào)用QueryProductList接口,查看當(dāng)前賬號下所有產(chǎn)品的信息。

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

實(shí)例ID。您可在物聯(lián)網(wǎng)平臺控制臺的實(shí)例概覽頁面,查看當(dāng)前實(shí)例的ID。

重要
  • 若有ID值,必須傳入該ID值,否則調(diào)用會失敗。
  • 若無實(shí)例概覽頁面或ID值,則無需傳入。

實(shí)例的更多信息,請參見實(shí)例概述。

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": "a1bPo9p****", "required": false, "customFlag": true, "name": "sim卡類型" } ], "services":[...], "events":[...] }

新增的功能定義詳情。最多能包含10個(gè)功能的定義信息。

ThingModelJson每個(gè)property結(jié)構(gòu)中,可以使用extendConfig來描述擴(kuò)展物模型的數(shù)據(jù)。更多信息,請參見ThingModelJson數(shù)據(jù)說明。

重要 此處參數(shù)ThingModelJson的值不可傳入完整的物模型TSL數(shù)據(jù),只需傳入JSON格式的物模型properties、servicesevents字段數(shù)據(jù)。

以下示例值為包含多種數(shù)據(jù)類型的屬性數(shù)據(jù),例如STRUCTARRAY。


{
  "properties": [
    {
      "custom": true,
      "dataSpecsList": [
        {
          "childDataType": "TEXT",
          "childName": "設(shè)備SIM卡的CCID",
          "dataSpecs": {
            "custom": true,
            "dataType": "TEXT",
            "length": 20
          },
          "dataType": "STRUCT",
          "identifier": "CCID",
          "name": "設(shè)備SIM卡的CCID"
        },
        {
          "childDataType": "INT",
          "childName": "電池電量",
          "dataSpecs": {
            "custom": true,
            "dataType": "INT",
            "max": "60000",
            "min": "0",
            "step": "1"
          },
          "dataType": "STRUCT",
          "identifier": "battery",
          "name": "電池電量"
        },
        {
          "childDataType": "TEXT",
          "childName": "其他信息",
          "dataSpecs": {
            "custom": true,
            "dataType": "TEXT",
            "length": 1024
          },
          "dataType": "STRUCT",
          "identifier": "other_info",
          "name": "其他信息"
        }
      ],
      "dataType": "STRUCT",
      "identifier": "DEV_INFO",
      "name": "設(shè)備信息",
      "productKey": "a1T***",
      "propertyId": 18786548,
      "required": false,
      "rwFlag": "READ_ONLY"
    },
    {
      "custom": true,
      "dataSpecs": {
        "childDataType": "INT",
        "custom": true,
        "dataType": "ARRAY",
        "size": 1,
        "dataSpecs": {
          "custom": true,
          "dataType": "INT",
          "max": "65535",
          "min": "0",
          "step": "1",
          "unit": "ppm",
          "unitName": "百萬分率"
        }
      },
      "dataType": "ARRAY",
      "identifier": "airRH_SR",
      "name": "除濕機(jī)濕度",
      "productKey": "a1T***",
      "propertyId": 18786551,
      "required": false,
      "rwFlag": "READ_ONLY"
    }
  ],
  "services": [...],
  "events": [...]
}
FunctionBlockId String BatteryModule

物模型自定義模塊標(biāo)識符,在產(chǎn)品中具有唯一性。支持英文大小寫字母、數(shù)字和下劃線(_),不超過30個(gè)字符。

需與FunctionBlockName結(jié)合使用。不傳入此參數(shù)時(shí),新增功能導(dǎo)入默認(rèn)模塊。

FunctionBlockName String 電池模塊

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

需與FunctionBlockId結(jié)合使用。不傳入此參數(shù)時(shí),新增功能導(dǎo)入默認(rèn)模塊。

調(diào)用API時(shí),除了本文介紹的該API的特有請求參數(shù),還需傳入公共請求參數(shù)。公共請求參數(shù)說明,請參見公共參數(shù)文檔。

返回?cái)?shù)據(jù)

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

調(diào)用失敗時(shí),返回的錯(cuò)誤碼。更多信息,請參見錯(cuò)誤碼。

ErrorMessage String 系統(tǒng)異常

調(diào)用失敗時(shí),返回的出錯(cuò)信息。

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

阿里云為該請求生成的唯一標(biāo)識符。

Success Boolean true

是否調(diào)用成功。

  • true:調(diào)用成功。
  • false:調(diào)用失敗。

示例

請求示例

https://iot.cn-shanghai.aliyuncs.com/?Action=CreateThingModel
&ProductKey=a1bPo9p****
&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": "a1bPo9p****","required": false,"customFlag": true, "name": "sim卡類型"}]}
&<公共請求參數(shù)>

正常返回示例

XML格式

<CreateThingModelResponse>
  <RequestId>9E76053E-26ED-4AB4-AE58-8AFC3F1E7E8E</RequestId>
  <Success>true</Success>
</CreateThingModelResponse>

JSON格式

{
  "RequestId": "9E76053E-26ED-4AB4-AE58-8AFC3F1E7E8E",
  "Success": true
}

錯(cuò)誤碼

訪問錯(cuò)誤中心查看更多錯(cuò)誤碼。