Skip to content

批量增加协作者权限

为指定云文档批量添加多个协作者,协作者可以是用户、群组、部门、用户组等。

前提条件

  • 调用该接口需要调用身份有该云文档添加协作者的权限。添加协作者的权限可通过云文档设置中的 谁可以查看、添加、移除协作者 等选项进行控制。
  • 调用该接口时,需要调用身份与被授权对象 互相可见,例如:
    • 添加用户协作者:需要调用身份与被授权对象为联系人或同组织内可搜索,且互相未屏蔽。
    • 添加群协作者:需要调用身份在群内。要使用 tenant_access_token 身份添加群协作者,则需要将该应用作为机器人添加至群组中,使应用对群可见。详细步骤参考如何为应用开通云文档相关资源的权限
    • 添加部门协作者:需要调用身份对部门可见。由于应用对企业内的组织架构都不可见,所以暂不支持通过 tenant_access_token 添加部门协作者。

注意事项

不支持将应用直接添加到文件夹作为协作者(添加成功后实际仍然没有权限)。如果希望给应用授予文件夹的权限,请将应用作为群机器人添加到群组内,然后授予该群组可管理权限。详细步骤参考如何为应用开通云文档相关资源的权限

请求

项目
HTTP URLhttps://open.feishu.cn/open-apis/drive/v1/permissions/:token/members/batch_create
HTTP MethodPOST
接口频率限制100 次/分钟
支持的应用类型custom,isv
权限要求 调用该 API 所需的权限。开启其中任意一项权限即可调用 开启任一权限即可docs:permission.member 查看、新增、更新、删除云文档协作者 docs:permission.member:create 添加云文档协作者

请求头

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

路径参数

名称类型描述
tokenstring云文档的 token,需要与 type 参数指定的云文档类型相匹配。可参考 如何获取云文档相关 token
示例值:"docxnBKgoMyY5OMbUG6FioTXuBe"

查询参数

名称类型必填描述
typestring云文档类型,需要与云文档的 token 相匹配。
示例值:docx
可选值有
- doc: 旧版文档。了解更多,参考新旧版本文档说明。 - sheet: 电子表格 - file: 云空间文件 - wiki: 知识库节点 - bitable: 多维表格 - docx: 新版文档 - folder: 文件夹。使用 tenant_access_token 调用时,需确保文件夹所有者为应用或应用拥有文件夹的可管理权限,你需要将应用作为群机器人添加至群内,然后授予该群组可管理权限。详细步骤参考如何为应用开通云文档相关资源的权限 - mindnote: 思维笔记 - minutes: 妙记。目前妙记还不支持 full_access 权限角色 - slides: 幻灯片
need_notificationboolean添加权限后是否通知对方。仅当使用 user_access_token 调用时有效。可选值: - true:通知对方 - false:不通知
示例值:false
默认值false

请求体

名称类型必填描述
membersbase_member\[\]本次要增加权限的协作者列表
数据校验规则
- 最大长度:10
  └ member_typestring协作者 ID 类型,与协作者 ID (member_id)的类型需要保持一致。
示例值:"openid"
可选值有
- email: 飞书邮箱 - openid: 开放平台 Open ID - 获取应用 OpenID,参考如何获取应用 open_id - 获取用户 OpenID,参考如何获取不同的用户 ID - unionid: 开放平台 Union ID。获取方式参考如何获取不同的用户 ID - openchat: 开放平台群组 ID。获取方式参考群 ID 说明 - opendepartmentid: 开放平台部门 ID。仅当使用 user_access_token 调用时有效。获取方式参考部门资源介绍 - userid: 用户 ID。获取方式参考如何获取不同的用户 ID - groupid: 自定义用户组 ID。获取方式参考用户组资源介绍 - wikispaceid: 知识空间 ID。仅知识库文档支持该参数,当需要操作知识库文档里的「知识库成员」类型协作者时传该参数。获取方式参考知识库概述
  └ member_idstring协作者 ID,该 ID 的类型与 member_type 指定的值需要保持一致
示例值:"ou_1234567890abcdef1234567890abcdef"
  └ permstring协作者对应的权限角色。
注意: 妙记还不支持可管理角色
示例值:"view"
可选值有
- view: 可阅读角色 - edit: 可编辑角色 - full_access: 可管理角色
  └ perm_typestring协作者的权限角色类型。当云文档类型为 wiki 即知识库节点时,该参数有效
示例值:"container"
可选值有
- container: 当前页面及子页面 - single_page: 仅当前页面,当且仅当在知识库文档中该参数有效
默认值container
  └ typestring协作者类型。
注意:当 member_type 参数为 wikispaceid 时,该参数必填。
默认值:""
示例值:"user"
可选值有
- user: 用户 - chat: 群组 - department: 组织架构 - group: 用户组 - wiki_space_member: 知识库成员。在知识库启用了成员分组功能后不支持该参数 - wiki_space_viewer: 知识库可阅读成员。仅在知识库启用了成员分组功能后才支持该参数 - wiki_space_editor: 知识库可编辑成员。仅在知识库启用了成员分组功能后才支持该参数

请求体示例

json
{
    "members": [
        {
            "member_type": "openid",
            "member_id": "ou_1234567890abcdef1234567890abcdef",
            "perm": "view",
            "perm_type": "container",
            "type": "user"
        }
    ]
}

响应

响应体

名称类型描述
codeint错误码,非 0 表示失败
msgstring错误描述
data\--
  └ membersbase_member\[\]添加成功的协作者列表
注意:当只有部分成功时,members 会返回成功的部分,在不同场景下,部分成功返回的错误码可能不同,请不要依赖错误码去判断是否为部分成功
    └ member_typestring增加成功的协作者 ID 类型
可选值有
- email: 飞书邮箱 - openid: 开放平台 ID - unionid: 开放平台UnionID - openchat: 开放平台群组 ID - opendepartmentid: 开放平台部门 ID - userid: 用户自定义 ID - groupid: 自定义用户组 ID - wikispaceid: 知识空间的唯一标识
    └ member_idstring增加成功的协作者 ID,与协作者 ID 类型相对应
    └ permstring增加成功的的权限角色
可选值有
- view: 可阅读角色 - edit: 可编辑角色 - full_access: 可管理角色
    └ perm_typestring协作者的权限角色类型
可选值有
- container: 当前页面及子页面 - single_page: 仅当前页面,当且仅当在知识库文档中该参数有效
    └ typestring协作者类型
可选值有
- user: 用户 - chat: 群组 - department: 组织架构 - group: 用户组 - wiki_space_member: 知识库成员 - wiki_space_viewer: 知识库可阅读成员 - wiki_space_editor: 知识库可编辑成员

响应体示例

json
{
    "code": 0,
    "msg": "success",
    "data": {
        "members": [
            {
                "member_type": "openid",
                "member_id": "ou_c186b6833e2d5faf2bc587e71ddabcef",
                "perm": "view",
                "perm_type": "container",
                "type": "user"
            }
        ]
    }
}

错误码

HTTP状态码错误码描述排查建议
4001063001Invalid parameter参数异常,可能是如下原因: - 参数类型不匹配,如: - 云文档的 token 和 type 不匹配 - 云文档不存在 - 添加协作者的 member_id 和 member_type 不匹配 - 添加的协作者不存在 - 不支持的参数调用,如: - 使用 tenant_access_token 添加部门协作者 - 给妙记添加可管理角色
4031063002Permission denied调用身份对应的用户或应用不是云文档的协作者或对云文档的权限(如编辑、管理权限)不足。请参考以下方式解决: - 对于转移所有者接口,你需确保调用身份为云文档的所有者 - 对于协作者、权限设置相关接口,你需先参考[谁可以查看、添加、移除协作者](https://www.feishu.cn/hc/zh-CN/articles/360049067527-设置云文档分享-复制-下载-评论等权限#tabs0
4001063003Invalid operation非法操作。该错误码表示基本参数校验没有问题,但操作不被允许,可能是如下原因: - 云文档的协作者数量到达上限,请减少协作者数量 - 因企业设置的管控策略而无法修改权限 - 受可见性限制无法修改权限。例如: - 添加用户协作者:需要调用身份与被授权对象为联系人或同组织内可搜索,且互相未屏蔽。 - 添加群协作者:需要调用身份在群内。要使用 tenant_access_token 身份添加群协作者,则需要将该应用作为机器人添加至群组中,使应用对群可见。详细步骤参考如何为应用开通云文档相关资源的权限。 - 添加部门协作者:需要调用身份对部门可见。由于应用对企业内的组织架构都不可见,所以暂不支持通过 tenant_access_token 添加部门协作者。 - 给文档所有者添加权限(不允许对文档所有者操作权限) - 协作者本身已有的权限大于请求参数内设置的权限
4291063006Too many request服务内部限流,与接口本身设置的限流为不同维度的限流,请稍后重试。
5001066001Internal error服务内部错误,包括服务端内部超时、错误码没处理等,请联系技术支持排查。

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