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

App Script调用Google Content API返回403错误项目ID不匹配问询

问题核心原因

ScriptApp.getOAuthToken()默认返回的是Apps Script自动创建的隐藏默认GCP项目的授权令牌,错误提示中的未知项目ID就是这个隐藏项目的ID,该项目默认没有启用Content API for Shopping,且你无法直接访问管理,才会出现项目不存在、ID不匹配的报错。你之前配置的客户端ID、redirect URI是针对三方OAuth授权流程的,不影响服务账号调用的路由逻辑。

解决方案

  • 切换Apps Script绑定的GCP项目
    打开当前Apps Script项目的设置页,找到「Google Cloud Platform (GCP) 项目」模块,点击更改项目,输入你存放服务账号、已经启用Content API for Shopping的GCP项目编号,完成绑定。
  • 替换令牌获取逻辑
    不需要继续使用ScriptApp.getOAuthToken()获取令牌,直接通过你已经引入的OAuth2库生成服务账号专属令牌,参考代码:
    function getContentAPIService() {
      return OAuth2.createService('ShoppingContentAPI')
        .setTokenUrl('https://oauth2.googleapis.com/token')
        .setIssuer('你的服务账号邮箱地址')
        .setPrivateKey('你的服务账号私钥内容')
        .setScope('https://www.googleapis.com/auth/content')
    }
    
    // 调用API时使用该方法获取令牌
    const accessToken = getContentAPIService().getAccessToken()
    
  • 补充权限配置
    确认你的服务账号已被添加到对应的Google Merchant Center账号中,且分配了足够的操作权限,避免后续调用接口时出现新的权限报错。
  • 配置生效后等待3-5分钟再发起测试,避免GCP配置延迟导致的临时报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 04:39:00