Skip to content

认证与凭证

企业微信 API 只有一种鉴权方式:请求头 Authorization: Bearer <你的 App Token>,App Token 即应用凭证。

请求头

http
POST {BASE_URL}/wx-api/api/message/sendText
Authorization: Bearer <你的 App Token>
Content-Type: application/json
Header必选说明
AuthorizationBearer <你的 App Token>,App Token 形如 eyk_xxxx,整串填进 <你的 App Token>
Content-Type固定 application/json

App Token 从哪来

企业微信控制台自助开通并获取,可以先试用。

作用范围:App Token 管应用,appid 指定实例

App Token ──┬── appid A(华东销售)
            ├── appid B(客服中心)
            └── appid C(售后服务号)
层级由什么标识作用
应用层Authorization决定你能不能调,以及能操作哪一批实例
实例层body appid决定这次调用作用在哪个已登录的企微账号上

操作已有实例的业务接口两个都要带:Header 里带 App Token,body 里带 appid。只有首次获取二维码不传 appid,系统自动创建实例;之后取码也要带原 appid。用了不属于当前应用的 appid 会收到网关错误 appid_not_bound

多应用与重置 App Token

一个账号可以创建多个应用,每个应用使用独立的 App Token。测试和生产建议各建一个应用,分开管理实例与凭证。

  • 重置密钥后,旧 App Token 立即失效,继续使用会返回 HTTP 401、codeinvalid_token;服务端调用要换成新的 App Token。
  • 停用应用后,该应用的 App Token 不能再用。
  • App Token 泄露后立即重置,并排查泄露位置;错误说明见鉴权与网关错误

保管要求

  • 只放服务端。 不要下发到浏览器、App 或任何客户端,拿到 App Token 等于拿到这批实例的全部操作权。
  • 不要写进前端构建产物,包括环境变量注入的前端配置。
  • 不要提交进代码仓库,用密钥管理服务或部署环境变量。
  • 日志脱敏时把 Authorization 加进屏蔽名单。

与微信个人号 API 的差异

微信个人号 API企业微信 API
鉴权头同为 Authorization: Bearer 请求头;两边凭证不通用同左
实例标识wIdappid
路径/…/wx-api/api/<模块>/<动作>

两条产品线的凭证不通用