库操作
更新: 2022-7-18
- 创建库
- 修改库
- 库信息
- 搜索库
- 个人文件库信息
- 设置个人文件库
- 获取库列表
- 获取库授权
- 取消库授权
- 获取库成员列表
- 查询库成员信息
- 设置库拥有者
- 添加库成员
- 修改库成员角色
- 删除库成员
- 获取库部门列表
- 库上添加部门
- 删除库上的部门
- 修改库上部门的角色
- 删除库
- 库日志
API域名
Host: yk3.gokuai.com
创建库
POST /m-open/1/org/create HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_name | 是 | 库名称 |
org_logo | 否 | 库图标URL |
org_capacity | 否 | 库空间上限, 单位字节, 默认无上限 |
storage_point_name | 否 | 库归属存储点名称, 默认为企业默认存储 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
{
"org_id": 库ID,
"mount_id": 库空间ID
}
修改库
POST /m-open/1/org/set HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_id | - | 库ID, org_id 和 mount_id 只需要传其中一个 |
mount_id | - | 库空间ID, org_id 和 mount_id 只需要传其中一个 |
org_name | 否 | 库名称, 不传表示不修改 |
org_logo | 否 | 库图标URL, 不传表示不修改 |
org_capacity | 否 | 库空间上限, 单位字节, 不传表示不修改, 空字符串表示不设置上限 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
库信息
POST /m-open/1/org/info HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_id | - | 库ID, org_id 和 mount_id 只需要传其中一个 |
mount_id | - | 库空间ID, org_id 和 mount_id 只需要传其中一个 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
{
"info":
{
"org_id": 库ID,
"org_name": "库名称",
"org_logo_url": "库图标URL",
"size_org_total": 库空间总大小, 单位字节, -1表示空间不限制,
"size_org_use": 库已使用空间大小, 单位字节,
"file_count": 库文件数量, 不包括删除,
"dir_count": 库文件夹数量, 不包括删除,
"mount_id": 库空间ID,
"owner_id": 库拥有者ID
}
}
搜索库
POST /m-open/1/org/search HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
name | - | 库名称, 精确匹配查找, name 和 prefix 只需传其中一个 |
prefix | - | 库名称前缀, 模糊匹配, name 和 prefix 只需传其中一个 |
size | 否 | 返回条数, 默认10 , 不超过1000 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
{
"list":
[
{
"org_id": 库ID,
"org_name": "库名称",
"org_logo_url": "库图标URL",
"size_org_total": 库空间总大小, 单位字节, -1表示空间不限制
"size_org_use": 库已使用空间大小, 单位字节
"mount_id": 库空间ID,
"owner_id": 库拥有者ID, 0表示未指定拥有者
},
...
]
}
个人文件库信息
POST /m-open/1/org/info_by_member HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
member_id | - | 成员ID |
out_id | - | 成员外部系统唯一ID |
account | - | 成员外部系统登录帐号 |
- | 普通公有云帐号通过登录邮箱查询 | |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
member_id
, out_id
, account
和email
只需传其中一个
返回结果
{
"info":
{
"org_id": 库ID,
"org_name": "库名称",
"org_logo_url": "库图标URL",
"size_org_total": 库空间总大小, 单位字节, -1表示空间不限制,
"size_org_use": 库已使用空间大小, 单位字节,
"file_count": 库文件数量, 不包括删除,
"dir_count": 库文件夹数量, 不包括删除,
"mount_id": 库空间ID
}
}
注意: 如果个人文件库未初始化, 则只会返回管理员为个人文件库设置的空间大小size_org_total
{
"info":
{
"size_org_total": 库空间总大小, 单位字节, -1表示空间不限制
}
}
设置个人文件库
POST /m-open/1/org/set_by_member HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
member_id | - | 成员ID |
out_id | - | 成员外部系统唯一ID |
account | - | 成员外部系统登录帐号 |
- | 普通公有云帐号通过登录邮箱查询 | |
capacity | 是 | 库空间, 单位字节, -1 表示空间不限制 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
member_id
, out_id
, account
和email
只需传其中一个
返回结果
HTTP 200
获取库列表
POST /m-open/1/org/ls HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
type | 否 | 1 返回非个人文件库, 2 返回个人文件库, 默认0 返回所有 |
member_id | 否 | 只返回该成员参与的库 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
{
"list":
[
{
"org_id": 库ID,
"org_name": "库名称",
"org_logo_url": "库图标URL",
"size_org_total": 库空间总大小, 单位字节, -1表示空间不限制
"size_org_use": 库已使用空间大小, 单位字节
"mount_id": 库空间ID,
"owner_id": 库拥有者ID, 0表示未指定拥有者
},
...
]
}
获取库授权
POST /m-open/1/org/bind HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_id | - | 库ID, 库ID 和库空间ID 必需传一个 |
mount_id | - | 库空间ID, 库ID 和库空间ID 必需传一个 |
title | 是 | 对接库文件的应用或系统名称 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
{
"org_client_id": "库授权client_id",
"org_client_secret": "库授权client_secret"
}
org_client_secret
用于调用 库文件操作 API签名时的密钥
注意: 每个client_id
针对每个库只会生成1个授权, 再次调用时会返回前一次的授权
取消库授权
POST /m-open/1/org/unbind HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_client_id | 是 | 库授权 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
获取库成员列表
POST /m-open/1/org/get_members HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_id | 是 | 库ID |
start | 否 | 开始位置,默认0 |
size | 否 | 返回条数,默认20 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
{
"list":
[
{
"member_id": 成员ID,
"out_id": 成员外部ID,
"account": "成员外部帐号",
"member_name": "成员显示名",
"member_email": "成员邮箱",
"state": 成员状态,
"role_id" 角色ID
},
...
],
count: 成员总数
}
查询库成员信息
POST /m-open/1/org/get_member HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_id | 是 | 库ID |
ids | 是 | 成员唯一ID或帐号, 多个用逗号, 分隔: id1,id2,id3 |
type | 是 | ids 的类型: account , out_id 或member_id |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
{
"ids参数中的成员唯一ID或帐号":
{
"member_id": 成员ID,
"out_id": "成员外部ID",
"account": "成员外部帐号",
"member_name": "成员显示名",
"member_email": "成员邮箱",
"state": 成员状态,
"role_id": 角色ID
},
...
}
设置库拥有者
POST /m-open/1/org/set_owner HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_id | 是 | 库ID |
member_id | 是 | 设置为库拥有者的成员ID |
role_id | 否 | 原库拥有者更换角色ID, 不传或传空表示移除原拥有者 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
添加库成员
POST /m-open/1/org/add_member HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_id | 是 | 库ID |
member_ids | 是 | 需要添加的成员ID, 多个用逗号, 分隔 |
role_id | 是 | 角色ID |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
修改库成员角色
POST /m-open/1/org/set_member_role HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_id | 是 | 库ID |
member_ids | 是 | 需要修改的成员ID, 多个以逗号, 分隔 |
role_id | 是 | 角色ID |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
删除库成员
POST /m-open/1/org/del_member HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_id | 是 | 库ID |
member_ids | 是 | 成员id, 以逗号分隔 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
获取库部门列表
POST /m-open/1/org/get_groups HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_id | 是 | 库ID |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
{
{
"id": 部门ID,
"name": "部门名称",
"role_id": 角色ID
},
...
}
库上添加部门
POST /m-open/1/org/add_group HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_id | 是 | 库ID |
group_id | 是 | 部门ID |
role_id | 是 | 角色ID |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
删除库上的部门
POST /m-open/1/org/del_group HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_id | 是 | 库ID |
group_id | 是 | 部门ID |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
修改库上部门的角色
POST /m-open/1/org/set_group_role HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_id | 是 | 库ID |
group_id | 是 | 部门ID |
role_id | 是 | 角色ID |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
删除库
POST /m-open/1/org/destroy HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_id | - | 库ID |
org_client_id | - | 库授权, org_client_id 和org_id 只需要传其中一个 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
库日志
POST /m-open/1/org/log HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
org_id | 否 | 库ID, 库ID 和库空间ID 传了其中之一时, 只获取该库的操作日志 |
mount_id | 否 | 库空间ID, 库ID 和库空间ID 传了其中之一时, 只获取该库的操作日志 |
act | 否 | 过滤操作, 不传默认返回所有操作, 多个操作用, 分隔 |
orderby | 否 | asc 顺序, 默认desc 倒序 |
start_dateline | 否 | unix时间戳, 单位秒, 获取操作时间 >= start_dateline 的日志, 默认不限制 |
end_dateline | 否 | unix时间戳, 单位秒, 获取操作时间 < end_dateline 的日志, 默认不限制 |
start | 否 | 开始位置, 默认0 |
size | 否 | 获取日志条数, 默认100 , 最多返回1000 条 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
act操作 | 说明 |
---|---|
0 | 删除 |
1 | 创建或上传 |
2 | 重命名 |
3 | 编辑 |
4 | 移动 |
5 | 删除被恢复 |
6 | 版本还原 |
12 | 锁定 |
13 | 解锁 |
20 | 下载 |
21 | 预览 |
1014 | 生成外链 |
1015 | 访问外链 |
1016 | 外链文件下载 |
1017 | 外链文件保存到云库 |
1018 | 外链文件上传 |
返回结果
最多只会返回1000条
{
"total": 总共匹配的日志条数,
"list": [
{
"hash": "文件唯一ID",
"dir": 0,
"act": 1,
"filehash": "文件内容hash",
"filesize": 文件大小,
"fullpath": "文件完整路径",
"member_id": 操作人用户ID,
"dateline": 操作时间, 单位秒,
"act_name": "操作名称",
"member_name": "操作人姓名(帐号)",
"display_name": "操作人姓名",
"member_account": "操作人帐号"
},
...
]
}