关键字搜索
... 2022-7-19 大约 4 分钟
# 关键字搜索
# 接口说明
本接口用于根据标题或者文本内容关键字搜索文档,并返回文档信息,已删除的文档不会出现的搜索结果中。
# 权限说明
本接口需要拥有以下任意一项权限:
scope.drive.readonly
# 请求格式
# 请求参数
# 路径参数
无
# 查询参数
| 参数名 | 类型 | 必选 | 描述 |
|---|---|---|---|
| searchKey | string | 是 | 搜索关键字 |
| searchType | string | 是 | 搜索类型title:根据标题搜索owner:根据所有者昵称搜索 |
| resultType | string | 否 | 返回结果的文件类型all:返回所有文件类型folder:只返回文件夹类型all:默认值,返回所有类型 |
| folderID | string | 否 | 搜索范围所在文件夹的 ID,传空时为搜索用户拥有的所有文件 |
| offset | integer | 否 | 查询的起始条目偏移量,默认为 0 |
| size | integer | 否 | 单次查询返回的条目数量,默认为 20,上限是 50,同一个文件的快捷方式、星标文件等都记为一个条目,回包中会分别返回它们的信息,所以回包的实际条目数量可能会大于 size |
| sortType | string | 否 | 指定匹配分数相同时的排序规则modify:最近修改时间(默认值)create:文档创建时间browse:最近一次访问时间 |
| asc | integer | 否 | 是否正序排列1:正序0:倒序,默认值 |
| byOwnership | integer | 否 | 根据请求者是否为文件所有者进行过滤1:是0:否,默认值 |
| fileTypes | string | 否 | 根据文件品类过滤搜索结果,多种品类用 - 分隔开。文件类型定义见搜索文件类型,默认为不过滤;选择返回文件夹时不传该字段 |
# 请求体
无
# 响应参数
# 响应体
| 参数名 | 类型 | 描述 |
|---|---|---|
| ret | integer | 业务返回码 |
| msg | string | 业务返回码描述 |
| data | json object | 业务数据,详见搜索结果列表 |
# 请求包体
GET /openapi/drive/v2/search HTTP/1.1
Host: docs.qq.com
Access-Token: ACCESS_TOKEN
Client-Id: CLIENT_ID
Open-Id: OPEN_ID
Content-Length: 0
1
2
3
4
5
6
2
3
4
5
6
1
2
3
4
5
6
2
3
4
5
6
# 示例
curl --location --request GET 'https://docs.qq.com/openapi/drive/v2/search?searchType=title&offset=0&size=10&searchKey=search&floderID=FOLDER_ID&byOwnerShip=1' \
--header 'Access-Token: ACCESS_TOKEN' \
--header 'Client-Id: CLIENT_ID' \
--header 'Open-Id: OPEN_ID'
1
2
3
4
2
3
4
1
2
3
4
2
3
4
# 响应包体
HTTP/1.1 200 OK
Date: Thu, 28 Jul 2022 15:34:46 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 3
Connection: keep-alive
{'ret': 0, 'msg': 'Succeed', 'data': {'next': 5, 'total': 2, 'hasMore': False, 'list': [{'title': 'search testing1', 'ID': '300000000$AAAAAAAAAAAA', 'url': 'https://docs.qq.com/doc/DAAAAAAAAAAAAAAAA', 'status': 'normal', 'ownerName': '张三', 'type': 'doc', 'fileSource': 'enterprise', 'highlight': '<em>s</em><em>e</em>a<em>r</em><em>c</em><em>h</em> testing', 'lastModifyTime': 1611806809440, 'lastModifyName': '张三', 'createTime': 1611806796471}, {'title': 'search testing2', 'ID': '300000000$BBBBBBBBBBBB', 'url': 'https://docs.qq.com/doc/DBBBBBBBBBBBBBBBB', 'status': 'normal', 'ownerName': '张三', 'type': 'doc', 'fileSource': 'personal', 'highlight': '<em>s</em><em>e</em>a<em>r</em><em>c</em><em>h</em> testing2', 'lastModifyTime': 1611845612271, 'lastModifyName': '张三', 'createTime': 1611844449352}]}}
1
2
3
4
5
6
7
2
3
4
5
6
7
1
2
3
4
5
6
7
2
3
4
5
6
7
# 错误码
| 错误码 | 错误说明 | 排查建议 |
|---|---|---|
| 10313 | Access-Token 为空 | HTTP Header 里 Access-Token 校验失败,请参考示例中的携带方式,检查相应字段。详情请见Headers。 |
| 10303 | Open-Id 错误 | HTTP Header 里 Open-Id 与预期不符,可能的原因有:- Open-Id 为空。请参考示例中的携带方式,检查相应字段。详情请见Headers。- Open-Id 与 Access-Token 不匹配,请检查 Header 内容和获取 Token 接口回包是否一致。 |
| 10302 | Client-Id 错误 | HTTP Header 里 Client-Id 与预期不符,可能的原因有:- Client-Id 为空。请参考示例中的携带方式,检查相应字段。详情请见Headers。- Client-Id 与 Access-Token 不匹配,请检查 Header 内容和调用获取 Token 接口接口时参数中的 Client-Id 是否一致。 |
| 37019 | Token 校验失败,错误或过期 | 检查位于 HTTP Header 中的 Access-Token 是否正确,获取 Token 的方式请查阅授权流程以及获取 Token 接口 |