调用该接口为指定产品的物模型新增功能,支持同时新增物模型扩展描述。
使用说明
- 如果指定产品已发布,需先调用接口CancelReleaseProduct取消该产品发布,才能调用本接口新增物模型功能。
- 调用接口前,您可通过json-schema对ThingModelJson中的入参进行预校验,请参见ThingModelJson数据说明中的“校验”。
- 单次调用最多可新增10个功能,即新增属性、服务和事件的数量总计不超过10。
QPS限制
单个阿里云账号调用该接口的每秒请求数(QPS)最大限制为5。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | CreateThingModel | 系统规定参数。取值:CreateThingModel。 |
ProductKey | String | 是 | a1BwAGV**** | 产品的ProductKey,物联网平台为产品颁发的全局唯一标识符。 您可以在物联网平台控制台或调用QueryProductList接口,查看当前账号下所有产品的信息。 |
IotInstanceId | String | 否 | iot-cn-0pp1n8t**** | 实例ID。您可在物联网平台控制台的实例概览页面,查看当前实例的ID。 重要
实例的更多信息,请参见实例概述。 |
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个功能的定义信息。 在ThingModelJson每个property结构中,可以使用extendConfig来描述扩展物模型的数据。更多信息,请参见ThingModelJson数据说明。 重要 此处参数ThingModelJson的值不可传入完整的物模型TSL数据,只需传入JSON格式的物模型properties、services和events字段数据。
以下示例值为包含多种数据类型的属性数据,例如STRUCT、ARRAY。
|
FunctionBlockId | String | 否 | BatteryModule | 物模型自定义模块标识符,在产品中具有唯一性。支持英文大小写字母、数字和下划线(_),不超过30个字符。 需与FunctionBlockName结合使用。不传入此参数时,新增功能导入默认模块。 |
FunctionBlockName | String | 否 | 电池模块 | 物模型的自定义模块名称。支持中文、英文字母、日文、数字和下划线(_),长度限制为4~30个字符,一个中文、一个日文算1个字符。 需与FunctionBlockId结合使用。不传入此参数时,新增功能导入默认模块。 |
调用API时,除了本文介绍的该API的特有请求参数,还需传入公共请求参数。公共请求参数说明,请参见公共参数文档。
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
Code | String | iot.system.SystemException | 调用失败时,返回的错误码。更多信息,请参见错误码。 |
ErrorMessage | String | 系统异常 | 调用失败时,返回的出错信息。 |
RequestId | String | E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565 | 阿里云为该请求生成的唯一标识符。 |
Success | Boolean | true | 是否调用成功。
|
示例
请求示例
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卡类型"}]}
&<公共请求参数>
正常返回示例
XML
格式
<CreateThingModelResponse>
<RequestId>9E76053E-26ED-4AB4-AE58-8AFC3F1E7E8E</RequestId>
<Success>true</Success>
</CreateThingModelResponse>
JSON
格式
{
"RequestId": "9E76053E-26ED-4AB4-AE58-8AFC3F1E7E8E",
"Success": true
}
错误码
访问错误中心查看更多错误码。