使用授权码获取授权信息

当用户在第三方平台授权页中完成授权流程后,第三方平台开发者可以在回调 URI 中通过 URL 参数获取授权码。使用以下接口可以换取公众号/小程序的授权信息。建议保存授权信息中的刷新令牌(authorizer_refresh_token)。使用过程中如遇到问题,可在开放平台服务商专区发帖交流。

注意: 公众号/小程序可以自定义选择部分权限授权给第三方平台,因此第三方平台开发者需要通过该接口来获取公众号/小程序具体授权了哪些权限,而不是简单地认为自己声明的权限就是公众号/小程序授权的权限。

请求地址

POST https://api.weixin.qq.com/cgi-bin/component/api_query_auth?component_access_token=COMPONENT_ACCESS_TOKEN

请求参数说明

参数 类型 必填 说明
component_access_token string 第三方平台component_access_token,不是authorizer_access_token
component_appid string 第三方平台 appid
authorization_code string 授权码, 会在授权成功时返回给第三方平台,详见第三方平台授权流程说明

POST 数据示例:

{
"component_appid":"appid_value" ,
"authorization_code": "auth_code_value"
}

结果参数说明

参数 类型 说明
authorization_info Object 授权信息

授权信息说明

参数 类型 说明
authorizer_appid string 授权方 appid
authorizer_access_token string 接口调用令牌(在授权的公众号/小程序具备 API 权限时,才有此返回值)
expires_in number authorizer_access_token 的有效期(在授权的公众号/小程序具备API权限时,才有此返回值),单位:秒
authorizer_refresh_token string 刷新令牌(在授权的公众号具备API权限时,才有此返回值),刷新令牌主要用于第三方平台获取和刷新已授权用户的 authorizer_access_token。一旦丢失,只能让用户重新授权,才能再次拿到新的刷新令牌。用户重新授权后,之前的刷新令牌会失效
func_info 授权给开发者的权限集列表

返回结果示例:

{
  "authorization_info": {
    "authorizer_appid": "wxf8b4f85f3a794e77",
    "authorizer_access_token": "QXjUqNqfYVH0yBE1iI_7vuN_9gQbpjfK7hYwJ3P7xOa88a89-Aga5x1NMYJyB8G2yKt1KCl0nPC3W9GJzw0Zzq_dBxc8pxIGUNi_bFes0qM",
    "expires_in": 7200,
    "authorizer_refresh_token": "dTo-YCXPL4llX-u1W1pPpnp8Hgm4wpJtlR6iV0doKdY",
    "func_info": [
      {
        "funcscope_category": {
          "id": 1
        }
      },
      {
        "funcscope_category": {
          "id": 2
        }
      },
      {
        "funcscope_category": {
          "id": 3
        }
      }
    ]
  }
}

返回码说明

错误码 英文描述 中文描述
0 ok 成功
其他错误码 请查看全局错误码