在Postman调用Google Chat API遇403权限错误,求解决方法
解决Google Chat API 403 "外部HTTP调用者无法访问" 错误
可以解决这个错误,核心原因是你当前使用的普通用户OAuth2身份不符合Google Chat API部分接口的调用要求——这类接口要求调用方必须以**Google Chat应用(Bot)**的身份发起请求,而非普通用户身份,哪怕权限范围正确也会被拦截。
具体解决步骤如下:
切换到Chat应用身份认证
- 在Google Cloud控制台创建并配置Google Chat应用,确保已启用Chat API。
- 为该Chat应用生成服务账号密钥(JSON格式),下载到本地。
- 在Postman中配置JWT Bearer类型的OAuth2认证:
- 打开请求的「Authorization」面板,选择「OAuth 2.0」,类型切换为「JWT Bearer」。
- 填入服务账号的邮箱(从JSON密钥的
client_email字段获取)、私钥(从JSON密钥的private_key字段完整复制,包括首尾的-----BEGIN PRIVATE KEY-----和-----END PRIVATE KEY-----)。 - 设置受众(Audience)为
https://oauth2.googleapis.com/token,权限范围保持https://www.googleapis.com/auth/chat.messages。 - 点击「Get New Access Token」,获取成功后会自动将Token附加到请求头。
验证请求配置
- 确认请求URL正确,例如发送消息到指定空间的接口为
https://chat.googleapis.com/v1/spaces/{spaceId}/messages(替换{spaceId}为目标空间ID)。 - 请求体需符合Chat API格式要求,示例:
{ "text": "测试消息内容" }
- 确认请求URL正确,例如发送消息到指定空间的接口为
检查应用权限
- 确保你的Chat应用已被添加到目标Google Chat空间(可在空间设置中添加应用)。
- 在Google Cloud控制台的IAM页面,确认服务账号已被授予
Chat Bot相关角色,确保拥有操作权限。
内容的提问来源于stack exchange,提问作者AXMIM
相关产品推荐
相关产品推荐

