Unable to setup Matillion OAuth with Google Analytics - google-analytics

New Matillion user, and my first project is to read in Google Analytics data by using a google account authorized to access GA data from several clients.
I follow the steps from this Matillion documentation: Google Query Authentication Guide
I have setup the needed client ID and client secret, and I've pasted the redirect URL into the credentials page in the Google console.
From Matillion, I enter the client ID and secret in the OAuth Configuration dialog, and I configure the proxyserver and proxyport under "advanced connection options" as specified in the Matillion documentation.
When I click the Authorization link in the OAuth it opens a new tab to the Google page where I login and allow the access. Once I do this, the redirect seems(?) to kick in and I presented with a browser page with the message "Authorisation complete Please close this tab". I am not taken back to the tab where Matillion OAuth configuration is still waiting for a response of some type.
Any ideas with this? Additional information: I setup Matillion via the Snowflake Partner Connect console and am still in the free 14-day trial for Matillion.

I was able to get the OAuth workflow to finish. Any issues from this point forward will be a battle for another day. Here are my findings:
First note that I initiated my Matillion install from the Snowflake Partner Connect, which was very straight forward. I was up and running with Matillion in less than a minute.
The Matillion version that launched was 1.50.6, which is behind the most current version 1.58.4. I had no idea this would not be the most current version, as I assume the cloud platform might provide new installs with the latest version. I can see reasons why this might not be the case.
After several hours ensuring my GCP project, client id, client key, and other settings were correct everywhere, the workflow still would not complete. I opened a support case with Matillion and it was responded to within 2 hours. That is excellent. The first recommendation was to update Matillion to the latest version as it will address an OAuth issue resembling the one I reported. I saw the new version was very recent, and didn't realize I was nowhere near having the latest version.
After the update completed, I tried repeating all of the same steps. The only difference now was that the "Authorisation complete" tab closed on its own returning me to the Matillion tab which still sat "Waiting for response from service...". The version update seemed to show promise but not a solution.
A comment Schepo above cleared the final hurdle: I removed the proxyserver and proxyport "Advanced Connection options" from the OAuth configuration, and then tried getting a new authorization link. Matillion froze up and the session was dead. I had to close the browser, open a new incognito window and repeat the steps - without the proxyserver/proxyport connection settings. This time the workflow completed!
The Matillion documentation for Google Query: https://documentation.matillion.com/docs/2339840 should be updated if the Proxy Settings are not required for all OAuth configurations. The OAuth issue I reported should also be documented somewhere as a known issue addressable by the latest version (if not already).

OAuth being one of the many ways you can set up connectivity with Snowflake; it appears you're attempting to set up External OAuth, that is Google is the authorizing server. My understanding is that there are two paths to setting up OAuth,
This link has the Azure AD setup with the two options, https://community.snowflake.com/s/article/Create-External-OAuth-Token-Using-Azure-AD-For-The-OAuth-Client-Itself
Googling to setup Google AD returns https://support.google.com/cloud/answer/6158849?hl=en
You may have to follow a similar process, follow this content here: https://docs.snowflake.com/en/user-guide/oauth-ext-custom.html

Related

Here.com Destination Weather API returns "Forbidden" "These credentials do not authorize access"

Using the Here.com Freemium account, previously I was using the example here with my own API Key and some modifications to get the 7 day forecast. Based on this command, I had some code running in my back-end server every 2h collecting data, which ran for about a week without problems. I have not touched the code since then.
After a week, it stopped working.
Now, even when I generate a new API key, and use the same command, I get the following return data in Postman:
{
"error": "Forbidden",
"error_description": "These credentials do not authorize access"
}
Is my account restricted? It doesn't say anything about it in my Project page:
Without doing anything, suddenly it started working again, and on Oct. 1st.
I suspected I was being throttled, but when I tried using the service on a separate account, that also didn't work. So it seems likely the service was down. I wish there was some news page that posted what the status was?...
On developer.here.com you can look up the status of the services. I did this and don't see a reported problem for the Weather API for the last days.
My suggestion is that you missed to verify your email address after registering for your account. You still can do this at any time through clicking on the link that you received in an email from developer portal after your registration.

LinkedIn Sign In API recently intermittently failing

I'm having intermittent issues with signing in to LinkedIn with the LinkedIn Sign In API.
By intermittent I mean, I have two LinkedIn accounts, and as of this week one of them is unable to use the API to sign in to external services, such as the LinkedIn application I develop.
I'm authenticating via Auth0, whose engineers have confirmed there is an issue:
Over the last few weeks, the current version of the LinkedIn API for
sign-in has been intermittently failing when fetching the user
profile, causing a small number of users to fail to log in. The cause
of this issue is currently unknown, and is coming from LinkedIn
directly.
https://community.auth0.com/t/linkedin-connection-deprecated/20484/18
The Auth0 response i'm getting is the following (I've replaced senstivie response values with 'XX'):
{"name":"a0.response.invalid","message":"unknown error","json":{"error":"invalid_request","error_description":"InternalOAuthError: failed to fetch user profile (status: 500 data: {\n \"errorCode\": 0,\n \"message\": \"Internal API server error\",\n \"requestId\": \"XX\",\n \"status\": 500,\n \"timestamp\": 1550474289966\n})","state":"XX"},"status":0}
I know this API is being depreciated in March, but it's imperative that this API continues to work until the decommission date. I'm wondering if anyone has found a work around or solution to this issue, as it's impacting my ability to run real-world trials of my application scheduled in this week.
I've contacted LinkedIn support who directed me here.
Auth0 recently released a change to LinkedIn social connection, allowing you to use the new LinkedIn API (Version 2). You can change this by going to Connections-->Social-->LinkedIn-->Strategy Version dropdown and select Version 2. This should fix most of the login issues with the old deprecated version of LinkedIn API. More information post.

Google doesn't send Push-Notifications

I'm using Google Calendar API in my application.
The problem that I faced is that Google doesn't send me Push-Notifications.
I setup my app here https://console.developers.google.com/
Verified domain: https://console.developers.google.com/apis/credentials/domainverification
Watched calendar: https://developers.google.com/calendar/v3/reference/calendarList/watch and got successful response.
However, having done all of this, no push-notifications are received by my web-hook. It seems that Google just doesn't send them. Maybe I missed some step? I use https URL.
The problem was that the URL that I used for PUSH-NOTIFICATIONS wasn't whitelisted and if it was requested from other network(e.g. Google), then the request couldn't be processed.
Therefore, if there is such a problem, consider checking your URL availability outside your network. It should be accessible from anywhere and by anyone.

Google Oauth client was deleted. can I restore a new one?

We running a wordpress website use google oauth for third-party social login. (via WP Social Login plugin.) Former engineer is leave, and we cannot have past google account credential.
We face a problem shows:
Error 401
Error: deleted_client
The OAuth client was deleted.
but we can only see old client id and secret from website admin panel.
I wanna to know,
if we set up a new google oauth application id/secret, will it make user crash from login website?
Or, is it possible for us to restore/retrieve former application ownership and make it live again?
This happened to me when I was working on an Add-On (maybe not completely related to this question but similar). I mistakenly deleted a Client ID that I thought we weren't using.
How I solved it:
Created a new project in Google Cloud
Associated the Apps Script project (Add-on) to this new Google Cloud project
Then I re-associated the App Script project with my previous Google Cloud project
The previous step will re-compile, create and associate the Client ID to the App Script project. It will contain all settings from the Client ID manually created and associated with your project in the code.
Maybe this will give some light to anyone having a similar problem.
Here use this link:
https://support.google.com/cloud/answer/6251787?hl=en
You have to reach google and they will help you out, this is the only solution you can do.
In my case, the simplest/only path (though certainly not ideal) ended up being to create a new Firebase project and start using that.
This of course can be problematic if you have a lot of data to move and/or a nontrivial data schema - say, with nested collections. For me, it was worth the effort to get unblocked from Sign-In suddenly failing to work.
... ah, OAuth fun
=======
If you are trying to make the new Client ID work .. though it's not a total solution, but after searching for a while, found this config option in Firebase console - where you enable Google Sign In.
So if you generate a new OAuth Client ID, update the ID & secret there.
After I did this, it went from a 401 error to a 400 mis_direct , which I think was step in the right direction.

Our application cannot access anymore to customersdata through Google apps Marketplace

Our Marketplace application ID is 691703567391.
https://www.google.com/enterprise/marketplace/viewListing?productListingId=3198+1842896415262219465
Since 4-5 days, the application cannot access any customer data from the marketplace by using provisionning API and group provisionning APIs.
(apps-apis.google.com/a/feeds/group/#readonly and apps-apis.google.com/a/feeds/user/#readonly)
Whatever request our application is making, the response is always :
Error
401(Client Error)!!1
401.
That's an error.
There was an error in your request.
That's all we know.
For instance we did the GET request on the following URL : https://www.google.com/m8/feeds/contacts/default/full?xoauth_requestor_id=stef#gappsexperts.com and reponse was error 401.
After checking in cloud.google.com console, it appears that the Oauth1 reigtsred app has completely disappeared from our Cloud console (see screenshot)
Now only the Oauth2 app is available. I AM SURE THIS IS THE CAUSE OF THE PROBLEM.
Now here are the abnormal behaviours :
1/ We are getting errors for any request we make on user or group provisionning
2/ Oauth 1 registered app is not in the cloud.google.com console anymorre for this listing.
3/ WE CANNOT UNPUBLISH the listing in Google Apps Marketplace.
help us !
Is it possible you tried to create an OAuth 2 client ID in the same Developer Console project as your original Apps Marketplace developer console project?
I believe that might be a cause of this issue.
Your screenshot didn't come through in the post.

Resources