Skip to content

能力(scope)说明

应用注册时勾选需要的能力,管理员随时可在应用设置里调整;被其他组织安装时, 能力由安装方管理员单独授权(默认零授权,只有免登身份)。

scope名称说明对应接口
(无需勾选,恒定授予)免登身份拿到当前用户的 user_id/昵称/头像/组织角色POST /auth/user
contacts组织通讯录读取组织成员列表与团队架构(昵称/头像/角色/团队树)GET /org/membersGET /org/teamsGET /org/teams/{id}/members
imIM 消息通知给组织成员发工作通知(系统账号代发,带应用名前缀)POST /im/send
aiAI 能力查可用模型清单 + 调用对话模型,消耗应用所属组织的积分GET /ai/modelsPOST /ai/completions
kb知识库检索在管理员绑定的知识库范围内检索POST /kb/search
db数据库查询在管理员绑定的外部数据库上只读查询(单条 SELECT、行数上限、语句超时)GET /db/databasesGET /db/{id}/tablesPOST /db/query
ai_toolsAI 工具给组织成员的 AI 助手注册自定义工具(模型调用经签名回调)应用设置「AI 工具」,协议见给 AI 注册工具
local本地能力页面在用户逐次确认下从其电脑抓取网页/无头浏览器提取(仅桌面端)JSAPI localFetch / browserExtract

JSAPI 的选人组件(selectUsers)不需要任何能力:成员由用户亲手挑选, 页面只会拿到被选中的那几位——用户挑选即用户授权。

授权范围的两个层级

  1. 应用自身申请的能力app.scopes)——你在注册/编辑应用时勾选,决定 这个应用最多能用到哪些能力。
  2. 组织实际授予的能力——按能力操作的对象分两种情况:
能力实际生效的判定原因
contacts / im操作的是某个组织的数据/成员:目标为应用所属组织时 = 应用自身申请;目标为安装方组织时 = 安装方授予 ∩ 应用自身申请(默认空)读的是对方的通讯录、打扰的是对方的成员,必须对方管理员同意
ai_tools / local安装的市场应用 = 安装方授予 ∩ 应用自身申请;自建应用 = 应用自身申请工具出现在对方成员的 AI 助手里、本地能力跑在对方成员的设备上——影响的是安装方的人,必须对方管理员同意
ai / kb / db只看应用自身申请,与安装方是否授予无关消耗/访问的都是应用所属组织的资源——AI 计费走应用组织的钱包,知识库/数据库白名单由应用组织的管理员绑定

也就是说:即使应用申请了 contacts 能力,安装方组织如果没有勾选,你调 GET /org/members?org_id=<安装方org_id> 仍会收到 403(不传 org_id 时默认 读应用所属组织,不受影响)。

最小权限建议

只勾选你确实用得到的能力——尤其是 im(会给成员发通知,打扰用户)和 ai(消耗组织积分),管理员在审批安装/授权时会看到你申请了哪些能力。

机灵兔开放平台 · 组织应用开发者文档