You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用calendar.app.created创建Google日历时报Permission Denied

calendar.app.created scope权限报错排查

https://www.googleapis.com/auth/calendar.app.created 目前可以正常使用,无公开的已知功能性故障,调用接口返回PERMISSION_DENIED基本是配置或调用逻辑不符合该scope的权限边界要求,可按以下方向逐一排查:

  • 优先核对调用逻辑是否符合权限规则
    这个scope的权限限制非常严格:仅允许操作当前授权应用自己创建的辅助日历,完全无权访问用户的主日历、用户手动创建的其他辅助日历、其他第三方应用创建的辅助日历。不少开发者踩过这个坑:以为拿到scope就能操作用户侧所有日历资源,实际上只要目标日历不是当前应用在该scope授权下创建的,任何读写、修改操作都会直接返回权限错误。如果创建日历的请求里误携带了已存在的非本应用创建的日历ID,也会触发同类报错。
  • 检查Google Cloud控制台的项目配置
    首先确认对应项目已经正式启用Google Calendar API服务,API未启用的状态下,哪怕scope配置完全正确也会返回权限类报错。如果应用还处于测试发布阶段,必须把所有测试用的谷歌账号加到OAuth同意屏的测试用户列表里,不在列表内的账号哪怕走完授权流程,调用接口时也会被拦截。
  • 校验已获取的access_token实际权限
    不要默认授权请求里传的scope一定会被完整授予,拿到access_token后可以通过谷歌官方的token信息校验接口,确认token实际携带的权限列表里确实包含calendar.app.created,排除授权流程中scope漏传、授权后被用户手动收回权限的情况。
  • 核对接口请求的参数和端点
    确认创建日历的请求发送到了正确的API端点,请求体不要携带超出该scope权限范围的字段,比如尝试修改主日历配置、设置全局日历公开范围这类操作,都会触发权限拒绝。

补充说明:这个scope确实属于非敏感权限,不需要走受限scope的安全评估流程,但上述权限隔离是官方的强制设计,没有绕过方式。如果业务场景需要操作用户已经存在的日历资源,只能按平台要求申请对应等级的高权限scope。


内容的提问来源于stack exchange,提问作者Pennvad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.03 07:57:27