Google API import natural language dataset import not working - google-api

Node command, as suggested by the tutorial, is not working and throws 403.
node automlNaturalLanguageDataset.js import-data
I had some issues passing parameters, so hard-coded, project id, compute region, etc. I was able to run create-dataset, list-datasets successfully, just not import-data. Error I get:
Error: 3 INVALID_ARGUMENT: Error encountered when accessing gs://<my project id>/csv/happiness.csv, error code 403, error details custom-vision#appspot.gserviceaccount.com does not have storage.objects.get access to <my project id>/csv/happiness.csv.
I invoked gcloud projects add-iam-policy-binding as in the document with my own service account name but it looks like it is pulling the example service account name used in the tutorial. I checked js code as well my environment, could not find this account name. Any idea what I am missing?
Tutorial I am following is at https://cloud.google.com/natural-language/automl/docs/tutorial.

Aside from your own service account, you have to allow also AutoML Natural Language service accounts to access your Google Cloud project resources. As instructed in item#9 of the tutorial, you can run the following command:
gcloud projects add-iam-policy-binding project-id --member="serviceAccount:custom-vision#appspot.gserviceaccount.com" --role="roles/storage.admin"

Related

gcloud auth application-default print-access-token gives file not found error

I'm currently trying to set up a service account to run a google cloud vision OCR sample but for some reason the print-access-token command keeps failing to find my key. I've completed the following steps 3 times already just to make sure I've followed the exact steps in the docs:
Init gcloud SDK with project i had already created
Enabled billing
Create a JSON file containing key for service account with project owner as its role
set GOOGLE_APPLICATION_CREDENTIALS="C:\path\to\file\file.json"
run gcloud auth application-default print-access-token
I've also tried using gcloud auth application-default login just to be safe as it seemed to work for others who had different issues with print access token, but still no luck.
This is the error i receive from using print-access-token
ERROR: (gcloud.auth.application-default.print-access-token) File "C:\path\file.json" was not found.
I've tried running the the code samples regardless of this and receive the following exception:
Exception in thread "AWT-EventQueue-0" com.google.api.gax.rpc.PermissionDeniedException: io.grpc.StatusRuntimeException: PERMISSION_DENIED: Your application has authenticated using end user credentials from the Google Cloud SDK or Google Cloud Shell which are not supported by the vision.googleapis.com.
I haven't been able to find a solution anywhere. I understand it might be a stupid problem with an easy fix, but I'm really quite confused at the moment because I'm sure I've done everything fine so far. Thanks for any help in advance.
I received the message about the file was not found, but I fixed this by using the command set GOOGLE_APPLICATION_CREDENTIALS without double quotation marks for example
I recommend use paths without spaces or special characters, for example C:\creds\cred1.json
set GOOGLE_APPLICATION_CREDENTIALS=C:\path\to\file\file.json
this environment variable only applies for the current CMD window is not system wide environment variable
The command gcloud auth application-default login creates a system wide credential based on an user account that allows test some APIs, but for others like vision it is necessary to use service account credentials
To fix this issue you need to define the environment variable GOOGLE_APPLICATION_CREDENTIALS as user session or system wide environment variable
After this step, your code going to recognize the credentials stored on the environment variableGOOGLE_APPLICATION_CREDENTIALS in this case C:\path\to\file\file.json

How to generate gce credentials

I'm trying to use a 3rd party app that requires gce_client_id and gce_client_secret keys. In order to generate them, I browsed to the Credentials icon and tried to create an OAuth 2.0 Client ID. However, the system offers me 7 different types of apps but none of them fits the app profile. The app is supposed to be run from a gce VM and spin up other gce VMs so it really has nothing to do with web apps or similar. Am I doing this right or is there any other way to generate the gce id and server keys? Thanks.
P.S. I tried using the keys generated using the option: "Desktop app" but it's producing the following error:
ERROR Error creating instance <HttpError 403 when requesting https://compute.googleapis.com/compute/v1/projects/watchful-origin-244417/zones/us-central1-a/instances?alt=json returned "Request had insufficient authentication scopes.">
2020-08-10 18:08:11 deployator0002 elasticluster[3768] ERROR Could not start node compute002: Error creating instance <HttpError 403 when requesting https://compute.googleapis.com/compute/v1/projects/watchful-origin-244417/zones/us-central1-a/instances?alt=json returned "Request had insufficient authentication scopes."> -- <class 'elasticluster.exceptions.InstanceError'>
Firstly, this post has nothing to do with elasticsearch as that app is totally unrelated to elasticluster which is the app of interest (probably no need to change the original tags). The fact is that Google changed the options for OAuth 2.0 and eliminated the 'Other' option from its list of app types. That was the origin of the issue and the developer is already aware of it. Thanks.

You do not have sufficient permissions to view this page HomeGraph API

I have had access to this page for a while now. Yesterday for test I had to disable the HomeGraph API and now it is no longer available and does not even show up while searching in the api library
And when I try to access this link HomeGraph API Details I get "You do not have sufficient permissions to view this page. " error
Image to the error
Any one encountered this before?
I have tried logging out of all my devices
On top of this I starting getting the below while executing gactions -verbose test
Reading credentials from: creds.data
ERROR: Failed to test the app for the Assistant
ERROR: Internal error encountered.
2018/01/06 21:31:52 Server did not return HTTP 200
gaction update works just fine.
I just followed Creating a Smart Home App docs and went straight to Request Sync. Followed the instructions and created a new project. I made sure I was "Owner" of the project, and had no problem enabling the Home Graph API:
And here's Home Graph API being enabled:

How to fix the "Create role error" on Cloud9 when running "ask deploy" (Alexa Skill Kit)?

I want to use an Amazon Could9 Workspace to develop an Alexa Skill using ASK.
I did follow this guide https://developer.amazon.com/docs/smapi/set-up-credentials-for-an-amazon-web-services-account.html to create an IAM user.
The user was added to aws using "awsconfigure".
Now, while trying to deploy my skill:
ask deploy
I do receive the following error:
Skill Id: amzn1.ask.skill.xxx
Skill deployment finished.
Model deployment finished.
Create role error.
InvalidClientTokenId: The security token included in the request is invalid
In AWS IAM, under user, you should see what permission you have given to a particular user. For Cloud-9, I have AWSCloud9Administrator added and seems working fine for me.
https://console.aws.amazon.com/iam/home?region=us-east-1#/users/
//

Google app engine remote python console credentials/login?

Hi I am trying to start remote GAE shell with
python $GAE_SDK_ROOT/remote_api_shell.py -s your_app_id.appspot.com
"You don't need any additional authentication" says the GAE RemoteAPI page,
yet my command fails miserably with HTTP Error 401: Unauthorized Too many auth attempts.
I think I was able to do start it (with various degree of success for different apps) in some remote past, either with gmail credentials or some auth key from google cloud.
Please share your hints, or, ideally, drop a link to easy to follow step by step guide.
Also I cannot access Datastore Admin for that project
in online console
, if I click It invites to sing in, which fails. Recently, I got owner role, yet project was created by a person with a different email domain.

Resources