部门和成员操作
更新: 2022-11-22
成员和部门同步API
(注意: 以下接口需要先开通企业帐号同步功能才能使用)
企业成员和部门API
其他API
API域名
Host: yk3.gokuai.com
添加或修改同步成员
POST /m-open/1/ent/add_sync_member HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
out_id | 是 | 成员在外部系统的唯一ID |
member_name | 是 | 显示名称 |
account | 是 | 成员在外部系统的登录帐号 |
member_email | 否 | 邮箱 |
member_phone | 否 | 联系电话 |
member_title | 否 | 职位 |
password | 否 | 如果需要由够快验证帐号密码,密码为必需参数 |
state | - | 帐号状态, 添加帐号时传1 启用, 修改时, 0 表示禁用帐号 |
expire | 否 | 临时帐号到期日期, unix时间戳, 单位秒, 实际只保留日期部分, 值为0 表示去除到期日期 |
group_out_ids | 否 | 成员所属部门在外部系统的唯一ID, 空字符串表示顶层, 多个用逗号, 分隔, 添加时不传该参数表示仅添加成员, 不会出现在企业管理后台的成员管理中, 修改时不指定表示不变更 |
leader_out_id | 否 | 直属上级在外部系统的唯一ID, leader_out_id 和 leader_account 只需传其中一个, 修改时传空字符串表示移除直属上级属性 |
leader_account | 否 | 直属上级在外部系统的登录帐号 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
注意: 添加成员时, 参数 group_out_ids
不指定, 成员将不会出现在企业管理后台的成员管理中, 还需要调用 添加同步部门的成员
返回结果
HTTP 200
{
"member_id": 用户ID(number),
"state": 用户状态, 1表示启用, 0表示禁用(number)
}
注意: 启用的帐号数如果超出企业帐号限制将会被强制禁用
删除同步成员
POST /m-open/1/ent/del_sync_member HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
dateline | 是 | 当前unix时间戳, 单位秒 |
members | 是 | 成员在外部系统的唯一ID, 多个用逗号, 分隔 |
sign | 是 | 签名 |
返回结果
HTTP 200
添加或修改同步部门
POST /m-open/1/ent/add_sync_group HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
out_id | 是 | 部门在外部系统的唯一ID |
name | 是 | 显示名称 |
parent_out_id | 否 | 如果部门在另一个部门的下级, 需要指定上级部门唯一ID, 不传表示在顶层; 修改时该字段用于移动部门, 空字符串表示移动到顶层 |
orderby | 否 | 显示顺序, 按数值从小到大显示 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
删除同步部门
POST /m-open/1/ent/del_sync_group HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
groups | 是 | 部门在外部系统的唯一ID, 多个用逗号, 分隔 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
添加同步部门的成员
POST /m-open/1/ent/add_sync_group_member HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
group_out_id | 否 | 部门在外部系统的唯一ID, 不传表示顶层 |
members | 是 | 成员在外部系统的唯一ID, 多个用逗号, 分隔 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
删除同步部门的成员
POST /m-open/1/ent/del_sync_group_member HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
group_out_id | 否 | 部门在外部系统的唯一ID, 不传表示顶层 |
members | 是 | 成员在外部系统的唯一ID, 多个用逗号, 分隔 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
删除同步成员的所属部门
POST /m-open/1/ent/del_sync_member_group HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
members | 是 | 成员在外部系统的唯一ID, 多个时用逗号, 分隔 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
通过外部帐号获取成员信息
POST /m-open/1/ent/get_member_by_out_id HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
out_ids | - | 外部成员id, 多个用逗号, 分隔 |
user_ids | - | 外部成员登录帐号, 多个用逗号, 分隔 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
out_ids
和 user_ids
只需传其中一个
返回格式
json
返回结果
{
"{out_id}":
{
"member_id": ,
"account": ,
"member_name": ,
"member_email": ,
"member_phone": ,
"member_title": ,
"state": ,
"expire":
},
...
}
字段 | 类型 | 说明 |
---|---|---|
{out_id} | string | 外部系统成员唯一ID |
member_id | number | 成员ID |
account | string | 成员外部系统登录帐号 |
member_name | string | 成员显示名 |
member_email | string | 成员邮箱 |
member_phone | string | 联系电话 |
member_title | string | 职位 |
state | number | 成员状态, 1 启用,0 禁用 |
expire | number | 临时帐号到期时间戳, 单位秒, 无到期日期则不返回 |
通过外部部门ID获取部门信息
POST /m-open/1/ent/get_group_by_out_id HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
out_ids | - | 外部部门id, 多个用逗号, 分隔 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回格式
json
返回结果
{
"{out_id}":
{
"group_id": 部门ID(number),
"name": 部门名称(string),
"out_id": 部门外部ID(string),
"parent_id": 上级部门ID(number)
},
...
}
添加管理员
POST /m-open/1/ent/add_sync_admin HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
out_id | 是 | 成员外部系统唯一ID |
member_email | 否 | 成员邮箱 |
type | 否 | 1表示超级管理员,0表示管理员 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
添加成员
POST /m-open/1/ent/add_member HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
account | 是 | 登录帐号, 公有云必须是邮箱 |
password | 是 | 初始密码 |
member_name | 是 | 显示名称 |
member_phone | 否 | 联系电话 |
member_title | 否 | 职位 |
state | 否 | 帐号状态, 1 启用, 0 禁用 |
group_path | 否 | 成员所在部门路径 |
create_personal_org | 否 | 是否初始化个人库, 1 是, 0 否 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
其中部门路径
是指部门层级关系, 如: 北京分公司/销售部
返回结果
HTTP 200
{
"member_id": 用户ID(number),
"state": 用户状态, 1表示启用, 0表示禁用(number)
}
注意: 启用的帐号数如果超出企业帐号限制将会被强制禁用
修改成员
POST /m-open/1/ent/set_member HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
account | 是 | 登录帐号 |
member_name | 否 | 显示名称 |
member_phone | 否 | 联系电话 |
member_title | 否 | 职位 |
password | 否 | 密码, 公有云不支持 |
state | 否 | 帐号状态, 1 启用, 0 禁用 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
{
"member_id": 用户ID(number),
"state": 用户状态, 1表示启用, 0表示禁用(number)
}
删除成员
POST /m-open/1/ent/del_member HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
members | 是 | 成员登录帐号, 多个用逗号, 分隔 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
添加部门
POST /m-open/1/ent/add_group HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
group_name | 是 | 显示名称 |
parent_group_path | 否 | 如果部门在另一个部门的下级, 需要指定上级部门的部门路径, 不传或空字符串表示在顶层 |
orderby | 否 | 显示顺序, 按数值从小到大显示 |
state | 否 | 部门状态, 1 启用, 0 禁用 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
{
"group_id": 部门ID(number)
}
修改部门
POST /m-open/1/ent/set_group HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
group_path | 否 | 需要修改的部门路径 |
group_name | 否 | 显示名称 |
parent_group_path | 否 | 移动部门, 指定上级部门路径, 空字符串表示移动到顶层 |
orderby | 否 | 显示顺序, 按数值从小到大显示 |
state | 否 | 部门状态, 1 启用, 0 禁用 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
删除部门
POST /m-open/1/ent/del_group HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
groups | 否 | 需要修改的部门路径, 多个用逗号, 分隔 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
添加部门成员
POST /m-open/1/ent/add_group_member HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
group_path | 是 | 部门路径, 不传或传空字符串表示顶层 |
members | 是 | 成员帐号, 多个用逗号, 分隔 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
删除部门成员
POST /m-open/1/ent/del_group_member HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
group_path | 是 | 部门路径, 不传或传空字符串表示顶层 |
members | 是 | 成员帐号, 多个用逗号, 分隔 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
删除成员的所属部门
POST /m-open/1/ent/del_member_group HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
members | 是 | 成员帐号, 多个时用逗号, 分隔 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回结果
HTTP 200
成员列表
POST /m-open/1/ent/get_members HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
start | 否 | 记录开始位置, 默认0 |
size | 否 | 返回条数, 默认20 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回格式
json
返回结果
{
list:
[
{
"member_id": 成员ID(number),
"out_id": 成员外部系统唯一ID(string),
"account": 成员外部系统登录帐号(string),
"member_name": 成员显示名(string),
"member_email": 成员邮箱(string),
"member_phone": 联系电话(string),
"member_title": 职位(string),
"state": 成员状态, 1: 启用, 0: 禁用(number),
"expire": 临时帐号到期时间戳, 单位秒, 无到期日期则不返回(number)
},
...
],
count: 成员总数(number)
}
成员信息
POST /m-open/1/ent/get_member HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
member_id | - | 成员ID |
out_id | - | 成员外部系统唯一ID |
account | - | 成员外部系统登录帐号 |
- | 普通公有云帐号通过登录邮箱查询 | |
show_groups | 否 | 是否返回成员所属部门; 1返回, 0不返回, 默认不返回 |
show_orgs | 否 | 是否返回成员参与的库; 1返回, 0不返回, 默认不返回 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
注: 参数中的member_id
, out_id
, email
和account
必须传其中之一
返回格式
json
返回结果
{
"member_id": 成员ID(number),
"out_id": 成员外部系统唯一ID(string),
"account": 成员外部系统登录帐号(string),
"member_name": 成员显示名(string),
"member_email": 成员邮箱(string),
"member_phone": 联系电话(string),
"member_title": 职位(string),
"state": 成员状态, 1: 启用, 0: 禁用(number),
"expire": 临时帐号到期时间戳, 单位秒, 无到期日期则不返回(number)
"groups" :
[
{
"id": 部门ID(number),
"name": 部门名称(string),
"group_code": 内部code(string),
"out_id": 部门外部系统唯一ID(number)
},
...
],
"orgs":
[
{
"id": 库ID(number),
"name": 库名称(string),
"type": 类型, 20表示个人库(number),
"owner": 库拥有者(string),
"owner_id": 库拥有者ID(number),
"member_count": 库成员数(number),
"size_total": 库空间配额, 单位字节, -1表示不限(number),
"size_used": 库已使用空间, 单位字节(number),
"mount_id": 库空间ID(number),
"roles": {
"角色ID": 角色名称(string),
...
//可能有多个角色, 如果本人是库拥有者不会返回角色信息
}
},
...
]
}
部门列表
POST /m-open/1/ent/get_groups HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回格式
json
返回结果
[
{
"id": 部门ID(number),
"name": 部门名称(string),
"out_id": 部门外部系统唯一ID(string),
"parent_id": 上级部门ID, 0为顶层(number)
}
]
部门中成员列表
POST /m-open/1/ent/get_group_members HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
group_id | 是 | 部门ID |
group_path | 否 | 部门路径 |
out_id | 否 | 外部系统部门ID |
show_child | 否 | 1返回下层部门内的成员, 默认0不返回 |
start | 否 | 记录开始位置, 默认0 |
size | 否 | 返回条数, 默认20 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
参数中group_id
, out_id
, group_path
传其中一个即可
返回格式
json
返回结果
{
list:
[
{
"member_id": 成员ID(number),
"out_id": 成员外部系统唯一ID(string),
"account": 成员外部系统登录帐号(string),
"member_name": 成员显示名(string),
"member_email": 成员邮箱(string),
"member_phone": 联系电话(string),
"member_title": 职位(string),
"state": 成员状态, 1: 启用, 0: 禁用(number),
"expire": 临时帐号到期时间戳, 单位秒, 无到期日期则不返回(number)
},
...
],
count: 成员总数(number)
}
角色列表
POST /m-open/1/ent/get_roles HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
返回格式
json
返回结果
[
{
"id": 角色ID(number),
"name": 角色名称(string),
},
...
]
管理日志
POST /m-open/1/ent/log HTTP/1.1
请求参数
参数 | 必需 | 说明 |
---|---|---|
client_id | 是 | 企业授权管理中获得的client_id |
type | 否 | 类型, 不传默认返回所有类型 |
orderby | 否 | asc 顺序, 默认desc 倒序 |
start_dateline | 否 | unix时间戳, 单位秒, 获取操作时间 >= start_dateline 的日志, 默认不限制 |
end_dateline | 否 | unix时间戳, 单位秒, 获取操作时间 < end_dateline 的日志, 默认不限制 |
start | 否 | 开始位置, 默认0 |
size | 否 | 获取日志条数, 默认100 , 最多返回1000 条 |
dateline | 是 | 当前unix时间戳, 单位秒 |
sign | 是 | 签名 |
type类型 | 说明 |
---|---|
1 | 子管理员 |
2 | 成员信息 |
3 | 企业设置 |
4 | 组织架构 |
5 | 角色 |
6 | 成员设备 |
7 | 存储点 |
8 | 文件库 |
9 | 开发授权 |
返回格式
json
返回结果
{
"total": 总共匹配的日志条数(number),
"list": [
{
"type": 1(number),
"admin": 管理员(string),
"content": 日志内容(string),
"ip": ip地址(string),
"dateline": 操作时间, 单位秒(number)
},
...
]
}