1. 接口列表

本节包含子账户相关接口等。

接口列表如下:

序号 接口功能 描述
1 创建子账户 创建B(大账户)模式的子账户
2 获取单个子账户信息 获取指定子账户信息
3 获取子账户信息列表 分页获取应用下的子账户信息列表
4 修改子账户密码 修改子账户密码
5 设置子账户的授权策略 设置子账户的授权策略
6 增加子账户权限 增加子账户授权策略中的授权语句
7 删除子账户权限 删除子账户授权策略中某个设备的所有授权语句
8 获取子账户AccessToken 获取子账户AccessToken
9 删除子账户 删除子账户
  • 公共返回码:
code msg 备注
200 操作成功
10001 参数错误 参数为空或格式不正确
10002 accessToken过期或异常 重新获取accessToken
10005 appKey异常 appKey被冻结
10013 无权限调用
10031 子账户或萤石用户没有权限
10032 子账户名不存在
10033 子账号未设置授权策略
10034 子账号已存在
10035 获取子账户AccessToken异常 子账户不存在或子账户不属于该开发者
10036 子账号被禁用
50000 服务器异常

2. 创建子账户

  • 接口功能

    创建B(大账户)模式的子账户。(子账户功能说明

  • 请求地址

    https://open.ys7.com/api/lapp/ram/account/create

  • 请求方式

    POST

  • 请求参数

Key 类型 描述 是否必选
accessToken String 授权过程获取的access_token Y
accountName String 子账户名,4-40位英文字母、阿拉伯数字或下划线 Y
password String 子账户密码,LowerCase(MD5(AppKey#密码明文)) Y

LowerCase(MD5(AppKey#密码明文)):对AppKey、#和明文密码拼接起来的字符串进行MD5加密,并转成小写

  • HTTP请求报文

POST /api/lapp/ram/account/create HTTP/1.1
Host: open.ys7.com
Content-Type: application/x-www-form-urlencoded

accessToken=at.9307p5ye4yilog2f9apn82368j9g62g1-2rs1w3h0k0-092yx3m-ysd3i9cg9&accountName=test&password=5305b671da2d66785f7e6dd24c117370
  • 返回数据
{
    "data": {
        "accountId": "b3ad7ba927524b748e557572024d4ac2"
    },
    "code": "200",
    "msg": "操作成功!"
}
  • 返回字段
字段名 类型 描述
accountId String 子账户Id
  • 返回码

参见 公共返回码

2.1. 获取单个子账户信息

  • 接口功能:

    该接口用于获取指定子账户信息。(子账户功能说明

  • 请求地址

    https://open.ys7.com/api/lapp/ram/account/get

  • 请求方式

    POST

  • 请求参数

参数名 类型 描述 是否必选
accessToken String 授权过程获取的access_token Y
accountId String 子账户Id N
accountName String 子账户Name N

如果accessToken参数是子账户类型的AccessToken,accountId和accountName参数可为空;否则accountId和accountName其中一个必须不为空;如果两个都不为空,接口返回accountId的子账户信息

  • HTTP请求报文
POST /api/lapp/ram/account/get HTTP/1.1
Host: open.ys7.com
Content-Type: application/x-www-form-urlencoded

accessToken=at.9307p5ye4yilog2f9apn82368j9g62g1-2rs1w3h0k0-092yx3m-ysd3i9cg9&accountId=b3ad7ba927524b748e557572024d4ac2
  • 返回数据
{
    "data": {
        "accountId": "b3ad7ba927524b748e557572024d4ac2",
        "accountName": "test",
        "appKey": "ae1b9af9dcac4caeb88da6dbbf2dd8d5",
        "accountStatus": 1,
        "policy": {
            "Statement": [
                {
                    "Permission": "GET,UPDATE,REAL",
                    "Resource": [
                        "dev:469631729",
                        "dev:519928976",
                        "cam:544229080:1"
                    ]
                },
                {
                    "Permission": "GET",
                    "Resource": [
                        "dev:470686804"
                    ]
                }
            ]
        }
    },
    "code": "200",
    "msg": "操作成功!"
}
  • 返回字段:
字段名 类型 描述
accountId String 子账户Id
accountName String 子账户名
appKey String 子账户所属应用的AppKey
accountStatus int 子账户状态,0为停用,1为启用
policy Policy 子账户的授权策略

Policy类型(Policy语法结构):

字段名 类型 描述
Statement Array[Statement] 授权语句

Statement类型:

字段名 类型 描述
Permission String 权限列表
Resource Array[String] 资源列表
  • 返回码

参见 公共返回码

2.2. 获取子账户信息列表

  • 接口功能:

    该接口用于分页获取应用下的子账户信息列表。(子账户功能说明

  • 请求地址

    https://open.ys7.com/api/lapp/ram/account/list

  • 请求方式

    POST

  • 请求参数

参数名 类型 描述 是否必选
accessToken String 授权过程获取的access_token Y
pageStart int 分页起始页,从0开始 N
pageSize int 分页大小,默认为10,最大为50 N
  • HTTP请求报文
POST /api/lapp/ram/account/get HTTP/1.1
Host: open.ys7.com
Content-Type: application/x-www-form-urlencoded

accessToken=at.9307p5ye4yilog2f9apn82368j9g62g1-2rs1w3h0k0-092yx3m-ysd3i9cg9&pageStart=0&pageSize=2
  • 返回数据
{
    "page": {
        "total": 15,
        "page": 0,
        "size": 2
    },
    "data": [
        {
            "accountId": "b3ad7ba927524b748e557572024d4ac2",
            "accountName": "test",
            "appKey": "ae1b9af9dcac4caeb88da6dbbf2dd8d5",
            "accountStatus": 1,
            "policy": {
                "Statement": [
                    {
                        "Permission": "GET,UPDATE,REAL",
                        "Resource": [
                            "dev:469631729",
                            "dev:519928976",
                            "cam:544229080:1"
                        ]
                    },
                    {
                        "Permission": "GET",
                        "Resource": [
                            "dev:470686804"
                        ]
                    }
                ]
            }
        },
        {
            "accountId": "0058a3964698415d8a70a931faa48d78",
            "accountName": "test2",
            "appKey": "ae1b9af9dcac4caeb88da6dbbf2dd8d5",
            "accountStatus": 1,
            "policy": null
        }
    ],
    "code": "200",
    "msg": "操作成功!"
}
  • 返回字段:
字段名 类型 描述
page Page 分页信息
data Array[Account] 子账户信息列表
code String 操作码
msg String 操作消息

Page类型

字段名 类型 描述
total long 总记录数
page long 分页起始页
size long 分页大小

Account类型

字段名 类型 描述
accountId String 子账户Id
accountName String 子账户名
appKey String 子账户所属应用的AppKey
accountStatus int 子账户状态,0为停用,1为启用
policy Policy 子账户的授权策略

Policy类型(Policy语法结构):

字段名 类型 描述
Statement Array[Statement] 授权语句

Statement类型:

字段名 类型 描述
Permission String 权限列表
Resource Array[String] 资源列表
  • 返回码

参见 公共返回码

2.3. 修改当前子账户密码

  • 接口功能

    该接口用于修改当前子账户的密码。

  • 请求地址

    https://open.ys7.com/api/lapp/ram/account/updatePassword

  • 请求方式

    POST

  • 请求参数

Key 类型 描述 是否必选
accessToken String 授权过程获取的access_token Y
accountId String 子账户ID Y
oldPassword String 老的密码,LowerCase(MD5(AppKey#密码明文)) Y
newPassword String 新的密码,LowerCase(MD5(AppKey#密码明文)) Y

LowerCase(MD5(AppKey#密码明文)):对AppKey、#和明文密码拼接起来的字符串进行MD5加密,并转成小写

  • HTTP请求报文

POST /api/lapp/ram/account/updatePassword HTTP/1.1
Host: open.ys7.com
Content-Type: application/x-www-form-urlencoded

accessToken=at.9307p5ye4yilog2f9apn82368j9g62g1-2rs1w3h0k0-092yx3m-ysd3i9cg9&accountId=b3ad7ba927524b748e557572024d4ac2&oldPassword=5305b671da2d66785f7e6dd24c117370&newPassword=cc03e747a6afbbcbf8be7668acfebee5
  • 返回数据
{
    "code": "200",
    "msg": "操作成功!"
}
  • 返回码

参见 公共返回码

2.4. 设置子账户的授权策略

  • 接口功能:

    该接口用于设置B模式子账户授权策略

  • 请求地址

    https://open.ys7.com/api/lapp/ram/policy/set

  • 请求方式

    POST

  • 请求参数

参数名 类型 描述 是否必选
accessToken String 授权过程获取的access_token Y
accountId String 子账户Id Y
policy String 授权策略,Policy语法结构 Y
  • HTTP请求报文
POST /api/lapp/ram/policy/set HTTP/1.1
Host: open.ys7.com
Content-Type: application/x-www-form-urlencoded

accessToken=at.9307p5ye4yilog2f9apn82368j9g62g1-2rs1w3h0k0-092yx3m-ysd3i9cg9&policy=%7B%22Statement%22%3A%5B%7B%22Permission%22%3A+%22GET%2CUPDATE%2CREAL%22%2C%22Resource%22%3A%5B%22dev%3A469631729%22%2C%22dev%3A519928976%22%2C%22cam%3A544229080%3A1%22%5D%7D%5D%7D&accountId=b3ad7ba927524b748e557572024d4ac2
  • 返回数据
{
    "code": "200",
    "msg": "操作成功!"
}
  • 返回码

参见 公共返回码

2.5. 增加子账户权限

  • 接口功能:

    该接口用于增加子账户授权策略中的授权语句

  • 请求地址

    https://open.ys7.com/api/lapp/ram/statement/add

  • 请求方式

    POST

  • 请求参数

参数名 类型 描述 是否必选
accessToken String 授权过程获取的access_token Y
accountId String 子账户Id Y
statement String 授权语句,Statement语法结构,示例:{"Permission": "GET", "Resource": ["dev:469631729"]} Y
  • HTTP请求报文
POST /api/lapp/ram/statement/add HTTP/1.1
Host: open.ys7.com
Content-Type: application/x-www-form-urlencoded

accessToken=at.9307p5ye4yilog2f9apn82368j9g62g1-2rs1w3h0k0-092yx3m-ysd3i9cg9&statement==%7B%22Permission%22%3A+%22GET%22%2C+%22Resource%22%3A+%5B%22dev%3A547596317%22%5D%7D&accountId=b3ad7ba927524b748e557572024d4ac2
  • 返回数据
{
    "code": "200",
    "msg": "操作成功!"
}
  • 返回码

参见 公共返回码

2.6. 删除子账户权限

  • 接口功能:

    该接口用于删除子账户授权策略中某个设备的所有授权语句

  • 请求地址

    https://open.ys7.com/api/lapp/ram/statement/delete

  • 请求方式

    POST

  • 请求参数

参数名 类型 描述 是否必选
accessToken String 授权过程获取的access_token Y
accountId String 子账户Id Y
deviceSerial String 设备序列号 Y
  • HTTP请求报文
POST /api/lapp/ram/statement/delete HTTP/1.1
Host: open.ys7.com
Content-Type: application/x-www-form-urlencoded

accessToken=at.9307p5ye4yilog2f9apn82368j9g62g1-2rs1w3h0k0-092yx3m-ysd3i9cg9&deviceSerial==547596317&accountId=b3ad7ba927524b748e557572024d4ac2
  • 返回数据
{
    "code": "200",
    "msg": "操作成功!"
}
  • 返回码

参见 公共返回码

2.7. 获取B模式子账户accessToken

  • 接口功能:

    该接口用于获取B模式子账户accessToken

  • 请求地址

    https://open.ys7.com/api/lapp/ram/token/get

  • 请求方式

    POST

  • 请求参数

参数名 类型 描述 是否必选
accessToken String 授权过程获取的access_token Y
accountId String 子账户Id Y
  • HTTP请求报文
POST /api/lapp/ram/token/get HTTP/1.1
Host: open.ys7.com
Content-Type: application/x-www-form-urlencoded

accessToken=at.9307p5ye4yilog2f9apn82368j9g62g1-2rs1w3h0k0-092yx3m-ysd3i9cg9&accountId=b3ad7ba927524b748e557572024d4ac2
  • 返回数据
{
    "data": {
        "accessToken": "ra.7jrcjmna8qnqg8d3dgnzs87m4v2dme3l-32enpqgusd-1jvdfe4-uxo15ik0s",
        "expireTime": 1470810222045
    },
    "code": "200",
    "msg": "操作成功!"
}
  • 返回码

参见 公共返回码

2.8. 删除子账户

  • 接口功能:

    该接口用于删除子账户

  • 请求地址

    https://open.ys7.com/api/lapp/ram/account/delete

  • 请求方式

    POST

  • 请求参数

参数名 类型 描述 是否必选
accessToken String 授权过程获取的access_token Y
accountId String 子账户Id Y
  • HTTP请求报文
POST /api/lapp/ram/account/delete HTTP/1.1
Host: open.ys7.com
Content-Type: application/x-www-form-urlencoded

accessToken=at.9307p5ye4yilog2f9apn82368j9g62g1-2rs1w3h0k0-092yx3m-ysd3i9cg9&accountId=b3ad7ba927524b748e557572024d4ac2
  • 返回数据
{
    "code": "200",
    "msg": "操作成功!"
}
  • 返回码

参见 公共返回码

results matching ""

    No results matching ""