全屋管理

更新时间:2023-12-07 03:33:44下载pdf

本文介绍了全屋管理相关的接口。

API列表

请求方式 API 描述
POST /v1.0/home/create-home 添加家庭
PUT /v1.0/homes/{home_id} 修改家庭
DELETE /v1.0/homes/{home_id} 删除家庭
GET /v1.0/homes/{home_id} 查询家庭
GET /v1.0/homes/{home_id}/devices 查询家庭下的设备列表
POST /v1.0/homes/{home_id}/members 添加家庭成员
PUT /v1.0/homes/{home_id}/members/{uid} 设置成员权限
DELETE /v1.0/homes/{home_id}/members/{uid} 删除家庭成员
GET /v1.0/homes/{home_id}/members 查询家庭成员
GET /v1.0/users/{uid}/homes 查询⽤户所在的家庭列表
GET /v1.0/homes/{home_id}/rooms 查询家庭下的房间列表
GET /v1.0/homes/{home_id}/rooms/{room_id}/devices 查询家庭房间设备
POST /v1.0/homes/{home_id}/rooms/{room_id}/devices 新增家庭下房间内的设备
PUT /v1.0/homes/{home_id}/rooms/{room_id}/devices 修改家庭下房间内的设备
DELETE /v1.0/homes/{home_id}/rooms/{room_id}/devices 删除家庭下房间内的设备

添加家庭

接口描述

给⽤户添加⼀个家庭以及家庭下的房间。

说明:可以只添加家庭,房间留空。

接口地址

POST /v1.0/home/create-home

请求参数

参数名 类型 参数类型 必填 说明
uid String URI 涂鸦用户
home Object BODY 家庭
rooms List BODY 房间

home说明

参数名 类型 参数类型 必填 说明
name String BODY 家庭名字
geo_name String BODY 家庭地理位置
lon Double BODY 经度
lat Double BODY 纬度

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功则返回空值。
result Long 家庭 ID,即 home_id

请求示例

POST /v1.0/home/create-home
{
   "uid":"ay1528964101460qLVPu",
   "home":{
     "geo_name":"杭州市,浙商财富中⼼",
     "name":"我的家庭",
     "lat":30.16**,
     "lon":120.5**
   },
   "rooms":[
     "厨房",
     "洗澡间"
   ]
}

SDK 示例

暂无

返回示例

{ "success": true, "t": 1540615024283, "result": 3182004 }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误
1106 权限非法

修改家庭

接口描述

修改家庭基础信息。

接口地址

PUT /v1.0/homes/{home_id}

请求参数

参数名 类型 参数类型 必填 说明
home_id Long URI 家庭 ID
name String BODY 家庭名字
geo_name String BODY 家庭地理位置
lon Double BODY 经度
lat Double BODY 维度

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功则返回空值。
result Boolean 修改成功返回 true

请求示例

PUT /v1.0/homes/3196002
{
 "geo_name":"杭州市,涂鸦智能",
 "name":"我的家庭",
 "lat":30.16**,
 "lon":120.5**
}

SDK 示例

暂无

返回示例

{ "success": true, "t": 1540616318050, "result": true }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误
1106 权限非法

删除家庭

接口描述

根据家庭 ID 删除家庭。

接口地址

DELETE /v1.0/homes/{home_id}

请求参数

参数名 类型 参数类型 必填 说明
home_id Long URI 家庭 ID

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功则返回空值。
result Boolean 删除成功返回 true

请求示例

DELETE /v1.0/homes/3196006

SDK 示例

暂无

返回示例

{ "success": true, "t": 1540958118207, "result": true }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误
1106 权限非法

查询家庭

接口描述

根据家庭 ID查询家庭信息。

接口地址

GET /v1.0/homes/{home_id}

请求参数

参数名 类型 参数类型 必填 说明
home_id Long URI 家庭 ID

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功则返回空值。
result Object<result> 家庭对象。

result 说明

参数名 类型 说明
home_id Long 场景 ID
name String 家庭名称
geo_name String 家庭地理位置
lon Double 经度
lat Double 纬度

请求示例

GET /v1.0/homes/3182004

SDK 示例

暂无

返回示例

{ "success": true, "t": 1540955256215, "result": { "name": "⼩明的家庭", "lon": 120.5**, "lat": 30.16**, "home_id": 318****, "geo_name": "杭州市,涂鸦智能" } }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误
1106 权限非法

查询家庭下的设备详情

接口描述

根据家庭 ID查询家庭下的设备列表。

接口地址

GET /v1.0/homes/{home_id}/devices

请求参数

参数名 类型 参数类型 必填 说明
home_id Long URI 家庭 ID

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功则返回空值。
result Object<result> 返回结果,设备详情列表。

result 说明

参数名 类型 说明
id String 设备编码
uid String ⽤户 ID
local_key String 密钥
category String 产品类别
product_id String 产品 ID
sub Boolean 是否是⼦设备
  • true:是
  • false:不是
uuid String 设备唯⼀标识
owner_id String 设备拥有者 ID
online Boolean 设备在线状态
ip String 设备 IP
name String 设备的名字
time_zone String 设备所在时区
status Object<status> 设备功能状态

status 说明

参数名 类型 说明
code String 功能点的 code
value String 功能点的值

请求示例

GET /v1.0/homes/3196002/devices

SDK 示例

暂无

返回示例

{ "success":true, "t":1541509099860, "result":[ { "uuid":"vdevo15350082749****", "uid":"ay1528964101460q****", "name":"湖北电信插座", "ip":null, "sub":false, "status":[ { "code":"switch", "value": true }, { "code":"countdown_1", "value": 0 } ], "category":"cz", "online":true, "id":"vdevo15350082749****", "time_zone":"+08:00", "local_key":"47a5a361719f****", "owner_id":"242****", "product_id":"T62ZA4lyVXF****" }, { "uuid":"vdevo15401776953****", "uid":"ay1528964101460q****", "name":"公版窗帘vdevo", "ip":null, "sub":false, "status":[ { "code":"control", "value":"open" }, { "code":"percent_control", "value": 0 }, { "code":"percent_state", "value": 0 }, { "code":"mode", "value":"morning" }, { "code":"control_back", "value": false }, { "code":"auto_power", "value": false }, { "code":"work_state", "value":"opening" }, { "code":"countdown", "value": 2 }, { "code":"countdown_left", "value": 0 }, { "code":"fault", "value": 0 }, { "code":"time_total", "value": 0 } ], "category":"qt", "online":true, "id":"vdevo15401776953****", "time_zone":"+08:00", "local_key":"75bc0238e71e****", "owner_id":"242****", "product_id":"9ysAXds4ohDA****" } ] }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误
1106 权限非法

房间管理

请求方式 API 描述
POST /v1.0/homes/{home_id}/room 添加房间
PUT /v1.0/homes/{home_id}/rooms/{room_id} 修改房间
DELETE /v1.0/homes/{home_id}/rooms/{room_id} 删除房间
GET /v1.0/homes/{home_id}/rooms 查询家庭和房间信息

添加房间

接口描述

根据家庭 ID 添加房间。

接口地址

POST /v1.0/homes/{home_id}/room

请求参数

参数名 类型 参数类型 必填 说明
home_id Long URI 家庭 ID
name String BODY 房间名称

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功则返回空值。
result Long 房间 ID, 即 room_id

请求示例

POST /v1.0/homes/3182004/room
{
 "name":"厨房3"
}

SDK 示例

暂无

返回示例

{ "success": true, "t": 1540958436848, "result": 1408001 }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误
1106 权限非法

修改房间

接口描述

根据家庭 ID 和房间 ID 修改房间。

接口地址

PUT /v1.0/homes/{home_id}/rooms/{room_id}

请求参数

参数名 类型 参数类型 必填 说明
home_id Long URI 家庭 ID
room_id Long URI 房间 ID
name String BODY 房间名称

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功则返回空值。
result Object 修改成功返回 true

请求示例

PUT /v1.0/homes/3196002/rooms/1408001
{
 "name":"厨房5"
}

SDK 示例

暂无

返回示例

{ "success": true, "t": 1540635347168, "result": true }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误
1106 权限非法

删除房间

接口描述

根据家庭 ID 和房间 ID 删除房间。

接口地址

DELETE /v1.0/homes/{home_id}/rooms/{room_id}

请求参数

参数名 类型 参数类型 必填 说明
home_id Long URI 家庭 ID
room_id Long URI 房间 ID

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功则返回空值。
result Boolean 删除成功返回 true

请求示例

DELETE /v1.0/homes/3196002/rooms/1408001

SDK 示例

暂无

返回示例

{ "success": true, "t": 1540635347168, "result": true }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误
1106 权限非法

查询家庭和房间信息

接口描述

根据家庭 ID 查询家庭和房间信息。

接口地址

GET /v1.0/homes/{home_id}/rooms

请求参数

参数名 类型 参数类型 必填 说明
home_id String URI 家庭 ID

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功则返回空值。
result Object<result> 返回结果。

result 说明

参数名 类型 说明
home_id String 场景 ID
name String 家庭名称
geo_name String 家庭地理位置
lon Double 经度
lat Double 纬度
rooms List<rooms> 房间列表

rooms 说明

参数名 类型 说明
room_id Long 房间 ID
name String 房间名字

请求示例

GET /v1.0/homes/3196002/rooms

SDK 示例

暂无

返回示例

{ "success":true, "t":1540869200562, "result":{ "home_id":3196002, "name":"⼩王的家庭", "lon":120.5**, "lat":30.16**, "geo_name":"杭州市,浙商财富中⼼", "rooms":[ { "room_id":139****, "name":"厨房" }, { "room_id":139****, "name":"洗澡间" } ] } }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误
1106 权限非法

添加家庭成员

接口描述

给某个家庭添加家庭成员。

接口地址

POST /v1.0/homes/{home_id}/members

请求参数

参数名 类型 参数类型 必填 说明
home_id String URI 家庭 ID
app_schema String BODY 账号标识
member Object BODY 成员对象

member 说明

参数名 类型 参数类型 必填 说明
country_code String URI 国家码
member_account String BODY 成员账号
admin Boolean BODY 是否为管理员
name String BODY 成员名字

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功则返回空值。
result Object 添加成功返回 true

请求示例

POST /v1.0/homes/2422120/members
{
   "app_schema":"test",
   "member":{
       "country_code":"86",
       "member_account":"1565815****",
       "admin":false,
       "name":"⼩明"
   }
}

SDK 示例

暂无

返回示例

{ "success": true, "t": 1540799657137, "result": true }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误
1106 权限非法

设置成员权限

接口描述

为家庭成员设置管理员和非管理员的角色权限,修改家庭成员的名字。

接口地址

PUT /v1.0/homes/{home_id}/members/{uid}

请求参数

参数名 类型 参数类型 必填 说明
home_id String URI 家庭 ID
uid String URI 涂鸦用户 ID
admin Boolean BODY 家庭管理员标示。
  • true:管理员
  • false:非管理员

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功则返回空值。
result Object 修改成功返回 true

请求示例

PUT /v1.0/homes/3196002/members/ay15309353754999xY2T
{
 "admin":false
}

SDK 示例

TuyaClient client = new TuyaClient(clientId, secret, RegionEnum.CN); List<DeviceVo> deviceFunctions = client.getUserDevices(UID); System.out.println("获取用户设备列表: "); System.out.println(JSONObject.toJSONString(deviceFunctions));

返回示例

{ "success": true, "t": 1540807132951, "result": true }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误
1106 权限非法

删除家庭成员

接口描述

删除某个家庭下成员。

接口地址

DELETE /v1.0/homes/{home_id}/members/{uid} 

请求参数

参数名 类型 参数类型 必填 说明
home_id Long URI 家庭 ID
uid String URI 涂鸦用户 ID

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功则返回空值。
result Object 删除成功返回 true

请求示例

DELETE /v1.0/homes/3196002/members/ay15309353754999xY2T

SDK 示例

暂无

返回示例

{ "success": true, "t": 1540967859608, "result": true }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误
1106 权限非法

查询家庭成员

接口描述

查询家庭成员列表。

接口地址

GET /v1.0/homes/{home_id}/members

请求参数

参数名 类型 参数类型 必填 说明
home_id String URI 家庭 ID

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功则返回空值。
result Object<result> 家庭成员列表。

result 说明

参数名 类型 说明
uid String 涂鸦用户 ID
admin Boolean 判断⽤户是否为家庭管理员。
  • true:是
  • false:否
mame String 家庭成员的用户名
country_code String 家庭成员的国家编码
member_account String 家庭成员的账号,账号脱敏处理

请求示例

GET /v1.0/homes/2422120/members

SDK 示例

暂无

返回示例

{ "success":true, "t":1540799929837, "result":[ { "country_code":"86", "member_account":"18******176", "uid":"ay1528964101460q****", "admin":true, "name":"⽐拉" }, { "country_code":"86", "member_account":"15******196", "uid":"ay15309353754999****", "admin":false, "name":"⼩明" } ] }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误
1106 权限非法

查询⽤户所在的家庭列表

接口描述

根据 uid 查询⽤户所在的家庭列表。

接口地址

GET /v1.0/users/{uid}/homes

请求参数

参数名 类型 参数类型 必填 说明
uid String URI 涂鸦⽤户 ID

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功则返回空值。
result List 家庭详情列表。

result 说明

参数名 类型 说明
home_id Long 家庭 ID
name String 家庭名称
geo_name String 家庭地理位置
lon Double 经度
lat Double 纬度

请求示例

GET /v1.0/users/ay1528964101460qLVPu/homes

SDK 示例

暂无

返回示例

{ "success":true, "t":1541508940996, "result":[ { "name":"⽼巢", "lon":120.10****, "lat":30.27****, "home_id":242****, "geo_name":"⻄湖区古荡街道" }, { "name":"哈哈的⼩家", "lon":120.09****, "lat":30.30****, "home_id":317****, "geo_name":"⻄湖区三墩镇" }, { "name":"我的的家庭", "lon":120.5****, "lat":30.16****, "home_id":319****, "geo_name":"杭州市,涂鸦智能" } ] }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误
1106 权限非法

查询家庭下的房间列表

接口描述

查询家庭下的房间列表

接口地址

GET /v1.0/homes/{home_id}/rooms

请求参数

参数名 类型 参数类型 必填 说明
home_id String URI 家庭 ID

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功则返回空值。
rooms List 房间列表。

result 说明

参数名 类型 说明
geo_name String 家庭地理位置
home_id Long 家庭 ID
name String 家庭名称
lon Double 经度
lat Double 纬度
rooms List 房间列表

rooms 说明

参数名 类型 说明
room_id Long 房间 ID
name String 房间名称

请求示例

GET /v1.0/homes/337403/rooms

SDK 示例

暂无

返回示例

{ "result": { "geo_name": "杭州市 华策中心A座", "home_id": 337403, "lat": 30.302553689454005, "lon": 120.0640923396687, "name": "测试家庭", "rooms": [ { "name": "客厅", "room_id": 587609 }, { "name": "主卧", "room_id": 587610 }, { "name": "次卧", "room_id": 587611 } ] }, "success": true, "t": 1611394597651 }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误
1106 权限非法

查询家庭下房间内的设备

功能描述

查询家庭下房间内的设备

接口地址

GET /v1.0/homes/{home_id}/rooms/{room_id}/devices

请求参数

参数名 类型 参数类型 必填 说明
home_id Long URI 家庭 ID
room_id Long URI 房间 ID

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功返回空值。
t Long 返回时间戳,13位。
result List 返回结果。

请求示例

GET /v1.0/homes/25674317/rooms/18002322/devices

响应示例

{ "result": [ { "active_time": 1601276997, "biz_type": 116030, "category": "dj", "create_time": 1601276997, "icon": "smart/icon/ay1536722357072RkR2q/3ef200ae4de60ec651689208ade1dbaf.png", "id": "vdevo16012769974****", "ip": "", "local_key": "023b0565cafb****", "name": "wifi测试1.2-vdevo", "online": true, "owner_id": "2567****", "product_id": "afctjpmhjvxr****", "product_name": "wifi测试1.2", "status": [ { "code": "switch_led", "value": "false" }, { "code": "work_mode", "value": "scene" }, { "code": "bright_value_v2", "value": "10" }, { "code": "temp_value_v2", "value": "0" }, { "code": "colour_data_v2", "value": "" }, { "code": "scene_data_v2", "value": "{\"scene_num\":1,\"scene_units\":[{\"bright\":200,\"h\":0,\"s\":0,\"temperature\":0,\"unit_change_mode\":\"static\",\"unit_gradient_duration\":13,\"unit_switch_duration\":14,\"v\":0}]}" }, { "code": "countdown_1", "value": "0" }, { "code": "control_data", "value": "" } ], "sub": false, "time_zone": "", "uid": "ay1555492511130R****", "update_time": 1601276997, "uuid": "vdevo16012769974****" } ], "success": true, "t": 1603804495501 }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误,请联系管理员

新增家庭下房间内的设备

接口描述

新增家庭下房间内的设备。

接口地址

POST /v1.0/homes/{home_id}/rooms/{room_id}/devices

请求参数

参数名 类型 参数类型 必填 说明
home_id Long URI 家庭 ID
room_id Long URI 房间 ID
device_ids List BODY 新增的设备 ID

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功返回空值。
t Long 返回时间戳,13位。
result Boolean 返回结果。

请求示例

POST /v1.0/homes/123111/rooms/74332323/devices
{
		"device_ids":["ve23u9****","ve23u92****"]
}

返回示例

{ "result":true, "success": true, "t": 1587551002533 }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误,请联系管理员

修改家庭下房间内的设备

接口描述

修改家庭下房间内的设备

接口地址

PUT /v1.0/homes/{home_id}/rooms/{room_id}/devices

请求参数

参数名 类型 参数类型 是否必需 说明
home_id Long URI 家庭 ID
room_id Long URI 房间ID
device_ids List BODY 房间最后保留的设备 ID

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功返回空值。
t Long 返回时间戳,13位。
result Boolean 返回结果。

请求示例

PUT /v1.0/homes/123111/rooms/74332323/devices
{
		"device_ids":["ve23u9****","ve23u92****"]
}

返回示例

{ "result":true, "success": true, "t": 1587551002533 }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误,请联系管理员

删除家庭下房间内的设备

接口描述

删除家庭下房间内的设备。

接口地址

DELETE /v1.0/homes/{home_id}/rooms/{room_id}/devices

请求参数

参数名 类型 参数类型 必填 说明
home_id Long URI 家庭 ID
room_id Long URI 房间 ID
device_ids List BODY 删除的设备 ID

返回参数

参数名 类型 说明
code Integer 响应码,详见 错误码
success Boolean 判断请求是否成功。
  • true:成功
  • false:失败
msg String 请求失败返回的信息,成功返回空值。
t Long 返回时间戳,13位。
result Boolean 返回结果。

请求示例

DELETE /v1.0/homes/123111/rooms/74332323/devices
{
		"device_ids":["ve23u9****","ve23u92****"]
}

返回示例

{ "result":true, "success": true, "t": 1587551002533 }

错误码

以下为该接口常见的业务异常,更多的异常错误,请参考 全局错误码

错误码 说明
500 系统错误,请联系管理员