青莲云提供API

这一块主要是青莲云提供的一些功能来为第三方云来使用的。如果在其他功能接口出现qlaccesstoken失效,重新调用4.1接口更新qlaccesstoken,同时也会返回超时时间。

获取青莲云账号授权

获取青莲云账号ID,即ql_uid和访问token,即ql_access_token,通过发送参数:
1.第三方云账号ID(即thirduid);
2.第三方云注册青莲云开发者账号的ID(即cid)。
青莲云收到请求之后用thirduid查询是否有对应的青莲云账号,若没有则创建一个ql_uid和ql_access_token并绑定thirduid,最后青莲云返回ql_uid和ql_access_token给第三方云。Post请求方式,参数以x-www-form-urlencoded方式放在body里。

例如:

curlhttps://api.qinglianyun.com/open/oauth/v1/get/uid -d"cid=x&sign=xxxxxx&tt=xx&thirduid=xxxxxx"

返回的 JSON 数据:

{

"code": 0,

"msg":"xxxxxxxxxxx",

"data":"{\"qluid\":1,\"qlaccesstoken\":\"xxx\", \"expires\":xxxxxx}"

}

请求参数:

参数名类型说明备注必需
cidInt客户端的id青莲云提供是
ttInt时间戳是
signString客户端签名签名算法为:MD5(client_id + client_secret + tt),
其中client_secret是青莲云提供,tt是时间戳
是
thirduidString第三方云账号ID建议使用用户的手机号是

返回参数:

参数名类型说明备注必需
codeInt返回码查看Api返回码是
msgString返回信息如果code为0,则msg为空;如果code
不为0,则msg返回的为相关错误信息
是
dataStringJSON格式的字符串数据格式如下是
qluidInt青莲云用户的uid是
qlaccesstokenString青莲云用户的token用户token有超时时间是
expiresIntToken失效时间是

设备绑定

将设备的绑定到青莲云用户下面。Post请求方式,参数以x-www-form-urlencoded方式放在body里。只能绑定主设备,不支持设备绑定,子设备跟随主设备到用户下面。

例如:

curlhttps://api.qinglianyun.com/open/oauth/v1/bind/device -d"qlaccesstoken=xxxxxx&mac=xxxxxx"

返回的 JSON 数据:

{

"code": 0,

"msg":"xxxxxxxxxxx"

}

请求参数:

参数名类型说明备注必需
qlaccesstokenString青莲云用户账号的token青莲云每一个用户账号都是唯一的是
macString绑定的设备mac是

返回参数:

参数名类型说明备注必需
codeInt返回码查看Api返回码是
msgString返回信息如果code为0,则msg为空;如果code不为0,
则msg返回的为相关错误信息
是

查询设备是否在线

查询指定设备是否在线。Post请求方式,参数以x-www-form-urlencoded方式放在body里。支持子设备查询。用户传参数subid表明查询子设备在线状态,不传参数subid表明查询主设备在线状态。

例如:

curl https://api.qinglianyun.com/open/oauth/v1/mac/online -d "qlaccesstoken=xxx&mac=xxxxxx&subid=xxxxxx"

返回的 JSON 数据:

{

"code": 0,

"msg":"xxxxxxxxxxx",

"data": "true"

}

请求参数:

参数名类型说明备注必需
macString设备的Mac如: 5c:cf:7f:c1:0b:fd是
qlaccesstokenString青莲云用户账号的token青莲云每一个用户账号都是唯一的是
subidString子设备id用户传参数subid表明查询子设备在线
状态,不传参数subid表明查询主设备
在线状态
否

返回参数:

参数名类型说明备注必需
codeInt返回码查看Api返回码是
dataString返回值在线返回true,不在线返回false,出错返回空是
msgString返回信息如果code为0,则msg为空;如果code不为0,
则msg返回的为相关错误信息
是

获取设备列表

获取用户的设备列表包括子设备相关信息,不包含被分享的设备。

请求URL:

curl"https://api.qinglianyun.com/open/oauth/v1/devicelist"

-d"qlaccesstoken=xxx"

返回的 JSON 数据:

{

"code": 0,

"msg":"xxxxxxxxxxx",

"data": "{\"listinfo\":[

{\"deviceMac\":\"xxx\",\"displayName\":\"xxx\",\"iotId\":\"xxx\",\"productId\":xxx,\"deviceType\":\"xxx\",\"subId\":\"xxx\",\"subIotId\":\"xxx\",\"subDeviceName\":\"xxx\"},

{\"deviceMac\":\"xxx\",\"displayName\":\"xxx\",\"iotId\":\"xxx\",\"productId\":xxx,\"deviceType\":\"xxx\",\"subId\":\"xxx\",\"subIotId\":\"xxx\",\"subDeviceName\":\"xxx\"}

]}"

}

请求参数:

参数名类型说明备注必需
qlaccesstokenString青莲云用户账号的token青莲云每一个用户账号都是唯一的是

返回参数:

参数名类型说明备注必需
codeInt返回码查看Api返回码是
msgString返回信息如果code为0,则msg为空;如果
code不为0,则msg返回的为相关错误信息
是
dataString返回listinfo的
ArrayJson字符串
数据格式如下是
deviceMacString设备的mac是
displayNameString设备的显示名称是
iotIdString设备的id是
productIdInt设备所属产品的id是
deviceTypeString设备类型是
subIdString子设备的id厂商自身定义子设备的id,
主设备该字段为空
是
subIotIdString子设备的iotid主设备该字段为空是
subDeviceNameString子设备的名称主设备该字段为空是

获取青莲云账号体系用户id

获取青莲云账号体系用户的id,该接口和接口1返回值qluid是一样的。

请求URL:

curl"https://api.qinglianyun.com/open/oauth/v1/get/userid"

-d"qlaccesstoken=xxx"

返回的 JSON 数据:

{

"code": 0,

"msg":"xxxxxxxxxxx",

"data": "{\"qluid\":\"xxx\"}"

}

请求参数:

参数名类型说明备注必需
qlaccesstokenString青莲云用户账号的token青莲云每一个用户账号都是唯一的是

返回参数:

参数名类型说明备注必需
codeInt返回码查看Api返回码是
msgString返回信息如果code为0,则msg为空;如果code
不为0,则msg返回的为相关错误信息
是
dataString返回对象字符串数据格式如下是
qluidString青莲云用户的id是

获取设备所有数据点的最新一条上报数据

获取单个设备所有数据点的最新一条上报数据。支持子设备。用户传参数subid表明获取子设备数据,不传参数subid表明获取主设备数据。

请求URL:

curl "https://api.qinglianyun.com/open/oauth/v1/all/getdp/data" -d "accesstoken=xxx&mac=xxxxxx&subid=xxxxxx"

返回的 JSON 数据:

{

"code": 0,

"msg":"xxxxxxxxxxx",

"data": "{

\"cmd\": \"22\",

\"humidity\": \"71\",

\"uv\": \"12\",

\"battery\": \"3\"

}"

}

请求参数:

参数名类型说明备注必需
macString设备的Mac如:5c:cf:7f:c1:0b:fd是
subidString子设备id户传参数subid表明对子设备控制,不传参数subid表明对主设备控制否
accesstokenString授权的token第三方语音控制平台携带是

返回参数:

参数名类型说明备注必需
dataString返回当天该设备所有数据
点上报的最新一条数据
JSON格式的字符串数据点和值是
一组key-value键值对
是
codeInt返回码查看Api返回码是
msgString返回信息如果code为0,则msg为空;如果
code不为0,则msg返回的为相关错误信息
是

获取多个设备所有数据点的最新一条上报数据和设备在线状态

获取多个设备所有数据点的最新一条上报数据和设备状态。不支持子设备。

请求URL:

curl"https://api.qinglianyun.com/open/oauth/v1/getdp/data" -d"qlaccesstoken=xxxxx&mac=[\"xxxxxxx\", \"xxxxxxxx\",\"xxxxxx\"]"

返回的 JSON 数据:

{

"code": 0,

"msg":"xxxxxxxxxxx",

"data":"[{\"id\":\"xxxx\",\"online\":true,\"data\":{\"cmd\":\"22\",\"humidity\":\"71\"}},{\"id\":\"xxxx\", \"online\":true,\"data\":{\"cmd\":\"22\",\"humidity\":\"71\"}}]"

}

请求参数:

参数名类型说明备注必需
macList设备的Mac列表如:5c:cf:7f:c1:0b:fd是
qlaccesstokenString青莲云用户账号的token青莲云每一个用户账号都是唯一的是

返回参数:

参数名类型说明备注必需
dataStringJSONArray格式的字符串最外层data是
codeInt返回码查看Api返回码是
msgString返回信息如果code为0,则msg为空;如果code
不为0,则msg返回的为相关错误信息
是
idString设备mac如:5c:cf:7f:c1:0b:fd是
onlineBoolean设备在线状态true在线false不在线是
dataJSONObject数据点数据是

批量下发命令到单个设备

下发多组命令到指定单个设备,支持子设备。设备端一次性接收多条指令而不是一条一条接收。下发指令最多20条限制。用户传参数subid表明对子设备控制,不传参数subid表明对主设备控制。

请求URL:

curl"https://api.qinglianyun.com/open/oauth/v1/all/set/api" -d"qlaccesstoken=xxxxxx&data=[{\"key\":\"xxx\",\"value\":\"xxx\"},{\"key\":\"xxx\",\"value\":\"xxx\"}]&mac=xxxxxx&subid=xxxxxx "

返回的 JSON 数据:

{

"code": 0,

"msg":"xxxxxxxxxxx",

}

请求参数:

参数名类型说明备注必需
macList设备的Mac列表如:5c:cf:7f:c1:0b:fd是
qlaccesstokenString青莲云用户账号的token青莲云每一个用户账号都是唯一的是
datajson设置的数据消息目前支持字符串格式是
keyString数据点的变量名设备所属产品的数据点属性是
valueSting数据点的值设备所属产品的数据点的值是
subidString子设备id户传参数subid表明对子设备控制,
不传参数subid表明对主设备控制
否

返回参数:

参数名类型说明备注必需
dataJSONArray是
codeInt返回码查看Api返回码是
msgString返回信息如果code为0,则msg为空;如果code不为0,
则msg返回的为相关错误信息
是
idString设备mac如:5c:cf:7f:c1:0b:fd是

批量下发命令到多个设备

下发同一命令到批量设备。不支持子设备。下发指令最多20条限制。可以对同一个设备下发不同的命令也可以对不同的设备批量下发命令。每次只下发data数组里一条指令,轮询发送。设备一次只能接收一条指令。返回每条指令是否下发成功。

请求URL:

curl"https://api.qinglianyun.com/open/oauth/v1/batch/set/api" -d"qlaccesstoken=xxxxxx&data=[{\"key\":\"xxx\",\"value\":\"xxx\"},{\"key\":\"xxx\",\"value\":\"xxx\"}]&mac=[\"xxxxxx\",\"xxxxxx\",\"xxxxxx\"]"

返回的 JSON 数据:

{

"code": 0,

"msg":"xxxxxxxxxxx",

"data": " [{\"id\":\"xxxx\", \"status\": 0},{\"id\":\"xxxx\", \"status\": 1}]"

}

请求参数:

参数名类型说明备注必需
macList设备的Mac列表如:5c:cf:7f:c1:0b:fd是
qlaccesstokenString青莲云用户账号的token青莲云每一个用户账号都是唯一的是
datajson设置的数据消息目前支持字符串格式是
keyString数据点的变量名设备所属产品的数据点属性是
valueSting数据点的值设备所属产品的数据点的值是

返回参数:

参数名类型说明备注必需
dataStringJSONArray格式的字符串是
codeInt返回码查看Api返回码是
msgString返回信息如果code为0,则msg为空;如果code不为0,
则msg返回的为相关错误信息
是
idString设备mac如:5c:cf:7f:c1:0b:fd是
statusint发送状态0不在线或者发送失败1发送成功是