Skip to content

API 凭证 ​

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

请求头 ​

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

App Token 从哪来 ​

打开应用凭证页。新默认应用显示待领取时,领取完整 App Token 并立即保存;完整凭证只展示一次。手动创建的新应用也只在创建成功时展示一次。

已有应用的列表或详情若显示掩码,不能从掩码恢复或复制完整凭证。使用自己之前保存的 App Token;确实丢失时,在应用安全设置中明确重置,旧凭证立即失效。

接入地址在控制台「文档中心 → 快速开始」的「API 接入信息」中查看。复制完整 API Base URL 后,保留末尾 /wx-api,直接填入本文的 {BASE_URL};业务接口再接 /api/…,回调配置再接 /webhook/…。

首次接入按快速开始领取凭证、扫码登录并测试收发。需要单独检查地址与凭证时,使用下面的只读请求。

验证地址与凭证(可选)

按上面的说明填入 {BASE_URL} 和 <你的 App Token>,调用查询当前回调配置。这个请求不需要 appid,不会创建实例或修改配置。

bash
curl -X POST "{BASE_URL}/webhook/get" \
  -H "Authorization: Bearer <你的 App Token>" \
  -H "Content-Type: application/json" \
  -d '{}'

响应 code 为数字 0 表示本次验证成功;调用失败时,查看鉴权与网关错误。

作用范围: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、code 为 invalid_token;服务端调用要换成新的 App Token。
  • 停用应用后,该应用的 App Token 不能再用。
  • App Token 泄露后立即重置,并排查泄露位置;错误说明见鉴权与网关错误。

保管要求 ​

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

与微信个人号 API 的差异 ​

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

两条产品线的凭证不通用。