Nest Integration Error - Unknown Subscriber

Has anyone had any recent luck adding Nest Thermostats into Home Assistant. I followed all the steps and made it pretty far along, but got stuck when on the Configure Google Cloud prompt. The error i get says, “Unknown Subscriber Error, see logs”. Any ideas?

image

Visit SettingsSystemLogs and see if there is an error message that has more details.

I’m seeing the same error. Did you get this resolved?

What’s in the logs?

Most common reason is the incorrect cloud project id name.

403 error on the call to cloud pub/sub. I’m certain I’m using the right cloud project ID, so I’m not sure what it could be.

Just tried it again (first time today). It worked. I have no idea why.

Silly question, but do you mean the HA logs? nothing new shows up when it errors out. Or is there a way to specifically see the logs associated with my attempt to integrate Nest?

Hi, i have the same issue. You can find the log in Settings-> System-> Logs
I get this:
USER_LOGGED_OUT
Traceback (most recent call last): File "/config/custom_components/nest_protect/__init__.py", line 77, in async_setup_entry auth = await client.get_access_token_from_cookies(issue_token, cookies) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/config/custom_components/nest_protect/pynest/client.py", line 159, in get_access_token_from_cookies raise Exception(result["error"]) Exception: USER_LOGGED_OUT

For me it was solved by enabling the right API’s:
https://console.cloud.google.com/apis/library/smartdevicemanagement.googleapis.com
https://console.developers.google.com/apis/library/pubsub.googleapis.com

2 Likes

Do what it says, go to the Logs via, Settings-system-logs and find the error likely mentioning subscription error. Click on it, copy the link it says, it’ll take you right to the API page to enable. Something I thought I had already did, but apparently now. Clicked enable, and worked after I retried

Hi I am just trying to get the nest integration going, but I get the following error:

  • Error creating subscription: Failed to create subscription ‘projects/nest-integration-434404/subscriptions/home-assistant-MLk2UbpyLq’: 403 Request had insufficient authentication scopes. [reason: “ACCESS_TOKEN_SCOPE_INSUFFICIENT” metadata { key: “service” value: “pubsub.googleapis.com” } metadata { key: “method” value: “google.pubsub.v1.Subscriber.GetSubscription” } ]
  • Error creating subscription: Failed to create subscription ‘projects/nest-integration-434404/subscriptions/home-assistant-O7GMIDGQkt’: 403 Request had insufficient authentication scopes. [reason: “ACCESS_TOKEN_SCOPE_INSUFFICIENT” metadata { key: “service” value: “pubsub.googleapis.com” } metadata { key: “method” value: “google.pubsub.v1.Subscriber.GetSubscription” } ]

I followed the video on the nest integration wiki by mostlychris and the two required APIs are enable. Not sure what this error is about.

For me home assistant give unknown error. When I checked the logs KeyError: ‘subscriptions’

Here is the log, I have done everything as instructed. Does anyone have a clue what error this might be?

Logger: aiohttp.server
Source: /usr/local/lib/python3.12/site-packages/aiohttp/web_protocol.py:448
First occurred: 15:41:38 (5 occurrences)
Last logged: 19:20:29

Error handling request
Traceback (most recent call last):
  File "/usr/local/lib/python3.12/site-packages/aiohttp/web_protocol.py", line 477, in _handle_request
    resp = await request_handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aiohttp/web_app.py", line 559, in _handle
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aiohttp/web_middlewares.py", line 117, in impl
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 92, in security_filter_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 83, in forwarded_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 26, in request_context_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 86, in ban_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 242, in auth_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/headers.py", line 32, in headers_middleware
    response = await handler(request)
               ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/http.py", line 73, in handle
    result = await handler(request, **request.match_info)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/decorators.py", line 81, in with_admin
    return await func(self, request, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/config/config_entries.py", line 222, in post
    return await super().post(request, flow_id)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/data_validator.py", line 74, in wrapper
    return await method(view, request, data, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/data_entry_flow.py", line 122, in post
    result = await self._flow_mgr.async_configure(flow_id, data)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 367, in async_configure
    result = await self._async_configure(flow_id, user_input)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 414, in _async_configure
    result = await self._async_handle_step(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 517, in _async_handle_step
    result: _FlowResultT = await getattr(flow, method)(user_input)
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/nest/config_flow.py", line 298, in async_step_pubsub_topic
    return await self.async_step_pubsub_subscription()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/nest/config_flow.py", line 368, in async_step_pubsub_subscription
    await self._admin_client.list_eligible_subscriptions(
  File "/usr/local/lib/python3.12/site-packages/google_nest_sdm/admin_client.py", line 230, in list_eligible_subscriptions
    subscriptions = await self.list_subscriptions(
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/google_nest_sdm/admin_client.py", line 168, in list_subscriptions
    return response["subscriptions"]  # type: ignore[no-any-return]
           ~~~~~~~~^^^^^^^^^^^^^^^^^
KeyError: 'subscriptions'
1 Like

I think I had a similar issue! I was able to solve it by disabling ipv6. I couldn’t tell you why that worked but it did for me