You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: source/_integrations/nest.markdown
+27-14Lines changed: 27 additions & 14 deletions
Original file line number
Diff line number
Diff line change
@@ -32,12 +32,10 @@ There is currently support for the following device types within Home Assistant:
32
32
-[Sensor](#sensor)
33
33
34
34
<divclass='note'>
35
-
This integration supports two Nest APIs. The SDM API is the new primary API that accepts new users. The Legacy Works With Nest API is not accepting new users, but the documentation still exists at the bottom of the page so existing users can keep using it.
35
+
This integration supports two Nest APIs: The SDM API (new) accepts new users and requires a US$5 fee. The Legacy Works With Nest API (old) does not accept new users, but the documentation is still available at the bottom of the page for existing users.
36
36
</div>
37
37
38
-
Google applies strict [Redirect URI validation
39
-
rules](https://developers.google.com/identity/protocols/oauth2/web-server#uri-validation) to keep your login
40
-
credentials secure. In practice, this means that you must access Home Assistant *over SSL* and a *public top-level domain* when setting up this integration. See the documentation on [Securing](/docs/configuration/securing/) or [Troubleshooting](#troubleshooting), and note that you don't actually need to enable remote access.
38
+
Google applies strict [Redirect URI validation rules](https://developers.google.com/identity/protocols/oauth2/web-server#uri-validation) to keep your login credentials secure. In practice, this means that you must access Home Assistant *over SSL* and a *public top-level domain* when setting up this integration. See the documentation on [Securing](/docs/configuration/securing/) or [Troubleshooting](#troubleshooting), and note that you don't actually need to enable remote access.
41
39
42
40
## Overview: Supported Devices
43
41
@@ -66,7 +64,7 @@ For the first phase, you will turn on the API and create the necessary credentia
1. First go to the [Device Access Registration](https://developers.google.com/nest/device-access/registration) page. Click on the button **[Go to the Device Access Console](https://console.nest.google.com/device-access/)**.
67
+
1. First go to the [Device Access Registration](https://developers.google.com/nest/device-access/registration) page. Click on the button **[Go to the Device Access Console](https://console.nest.google.com/device-access/)**.
70
68

71
69
72
70
1. Check the box to "Accept the Terms of Service" and click **Continue to Payment** where you need to pay a fee (currently US$5).
@@ -86,7 +84,9 @@ For the first phase, you will turn on the API and create the necessary credentia
86
84
87
85
{% enddetails %}
88
86
89
-
{% details "Configure OAuth Client ID [Cloud Console]" %}
87
+
{% details "Configure OAuth client_id and client_secret [Cloud Console]" %}
88
+
89
+
By the end of this section you will have the `client_id` and `client_secret`.
90
90
91
91
1. Open a new tab to the [Google API Console](https://console.developers.google.com/apis/credentials).
92
92
@@ -129,15 +129,18 @@ Project**. Note: This is a different type of project from the Device Access proj
By the end of this section you will have a `project_id` as well as the *Topic Name* needed to configure Cloud Pub/Sub.
133
135
134
136
1. Now head back to the *[Device Access Console](https://console.nest.google.com/device-access/project-list)* tab and *Add your OAuth client ID* then click **Next**.
135
137

136
138
137
139
1. Enable Events by clicking on **Enable** and **Create project**.
138
140

139
141
140
-
1. Take note of the *Project ID* as you will need it later. At this point you have the `project_id`, `client_id` and `client_secret` configuration options needed for Home Assistant.
142
+
1. Take note of the *Project ID* as you will it later. At this point you have the `project_id`, `client_id` and `client_secret` configuration options needed for Home Assistant.
143
+
1. Also Take note of the *Pub/Sub Topic* which is later entered manually as the *Topic Name* when configuring Pub/Sub in a follow up step.
141
144
142
145
{% enddetails %}
143
146
@@ -157,7 +160,13 @@ Project**. Note: This is a different type of project from the Device Access proj
157
160
158
161
The next phase is to enable the Pub/Sub API by creating a subscription that can keep Home Assistant informed of events or device changes in near real-time. See [Device Access: Events](https://developers.google.com/nest/device-access/api/events) for the full detailed instructions.
By the end of this section you will have the `subscriber_id` needed for configuration.
166
+
167
+
What is Pub/Sub? You can think of your Nest device as the publisher and your Home Assistant as the subscriber. As your Nest device publishes events like a temperature change or motion event, it notifies your Home Assistant subscriber about
168
+
those events so it can record the new value or trigger an automation.
169
+
161
170
162
171
1. Visit [Enable the Cloud Pub/Sub API](https://console.developers.google.com/apis/library/pubsub.googleapis.com) in the Cloud Console and click **Enable**.
163
172
@@ -166,7 +175,9 @@ The next phase is to enable the Pub/Sub API by creating a subscription that can
166
175
1. You will need to pick a *Subscription ID*.
167
176

168
177
169
-
1. The *Topic name* should match the topic name in your project in the [Device Access Console](https://console.nest.google.com/device-access/) and typically looks like `projects/sdm-prod/topics/EXAMPLE`. The SDM topic names do not show up by default so make sure to **Enter topic manually**.
178
+
1. Select **Enter Topic Manually** from the topic drop down list.
179
+
1. The *Topic name* comes from the [Device Access Console](https://console.nest.google.com/device-access/)*Topic name*
180
+
and typically looks like `projects/sdm-prod/topics/EXAMPLE`.
170
181

171
182
172
183
1. Select **Pull** as the *Delivery Type*.
@@ -175,7 +186,9 @@ The next phase is to enable the Pub/Sub API by creating a subscription that can
175
186
176
187
1. Leave the rest of the defaults and click **Create**.
177
188
178
-
1. Once created, copy the *Subscription name* which you will want to hold on to as your `subscriber_id` for configuring Home Assistant. This typically looks like `projects/MY-CLOUD-ID/subscriptions/EXAMPLE`. Don't confuse *Subscription name* with *Topic name* since they look similar.
189
+
1. Once created, copy the *Subscription name* which you will want to hold on to as your `subscriber_id` for configuring Home Assistant. This typically looks like `projects/MY-CLOUD-ID/subscriptions/EXAMPLE`.
190
+
1. Don't confuse *Subscription name* with *Topic name* since they look similar. Remember that *Subscription name* is
191
+
your `subscriber_id`.
179
192
180
193
{% enddetails %}
181
194
@@ -281,9 +294,9 @@ everything, however, you can leave out any feature you do not wish to use with H
281
294
282
295
{% details "How to restart thermostat" %}
283
296
284
-
- Restart the Thermostat device. See [How to restart or reset a Nest thermostat](https://support.google.com/googlenest/answer/9247296) for more details.
285
-
- In the official Nest app or on https://home.nest.com: Move the Thermostat to a different or fake/temporary room.
286
-
- Reload the integration in Home Assistant: Navigate to **Configuration** then **Integrations**, click `...` next to *Nest* and choose **Reload**.
297
+
- Restart the Thermostat device. See [How to restart or reset a Nest thermostat](https://support.google.com/googlenest/answer/9247296) for more details.
298
+
- In the official Nest app or on https://home.nest.com: Move the Thermostat to a different or fake/temporary room.
299
+
- Reload the integration in Home Assistant: Navigate to **Configuration** then **Integrations**, click `...` next to *Nest* and choose **Reload**.
0 commit comments