Stay organized with collections
Save and categorize content based on your preferences.
The Device Access program allows users to access, control, and manage
Google Nest devices using the SDM API.
To get started with Device Access, you need to complete the following tasks:
Register for the Device Access program.
Activate a supported Nest device with a Google account.
Create a Google Cloud project to enable the
SDM API and get an OAuth 2.0 client ID.
Create a Device Access project to receive a Project ID.
Register for Device Access
Before creating your first project, you must register for Device Access.
Registration consists of the acceptance of the Google API and Device
Access Sandbox Terms of Service, along with a one-time,
non-refundable fee (US$5) per account.
You will not be able to create a project until you have accepted both Terms of
Service and paid the registration fee. This applies to all users, both
individual users and those looking to create a commercial
offering.
Register in the Device Access Console, if you haven't already:
The following devices are supported in the Device Access program:
All Google Nest Thermostats
All Google Nest Cameras
All Google Nest Doorbells
Google Nest Hub Max
See the Supported Devices page for a
listing of individual device models.
See the device manuals for information on how to activate your supported device.
Set up Google Cloud Platform
Access to the SDM API is provided through
Google Cloud. To enable the API and authorize a Google account with
a supported Nest device, you'll need a Google Cloud
project.
Use the Enable the API and get an OAuth 2.0 Client ID button below to enable
the Smart Device Management API and get an OAuth 2.0 Client ID:
If you have an existing Google Cloud project that you would like
to use for Device Access, make sure you are logged into the admin account
for that project first. Then select the existing project from the list of
available projects after clicking the button. Otherwise, create a new
project.
Select Web Server when it asks "Where are you calling from?".
Enter https://www.google.com as the value for Authorized redirect
URIs. A redirect URI is required to obtain an Authorization Code using
PCM.
Once setup is complete, copy the OAuth 2.0 Client ID and Client Secret
values, and download the Credentials JSON to your local machine.
If you want to manually set up your Google Cloud project, or verify
the setup and retrieve your credentials again:
Enable Smart Device Management API on the
API Enablement page.
Get an OAuth 2.0 Client ID on the
Credentials page.
Create a Device Access project
Return to the Device Access Console.
At the Console home screen, select
add_circle_outline Create
project.
Fill out each screen in the creation process:
Enter a name for your project.
Enter the OAuth 2.0 Client ID generated during
Set up Google Cloud Platform. If you
didn't copy your OAuth Client ID earlier, you can find it in the
credentials.json file you downloaded.
Enable or disable events. Events are managed by Google Cloud Pub/Sub
and provide asynchronous updates for all devices and structures
authorized for your project. If you want events, select
Enable events, then Create Project, and then edit the Pub/Sub
topic and provide a Topic ID. If you're not sure, select Disable.
They can always be enabled later.
Upon completion, your project is assigned a Project ID, in the form of a
UUID, such as 32c4c2bc-fe0d-461b-b51c-f3885afff2f0. Make note of this ID,
you need it for all SDM API calls.
This Project ID is used in OAuth and API calls. It is specific to your
Device Access project, and is not related to a Google Cloud
Project ID.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-07-25 UTC."],[[["\u003cp\u003eThe Device Access program enables users to access and manage Google Nest devices via the SDM API.\u003c/p\u003e\n"],["\u003cp\u003eTo utilize Device Access, users must register for the program, activate a supported Nest device with a Google account, and set up a Google Cloud project for API access.\u003c/p\u003e\n"],["\u003cp\u003eA Device Access project needs to be created, requiring a unique Project ID for all SDM API calls, and users must use a consumer Google Account for registration.\u003c/p\u003e\n"],["\u003cp\u003eSupported devices include all Google Nest Thermostats, Cameras, Doorbells, and Google Nest Hub Max.\u003c/p\u003e\n"]]],[],null,["The Device Access program allows users to access, control, and manage\nGoogle Nest devices using the SDM API.\n\nTo get started with Device Access, you need to complete the following tasks:\n\n1. Register for the Device Access program.\n2. Activate a supported Nest device with a Google account.\n3. Create a Google Cloud project to enable the SDM API and get an OAuth 2.0 client ID.\n4. Create a Device Access project to receive a Project ID.\n\nRegister for Device Access\n\nBefore creating your first project, you must register for Device Access.\nRegistration consists of the acceptance of the [Google API](/terms) and [Device\nAccess Sandbox](/nest/device-access/tos) Terms of Service, along with a one-time,\nnon-refundable fee (US$5) per account.\n\nYou will not be able to create a project until you have accepted both Terms of\nService and paid the registration fee. This applies to all users, both\nindividual users and those looking to create a commercial\noffering.\n\nRegister in the Device Access Console, if you haven't already:\n\n[Go to the Device Access Console](https://console.nest.google.com/device-access)\n| **Warning:** You must use a [consumer Google Account](https://support.google.com/work/android/answer/6371476) (for example, a gmail.com account) to register for Device Access. You cannot use a Google Workspace account. If you work for an organization, we suggest registering for Device Access using an account for your team.\n| **Warning:** Once a Google Account is associated with your Device Access Project **it cannot be changed**, be sure you are signed into the correct Google Account before continuing.\n\nSee [Device Access Registration](/nest/device-access/registration) for more\ninformation.\n\nActivate a supported device\n\nThe following devices are supported in the Device Access program:\n\n- All Google Nest Thermostats\n- All Google Nest Cameras\n- All Google Nest Doorbells\n- Google Nest Hub Max\n\nSee the [Supported Devices](/nest/device-access/supported-devices) page for a\nlisting of individual device models.\n| **Note:** A supported device must be activated with a Google account. Legacy Nest accounts are **not** supported for Device Access. See the [FAQs\n| about accounts for the Nest app](https://support.google.com/googlenest/answer/9297676) for more information on migrating a legacy Nest account.\n\nSee the device manuals for information on how to activate your supported device.\n\nSet up Google Cloud Platform\n\nAccess to the SDM API is provided through\nGoogle Cloud. To enable the API and authorize a Google account with\na supported Nest device, you'll need a Google Cloud\nproject.\n\nUse the **Enable the API and get an OAuth 2.0 Client ID** button below to enable\nthe **Smart Device Management API** and get an OAuth 2.0 Client ID:\n\n1. If you have an existing Google Cloud project that you would like to use for Device Access, make sure you are logged into the admin account for that project first. Then select the existing project from the list of available projects after clicking the button. Otherwise, create a new project.\n2. Select **Web Server** when it asks \"Where are you calling from?\".\n3. Enter *https://www.google.com* as the value for **Authorized redirect\n URIs**. A redirect URI is required to obtain an Authorization Code using PCM.\n4. Once setup is complete, **copy the OAuth 2.0 Client ID and Client Secret\n values, and download the Credentials JSON to your local machine**.\n\nEnable the API and get an OAuth 2.0 Client ID\n\nIf you want to manually set up your Google Cloud project, or verify\nthe setup and retrieve your credentials again:\n\n1. Enable **Smart Device Management API** on the [API Enablement](https://console.developers.google.com/apis/library/smartdevicemanagement.googleapis.com) page.\n2. Get an OAuth 2.0 Client ID on the [Credentials](https://console.developers.google.com/apis/credentials) page.\n\nCreate a Device Access project\n\nReturn to the Device Access Console.\n\n1. At the Console home screen, select **add_circle_outline Create\n project**.\n2. Fill out each screen in the creation process:\n 1. Enter a name for your project.\n 2. Enter the OAuth 2.0 Client ID generated during [Set up Google Cloud Platform](#set_up_google_cloud_platform). If you didn't copy your OAuth Client ID earlier, you can find it in the `credentials.json` file you downloaded. **Note:** To use a project with the SDM API:\n | - You must specify a valid OAuth Client ID for the project.\n | - An OAuth Client ID must be valid and unique to a project, and cannot be shared with other projects.\n 3. Enable or disable events. Events are managed by Google Cloud Pub/Sub and provide asynchronous updates for all devices and structures authorized for your project. If you want events, select **Enable events** , then **Create Project** , and then edit the Pub/Sub topic and provide a Topic ID. If you're not sure, select **Disable**. They can always be enabled later.\n3. Upon completion, your project is assigned a Project ID, in the form of a UUID, such as `32c4c2bc-fe0d-461b-b51c-f3885afff2f0`. Make note of this ID, you need it for all SDM API calls.\n\nThis Project ID is used in OAuth and API calls. It is specific to your\nDevice Access project, and is not related to a Google Cloud\nProject ID."]]