部门和成员操作

更新: 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_idleader_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_idsuser_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 - 成员外部系统登录帐号
email - 普通公有云帐号通过登录邮箱查询
show_groups 是否返回成员所属部门; 1返回, 0不返回, 默认不返回
show_orgs 是否返回成员参与的库; 1返回, 0不返回, 默认不返回
dateline 当前unix时间戳, 单位秒
sign 签名

注: 参数中的member_id, out_id, emailaccount必须传其中之一

返回格式

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)
        },
        ...
    ]
}