After login to home assistant in google home I get 404

I am just done with setting up my home assistant instance via docker. It is external accessible with a hostname and SSL certificate (duckdns and nginx). I’ve also did all the steps on: Google Assistant - Home Assistant to set up my home assistant integration.

Only step I differ from is the URL field, where instead of using this address: https://[yourdomain:port]/auth/authorize. I used this one: https://yourdomain.duckdns.org/auth/authorize, because of using nginx.

In my configuration.yaml I added the following (where YOUR_PROJECT_ID is my projectname from the google developer console):

google_assistant:
  project_id: YOUR_PROJECT_ID
  service_account: !include SERVICE_ACCOUNT.json
  report_state: true

If I try to connect home assistant to google home in the google home app, I can access my login screen from home assistant, but after that I get a 404 error, which states that the requested URL is not found on this server. But that is only after I filled in the correct username and password and enter home assistant.

I think I messed something up with my configuration.yaml, but I’m not sure what or if it is even the configuration.yaml. Can anyone help me with what I did wrong?

1 Like

I’m guessing I have the same problem as you.
From what I managed to understand after the succesful login we get redirected to “https://oauth-redirect.googleusercontent.com/a/com.google.android.apps.chromecast.app?redirect_state…” Instead of “https://oauth-redirect.googleusercontent.com/r/com.google.android.apps.chromecast.app?redirect_state…”
Note the A instead if the R after the first slash.
I rechecked everything and I followed the guide to the letter .
No idea on how to solve it.
Maybe someone could come by with an idea…

I had indeed the same redirection as you. Today I think I found the solution. I’ve added in the google cloud console an oath client id under credentials. In this oath client id I only added the following redirect url: https://oauth-redirect.googleusercontent.com/r/[YOUR_PROJECT_ID]. After that I redid steps 3 and further from: Google Assistant - Home Assistant and I can connect to home assistant from within the google home app. Seems there is just one step missing from the how to from previous website (or it didn’t did it automatically for me.

It seems it only works on an iPad and not on my Samsung phone. If I try to reload on my Samsung phone I still get the 404-error, but after importing on my iPad I can see all the entities also on my Samsung phone. Don’t know why this happens, but perhaps it is because of the web browser (safari vs firefox with an adblocker), else I don’t understand the difference.

1 Like

EDIT: managed to use a friend’s iphone. I can confirm that the oauth process (using your addition) only works on iOS.
I’ll try to file a bug report in the next few days.

Didn’t work for me. But I don’t have an ipad.
What kind of oauth cliend id did you create? (I created a webapplication one but maybe you created another…)
Also, it forced me to create an oauth consent screen, did it do it for you to?

I used the web application indeed. On my android it still didn’t work, but on an iPad/iPhone it will. It seems very strange, and I don’t know why this workaround does or doesn’t work. Perhaps the problem is on googles side. I notice that google voice assistant sometimes struggles, while gemini on my phone works directly.

I’m facing the same issue and did some more testing.
The redirect to /r/[project_id] works fine. But that very URI then responds with another redirect to /a/com.google.android.apps.chromecast.app.

A quick search suggests it has something to do with “App Flip for iOS” (App Flip for iOS  |  Google Account Linking  |  Google for Developers) so it would make perfect sense that it does work on iOS devices.

I assume some dev at Google forgot to check for the operating system in the request headers and now it always redirects there.

1 Like

Hi, I’ve been trying for weeks to configure the Google Assistant integration following the official guide (https://www.home-assistant.io/integrations/google_assistant/), but every time I got stuck when trying to add my [test] Custom HA application service in Google Home.
This morning I read bmn’s comment and immediately grabbed a (trustworthy! :D) iOS device, downloaded Google Home, and logged into my account. I can confirm that I was finally able to complete the integration setup.
I have no idea whether iOS can be emulated — possibly in a safe way — for those who don’t have access to Apple devices.
In the meantime, thanks a lot, Max!

Looks like someone at Google noticed. Tried it again today, and it worked fine (on Android)

Same error encountered here while configuring a new HA instance. After entering the credentials, the 404 error appears. No ios devices avaliable around at the moment, so will open an issue.

Not providing a solution, but confirming the same issue and with Android. No iOS available here. Went over the steps several times and used up a lot of tokens with Gemini to find a solution. But not yet working for me either.

1 Like

So it seems there’s a google issue redirecting on android devices.

Finally found the solution: in the HA login page, select “Open in browser” and select your favorite browser. Once completed the login, select Google Home as the browser.

explanation: when adding the “test app” to google home my android device renders the home assistant login page with the default browser (Chrome in my particular case). If you login on this page the redirect does not return to google home app. Selecting open in browser lets you select what app will open the link.

Hope it helps

1 Like

Nice, that actually worked for me :slight_smile:

1 Like