Retrieve location data from GMB API using Service Accounts in 2020 - google-api

I want to fetch my GMB data daily with a cronjob.
The GMB API documentation only explains how to get the Access Token with the standard Oauth setup. It doesn't work for applications like this, without any frontend, because the Consent Screen.
It's possible to skip the Consent Screen using Service Accounts, but not all the Google APIs support this method.
There are a lot of posts talking about the same problem.
Questions:
Do the GMB API supports Oauth via Service Accounts in 2020?
If the answer is yes, is there any official documentation? (I've spend a lot of time on research with no results).
If the answer is not, is it possible to generate Access Token with no expirations? Or a long time duration token at least...

Related

How to get the get API path and parameters of Google play developer API?

I have added a non-renewable subscription for one of my projects. We also started implementing the Google play developer API to get the subscription latest status from the Play Store. For that we have done the below steps as per this blog:
Linked the developer account to a new Google Cloud Project.
Enabled the Google Play Developer API for the Google Cloud Project.
Created a service account and created a key for the service account.
I have below clarifications related to this implementation:
I tried to Grant Access for the following permissions: But the corresponding checkmark is not clickable.
View financial data, orders, and cancellation survey responses
Manage orders and subscriptions
The 3rd step as per the blog is to Authorize an API key, but I didn't get a clear idea of that.
We are going to implement this API on the back end side as a corn job, do we need to generate a JWT token for accessing this API? Is this possible to call without a Token? I found 2 types of implementations from this blog, which one is easy and secure?
"Your application can complete these tasks either by using the Google APIs client library for your language or by directly interacting with the OAuth 2.0 system using HTTP."
From where we get the get API path and other details. I found a similar get API from AppStore like this. Is the play store providing a similar kind of get API?
We need the latest purchase status API and for that what parameters do we need to pass?

Why does Google+ API method people.me still work?

My web-app is using Google+ API method called people.me. I was notified via E-Mail that this Api is going to shutdown on March 7. I was given a list of methods used by me in that Api and this was the only method in the list.
Today it's March 11 and the method keeps working correctly. Why? Maybe I understood something wrongly?
If you check the top of a lot of the methods in the Google+ documentation you will see this
The Google+ People API list endpoint is deprecated. Consider using the Google People API instead.
On some of the methods that does not appear. IMO that is because some of these endpoints never actual read from the Google+ api rather they were reading from the google people api all along and just got a plus in the name. They may at some point have read from it and were moved when they redid google contacts. The people.me endpoint is part of the google people api and not the google plus api
People.get
GET https://www.googleapis.com/plus/v1/people/userId
is the same as
people.get
GET https://people.googleapis.com/v1/{resourceName=people/*}
The data for both of those end points comes from google contacts.
Now again this is just my opinion i have emailed google several times and the only answer i got back is we will look into it. I would wait until April if they are still live i guess we are good.

My Google API keeps returning a limit reached error, when I am sure I am under the limit

I am currently building a NodeJS backend app that is querying the Google Calendar API. I have setup a new project on Google Cloud API platform and have generated all the required credentials. As stated by the google calendar API page, the allowed queries per day is 1,000,000. Since I am only querying for testing purposes at the moment, I am sure that I haven't even hit a 100. Yet whenever I try to query the API it returns the error:
"The API returned an error: Error: Daily Limit for Unauthenticated Use Exceeded. Continued use requires signup."
Also I have noticed that the dev console has generated a API key for me. Where am I supposed to put that?
My initial thinking is that Google API requires me to perform an additional signup using some CLI tools or something along those lines to signup. If not, where am I supposed to sign up?
Thanks in advance.
Note: I already have all the information from the cloud platform such as client_id, client_secret, project_id.
In "Error: Daily Limit for Unauthenticated Use Exceeded", they key word is Unauthenticated. Your request to the Calendar API is missing an OAuth Access Token. You will need to research Google OAuth.
This question has been answered many times. Please learn how to search SO for similar questions whenever you post a new question. https://stackoverflow.com/search?q=google+oauth+%22daily+limit+for+unauthenticated%22
To anyone who comes across this post in the future. I fixed the issue by using the project generated by Google Calendar API site (https://developers.google.com/calendar/quickstart/nodejs) by clicked the big blue "Enable the google calendar api" and then changing the name of the quickstart project that was generated. I don't know why it works now but it does and it's been working quite stably so far. Lets see how to goes.

Google integration in web application

I want to integrate gmail and google calendar in my web application. I can login via google and make api calls to either gmail OR google calendar API, depending on the authorisation that I request from google.
I have not found a way to request authorisation for more than one APIs simultaneously. Is this even possible? Is it possible to receive one access token in order to use it for requests against more than one of Google's APIs?
As far as I know it can be done. If you try testing it in Google Oauth 2.0 Playground and select multiple API scopes.
"scope": "https://www.googleapis.com/auth/calendar https://mail.google.com/ https://www.googleapis.com/auth/drive"
It should look like this:
Hope this helps.

How does service account authentication work with the Ruby Google API?

I see the service account source code in the API, but I can't figure out how this would be used to authenticate with a Google service. All the examples I've seen are for other authentication scenarios, not service account.
Just got added a few days ago and docs haven't been updated yet. Just created a page on the wiki that hopefully gets you started.
http://code.google.com/p/google-api-ruby-client/wiki/ServiceAccounts

Resources