# 更新数据库索引
接口应在服务器端调用,不可在前端(小程序、网页、APP等)直接调用,具体可参考接口调用指南
接口英文名:updateDatabaseIndex
通过本接口可以变更数据库索引.使用过程中如遇到问题,可在开放平台服务商专区发帖交流。
# 1. 调用方式
# HTTPS 调用
POST https://api.weixin.qq.com/tcb/updateindex?access_token=ACCESS_TOKEN
# 云调用
- 本接口不支持云调用
# 第三方调用
本接口支持第三方平台代商家调用。
该接口所属的权限集 id 为:49
服务商获得其中之一权限集授权后,可通过使用 authorizer_access_token 代商家进行调用,具体可查看 第三方调用 说明文档。
# 2. 请求参数
# 查询参数 Query String parameters
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| access_token | string | 是 | 接口调用凭证,可使用 authorizer_access_token |
# 请求体 Request Payload
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| env | string | 是 | 云环境ID |
| collection_name | string | 是 | 集合名称 |
| create_indexes | objarray | 是 | 新增索引 |
| drop_indexes | objarray | 是 | 删除索引 |
# Body.create_indexes(Array) Object Payload
新增索引
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | string | 是 | 索引名 |
| unique | boolean | 是 | 是否唯一 |
| keys | objarray | 是 | 索引字段 |
# Body.drop_indexes(Array) Object Payload
删除索引
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | string | 是 | 索引名 |
| unique | boolean | 是 | 是否唯一 |
| keys | objarray | 是 | 索引字段 |
# Body.create_indexes(Array).keysObject Payload
Object Payload索引字段
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | string | 是 | 字段名 |
| direction | string | 是 | 字段排序 |
# Body.drop_indexes(Array).keysObject Payload
Object Payload索引字段
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | string | 是 | 字段名 |
| direction | string | 是 | 字段排序 |
# 3. 返回参数
# 返回体 Response Payload
| 参数名 | 类型 | 说明 |
|---|---|---|
| errcode | number | 错误码 |
| errmsg | string | 错误信息 |
# 4. 注意事项
本接口无特殊注意事项
# 5. 代码示例
请求示例
{
"env": "test2-4a89da",
"collection_name": "counters",
"create_indexes": [
{
"name": "add_index",
"unique": true,
"keys": [
{
"name": "test",
"direction": "2dsphere"
}
]
}
],
"drop_indexes": [
{
"name": "del_index"
}
]
}
返回示例
{
"errcode": 0,
"errmsg": "ok",
}
# 6. 错误码
以下是本接口的错误码列表,其他错误码可参考 通用错误码;调用接口遇到报错,可使用官方提供的 API 诊断工具 辅助定位和分析问题。
| 错误码 | 错误描述 | 解决方案 |
|---|---|---|
| -1000 | system error | 系统错误 |
| -1 | system error | 系统繁忙,此时请开发者稍候再试 |
| 0 | ok | ok |
| 40001 | invalid credential access_token isinvalid or not latest | 获取 access_token 时 AppSecret 错误,或者 access_token 无效。请开发者认真比对 AppSecret 的正确性,或查看是否正在为恰当的公众号调用接口 |
| 40014 | invalid access_token | 不合法的 access_token ,请开发者认真比对 access_token 的有效性(如是否过期),或查看是否正在为恰当的公众号调用接口 |
| 40097 | invalid args | 参数错误 |
| 40101 | missing parameter | 缺少必填参数 |
| 41001 | access_token missing | 缺少 access_token 参数 |
| 42001 | access_token expired | access_token 超时,请检查 access_token 的有效期,请参考基础支持 - 获取 access_token 中,对 access_token 的详细机制说明 |
| 43002 | require POST method | 需要 POST 请求 |
| 44002 | empty post data | POST 的数据包为空 |
| 47001 | data format error | 解析 JSON/XML 内容错误;post 数据中参数缺失;检查修正后重试。 |
| 85088 | no qbase privilege | 该APP未开通云开发 |
# 7. 适用范围
本接口支持「第三方平台」账号类型代调用,权限集请参考「调用方式」部分。其他账号类型如无特殊说明,均不可调用。