eas submit produces Google Api Error: Invalid request - The caller does not have permission

eas-cli v3.5.2

I have multiple expo projects each with their own expo orgs and firebase cloud projects. I have gone through all of the steps to manually build and then automatically build successfully.

The problem comes when submitting to google play (not apple). For two of my projects I’m getting Google Api Error: Invalid request - The caller does not have permission.

I have gone through the steps here: How to fix ‘[!] Google Api Error: Invalid request — The caller does not have permission’ when uploading Android App bundle to the Google Play Store using Fastlane on MacOS | by Ashley Gelwix | DevOps.dev

But my pages look somewhat different than the examples in the post.

I got this response back from Google when I submitted an issue:

Please note that only 1 project can be linked to a Play Console at a time and for the project to show up in the possible list, the Google Play Developer API must be enabled under the project.

Furthermore, the primary email should be the direct owner of the Google Cloud project. The owner role inherited from the [resource hierarchy](https://cloud.google.com/iam/docs/overview#resource-hierarchy) will not work. The primary email address won't be a direct owner of the Google Cloud project automatically unless you created the project using the primary email address.

Each project has its own google-app-service-account.json and google-services.json files. I don’t know what to change to allow those service accounts to submit to google play given they are different and only one google cloud project can be attached to the google play store.

Thanks for any help or clarification!


Hey Dave @dk253,

eas-cli/5.4.0 darwin-arm64 node-v16.15.0

I’ve just got the same issue, and I hope finding answers in reply here but no… :confused:

eas submit --platform android gives

[logs] [!] Google Api Error: Invalid request - The caller does not have permission

Google Play Console “API Access” panel seems to have been changed.

My teammate is the owner of the developer account, and he’s got this message today from the API access panel in GPlay Console

Sorry, it’s in french. Page “API access” has gone.

Thus for the moment help resources are useless:
https://github.com/expo/fyi/blob/main/creating-google-service-account.md can not help me.
Neither the steps you’ve mentioned from Sitting Duck

Did you find solutions on your side ?

No help, no clarification, but more question…

[edit] : Same result with the current last eas-cli version v5.5.0

Oh ! I forgot to precise that :

I’ve follow these guide : Getting Started  |  Google Play Developer API  |  Google for Developers

  1. I’ve created a Service Account credential from the Google Play Android Developer API of Google Cloud Platform with Service Account User permission
  2. I’ve generated a JSON key from this Service Account
  3. Use it with eas submit --platform android command


To complete the 3 steps of my previous comment, this has solved my issue.

In the Google Play Console > Users & Permissions

  • Click on Invite new users
  • Add the email address of the new Service Account
  • Give to him the Admin permissions (Release permissions seem insufficient)

Hope, it’ll help someone.