Skip to content

批量设置角色成员管理范围

调用该接口为指定角色内的一个或多个角色成员设置管理范围。管理范围是指角色成员可以管理的部门范围。

注意事项

当前应用的通讯录权限范围需要包含待操作的用户与部门,否则将会操作失败。如何设置通讯录权限范围,可参见权限范围资源介绍

请求

项目
HTTP URLhttps://open.feishu.cn/open-apis/contact/v3/functional_roles/:role_id/members/scopes
HTTP MethodPATCH
接口频率限制100 次/分钟
支持的应用类型custom
权限要求 调用该 API 所需的权限。开启其中任意一项权限即可调用contact:functional_role 查看、创建、修改、删除角色及角色成员
字段权限要求> Tip: 该接口返回体中存在下列敏感字段,仅当开启对应的权限后才会返回;如果无需获取这些字段,则不建议申请 contact:user.employee_id:readonly 获取用户 user ID

请求头

名称类型必填描述
Authorizationstringtenant_access_token 值格式:"Bearer access_token" 示例值:"Bearer t-7f1bcd13fc57d46bac21793a18e560" 了解更多:如何选择与获取 access token
Content-Typestring固定值:"application/json; charset=utf-8"

路径参数

名称类型描述
role_idstring角色 ID。获取方式:
- 在创建角色时,可从返回结果中获取。 - 企业管理员可以在 管理后台 > 组织架构 > 角色管理 页面,在角色名称右侧获取角色 ID。
示例值:"7vrj3vk70xk7v5r"

查询参数

名称类型必填描述
user_id_typestring用户 ID 类型
示例值:open_id
可选值有
- open_id: 标识一个用户在某个应用中的身份。同一个用户在不同应用中的 Open ID 不同。了解更多:如何获取 Open ID - union_id: 标识一个用户在某个应用开发商下的身份。同一用户在同一开发商下的应用中的 Union ID 是相同的,在不同开发商下的应用中的 Union ID 是不同的。通过 Union ID,应用开发商可以把同个用户在多个应用中的身份关联起来。了解更多:如何获取 Union ID? - user_id: 标识一个用户在某个租户内的身份。同一个用户在租户 A 和租户 B 内的 User ID 是不同的。在同一个租户内,一个用户的 User ID 在所有应用(包括商店应用)中都保持一致。User ID 主要用于在不同的应用间打通用户数据。了解更多:如何获取 User ID?
默认值open_id
当值为 user_id,字段权限要求contact:user.employee_id:readonly 获取用户 user ID
department_id_typestring此次调用中的部门 ID 类型。关于部门 ID 的详细介绍,可参见部门 ID 说明
示例值:open_department_id
可选值有
- department_id: 支持用户自定义配置的部门 ID。自定义配置时可复用已删除的 department_id,因此在未删除的部门范围内 department_id 具有唯一性。 - open_department_id: 由系统自动生成的部门 ID,ID 前缀固定为 od-,在租户内全局唯一。
默认值open_department_id

请求体

名称类型必填描述
membersstring\[\]角色成员的用户 ID 列表,以 ["xxx", "yyy"] 数组格式进行传值。ID 类型需要和查询参数 user_id_type 的取值保持一致。
示例值:["ou-12832197382"]
数据校验规则
- 长度范围:1100
departmentsstring\[\]设置角色成员可管理的部门范围(部门 ID 列表),以 ["xxx", "yyy"] 数组格式进行传值。ID 类型需要和查询参数 department_id_type 的取值保持一致。
部门 API 提供了多种获取部门 ID 的方式,如获取子部门列表获取父部门信息搜索部门,你可以选择合适的 API 进行查询。
注意:不支持为角色成员设置根部门(部门 ID 为 0)的管理范围。
示例值:["ou-12343455"]
数据校验规则
- 长度范围:1100

请求体示例

json
{
    "members": [
        "ou-12832197382"
    ],
    "departments": [
        "ou-12343455"
    ]
}

响应

响应体

名称类型描述
codeint错误码,非 0 表示失败
msgstring错误描述
data\--
  └ resultsfunctional_role_member_result\[\]设置结果。
    └ user_idstring用户 ID,ID 类型与查询参数 user_id_type 的取值保持一致。
    └ reasonint成员处理结果。
可选值有
- 1: 处理成功 - 2: 用户 ID 无效 - 3: 无权限操作该用户 ID - 4: 用户已存在在该角色中 - 5: 用户不存在在该角色中 - 6: 无权限操作该角色成员旧的管理范围

响应体示例

json
{
    "code": 0,
    "msg": "success",
    "data": {
        "results": [
            {
                "user_id": "od-4e6ac4d14bcd5071a37a39de902c7141",
                "reason": 1
            }
        ]
    }
}

错误码

HTTP状态码错误码描述排查建议
40441202role id is not existrole_id 不存在。请修改为正确的 role_id 后重试。
40041210dept id is invalid部门 ID 无效。你可以选择调用获取子部门列表获取父部门信息搜索部门任一接口,获取正确的部门 ID 后重试。
40041211dept id is not has perm部门 ID 无权限。当前操作涉及的部门,需在应用通讯录权限范围内。了解更多可参见权限范围资源介绍

更多错误码信息,参见通用错误码

内容来源:飞书开放平台 · 自动爬取整理