Neato Integration needs to be reconfigured after updating HA from 2020.12.1 to 2021.1.1 ?!?

Hello.

I have updated my HA Installation. Now it says Neato Integration needs to be configured and I should look at the dokumentation. Everything worked just fine before the update!

A look at the doku and it says that I have to create an developer account on neato and I have to use https to connect to HA!

Could this be? Before the update I just had to fill in my neato username and password and that was all…

There’s some explanation on the release note thread:

please make sure to read the breaking changes for a release before updating. It will save you.

I was easily able to config the new Neato Integration with NabuCasa which connects over https within 5 minutes.

Does the Integration needs permanent access to HA over https or just for the installation?
I ask this, because I normally don’t need NabuCasa.

i have my HA pointing outwards via duckdns ( for custom built alexa, amongst other things… )
its https: and accessible yet, i can’t integrate it, as it doesn’t like the redirect url
“The redirect uri included is not valid.”

https://XXXXXXXXX.duckdns.org/auth/external/callback

from an external browser (phone 4g) when i put the above url in I do get a response

“missing code or state parameter in https://XXXXXXXXX.duckdns.org/auth/external/callback

If neato says that your redirect URL is not valid, it means that HA is sending a different URL than the one you entered when you created the application at https://developers.neatorobotics.com. You can’t just type the redirect URL in your address bar because then important query parameters are missing.

Actually, there are two important URLs. The first one is the one that HA uses to redirect you to neato’s website. It contains the redirect URL and some credentials. The second one is subsequently created by neato, which sends you back to HA. This URL contains the requested tokens. Therefore, make sure that HA uses the correct redirect URL for the first redirect. This is the one that will be in your address bar when Neato says your redirect URL is wrong.

2 Likes

Normally, you don’t need HTTPS after the setup, because the redirect URL will be used only then.

2 Likes

Need some help, please.
I use DuckDNS.
I run my HA on a RPi3.
I have the usual port forwarding for DuckDNS use (my Pi’s IP address 443 to 443 TCP)
What would be my redirect url to get this integration to work again?
Thanks!

This would be your external URL with the path you find in the documentation. Eg. https://my_duckdns_host.duckdns.org/auth/external/callback

thanks. I am able to get it integrated now, but nothing shows up. Will need to run the vacuum when I get home to see if this works! thanks again.

Hello,
I’m sorry for my English, I speak French
I followed what you explained, but I still have the message :
An error has occurred
The redirection URL is not valid.

here is what I put.
it’s been 2 days that I’ve been trying to understand.

NEATO APP:

Description Neato D7 Home Assistant
Redirect URI https://.dyndns.org/auth/external/callback/
Terms Of Service URL
Privacy Policy URL
Auth scopes public_profile
control_robots
maps
Client ID e68026b476d3ad460e0fda29ca5214bcfc
e8d4de
Secret 23359774fe7f41068281a2c13975ebb4
****************a344b45d
Created At 2021-01-17T16:44:15Z

URL NOT GOOD
https://apps.neatorobotics.com/oauth2/authorize?response_type=code&client_id=e68026b476d3ad460e0fda29cade&redirect_uri=https://192.168.1.176:8123/auth/external/callback&state=eyJ0eXAiOiJKiOiJIUzI1NiJ9.eyJmbG93X2lkIjoiYjIyMzBmYmRhYjY2NDMwzI2M2Q5YTcxOGQiLCJyZWRpcmVjdF91cmkiOiJodHRwczovLzE5YWNrIn0.syTrJ34emVFCbexK7FSX-hitjWfEg4t8xaPLbG_3tmg&client_secret=23359774fe********a79392b63aaa344b45d&scope=public_profile+control_robots+maps

HA

Neato D7

neato:
client_id: e68026b476d3ad460e0fda29ca5214bcfce8d4de
client_secret: 23359774fe7f41068281a2c13975ebb4
a344b45d

do you have any idea of my mistake?

thank you

Looks like you are accessing HA using the internal IP instead of the domain name that you used in the redirect URI. Just login to HA using the same domain name and then proceed to continue with adding the integration.

2 Likes

that’s what I did, that’s why I don’t understand why my internal IP appears in the URL

Description Neato D7 Home Assistant
Redirect URI https://xxxxx.dyndns.org/auth/external/callback/

is your external URL defined in HA?

1 Like

Thank you for your help.
The internal and external urls were indeed not defined.

Here is what I put.

URL EXT : https://xxxxxx.duckdns.org:8123/
URL INT : https://homeassistant.local:8123/

Before I used DynDns, I switched to DuckDNS.
I also changed to the Neato app.

and here is the new URL when I try to integrate Neato. Unfortunately I still have the same message

An error has occurred
The redirection URL is not valid.

https://apps.neatorobotics.com/oauth2/authorize?response_type=code&client_id=470a19765962c765c33093ba517bed9c192d65aafc51cca0cd2883c30826eac5&redirect_uri=https://homeassistant.local:8123/auth/external/callback&state=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmbG93X2lkIjoiMDhjN2Y5OWM2ZjdmNDEwYmI4OTQxNzlmOWQwNzhlMjYiLCJyZWRpcmVjdF91cmkiOiJodHRwczovL2hvbWVhc3Npc3RhbnQubG9jYWw6ODEyMy9hdXRoL2V4dGVybmFsL2NhbGxiYWNrIn0.PIwA26HbU-Ap7f6BIyOMTWRHELm4vntkyDzoJsEgWgY&client_secret=a0b035905752e5293536d5298d6b3b92bbc61f70567fae5452f062603b6f03e6&scope=public_profile+control_robots+maps

I was having the same problem until I followed dshokouhi’s suggestion listed above.

I opened a new browser window and in the address bar pasted in my external URL, I then logged into Home Assistant using my normal Home Assistant username and password. I was then able to add the Neato integration successfully.

I tried as you said,
I still have this problem of

An error has occurred
The redirection URL is not valid.

Here’s the URL I’m receiving that looks correct to me:
https://apps.neatorobotics.com/oauth2/authorize?response_type=code&client_id=470a19765962c765c33093ba517bed9c192d65aafxxxxxxxxxxxxxxx&redirect_uri=https://xxxxxxxxx.duckdns.org:8123/auth/external/callback&state=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmbG93X2lkIjoiZTdkOWE2YTliMzQ5NDMzYjg4NmU3YjExNmM3ZWY0MTgiLCJyZWRpcmVjdF91cmkiOiJodHRwczovL2Rxxxxxxxxxxxxxxcy5vcmc6ODEyMy9hdXRoL2V4dGVybmFsL2NhbGxiYWNrIn0.8qYNuhGaZ_Y04eo-KSgBpYi4sxUBjtiqradgS868-xU&client_secret=a0b035905752e5293536d5298d6b3b92bbc61f7xxxxxxxxxxxxxxxxxxx&scope=public_profile+control_robots+maps

I am about to throw my Neato out the window.
What a waste of time for a stupid hoover when everything was working fine 2 weeks ago.

I’m sorry, that you have these issues with your instance. It seems, that HA prefers the internal URL in your case. For the moment you could set your internal URL to the one with https to setup your robot. Switch it back afterwards. This should be fine.

EDIT:

I did some research. In fact HA chooses the current URL to build the redirect URI upon:

Therefore you can solve your problem by setting up your integration via your external URL as @cletus said.

1 Like

i tried as @cletus said.
but I still have the same message:

An error has occurred
The redirect URL is not valid.

my url when I run the first request for the Neato integration is strange.

https://apps.neatorobotics.com/oauth2/authorize?client_id=470a19765962c765c33093ba517bed9c192d65aafc51cca0cd2883c30826eac5&client_secret=a0b035905752e5293536d5298d6b3b92bbc61f70567fae5452f062603b6f03e6&redirect_uri=https%3A%2F%2Fdixxxxur.duckdns.org%3A8123%2Fauth%2Fexternal%2Fcallback&response_type=code&scope=public_profile+control_robots+maps&state=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmbG93X2lkIjoiNTU0ZTE5ODU0NDYzNDRmMzg4NTllNTVhZTQwNDc1ZWMiLCJyZWRpcmVjdF91cmkiOiJodHRwczovL2RpZHNlcnZldXIuZHVja2Rucy5vcmc6ODEyMy9hdXRoL2V4dGVybmFsL2NhbGxiYWNrIn0.YERyPbw7POkT03sepPeFnNFi9lDGImCPqtDChhXhgw0

I’m new to the world of Home assistant, I don’t know anything.
Thank you for your help.
I hope we will find a solution because there, I do not understand anything. why is it right with me that it does not work?

As you can see, it has now changed the redirect_uri part to

https%3A%2F%2Fdixxxxur.duckdns.org%3A8123%2Fauth%2Fexternal%2Fcallback

which is the encoded form of

https://dixxxxur.duckdns.org:8123/auth/external/callback

Am I right that your instance is available via this URL and you used this URL to set up your application at https://developers.neatorobotics.com/ ?
Please double check, that you used exactly this URL there.

And please remove the client_secret from your post as we should not know that :wink: