- 文档专区
- 石墨API 接口
- 接入方实现接口(回调接口)
按关键字搜索文件和用户列表
开发中
POST
{endpoint_url}/search
说明
1.
type
字段值为 file
,参考如下 Response Example2.
fullUrl
字段作为跳转至接入方系统的完整地址,参考如下 Response Example3.
shimo-js-sdk
时在调用 connect
需要实现 openLink
方法用于控制编辑器内点击链接时的跳转行为。请求参数
Path 参数
endpoint_url
string
必需
示例值:
{{endpoint_url}}
Header 参数
X-Shimo-Token
string
必需
Body 参数application/json
fileId
string
必需
keyword
string
必需
page
number
搜索的结果第几页
pageSize
number
搜索结果每页数量
type
string
必需
type
字段说明说明
file_name
表示通过关键字搜索文件,对应 Response 中 files
结果。recent_contact
表示通过关键字搜索比较相关用户,对应 Response 中 recentUsers
结果。collaborator
表示通过关键字搜索协作者用户,对应 Response 中 collaborators
结果。team_member
表示通过关键字搜索团队成员,对应 Response 中 teamMembers
结果。department
表示通过关键字搜索部门,对应 Response 中 department
结果。示例
{
"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 '/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
object
按文件名搜索的文件
count
number
必需
page
number
必需
pageSize
number
必需
pageCount
number
必需
results
array [object {9}]
必需
recentUsers
object
最近联系人等
count
number
必需
page
number
必需
pageSize
number
必需
pageCount
number
必需
results
array [object {4}]
必需
collaborators
object
协作者
count
number
必需
page
number
必需
pageSize
number
必需
pageCount
number
必需
results
array [object {4}]
必需
teamMembers
object
团队成员
count
number
必需
page
number
必需
pageSize
number
必需
pageCount
number
必需
results
array [object {4}]
必需
department
object
必需
count
number
必需
page
number
必需
pageSize
number
必需
pageCount
number
必需
results
array [object {4}]
必需
示例
{
"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": []
}
]
}
}
修改于 2024-03-19 08:39:25