Smart Device Management API

SDM API adalah REST API yang menyediakan berbagai metode untuk melihat sifat dan menjalankan perintah sifat untuk pengelolaan perangkat Google Nest. Gunakan token akses yang diberikan selama proses otorisasi dengan setiap panggilan API.

Sifat

SDM API menggunakan model berbasis sifat untuk informasi dan fungsi perangkat. Lihat panduan perangkat individual untuk melihat sifat yang tersedia untuk perangkat:

Metode

Lihat Referensi API untuk mengetahui detail lengkap tentang semua metode yang tersedia untuk SDM API.

executeCommand

Menjalankan perintah ke perangkat yang diotorisasi.

Gunakan panggilan POST untuk menjalankan perintah. Misalnya, untuk mengubah mode termostat:

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.ThermostatMode.SetMode",
  "params" : {
    "mode" : "HEAT"
  }
}

Contoh perintah lainnya dapat ditemukan di setiap halaman referensi sifat. Lihat daftar sifat lengkap untuk mengetahui informasi selengkapnya.

get

Mendapatkan informasi tentang struktur atau perangkat yang diotorisasi.

Panggilan GET menampilkan satu respons dengan kolom dan nilai saat ini untuk semua sifat yang tersedia untuk struktur atau perangkat yang telah diotorisasi dan objek `parentRelations`, yang mewakili resource induk dari resource saat ini, baik struktur maupun ruangan. user

Misalnya, Nest Thermostat dapat menampilkan hal berikut:

GET /enterprises/project-id/devices/device-id
{
  "name" : "enterprises/project-id/devices/device-id",
  "type" : "sdm.devices.types.THERMOSTAT",
  "assignee" : "enterprises/project-id/structures/structure-id/rooms/room-id",
  "traits" : {
    "sdm.devices.traits.Connectivity" : {
      "status" : "ONLINE"
    },
    "sdm.devices.traits.Fan" : {
      "timerMode" : "ON",
      "timerTimeout" : "2019-05-10T03:22:54Z"
    },
    "sdm.devices.traits.Humidity" : {
      "ambientHumidityPercent" : 35.0
    },
    "sdm.devices.traits.Info" : {
      "customName" : "My device"
    },
    "sdm.devices.traits.Settings" : {
      "temperatureScale" : "CELSIUS"
    },
    "sdm.devices.traits.Temperature" : {
      "ambientTemperatureCelsius" : 23.0
    },
    "sdm.devices.traits.ThermostatEco" : {
      "availableModes" : ["MANUAL_ECO", "OFF"],
      "mode" : "MANUAL_ECO",
      "heatCelsius" : 20.0,
      "coolCelsius" : 22.0
    },
    "sdm.devices.traits.ThermostatHvac" : {
      "status" : "HEATING"
    },
    "sdm.devices.traits.ThermostatMode" : {
      "availableModes" : ["HEAT", "COOL", "HEATCOOL", "OFF"],
      "mode" : "COOL"
    },
    "sdm.devices.traits.ThermostatTemperatureSetpoint" : {
      "heatCelsius" : 20.0,
      "coolCelsius" : 22.0
    }
  },
  "parentRelations" : [
    {
      "parent" : "enterprises/project-id/structures/structure-id/rooms/room-id",
      "displayName" : "Lobby"
    }
  ]
}

list

Mencantumkan struktur, ruangan, atau perangkat yang diotorisasi.

Untuk mencantumkan semua struktur, ruangan, atau perangkat yang diotorisasi dengan satu token akses, lakukan panggilan GET ke endpoint resource yang sesuai:

GET /enterprises/project-id/structures
GET /enterprises/project-id/structures/structure-id/rooms
GET /enterprises/project-id/devices

Integrasi Asisten Google

Setelah perangkat diotorisasi untuk SDM, Google akan mengetahui perangkat tersebut di Home Graph dan mengelola statusnya secara langsung. Jika Anda memiliki integrasi Asisten Google sebagai bagian dari penawaran Komersial:

Error

Lihat API Error Code Reference untuk mengetahui daftar lengkap kode error API.