1. 接口描述
接口请求域名: iotexplorer.tencentcloudapi.com 。
提供修改产品的数据模板的能力
默认接口请求频率限制:30次/秒。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
Action | 是 | String | 公共参数,本接口取值:ModifyModelDefinition。 |
Version | 是 | String | 公共参数,本接口取值:2019-04-23。 |
Region | 是 | String | 公共参数,详见产品支持的 地域列表,本接口仅支持其中的: ap-bangkok, ap-guangzhou, ap-shanghai, ap-shanghai-fsi, eu-frankfurt, na-ashburn 。 |
ProductId | 是 | String | 产品ID 示例值:LJ0INDNU7U |
ModelSchema | 是 | String | 数据模板定义 示例值:{"version":"1.0","profile":{"productID":"9IEQWQY47W"},"properties":[{"id":"power_switch","name":"电灯开关","desc":"控制电灯开灭","required":true,"mode":"rw","define":{"type":"bool","mapping":{"0":"关","1":"开"}}},{"id":"color","name":"颜色1","required":false,"desc":"灯光颜色","mode":"rw","define":{"type":"enum","mapping":{"0":"Red","1":"Green","2":"Blue"}}},{"id":"brightness","name":"颜色","desc":"灯光颜色","mode":"rw","define":{"type":"int","unit":"%","step":"1","min":"0","max":"100"}},{"id":"name","name":"灯位置名称","desc":"灯位置名称:书房、客厅等","mode":"rw","required":true,"define":{"type":"string","min":"0","max":"64"}}],"events":[{"id":"status_report","name":"DeviceStatus","desc":"Report the device status我是中文","type":"info","required":true,"params":[{"id":"status","name":"running_state","desc":"Report current device running state","define":{"type":"bool","mapping":{"0":"normal","1":"fault"}}},{"id":"message","name":"Message","desc":"Some extra message","define":{"type":"string","min":"0","max":"64"}}]},{"id":"low_voltage","name":"LowVoltage","desc":"Alert for device voltage is low","type":"alert","required":false,"params":[{"id":"voltage","name":"Voltage","desc":"Current voltage","define":{"type":"float","unit":"V","step":"1","min":"0.0","max":"24.0"}}]},{"id":"hardware_fault","name":"Hardware_fault","desc":"Report hardware fault","type":"fault","required":false,"params":[{"id":"name","name":"Name","desc":"Name like: memory,tf card, censors ...","define":{"type":"string","min":"0","max":"64"}},{"id":"error_code","name":"Error_Code","desc":"Error code for fault","define":{"type":"int","unit":"","step":"1","min":"0","max":"2000"}}]}]} |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 设置产品数据模板
设置产品的数据模板配置
输入示例
POST / HTTP/1.1
Host: iotexplorer.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: ModifyModelDefinition
<公共请求参数>
{
"ModelSchema": "{\"version\":\"1.0\",\"profile\":{\"productID\":\"9IEQWQY47W\"},\"properties\":[{\"id\":\"power_switch\",\"name\":\"电灯开关\",\"desc\":\"控制电灯开灭\",\"required\":true,\"mode\":\"rw\",\"define\":{\"type\":\"bool\",\"mapping\":{\"0\":\"关\",\"1\":\"开\"}}},{\"id\":\"color\",\"name\":\"颜色1\",\"required\":false,\"desc\":\"灯光颜色\",\"mode\":\"rw\",\"define\":{\"type\":\"enum\",\"mapping\":{\"0\":\"Red\",\"1\":\"Green\",\"2\":\"Blue\"}}},{\"id\":\"brightness\",\"name\":\"颜色\",\"desc\":\"灯光颜色\",\"mode\":\"rw\",\"define\":{\"type\":\"int\",\"unit\":\"%\",\"step\":\"1\",\"min\":\"0\",\"max\":\"100\"}},{\"id\":\"name\",\"name\":\"灯位置名称\",\"desc\":\"灯位置名称:书房、客厅等\",\"mode\":\"rw\",\"required\":true,\"define\":{\"type\":\"string\",\"min\":\"0\",\"max\":\"64\"}}],\"events\":[{\"id\":\"status_report\",\"name\":\"DeviceStatus\",\"desc\":\"Report the device status我是中文\",\"type\":\"info\",\"required\":true,\"params\":[{\"id\":\"status\",\"name\":\"running_state\",\"desc\":\"Report current device running state\",\"define\":{\"type\":\"bool\",\"mapping\":{\"0\":\"normal\",\"1\":\"fault\"}}},{\"id\":\"message\",\"name\":\"Message\",\"desc\":\"Some extra message\",\"define\":{\"type\":\"string\",\"min\":\"0\",\"max\":\"64\"}}]},{\"id\":\"low_voltage\",\"name\":\"LowVoltage\",\"desc\":\"Alert for device voltage is low\",\"type\":\"alert\",\"required\":false,\"params\":[{\"id\":\"voltage\",\"name\":\"Voltage\",\"desc\":\"Current voltage\",\"define\":{\"type\":\"float\",\"unit\":\"V\",\"step\":\"1\",\"min\":\"0.0\",\"max\":\"24.0\"}}]},{\"id\":\"hardware_fault\",\"name\":\"Hardware_fault\",\"desc\":\"Report hardware fault\",\"type\":\"fault\",\"required\":false,\"params\":[{\"id\":\"name\",\"name\":\"Name\",\"desc\":\"Name like: memory,tf card, censors ...\",\"define\":{\"type\":\"string\",\"min\":\"0\",\"max\":\"64\"}},{\"id\":\"error_code\",\"name\":\"Error_Code\",\"desc\":\"Error code for fault\",\"define\":{\"type\":\"int\",\"unit\":\"\",\"step\":\"1\",\"min\":\"0\",\"max\":\"2000\"}}]}]}",
"ProductId": "LJ0INDNU7U"
}
输出示例
{
"Response": {
"RequestId": "5c982342-fb08-4fac-8e70-f63834667b52"
}
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: GitHub Gitee
- Tencent Cloud SDK 3.0 for Java: GitHub Gitee
- Tencent Cloud SDK 3.0 for PHP: GitHub Gitee
- Tencent Cloud SDK 3.0 for Go: GitHub Gitee
- Tencent Cloud SDK 3.0 for Node.js: GitHub Gitee
- Tencent Cloud SDK 3.0 for .NET: GitHub Gitee
- Tencent Cloud SDK 3.0 for C++: GitHub Gitee
- Tencent Cloud SDK 3.0 for Ruby: GitHub Gitee
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
错误码 | 描述 |
---|---|
InternalError | 内部错误。 |
InternalError.DBOpertaionError | DB操作错误。 |
InternalError.InternalRPCError | 内部RPC错误。 |
InvalidParameter | 参数错误。 |
InvalidParameterValue | 参数取值错误。 |
InvalidParameterValue.AppDescriptionTooLong | 应用描述过长。 |
InvalidParameterValue.AppExists | App已存在。 |
InvalidParameterValue.AppNameTooLong | 应用名称过长。 |
InvalidParameterValue.AppNoPermission | App无权限。 |
InvalidParameterValue.AppNotExists | App不存在。 |
InvalidParameterValue.DeviceNameInvalid | 设备名称非法。 |
InvalidParameterValue.ErrorTaskNotExist | 任务不存在。 |
InvalidParameterValue.ModelDefineDontMatchTemplate | 物模型不符合产品模板。 |
InvalidParameterValue.ModelDefineDupID | 物模型存在重复ID。 |
InvalidParameterValue.ModelDefineErrorModel | 物模型事件/属性Model错误。 |
InvalidParameterValue.ModelDefineErrorType | 物模型事件/属性Model Type错误。 |
InvalidParameterValue.ModelDefineEventParamsDupID | 物模型EVENT Parms存在重复ID。 |
InvalidParameterValue.ModelDefineEventParamsExceedLimit | 物模型EVENT Parms数量超过限制。 |
InvalidParameterValue.ModelDefineEventPropError | 物模型事件/属性参数错误。 |
InvalidParameterValue.ModelDefineEventPropNameError | 物模型事件/属性 Name 错误。 |
InvalidParameterValue.ModelDefineEventTypeError | 物模型事件 Type 错误:lac 。 |
InvalidParameterValue.ModelDefineInvalid | 数据模板未定义。 |
InvalidParameterValue.ModelDefineNil | 物模型为空。 |
InvalidParameterValue.ModelDefinePropBoolMappingError | 物模型事件/属性 BOOL类型 Mapping 定义错误。 |
InvalidParameterValue.ModelDefinePropEnumMappingError | 物模型事件/属性 Enum类型 Mapping 定义错误。 |
InvalidParameterValue.ModelDefinePropRangeError | 物模型事件/属性 Min/Max 定义错误。 |
InvalidParameterValue.ModelDefinePropRangeOverflow | 物模型事件/属性 Min/Max 范围超限。 |
InvalidParameterValue.MsgContentInvalid | 消息内容非法。 |
InvalidParameterValue.MsgLevelInvalid | 消息等级非法。 |
InvalidParameterValue.MsgTitleInvalid | 消息标题非法。 |
InvalidParameterValue.MsgTypeInvalid | 消息类型非法。 |
InvalidParameterValue.ProductAlreadyExist | 创建的产品名已存在。 |
InvalidParameterValue.ProductIDInvalid | 产品ID非法。 |
InvalidParameterValue.ProductParmsError | 产品参数错误。 |
InvalidParameterValue.ProjectParmsError | 项目参数错误。 |
InvalidParameterValue.UserIDInvalid | 用户ID非法。 |
LimitExceeded.ApplicationExceedLimit | 应用数量超出限制。 |
LimitExceeded.ProjectExceedLimit | 项目数量超出限制。 |
LimitExceeded.StudioProductExceedLimit | 产品数量超出限制。 |
LimitExceeded.ThingModelExceedLimit | 物模型超出限制。 |
MissingParameter.ModelDefineEventTypeError | 物模型事件 Type 错误。 |
ResourceNotFound.ProductNotExist | 产品不存在。 |
ResourceNotFound.ProjectNotExist | 项目不存在。 |
ResourceNotFound.StudioProductNotExist | 产品不存在。 |
UnauthorizedOperation | 未授权操作。 |
UnauthorizedOperation.AppNoPermission | App无权限。 |
UnauthorizedOperation.NoPermissionToProject | 项目ACL错误。 |
UnauthorizedOperation.NoPermissionToStudioProduct | 产品ACL错误。 |
UnsupportedOperation.InstanceIsolated | 由于实例到期已被禁用,请续费后使用。 |
UnsupportedOperation.ProductExistUnderProject | 项目下有产品。 |