提供一组与用户账号体系相关的服务接口,通过本组服务接口可以实现用户账户信息的查询和设置。
查询统一身份列表
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/iotx/account/queryIdentityList | 1.0.4 | 查询统一身份列表 | 否 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
identityIds | List | 是 | 账号身份ID列表 |
返回参数
名称 | 类型 | 必有 | 描述 |
---|---|---|---|
identityId | String | 是 | 账号身份ID |
loginId | String | 是 | OA loginId |
loginSource | String | 是 | 账号来源,目前为openAccount |
loginName | String | 否 | 登录名 |
phone | String | 是 | 手机号 |
String | 是 | 邮箱 | |
nickName | String | 否 | 昵称 |
avatarUrl | String | 否 | 头像链接 |
gmtCreate | Long | 是 | 创建时间 |
gmtModified | Long | 是 | 修改时间 |
示例
- 请求示例
{ "id":1508232047194, "request": { "apiVer": "1.0.4" }, "params": { "request": {"identityIds":["506bop1ef3a1cexxxxxxxxf57ae175ac94618"]} }, "version": "1.0" }
- 正常返回示例
{ "code": 200, "data": [ { "gmtModified": 1508314232000, "loginId": "4398047084811", "gmtCreate": 1508314232000, "identityId": "506bop1ef3a1cexxxxxxxx57ae175ac94618", "loginSource": "openAccount", } ], "id":"bb179e80-39fd-xxxx-xxxx-48ca87a3f5c5" }
修改账号属性
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/iotx/account/modifyAccount | 1.0.5 | 修改账号属性 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
identityId | String | 是 | identityId |
accountMetaV2 | JSON | 是 | 账户属性信息 |
accountMetaV2结构
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
loginName | String | 否 | 登录名 |
phone | String | 手机号和邮箱至少一个必填 | 手机号 |
String | 手机号和邮箱至少一个必填 | 邮箱 | |
nickName | String | 否 | 昵称 |
appKey | String | 是 | OA的appKey |
avatarUrl | String | 否 | 头像链接 |
返回参数
无业务返回参数
示例
- 请求示例
{ "id":1508232047194, "request": { "iotToken": "109049c8xxxxxxxx62e29a3ba", "apiVer": "1.0.5" }, "params": { "request": {"identityId":"50e5opda16exxxxxxxxc9632a038c2479", "accountMetaV2":{"phone":"157xxxx6621", "appKey":"6xxxx75","nickName":"test"}} }, "version": "1.0" }
- 正常返回示例
{ "code": 200, "message": "success", "localizedMsg": null, "class": "com.aliyun.iotx.common.base.service.IoTxResult" }
注销账号
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
account/unregister | 1.0.6 | 账号注销 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
无业务请求参数
返回参数
无业务返回参数
示例
- 请求示例
{ "id":1508232047196, "request": { "iotToken": "109049cxxxxxxxxb15f6f62e29a3ba", "apiVer": "1.0.6" }, "params": { }, "version": "1.0" }
- 正常返回示例
{ "code": 200, "message": "success", "localizedMsg": null, "class": "com.aliyun.iotx.common.base.service.IoTxResult" }
检测账号是否已注册
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/user/account/regcheck | 1.0.0 | 检测账号是否已注册 | 否 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
phone | String | 否 | 手机号 |
String | 否 | 邮箱地址 |
返回参数
名称 | 类型 | 必有 | 描述 |
---|---|---|---|
data | Bool | 是 | 是否已经注册,true:已经注册;false:未注册 |
示例
- 请求示例
{ "id":1508232047194, "request": { "apiVer": "1.0.0" }, "params": { "request": { "phone": "186xxxx4567", "email": "a***@example.net" } }, "version": "1.0" }
- 正常返回示例
{ "id": "8d1a665e-ce92-xxxx-xxxx-99d2e81814f3", "code": 200, "message": null, "localizedMsg": null, "data": false }
查询统一身份
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/user/account/identity/query | 1.0.0 | 查询统一身份 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
loginId | String | 否 | OA loginId |
loginSource | String | 否 | 账号来源类型(OA) |
phone | String | 否 | 手机号 |
String | 否 | 邮箱地址 | |
opType | Int | 是 | 1-根据loginId & loginSouce;2-根据手机号码;3-根据邮箱;其他值非法 |
返回参数
名称 | 类型 | 描述 |
---|---|---|
phone | String | 手机号 |
identityId | String | 统一身份ID |
nickName | String | 用户昵称 |
loginId | String | OA loginId |
avatarUrl | String | 头像地址 |
loginName | String | 登录名 |
loginSource | String | 账号来源 |
示例
- 请求示例
{ "id":1508232047194, "request": { "apiVer": "1.0.0" }, "params": { "request": { "loginId": "value1", "loginSource": "value2", "phone": "value3", "email": "value4", "opType": "value5", } }, "version": "1.0" }
- 正常返回示例
{ "id": "8d1a665e-ce92-xxxx-xxxx-99d2e81814f3", "code": 200, "message": null, "localizedMsg": null, "data": { "identityId": "5053opfxxxxxxxx473f5db0e73982", "loginId": "493265", "loginSource": "openAccount", "modifier": "system", "nickName": "ktt", "phone": "138xxxx3662", "loginName": "tester" } }
根据登录态获取当前用户的详细信息
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/user/account/session/authidentity | 1.0.1 | 根据登录态获取当前用户的详细信息 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
iotToken | String | 是 | 用户登录态 |
返回参数
名称 | 类型 | 描述 |
---|---|---|
companyId | String | 公司ID |
companyName | String | 公司名 |
identityId | String | 统一身份ID |
loginName | String | 登录名 |
nickName | String | 昵称 |
phone | String | 手机号 |
String | 邮箱地址 |
示例
- 请求示例
{ "id":1508232047194, "request": { "apiVer": "1.0.1" }, "params": { "request": { "iotToken": "xxxxxxxxxxxxx", } }, "version": "1.0" }
- 正常返回示例
{ "id": "8d1a665e-ce92-xxxx-xxxx-99d2e81814f3", "code": 200, "message": null, "localizedMsg": null, "data": { "companyId": "95BDDAxxxxxxxxt8240A19D5", "companyName": "test物联技术有限公司", "identityId": "5022al4d34xxxxxxxxaf3fac06085", "loginName": "test物联", "nickName": "test物联", "phone": "xxxxxxxxxxx", "email": "a***@example.net" } }
获取用户上传头像的URL及加密签名
当用户需要修改头像时流程如下。
- 调用此接口获取上传的URL和签名等参数。
- App取得上传的URL和签名等参数后,通过POST方法将头像上传(请参见PostObject)。
上传时header中的x-oss-forbid-overwrite参数不能设置为true,否则可能导致上传失败。上传成功后,根据流程1中调用接口的返回参数中的host、dir拼接得出头像图片URL地址(拼接规则为
“https://”+ host + “/” + dir
)。 - 通过修改账号属性接口更新图像URL。
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/living/user/avatar/upload/signature/get | 1.0.0 | 用户头像上传URL以及加密签名获取 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
fileSize | int | 是 | 头像图片文件大小,单位为字节,取值范围最小为1;最大为10485760(10M)。 |
返回参数
名称 | 类型 | 描述 |
---|---|---|
accessKey | String | OSS的accessKey |
dir | String | 图片在OSS桶里的存储目录 |
expire | Long | 过期时间戳,毫秒为单位,在此时间戳之前可以向OSS上传头像 |
host | String | OSS访问域名地址 |
signature | String | 签名 |
policy | String | 请求表单域的合法性校验信息 |
示例
- 请求示例
{ "id":1508232047194, "request": { "apiVer": "1.0.0" }, "params": { "request": { "fileSize": 300888 } }, "version": "1.0" }
- 正常返回示例
{ "id":1508232047194, "code":200, "data": { "signature":"b45CXXXXXXXXXXXXXXXXXXXXXX", "accessKey":"LTAXXXXXXXXXXXXX", "expire":1578077777777, "host":"xxxx.oss-ap-shanghai.aliyuncs.com", "dir":"images/third_app_user/profile/50adopbXXXXXX_MmI2NGJjZD.png", "policy":"eyJleHBpcmFXXXXXXXXXXX0aW9uIjoiMjAy" } }
绑定外部平台(淘宝)账号
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/account/taobao/bind | 1.0.5 | 将App账号与淘宝账号进行绑定,用于同时支持天猫精灵控制用户设备,详情请参见自有App接入天猫精灵教程 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
authCode | String | 是 | 淘宝OAuth认证返回autoCode |
返回参数
名称 | 类型 | 描述 |
---|---|---|
accountId | String | 账号ID,此处为淘宝账号的ID |
accountType | String | 账号类型,此处固定为TAOBAO |
示例
- 请求示例
{ "id":1508232047194, "request": { "apiVer": "1.0.0" }, "params": { "authCode":"value1" }, "version": "1.0" }
- 正常返回示例
{ "code": 200, "data": { "accountId":"value2", "accountType":"TAOBAO" } }
获取绑定的外部平台(淘宝)账号
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/account/thirdparty/get | 1.0.5 | 查询用户当前已绑定的外部平台账号ID,此处为淘宝账号ID,用于同时支持天猫精灵控制用户设备,详情请参见自有App接入天猫精灵教程 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
accountType | String | 是 | 外部平台类型,此处固定为TAOBAO |
返回参数
名称 | 类型 | 描述 |
---|---|---|
accountId | String | 账号ID,此处为是淘宝账号的ID |
accountType | String | 外部平台类型,此处固定为TAOBAO |
示例
- 请求示例
{ "id":1508232047194, "request": { "apiVer": "1.0.0" }, "params": { "request": { "authCode": "TAOBAO" } }, "version": "1.0" }
- 正常返回示例
{ "code": 200, "data": { "accountId":"value1", "accountType":"TAOBAO" } }
解除绑定的外部平台(淘宝)账号
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/account/thirdparty/unbind | 1.0.5 | 解绑用户当前已绑定的外部平台账号ID,此处为淘宝账号ID,用于同时支持天猫精灵控制用户设备,详情请参见自有App接入天猫精灵教程 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
accountType | String | 是 | 外部平台类型,此处固定为TAOBAO |
返回参数
名称 | 类型 | 描述 |
---|---|---|
accountId | String | 账号ID,此处为淘宝账号的ID |
accountType | String | 外部账号类型,固定为TAOBAO |
示例
- 请求示例
{ "id":1508232047194, "request": { "apiVer": "1.0.0" }, "params": { "request": { "authCode": "TAOBAO" } }, "version": "1.0" }
- 正常返回示例
{ "code": 200, "data": { "accountId":"value1", "accountType":"TAOBAO" } }