Testing Google Apps Script using Google Cloud APIs - google-apps-script

I am working on implementing a Google App Script project which makes use of various cloud APIs like Big Query, Cloud SQL, Google Ads etc. Implementation works pretty well through a project where GCP project ID is configured.
But I would like to have a development only version which I can use for my validation.
If I use a test deployment as mentioned on https://developers.google.com/apps-script/add-ons/how-tos/testing-editor-addons, it works. But this works only via the script project where GCP project is configured. For other, it gives "Google developers console API activation" error.
So question here is - is it mandatory to provide the GCP project ID even for test deployments? Is there any configuration that I can use for getting around this problem?
Please note - I can always create a test deployment from the production version of App Script project (where GCP project id is added). But I would like to maintain 2 versions possibly without having to add GCP project in development version.
Kindly advice.

It depends on how you or your team have designed the solution. Also it's depends on if the solution is requiring users to authorize all the scopes, if it's using a service account, among other factors.
One design might be based on the use of a single Google Cloud Platform standard project to handle all the OAuth authorizations.
Another design might be based on using two or more Google Cloud Platform projects. I.E. you could use a default project for Google Apps Script and a standard project another for the Google APIs like BigQuery. This setup might require the use of a service account.
Related
Create a development environment and use a deployment tool for Google apps script in spreadsheets
Best development setup for developing gmail add-ons locally?

Related

Google work space add on with Google apps script, How can I deploy it all staffs of mine

I'm a corporate systems administrator.
our company uses google-workspace, and I need to extend gmail by using google-apps-script.
Since I created a google-workspace-add-on with google-apps-script.
Coding and testing was not so hard by following this page.
https://developers.google.com/gsuite/add-ons/how-tos/testing-gsuite-addons
However, deploying is pretty confusing for me.
this add-on is only used for our company, and it includes api-key for our private service.
Then I want to avoid the add on to publicly published.
The following instruction explains to use GCP project, and then install it from administrator console.
https://developers.google.com/gsuite/add-ons/how-tos/publish-add-on-overview
I want to know
1, Is there any way to deploy my google-workspace-add-on more primitively ?
2, If I followed this instruction, is it for free or costly?(I have no knowledge of GCP billing system)

GCP project created by an app authorized by me, but I do not have access to it?

I'm developing some automation/integration between a CRM software and my google account. I am attempting to use the Google Apps Script API so I can remotely execute functions in Google Apps Script through the integration I'm building from within the CRM software.
The only problem is, when attempting to run a function which calls a GAS function through the API, I get the following error:
"Apps Script API has not been used in project project number before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/script.googleapis.com/overview?project=103424032563 then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry."
This would normally be no problem, as I would simply access the GCP portal through the link and enable the GAS API, but when I try to access my project, I don't have access at all, and get the "failed to load data" error.
Further complicating my issue, GCP support will not help because they suspect I am a hacker trying to obtain access to a project that, for all they know, isn't mine.
And because I cannot access this project to authorize the API, I also cannot associate my google script with the same project, as this is a requirement for the Google Apps Script API to function.
I suspect it's the CRM software piece in which I'm developing this integration that is causing this error, (somehow the GCP project is being created by a different user,) but they haven't been all that helpful in determining what's going on.
Have any of you had a similar situation? And, if so, how did you approach solving it?
Further complicating my issue, GCP support will not help because they
suspect I am a hacker trying to obtain access to a project that, for
all they know, isn't mine.
Google Support does not refuse to help. They don't accuse you of being a hacker. Google Support can look at the project and see if you have credentials in the project and if you do they can explain how to authorize yourself. However, Google Support requires a support agreement, which is not free. If you do not have one, then you are not entitled to technical support only billing support. Look up your billing account ID and send a request for billing support. Your billing account will also show you which projects are linked to your billing account.
The issue is that you are trying to access the wrong Project ID. Figure out what is the correct Project ID. If you have the Cloud SDK installed execute this command gcloud projects list and this will tell you which projects your credentials have access to.

Can't switch google cloud project on GAS Editor

I am not able to switch google cloud platform project in GAS editor.
What I am doing is…
Open the google sheet GAS editor
Open Resource --> Cloud Platform Project
Enter project number that I want to connect
With the process above, I was able to switch a cloud platform project but now it returns an error
‘Project does not exist, or you need edit access to it.’
I am using the same cloud project and same account(editor) that I used before and properly worked. I tried do the same with a owner account, but it didn’t work, either.
Also, this cloud project is not a default project nor a hidden project. (If it does, I guess it should not be able to access through GAS editor from the beginning)
I have checked documentation below, but it tells me only case when switching to a hidden project.
https://developers.google.com/apps-script/guides/cloud-platform-projects
Does anyone have a solution or suggestion??
Thank you for the help in advance.
Problem Solved.
I figured out that OAuth IDs which are generated when make connection docs to the cloud project are not be deleted even though delete actual document files.
What I have done is...
Login Google Cloud Platform
Go to APIs&Services --> Credentials
On OAuth 2.0 client IDs, delete unnecessary contents from the list
Back to your docs and switch the cloud project.

Can't change Cloud project for Apps Script

We are no longer able to associate our Apps Script projects with our Cloud platform project. When going to Resources: Cloud platform project in the GAS editor, and entering the project ID, it says "Project doesn't exist or you need Edit access to it.". The project definitely exists and the same Google account is an owner of it. With the same workflow, we previously managed to associate many projects.
Is there maybe a limit on how many GAS projects can be associated with one Cloud project? We've associated about two dozen recently, and then it started to produce this error. Or what could be going on?
This is explained in details here:
https://developers.google.com/apps-script/guides/cloud-platform-projects
Specifically, quoting:
"There may be cases in which you want multiple Apps Script projects to share the same Google Cloud Platform project. Since these default Cloud Platform projects for Apps Scripts are hidden, they cannot be used as the destination projects for a switch. If you see a "Project does not exist or you need edit access to it" error when attempting to switch a script's project, that usually means you are attempting to move it to one of these default projects.
To get around this restriction, create a new, blank Cloud Platform project, and use the steps above to add each script to that."
I was able to solve this by switching from the Classic Editor to the New Editor, adding the Cloud Project, then reverting back to the Classic Editor (if needed).

How to deploy google drive api with console.developers.google.com

I am using projects created in https://console.developers.google.com/project, now I want to deploy my app in real environment. So was wandering if the credentials which I have in the project created in console.developers.google.com/project will be used or console.developers.google.com/project is a sandbox only. I remember I saw another site (something: api.google.com) which I believed is the real site that I can create project use the client id from it for deployment. Can someone please guide me in this.