[RELEASE] Google SDM API - Nest integration

403 on Discovery - I'd check both the Device Access project and GCP project, to confirm that they have the same OAuth keys...

1 Like

Dunno, I never really mess with docker. I played around with it but it just seemed like it was pre-packaged crap that someone else threw together. I prefer to do my own installs so I know what is being loaded.

I'm getting the same error. I checked that the Device Access Project and GCP project OAuth keys were the same.

Uninstalled and reinstalled the app on my Hubitat and ran through the auth process again. Clicked Discover and got the same error.

Duh, :man_facepalming: thank you! It is all good and working now :slight_smile:

I followed the guide to the T and it is all working fine now. I know that is not much, but try deleting everything on Device Access Project and GCP and start fresh and it might help.

Got it working. Thank you!

So, I've gone through the thread, and thanks to everyone's input, and was able to resolve a 403 error I was having.

However, now when I try to Subscribe to Event, I get the following 404 error.

I am able to find and control my devices, but their states do not update beyond what is called when they are first found.

I have confirmed that DAP and GCP OAuth keys are the same, have tried stopping/starting Pub/Sub API, but nothing seems to resolve this issue?

app:5542020-12-07 09:52:36.324 am errorcreateEventSubscription returned status code 404 --

app:5542020-12-07 09:52:35.934 am infoCreating Google pub/sub event subscription

I have been trying various procedures for three weeks now to try to enable the Google device access and get access to my Nest Thermostat. I have registered and paid my $5 back at the beginning. I am stuck in circles trying to get a new project, but then it wants a valid 0Auth client ID. However, before I do that it needs a project-id and the client id. I am going in circles on the google page.

Can someone help me get this started? I just can't get the google side working because the instructions have been circular for me the last few weeks. Is there a step-by-step blog?

Check your Device Access Project to ensure that the Event Pub/Sub topic is enabled on that side, usually the 404 here is a "topic not found"

Yes, it is enabled (and has been). Have tried disabling and reenabling it, also.

OK. I think I got it working, although not terribly sure how or what I did wrong to begin with.

I created a new set of OAuth credentials in Google Cloud, then pasted the same OAuth client id into DAP. I then deleted the application from my hubitat, and reinstalled it. Now, the subscription seems to be working. Again, no idea why this worked - I put it down to my own human error.

I have a client id and a client secret. I also have the JSON file. In the Hubitat Setup of the "Google SDM API" it asks for the "Google Device Access - Project ID". I entered what I thought was right but I am not sure where to check that on the google console. I pasted in the JSON contents to the "Google credentials json" field in the app. I clicked DONE. I came back into the app and I click the "Auth Link" and it immediately goes here.


I'm guessing either it is done or that's bad. Any suggestions?

"Google Device Access - Project ID" is a UUID (32-character hexadecimal, format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx), whereas the GCP project id includes a text string.

This page indicates that OAuth did not complete successfully -- you should get a Google page to enter your login credentials and confirm that you want to authorize access to your devices.

Make sure your OAuth config on the GCP side includes https://cloud.hubitat.com/oauth/stateredirect as a valid redirect URL

Hmmm....I have correct redirect URL. On the Google Page it let me create an alphanumeric Project name. The UUID Project ID you mention I am not seeing anywhere on the google console.

If you go to the Device Access Console -- this should show you the UUID project ID that is needed.

So, I found the project id finally. I deleted the old JSON and started over. I got a new JSON but now I don't have any new project and the old project is not matching up.

Ok -- so you found the Device Access project id (UUID) -- check.
New credentials.json (copied to Hubitat) -- check.
Go back to the Device Access Console and click into that project, and edit the OAuth client ID to match what is specified in the new JSON

The "Device Access Console" above is giving me an option to create another new Project. I have three so far. By the way, thanks for your help. I am very techie, but I just don't see how to do this.

I can get the JSON created and downloaded. How do I find the Project ID that matches that JSON without creating yet another project where I can create another JSON and then can't find the project ID again.

Yep, seems Google made this overly complicated...

It is two projects on the Google side -- Device Access and Google Cloud -- each with their own project-id (one UUID, one alphanumeric) -- it is the OAuth client ID (within the credentials.json from GCP) that ties the two together for our purposes -- instead of creating a new project, click into one of your existing projects, and edit this value to match what you most recently got from GCP.

If you want, you can DM me details from both sides and I can help identify which pieces need to go where.

I am this page.


My project is named Hubitat-VMSMAN. It has a 0Auth client ID. Somewhere I got a JSON. I think from this. Not sure. It might have been one of the other attempts. So, I run my own Jitsi server. Any chance you can guide me through this on https://jitsi.scottibyte.com/Help