Get Started

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:

  1. Register for the Device Access program.
  2. Activate a supported Nest device with a Google account.
  3. Create a Google Cloud project to enable the SDM API and get an OAuth 2.0 client ID.
  4. 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:

Go to the Device Access Console

See Device Access Registration for more information.

Activate a supported device

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:

  1. 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.
  2. Select Web Server when it asks "Where are you calling from?".
  3. Enter as the value for Authorized redirect URIs. A redirect URI is required to obtain an Authorization Code using PCM.
  4. Once setup is complete, copy the OAuth 2.0 Client ID and Client Secret values, and download the Credentials JSON to your local machine.
Enable the API and get an OAuth 2.0 Client ID

If you want to manually set up your Google Cloud project, or verify the setup and retrieve your credentials again:

  1. Enable Smart Device Management API on the API Enablement page.
  2. Get an OAuth 2.0 Client ID on the Credentials page.

Create a Device Access project

Return to the Device Access Console.

  1. At the Console home screen, select Create project.
  2. Fill out each screen in the creation process:
    1. Enter a name for your project.
    2. 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.
    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. Select Enable if you want events. If you're not sure, select Disable. They can always be enabled later.
  3. 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.