Search code examples
automlgoogle-cloud-automl

Cloud AutoML API has not been used in project 618104708054 before or it is disabled


I am trying to build a .NET small app to predict images using my model that was trianed on AutoML.

But I am getting this error:

Cloud AutoML API has not been used in project 618104708054 before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/automl.googleapis.com/overview?project=618104708054 then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry

First - this is not the project I am using. Second - If I go to the link with my real project id - it says to me that the api is working well.

My code look like these:

public static string SendPOST(string url, string json)
        {
            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);
            httpWebRequest.ContentType = "application/json";
            httpWebRequest.Method = "POST";
            httpWebRequest.Headers.Add("Authorization", "Bearer GOOGLE_CLOUD_TOKEN");
            using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
            {
                streamWriter.Write(json);
                streamWriter.Flush();
                streamWriter.Close();
            }

            var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
            using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
            {
                var result = streamReader.ReadToEnd();
                //var res = new JavaScriptSerializer().Deserialize<Response>(result);
                //return res;
                return result;
            }           
        }

I will appriciate your help, Thanks.


Solution

  • I finally succeded to make it, the only issue is that I needed to create a service account using the web console:

    https://console.cloud.google.com/projectselector/iam-admin/serviceaccounts?supportedpurview=project&project=&folder=&organizationId=

    And then to download the json key and push it via the gcloud command from my PC -

    gcloud auth activate-service-account --key-file="[/PATH/TO/KEY/FILE.json]
    

    I found the solution in this post: "(403) Forbidden" when trying to send an image to my custom AutoML model via the REST API