Google Play Developer API - “当前用户没有足够的权限执行请求的操作。”

时间:2017-04-21 07:49:06

标签: google-api google-api-client

我启用了Google开发者控制台流程,并启用了Google Play Developer API,该项目已链接到Google Play项目。 在Google Dev控制台项目中,创建了OAuth客户端ID(Web应用程序)(我是项目的所有者)。使用“client_id”和“client_secret”进行身份验证。 试图在Python中使用google-api-client,Google Developer API Playground发送请求列出我们应用的评论,但收到错误:“当前用户没有足够的权限来执行请求的操作。” 详情如下: 请求:

GET /androidpublisher/v2/applications/<package_name>/reviews

响应:

"error": {
    "code": 401, 
    "message": "The current user has insufficient permissions to perform the requested operation.", 
    "errors": [
      {
        "domain": "androidpublisher", 
        "message": "The current user has insufficient permissions to perform the requested operation.", 
        "reason": "permissionDenied"
      }
    ]
  }
}

我错过了什么吗?

9 个答案:

答案 0 :(得分:65)

关于使用Google Play Android Developer API进行收据验证非常重要。

如果您在之前添加了应用内商品,则需要授予权限或链接到您的服务帐户,您需要打开“应用内商品”并执行一些更新。例如,您可以编辑产品说明并保存。您应该立即获得许可。

?Google

答案 1 :(得分:9)

如果您遵循所有@Bikram列出的内容,但仍然遇到相同的错误。为此,临时创建“被管理产品”,然后将其删除。这样,确保您不必等待24小时。

对我有用。

答案 2 :(得分:3)

在Google Play控制台中添加新用户后,Google最多需要24小时才能传播所有api的所有访问权限。

当我尝试使用oauth2 flow访问Inapp purchases status api时遇到了同样的问题。它没有官方记录,但是这个github comment帮助我弄清楚了这一点。

答案 3 :(得分:1)

我使用了服务密钥并在 Google API凭据云平台中创建了它,在添加创建的服务密钥具有所有访问权限的 Google Developer Console

我了解您已经在 Google Developer Console 中创建了凭据,但也许我的经验会帮助其他人

答案 4 :(得分:1)

我遇到了类似的问题,问题出在我们在Google Developer项目中所做的设置中。

请参阅create-play-service-credentials进行设置。使用创建应用内商品时使用的主要帐户。

确保删除上一个。

链接到Google Developer Project 您的Play开发者帐户需要链接到Google Developer Project。

1a。打开设置>开发者帐户菜单,然后选择API访问权限

API-access

1b。选择链接将您的Play帐户连接到Google Developer Project

choose-project-link

1c。同意条款和条件

agree-terms-conditions

2。创建服务帐户 接下来,我们需要创建一个服务帐户。这是通过Google API控制台完成的。

2a。选择创建服务帐户

create-service-account

2b。创建服务帐户密钥凭据

service-account

2c。输入服务帐户的详细信息

enter-service-account-details

2d。下载您的JSON凭证: json-credentials

3。授予访问权限

3a。在Play控制台中,选择新创建的服务帐户上的“授予访问权限”

grant-access

3b。授予以下权限:

apply-permissions

授予访问权限后,Google会花费24-48个小时来传播所有API的所有访问权限,直到那时您将继续遇到相同的错误。

答案 5 :(得分:1)

对于面临这个确切问题的人来说,简单的答案是检查在 Google Developer Console 中链接的服务帐户的权限。

1.打开设置 > 开发者帐户菜单并选择 API 访问 2.选择服务帐户并检查权限-记住此操作必须具有财务权限

enter image description here

授予权限后,请更新您的订阅/套餐并进行新购买,然后再试一次。

快乐编码!

答案 6 :(得分:0)

我在互联网上到处都是,发现您可能需要等待至少24小时。

确保您正确完成了所有操作,如下所示。

  1. 转到https://console.cloud.google.com
  2. 创建项目(或选择现有项目)
  3. 以角色Pub / Sub Admin创建服务帐户
  4. 转到https://console.cloud.google.com/apis/library并搜索“ Google Play Android Developer API”
  5. 启用该API
  6. 转到https://play.google.com/apps/publish
  7. 转到“设置”>“开发者帐户”>“ API访问权限”
  8. 链接您在步骤2中创建的项目
  9. 将显示您在第3步中创建的服务帐户
  10. 在游戏控制台中通过应用程序的财务许可授予对它的访问权限
  11. 非常重要:至少要等24小时才能使更改生效。

答案 7 :(得分:0)

对我来说,我有这个问题的原因是因为我没有检查对 我创建的Release to production, exclude devices and use app signing by Google Play在Google Playstore控制台中service account用于管理应用程序的创建和管理。

因此,请在Google Play商店控制台中检查Users and Permission,并检查是否检查了适当的权限。

答案 8 :(得分:0)

最多等待 24 小时或创建/编辑任何应用内产品以强制更新权限。等待 1-2 分钟。