Keeping track of access tokens by using oAuth 2 - google-analytics

I am a beginner in using Google Analytics API and I want to track the access tokens separately as they expires.
Note that I am using server->offline settings in the oAuth 2.0.

Related

Accessing Google Sheet to Create a sheet(GCP)

I want to Fetch data from firestore and append all the data in a new Google sheet.
Creating sheet is where i am finding problem.
as far as i have researched, i ve found out there are 3 methods to access google api,
1)API key
2)Service account
3)Oauth
Ignoring API key,
While using service account, i have found out that sheet which is getting created will be owned by service account so no one else can remove it.
when using Oauth, i have used OAuth json credential from GCP , in which when i try to use it in local host, it shows me Google's Logging screen, but when i deploy it in app engine, it doesnt redirect it to logging screen.
https://developers.google.com/sheets/api/quickstart/nodejs
this is the document where i find the approach.
One more method i have found i.e. Access token. i.e. putting access token in
const sheets = google.sheets({ version: "v4",headers:{ Authorization:`Bearer ${accessToken}` }});
but that wont be possible, as in Front end i am using
auth.onAuthStateChanged
which doesnt provide me Access token just the ID token.
Please help!
Based on your auth.onAuthStateChanged code it looks like you're using Firebase Authentication to sign in on the frontend.
Firebase Authentication is based around JWT ID tokens, which are not the same as OAuth tokens. You can't use such an ID token to make calls to the Google Sheets API.
If you're signing in with Google or another OAuth provider on the frontend, you can capture the OAuth token from that provider before you sign in to Firebase with it, and then use the OAuth token to call the Google Sheets API.

new Google Identity Services JavaScript library - how can i make authorised requests to google api?

according to google:
The older Google Sign-In platform library:
apis.google.com/js/platform.js, and Google APIs client library for
JavaScript: gapi.client, are no longer required for user
authentication and authorization. They have been replaced by a single
new Google Identity Services JavaScript library:
accounts.google.com/gsi/client.
with the older library you could both authenticate users to your site and you could make authorized requests to google api such as calendar.
there is no information in the docs, as far as i can see, reagrding how to make authenticated requests to google api's such as calendar.
is the new api only replacing the old for apps that only do sign in.
am i missing a way of using the new api to make authenicated requests.
FYI:
On Feb/15/2022, Google announced the availability of Authorization in Google Identify Service SDK:
https://developers.googleblog.com/2022/02/announcing-authorization-support-for.html
here is the docs:
https://developers.google.com/identity/oauth2/web/guides/overview

I need to send product details to Google shopping Content API but first i need to generate oAuth token.How i will do it through function app

I need to send product details to Google shopping Content API but for using that i need to generate oAuth token with refresh token throgh Azure data factory.I have generated service account and client-secret json .How i will do it through function app?
Firstly, we need to understand that functions should not be used to do UI-related actions. In any app service the pop up for the login ( which allows to provide the credentials) will not be supported.
E.g. : To avoid this scenario , in case of AD auth we may use service principle where we feed the required credential to acquire the token. So if we want to use the google auth SDK we need to connect to the concerned team ( Google team) to understand if this is feasible at all.
For this you may check the Server-To-Server Service Account Authentication, as below:
https://cloud.google.com/docs/authentication/production
In case you need any assistance in this, we would recommend you to reach out to the concerned support team.

Firebase Custom Auth - What/Where metrics are available?

I use Firebase Custom Auth JWT.
Is there a place (in the Console) or a method (CLI?) by which I can gather the metrics behind the Custom Auth JWT usage?
For instance, I need data like,
How many devices authenticated using the Token?
What timeframews were these device authentication at?
How long were each device session?
There is no such reporting built into Firebase Authentication.
You'd typically fire an Analytics event when signing the user in from the front-end. When you're using a custom authentication token, you could integrate some form of analytics into the minting process, or also use Firebase's Analytics integration with Google Analytics in the front-end when it uses the token.

Can I use Service Account with Google Analytics?

Since few day I am trying to get user profile with my C# using Using OAuth 2.0 for Server to Server Applications with JWT.
For google drive i know that we can use server to server method, but i am not sure for Google Analytics. Can we use it ?
Yes you can!
Service Accounts
Useful for automated/offline/scheduled access to Google Analytics data for your own account. For example, to build a live dashboard of your own Google Analytics data and share it with other users.
There are a few steps you need to follow to configure service accounts to work with Google Analytics:
1. Register a project in the APIs Console.
2. In the Google APIs Console, under the API Access pane, create a client ID with the Application Type set to Service Account.
3. Sign-in to Google Analytics and navigate to the Admin section.
4. Select the account for which you want the application to have access to.
5. Add the email address, from the Client ID created in the APIs Console from step #2, as a user of the selected Google Analytics account.
6. Follow the instructions for Service Accounts to access Google Analytics data.
Source: https://developers.google.com/analytics/devguides/config/mgmt/v3/mgmtAuthorization
Not yet. See Service Accounts have arrived.
Service accounts are currently supported by the following Google developer services:
Google Cloud Storage
Google Prediction API
Google URL Shortener
Google OAuth 2.0 Authorization Server
Google APIs Console
Google APIs Client Libraries for Python, Java, and PHP
Over time, more Google APIs and client libraries will be supported.
Sign up for Google Developers Blog and the Analytics Blog feeds. They will post when GA is opened to service accounts, if it ever is.

Resources