1. 接口描述
接口请求域名: iotexplorer.tencentcloudapi.com 。
根据设备产品ID、设备名称,设置控制设备的属性数据。
默认接口请求频率限制:350次/秒。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
Action | 是 | String | 公共参数,本接口取值:ControlDeviceData。 |
Version | 是 | String | 公共参数,本接口取值:2019-04-23。 |
Region | 是 | String | 公共参数,详见产品支持的 地域列表,本接口仅支持其中的: ap-bangkok, ap-beijing, ap-guangzhou, ap-shanghai, ap-shanghai-fsi, eu-frankfurt, na-ashburn 。 |
ProductId | 是 | String | 产品ID 示例值:BKTTNGIQOG |
DeviceName | 是 | String | 设备名称 示例值:devtest01 |
Data | 是 | String | 属性数据, JSON格式字符串, 注意字段需要在物模型属性里定义 示例值:{"brightness":1} |
Method | 否 | String | 请求类型 , 不填该参数或者 desired 表示下发属性给设备, reported 表示模拟设备上报属性 示例值:desired |
DeviceId | 否 | String | 设备ID,该字段有值将代替 ProductId/DeviceName , 通常情况不需要填写 示例值:BKTTNGIQOG/devtest01 |
DataTimestamp | 否 | Integer | 上报数据UNIX时间戳(毫秒), 仅对Method:reported有效 示例值:1642127909000 |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
Data | String | 返回信息 示例值:"" |
Result | String | JSON字符串, 返回下发控制的结果信息, Sent = 1 表示设备已经在线并且订阅了控制下发的mqtt topic. pushResult 是表示发送结果,其中 0 表示成功, 23101 表示设备未在线或没有订阅相关的 MQTT Topic。 注意:此字段可能返回 null,表示取不到有效值。 示例值:{"Sent":1,"pushResult":0} |
RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 设置设备数据
设置设备数据
输入示例
https://iotexplorer.tencentcloudapi.com/?Action=ControlDeviceData
&ProductId=BKTTNGIQOG
&DeviceName=dev01
&Data={"payload":"test","id":"abc"}
&<公共请求参数>
输出示例
{
"Response": {
"Data": "",
"RequestId": "235fe48b-0c31-4a7c-aaf6-83ba3e9b4bcf",
"Result": "{\"Sent\":1,\"pushResult\":0}"
}
}
示例2 设置设备数据-2
设置设备数据
输入示例
https://iotexplorer.tencentcloudapi.com/?Action=ControlDeviceData
&ProductId=LJ0INDNU7U
&DeviceName=light1
&Data={"brightness":1}
&<公共请求参数>
输出示例
{
"Response": {
"Data": "",
"RequestId": "235fe48b-0c31-4a7c-aaf6-83ba3e9b4bcf",
"Result": "{\"Sent\":1,\"pushResult\":0}"
}
}
示例3 设备不在线时或未订阅相关 Topic 时,设置设备数据
设备不在线时或未订阅相关 Topic 时,设置设备数据
输入示例
https://iotexplorer.tencentcloudapi.com/?Action=ControlDeviceData
&ProductId=BKTTNGIQOG
&DeviceName=dev01
&Data={"payload":"test","id":"abc"}
&<公共请求参数>
输出示例
{
"Response": {
"Data": "",
"RequestId": "235fe48b-0c31-4a7c-aaf6-83ba3e9b4bcf",
"Result": "{\"Sent\":0,\"pushResult\":23101}"
}
}
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. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
错误码 | 描述 |
---|---|
AuthFailure | CAM签名/鉴权错误。 |
FailedOperation | 操作失败。 |
InternalError | 内部错误。 |
InternalError.DBOpertaionError | DB操作错误。 |
InternalError.InternalRPCError | 内部RPC错误。 |
InternalError.InternalServerExceptionDB | 内部DB错误。 |
InvalidParameterValue | 参数取值错误。 |
InvalidParameterValue.ModelDefineEventPropNameError | 物模型事件/属性 Name 错误。 |
InvalidParameterValue.ModelDefineInvalid | 数据模板未定义。 |
InvalidParameterValue.ModelDefineNil | 物模型为空。 |
ResourceInsufficient | 资源不足。 |
ResourceNotFound.DeviceNotExist | 设备不存在。 |
ResourceNotFound.ProductNotExist | 产品不存在。 |
ResourceNotFound.ProductOrDeviceNotExist | 产品或设备不存在。 |
ResourceNotFound.StudioProductNotExist | 产品不存在。 |
UnauthorizedOperation | 未授权操作。 |
UnauthorizedOperation.NoPermissionToStudioProduct | 产品ACL错误。 |
UnauthorizedOperation.NoVerified | 您的帐号未实名认证,请登录腾讯云进行实名认证 |
UnsupportedOperation | 操作不支持。 |
UnsupportedOperation.InstanceIsolated | 由于实例到期已被禁用,请续费后使用。 |
UnsupportedOperation.LoRaNoUpLink | LoRa设备未上报数据。 |
UnsupportedOperation.LoRaNotActivate | Lora设备没有激活。 |