1. 搜索功能
石墨文档中台(SDK)
CO-1.4
  • >=CO-1.6
  • CO-1.5
  • CO-1.4
  • CO-1.2-1.3
  • <CO-1.2
  • 一文认识石墨文档中台
  • 文档中台支持的格式
  • 10 分钟创建协同文档
  • 10分钟创建预览文档
  • 示例代码仓库
  • 更新日志
  • 典型场景案例
    • 云盘场景
    • IM场景
  • 接口文档
    • 接口文档概览
    • 错误码说明
    • 石墨后端API
      • 请求签名凭证
        • 签名凭证类型
        • 签名凭证-Signature
        • 签名凭证-Token
      • 系统管理
        • 应用管理
          • 获取应用详情
          • 更新应用回调地址
        • 用户席位管理
          • 用户席位状态说明
          • 获取用户列表和席位状态
          • 激活用户席位​
          • 取消用户席位​
          • 批量设置用户席位
      • 协同文档创建删除
        • 访问协同文档
        • 创建协同文档
        • 创建协同文档副本
        • 删除协同文档
      • 预览文件
        • 访问预览文件
        • 创建文件预览缓存
      • 文档导入导出
        • 文档导入
          • 文档导入说明
          • 创建导入任务
          • 获取导入进度
          • 创建导入任务(旧版)
          • 获取导入进度(旧版)
        • 文档导出
          • 文档导出流程
          • 创建导出任务
          • 获取导出进度
      • 文档操作
        • 专业表格(Excel)
          • 专业表格接口参数说明
          • 获取表格内容
          • 获取表格中的评论数
          • 更新表格内容
          • 追加表格内容
          • 删除表格行
          • 新增表格工作表
        • 轻文档(Markdown)
          • 获取文档中的评论列表
        • 通用
          • 获取文件纯文本内容
          • 文件纯文本字数统计
          • 获取历史列表
          • 获取版本列表
          • 获取文档内容中所有的at人信息列表
        • 传统文档(Word)
          • 传统文档书签说明
          • 读取传统文档书签内容
          • 替换传统文档书签内容
    • 石墨前端API
      • 【前端】JS-API
      • 编辑器API
        • 表单
        • 应用表格
        • 表格
        • 轻文档
        • 幻灯片
        • 传统文档
    • 回调接口(接入方需实现)
      • 【后端】回调接口说明
      • 【后端】回调总览
      • 文件信息
        • 获取文件元信息-协同文档
        • 获取文件元信息-预览文档
        • 获取当前用户的文件列表
        • 获取文件的协作者列表
        • 获取接入方指定文件的完整访问地址
        • 获取文件元信息-协同文档自动任务(admin)
        • 根据指定用户获取文件元信息-协同文档(admin)
      • 用户信息
        • 批量获取用户信息(admin)
        • 获取当前用户信息
        • 获取当前用户所在团队信息
        • 获取指定用户信息
        • 获取用户水印信息
        • 获取用户部门路径
        • 批量获取用户信息
      • 团队和部门
        • 获取团队下的成员列表
        • 获取部门信息
        • 获取部门的下级部门节点
        • 获取部门下的成员分页列表
      • 搜索功能
        • 获取与文件相关的用户列表
          GET
        • 获取与文件相关的文件列表
          GET
        • 按关键字搜索文件和用户列表
          POST
      • 消息推送
        • 评论(Comment)
          • 轻文档
            • 添加评论
            • 删除评论
            • 结束评论
            • 对于评论的回复评论
          • 表格
            • 添加评论
            • 删除评论
            • 结束评论
            • 对于评论的回复评论
          • 传统文档
            • 添加评论
            • 更新评论
            • 删除评论
            • 对于评论的回复评论
          • 幻灯片
            • 添加评论
            • 删除评论
            • 结束评论
            • 对于评论的回复评论
          • 应用表格
            • 添加评论
            • 对于评论的回复评论
            • 删除评论
        • 讨论(Discussion)
          • 轻文档
            • 发送讨论消息
        • 提及(MentionAt @ 人)
          • 轻文档
            • 在评论中 at
            • 在讨论中 at
            • 在正文中 at
          • 表格
            • 在评论中 at
            • 在正文中 at
          • 传统文档
            • 在评论中 at
            • 在正文中 at
          • 应用表格
            • 在评论中 at
            • 在正文中 at
        • 日期提醒 (DateMention)
          • 轻文档
            • 创建
            • 修改
            • 删除
          • 表格
            • 创建
            • 修改
            • 删除
          • 传统文档
            • 创建
            • 修改
            • 删除
        • 文件内容更新 (FileContent)
          • 文件内容更新
        • 文档协作者协同状态变化 (Collaborator)
          • 文档协作者协同状态变化
        • 版本 (Revision)
          • 版本
        • 系统事件 (System)
          • 系统事件
        • (实验性) 回调请求错误
          • 回调请求错误
  • 常见问题
    • 复制粘贴、全屏操作不正常
    • 如何实现文档模板功能
    • 文档内容何时保存
    • 移动端不支持blob协议导致预览失败
    • 如何实现文件重命名
    • @人员时如何直接跳转至对应锚点
    • 访问接口提示 signature 无效怎么办
    • 文件预览或导入报错如何处理
    • 首次接入 SDK 报错 应该排查哪些接口
    • 文档预览如何做防盗链
    • 如何通过接口修改文档内容
  1. 搜索功能

按关键字搜索文件和用户列表

POST
{endpoint_url}/search
此接口用 @ 功能搜索,获取下拉菜单的结果使用。 输入 @ 时,如需要根据关键字搜索用户或文件,通过请求接入方系统返回对应的文件列表、用户列表;如不需要可将对应字段返回空数组。
支持返回 @ 第三方文件
说明
由于第三方文件无法进行协作,仅支持在 SDK 中插入 @ 时保留引用,因此需要达到点击后跳转至第三方页面,需要满足以下条件:
1.
file 信息 type 字段值为 file,参考如下 Response Example
2.
file 信息增加 fullUrl 字段作为跳转至接入方系统的完整地址,参考如下 Response Example
3.
前端使用 shimo-js-sdk 时在调用 connect 需要实现 openLink 方法用于控制编辑器内点击链接时的跳转行为。

请求参数

Path 参数

Header 参数

Body 参数application/json

示例
{
  "fileId": "file1234",
  "keyword": "test",
  "page": 0,
  "pageSize": 6,
  "type": "file_name,recent_contact,collaborator,team_member,department"
}

请求示例代码

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
请求示例请求示例
Shell
JavaScript
Java
Swift
curl --location -g --request POST '{{endpoint_url}}/search' \
--header 'X-Shimo-Token;' \
--header 'Content-Type: application/json' \
--data-raw '{
  "fileId": "file1234",
  "keyword": "test",
  "page": 0,
  "pageSize": 6,
  "type": "file_name,recent_contact,collaborator,team_member,department"
}'

返回响应

🟢200成功
application/json
Body

示例
{
  "files": { // 按文件名搜索的文件
    "count": 3,
    "page": 0,
    "pageSize": 6,
    "pageCount": 3,
    "results": [
      {
        "id": "ba13551165cc5066",
        "name": "示例表格",
        "type": "spreadsheet",
        "permissions": {
          "commentable": true,
          "editable": false,
          "readable": true
        },
        "creatorId": "1",
        "createdAt": "2021-08-01T00:00:00Z", // UTC 时间,0 时区,在北京时间基础上减 8 小时
        "updatedAt": "2021-08-02T00:00:00Z", // UTC 时间,0 时区,在北京时间基础上减 8 小时
        "views": 100
       },
      {
        "id": "ba13551165cc5066",
        "name": "示例文档",
        "type": "document",
        "permissions": {
          "commentable": true,
          "editable": false,
          "readable": true
        },
        "creatorId": "1",
        "createdAt": "2021-08-01T00:00:00Z", // UTC 时间,0 时区,在北京时间基础上减 8 小时
        "updatedAt": "2021-08-02T00:00:00Z", // UTC 时间,0 时区,在北京时间基础上减 8 小时
        "views": 100
       },
      {
        "id": "ba13551165cc5066",
        "name": "接入方自己的文件.docx",
        "type": "file",
        "permissions": {
          "commentable": false,
          "editable": false,
          "readable": true
        },
        "creatorId": "1",
        "createdAt": "2021-08-01T00:00:00Z", // UTC 时间,0 时区,在北京时间基础上减 8 小时
        "updatedAt": "2021-08-02T00:00:00Z", // UTC 时间,0 时区,在北京时间基础上减 8 小时
        "views": 0,
        "fullUrl": "https://customer-system.com/path/to/file" // 仅在文件仅为接入方自身系统的文件而非协同文档时需要传递
       }
    ]
  },
  "recentUsers": { // 最近联系人等
    "count": 2,
    "page": 0,
    "pageSize": 6,
    "pageCount": 2,
    "results": [
      {
        "id": "userid123",
        "name": "张三",
        "avatar": "http://fake.site/user-123.png",
        "email": "user123@fake.site"
      },
      {
        "id": "userid456",
        "name": "李四",
        "avatar": "http://fake.site/user-123.png",
        "email": "userid456@fake.site"
      }
    ]
  },
  "collaborators": { // 协作者
    "count": 2,
    "page": 0,
    "pageSize": 6,
    "pageCount": 1,
    "results": [
      {
        "id": "userid123",
        "name": "张三",
        "avatar": "http://fake.site/user-123.png",
        "email": "user123@fake.site"
      },
      {
        "id": "userid456",
        "name": "李四",
        "avatar": "http://fake.site/user-123.png",
        "email": "userid456@fake.site"
      }
    ]
  },
  "teamMembers": { // 团队成员
    "count": 2,
    "page": 0,
    "pageSize": 6,
    "pageCount": 1,
    "results": [
      {
        "id": "userid123",
        "name": "张三",
        "avatar": "http://fake.site/user-123.png",
        "email": "user123@fake.site"
      },
      {
        "id": "userid456",
        "name": "李四",
        "avatar": "http://fake.site/user-123.png",
        "email": "userid456@fake.site"
      }
    ]
  },
  "department": {
    "count": 2,
    "page": 0,
    "pageSize": 6,
    "pageCount": 1,
    "results": [
      {
        "id": "2",
        "name": "后端组",
        "allMemberCount": 9,
        "parentDepartments": [
          {
            "id": "3",
            "name": "XXX 事业部" // 一级部门
          },
          {
            "id": "4",
            "name": "YYY 产品部"
          }
        ]
      },
      {
        "id": "userid456",
        "name": "基础服务后端组", // 已经是一级部门
        "allMemberCount": 20,
        "parentDepartments": []
      }
    ]
  }
}
修改于 2026-04-02 03:05:48
上一页
获取与文件相关的文件列表
下一页
消息推送
Built with