Can no longer link Google Assistant

I recently decided to switch from expose_by_default: true to false and set my entity_config manually. In the process, I re-synced my Google Home app, but there were still too many devices, so I unlinked the app/integration and tried to re-link it, but that’s where the problems began. I haven’t been able to add my Home Assistant to Google Home since then.

Every time I try to add [test] Home Assistant, it turns the screen white for a second like it’s loading a page, then, for a split second, it flashes a screen with the title “Link an account to control Home Assistant on any device” and the text “This link will be available on devices or services where you’re signed in to your Google Account. You can change this link in your Google Account”, including buttons to “Cancel” or “Continue”. The Google logo loads, but the Home Assistant logo looks like a broken image link (not sure if this is a clue or not). This page only shows up for about a 10th of a second before returning back to the list of integrations, with the error “Could not reach [test] Home Assistant. Please try again.”.

I’ve tried everything I can think of, including reinstalling the Home app, starting a new Google project and meticulously following the instructions from Google Assistant - Home Assistant, and checking all my firewall and reverse proxy rules. I’ve even tried restoring to my backup from last night where the config was set to expose_by_default: true and everything was working, but still no luck linking from the Google Home app.

I’ve verified that https://home-assistant.mydomain.com/auth/authorize, https://home-assistant.mydomain.com/auth/token, and https://home-assistant.mydomain.com/api/google_assistant are all accessible externally with a valid SSL cert. I’ve spent several hours debugging this, including dozens of forum posts, but nobody seems to have the same problem as me. If anyone has any additional debugging steps, please let me know

1 Like

I have the exact same problem here but configuring Google Assistant for the first time, but it’s the same. All endpoints reachable through internet with valid SSL certs but Google is not sending any request to the server. I don’t have any log either on my Nginx or Cloudflare or even GCP doesn’t log anything.

I don’t know what kind of rule or connection needs Google but after spending a day I decided to configure Alexa for the time being, it worked flawlessly but I like to get GA working so if you find any solution please share. I’ll keep trying but I don’t know what else to try.

Thanks, that might help narrow it down. I set up some logging to echo the requests sent by Google, but it appears that nothing at all is being sent to any https://home-assistant.mydomain.com/* url. So at least I know the problem isn’t with my firewall or HAProxy. I wonder if this means there is a configuration problem in configuration.yaml, in my actions console project/GCP project, or the Google Home app?

I’m having the exact same issue. Google Assistant was working just fine and now nothing. I got the same behavior you describe when trying to relink. I went so far as to create a new Google project and the behavior remains the same. Similarly, I see no logs of errors in HA, connections being refused in NGINX or my router/FW, or even errors in Google Cloud.

Are both of you running the newest version of core (2022.4.1)? This might be an issue with the 2022.4 update. Either that, or something broke on Google’s end.

I’m running HA Core 2022.4 with Docker but it seems that the problem is on Google’s end because if anything is wrong with HA at least it has to log the incoming request on Nginx. In my case I’m behind Cloudflare but I tried to bypass it configuring my external IP in the DNS directly and that didn’t work either.

I’ve got the same issue since yesterday - suddenly it does not work.

Was running on 2022.1 - tried to update to 2022.4, didn’t help.
Running behind Cloudflare, changed all settings and firewall - didn’t help.
Tried to create new Google Action and reissue all the keys on GCP - didn’t help.

Not sure what to do next.

Just upgraded from 2022.4.0 to 2022.4.1 and I still have the same problem. I was going to file a bug in the home assistant core repo, but if the same problem hit Granny on version 2022.1, it seems less likely to be caused by a recent version (so I decided not to file the issue)

I think an issue is still warranted if the documented steps no longer result in success. It may not be related to a recent change on HA’s end, but it’s still broken.

It does seem like something is either broken or changed on Google’s end. Maybe it’s trying to reach the endpoint via IPv6?

I think a bug is still in order, at least to update the docs with the correct steps.

as @Omnipius said, it might send requests to IPv6 but my NGINX (nor CloudFlare) is set up for IPv6… so I cannot change that.

I would think that it might to do with some verification that the Action gets signed during publication, because other Integrations in the Google Home app works as expected - it just happens on Actions marked as “[test] …”

My main instance is on Home Assistant OS 7.6. Today I also tried a fresh install of Home Assistant OS (8.0.rc1) with 2022.4.1, as well as a fresh install of Home Assistant OS 6.6 with 2021.11.5 and got the same results in both cases.

Maybe it’s trying to reach the endpoint via IPv6?

I don’t have any IPv6 on my whole network or in my DNS entries

I have the same problem since yesterday. I unlinked the Home Assistant from Google Home and now, I can’t link it anymore. Exact same white page that appears for a 1/10th second and the same error message Could not reach [test] Home Assistant. Please try again.

What do you see when you go to https://home-assistant.mydomain.com/auth/authorize and https://home-assistant.mydomain.com/auth/token ?

The Google Home app looks and feel has changed recently. I noticed the icons were different. Has anyone tried to sideload a previous version of Google Home to link [test] Home Assistant ?

1 Like

Also my setup is full IPv4, my ISP doesn’t support IPv6 yet.
Just to check, everyone is using the last version of Google Home, the one that is rolling out user interface updates? I’m thinking that maybe the app crashes before sending any request at all. Later I could make a test with Wireshark or something like that to check that

Yes, I’m on the latest version of Google Home (2.49.30.3). I didn’t see anything of note with wireshark, but I’m not super familiar with it, so I might have used it wrong, and I don’t have a custom CA set up to inspect tls traffic

I tried with latest version from Google Play, and with versions 2.45.1.8 and 2.35.1.6 but didn’t work.

Thanks for checking. Just in case, I’ll test with even older versions tonight as I am pretty sure I set it up in early 2020.

Many people with this problem have unlinked and attempted to re-link a home, but you are setting up the integration for the first time, never removed a [test] app?

Here’s another instance of this problem: Problem linking HA to Google Home - Entraide Home Assistant - Home Assistant Communauté Francophone (hacf.fr) (oops, I just realized that the poster was mat44150)

Never mind, I just tested with another Google account and tried to link the project in Google Home for the first time and got the same error:

Could not reach [test] Home Assistant. Please try again.

I’m still working on trying to get some useful logs or an error code or something. So far, I would guess that @ramalp is correct. The Google Home app seems to crash before any calls are actually attempted.

SOLVED!!!

Apparently Google has added a little splash screen to the flow that happens before it calls https://[YOUR _DOMIAN]/auth/authorize. In order for this info screen to work correctly, you now must complete the “Enter information required for the Actions directory” portion of the Actions setup overview. This requires you to provide:

  • A description of your app
  • A logo image for your app
  • Your name and email
  • A link to a privacy policy

For the description I wrote:
Short: “Connect Google Assistant to a private Home Assistant server”
Long: “This Action is intended for personal use. It exposes smart home devices controlled by a local Home Assistant server to Google Assistant and by extension the Google Home mobile app.”

For the logo, my house had one already, so I used that. Otherwise, just upload the HA logo.

For the privacy policy, create a Google Doc that can be viewed by anyone with the link that says:

" This application is intended for the private use of its developer. Any unauthorized users which connect to this service should have no expectation of privacy or protection of their data."

After I had all that entered, I could link GA to HA without issue. I need to go to an appointment now, but sometime this evening or tomorrow I’ll submit and issue ticket to update the manual configuration instructions.

21 Likes

thank you. That did the trick