调用Gmail API遇400错误:Mail service not enabled,求谷歌管理员配置
解决Gmail API调用返回"Mail service not enabled" 400错误的组织设置方案
问题场景
调用gmail_v1.Gmail.users.messages.list({userId: 'me'})等Gmail API接口时,返回400错误,完整响应如下:
{ "error": { "code": 400, "message": "Mail service not enabled", "errors": [ { "message": "Mail service not enabled", "domain": "global", "reason": "failedPrecondition" } ], "status": "FAILED_PRECONDITION" } }
涉事用户可正常访问Gmail邮箱,但归属其他谷歌组织,我方组织内外其他用户调用接口均无此问题。
谷歌组织管理员需配置的设置
客户所在谷歌组织的管理员需完成以下操作:
启用Gmail API服务
登录谷歌管理控制台,进入应用 > Google Workspace > Gmail,确认Gmail服务已为该用户/对应组织单元启用。
额外检查「高级」标签下的API访问设置,确保「允许Gmail API访问」选项处于开启状态。检查API权限控制
进入安全 > API控制 > 未验证的应用访问,确认已为该用户或组织单元设置允许访问你的OAuth 2.0 Client ID对应的第三方应用。
若你的应用已通过谷歌验证,可在已验证的应用列表中确认其权限范围包含所需的Gmail相关权限(如https://www.googleapis.com/auth/gmail.readonly等)。验证用户邮箱的服务状态
在管理控制台的用户页面找到该用户,进入「用户详情 > 服务状态」,确认Gmail服务未被禁用,且无针对API服务的访问限制生效。检查组织单元的API限制
若用户属于特定组织单元,进入组织单元设置页面,确认该单元未设置Gmail API的访问限制,确保API服务在该层级未被关闭。
内容的提问来源于stack exchange,提问作者Lukas Narus
相关产品推荐
相关产品推荐

