Skip to content

知识库常见问题

1. 如何调用接口获取知识库文档内容 / 如何调用接口操作知识库文档?

列1
要获取知识库中云文档的内容/调用接口操作知识库文档,你需先通过知识库相关接口获取该云文档资源的实际 token,再调用云文档资源相关获取接口。具体步骤如下所示: 1. 在 URL 地址栏,获取知识库中云文档挂载的节点标识 node_token。如下图,该文档挂载的节点 token 为 EpMmw5WZQi7tYRk73gBc7Dabcef
note
   你也可通过[获取知识空间列表](https://open.larkoffice.com/document/ukTMukTMukTM/uUDN04SN0QjL1QDN/wiki-v2/space/list)获取知识空间的标识 `space_id`,再通过[获取知识空间子节点列表](https://open.larkoffice.com/document/ukTMukTMukTM/uUDN04SN0QjL1QDN/wiki-v2/space-node/list)获取云文档挂载的节点 `node_token`。
    :::

   ![](https://sf3-cn.feishucdn.com/obj/open-platform-opendoc/9a4195d235cb581c5a644278c872a73e_kDDonAPndG.png?height=935&lazyload=true&maxWidth=500&width=1573)
  1. 通过获取知识空间节点信息接口,获取该节点下挂载的云资源的 obj_token。此时,该 obj_token 即为云文档资源的实际 token。

  2. 根据云文档类型,使用文档电子表格多维表格等接口获取内容:

    1. 如果该云文档类型为文档,你可调用获取文档纯文本内容获取文档所有块获取文档内容
    2. 如果该云文档类型为电子表格,你可调用读取多个范围等接口获取电子表格中的数据
    3. 如果该云文档类型为多维表格,你可调用查询记录等接口获取多维表格中的记录数据

说明

知识库中的云文档的特殊之处在于,云文档 URL 地址中的 token 为知识库的节点标识(node_token),而不是实际云文档资源的唯一标识。例如,在 URL https://sample.feishu.cn/wiki/EpMmw5WZQi7tYRk73gBc7Dabcef 中,EpMmw5WZQi7tYRk73gBc7Dabcef 为知识库的节点 token,而不是文档的唯一标识 document_id

2. 如何给应用授权访问知识库文档资源?

列1
知识库 API 中,除了 创建知识库搜索Wiki以外,都支持使用 tenant_access_token 进行调用。 应用在访问知识库之前需要获得知识库管理员的授权,或者某个节点的访问权限。要为应用授权整个知识库的访问权限,参考以下步骤: - 方式一:添加群为知识库管理员或成员 1. 访问开发者后台,选择目标应用。 1. 在应用管理页面,点击添加应用能力,找到机器人卡片,点击 +添加image.png 3. 发布当前应用版本,并确保发布版本的可用范围包含文件夹资源的所有者。 4. 在飞书客户端,创建一个新的群组,将应用添加为群机器人。
warning
    **注意**
    <br>
    此处要添加应用作为机器人,而不是添加“自定义机器人”。
    :::
  1. 知识库管理员前往「知识库设置」-> 「成员设置」,在此选择添加的角色:管理员、可编辑的成员或可阅读的成员。

    image.png

  2. 搜索包含机器人的群聊,添加该群为管理员或成员。

    image.png

  • 方式二:通过 API 接口将应用添加为知识库管理员或成员

    1. 获得知识库管理员身份凭证(user_access_token)。
    2. 获取应用 open_id(参考云文档常见问题 问题 10 如何获取应用 open_id?)。
    3. 调用添加为知识空间成员接口,通过管理员身份(user_access_token)将应用 open_id 添加为知识空间成员。通过 member_role 参数控制角色类型。

要为应用授权知识库中部分内容的访问权限,你可将应用添加为知识库中目标节点云文档的协作者,应用将拥有该节点下所有云文档的协作权限。具体步骤如下所示:

  • 方式一:直接添加应用为节点云文档的协作者

    该方式要求操作者为云文档所有者、拥有文档管理权限的协作者或知识库管理员。操作者可通过云文档网页页面右上方「...」->「...更多」-> 「添加文档应用」入口添加。

  • 方式二:添加包含应用的群组为节点云文档的协作者

    1. 访问开发者后台,选择目标应用。

    2. 在应用管理页面,点击添加应用能力,找到机器人卡片,点击 +添加

    3. 发布当前应用版本,并确保发布版本的可用范围包含知识库资源的所有者。

    4. 在飞书客户端,创建一个新的群组,将应用添加为群机器人。

      WARNING

      注意
      此处要添加应用作为机器人,而不是添加“自定义机器人”。

    5. 在目标节点,将该节点分享给刚刚新建的群组,并设置权限。

      image.png


  • 方式三:通过用户身份凭证 (user_access_token) 调用增加协作者权限通过应用的 open_id(参考云文档常见问题问题 10 “如何获取应用 open_id ”) 给应用授予文档的访问权限。

  • 方式四:通过用户身份凭证(user_access_token) 调用更新云文档权限设置,将权限设置为“组织内获得链接的人可编辑”。

  • 方式五:通过用户身份凭证(user_access_token) 调用转移所有者将云文档的所有权转移给应用。

3. 如何将应用添加为知识库管理员(成员)?

列1
添加应用为知识库管理员(成员)当前有两种方式: - 通过添加群为知识库管理员(成员)方式(较容易) 1. 在飞书客户端中创建一个群聊,并将应用添加至群聊中。 2. 知识库管理员前往「知识库设置」-> 「成员设置」->「添加管理员」中。 image.png 3. 搜索包含机器人的群聊,添加该群为管理员。 image.png - 通过 API 接口方式(较繁琐) - 参考本页 问题2 中将应用添加知识空间成员的方式

4. 如何迁移云空间中的文档到知识库?

列1
1. 确定当前使用访问凭证是 user_access_token 还是 tenant_access_token。 2. 确认当前身份是否是迁移文档的所有者。 3. 确认当前身份是否拥有知识库迁移目的地节点的权限。参考本页 问题2。 4. 调用 添加已有云文档至知识库 接口进行迁移。 - 此接口为异步接口。若移动已完成(或节点已在Wiki中),则直接返回结果(Wiki token)。 - 若尚未完成,则返回task id。请使用获取任务结果接口进行查询。

5. 如何将本地文件导入到知识库?

列1
1. 先将本地文件通过导入流程导入到云空间。 2. 再通过本页问题4 如何迁移云空间中的文档到知识库 将导入后的文档迁移到知识库中。

6. 如何导出知识库中文档?

列1
1. 通过调用 获取节点信息 接口,可以从返回值中获取到 obj_typeobj_token。 2. 再通过导出流程obj_token对应的文档下载到本地。

7. 如何查看谁是当前知识库的管理员?

列1
你可前往飞书帮助中心[知识库管理员常见问题](https://www.feishu.cn/hc/zh-CN/articles/573667449126-知识库管理员常见问题#tabs0

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