SDM API adalah REST API yang menyediakan berbagai metode untuk melihat karakteristik dan menjalankan perintah trait untuk pengelolaan perangkat Google Nest. Gunakan token akses yang diberikan selama proses otorisasi dengan setiap panggilan API.
Sifat
SDM API menggunakan model berbasis karakteristik untuk informasi dan fungsi perangkat. Periksa masing-masing panduan perangkat untuk melihat karakteristik yang tersedia untuk perangkat:
- Kamera
- Kamera (baterai)
- Kamera dengan Floodlight
- Kamera (berkabel)
- Display
- Bel pintu
- Bel pintu (baterai)
- Bel pintu (berkabel)
- Termostat
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 lebih lanjut dapat ditemukan di setiap halaman referensi karakteristik. Lihat listingan fitur lengkap untuk informasi selengkapnya.
get
Mendapatkan informasi tentang struktur atau perangkat yang diizinkan.
Panggilan GET
menampilkan satu respons dengan kolom dan nilai saat ini untuk semua
fitur yang tersedia untuk struktur atau perangkat yang user telah
diotorisasi dan objek `parentRelations', yang mewakili resource induk
resource saat ini, baik struktur atau ruangan.
Misalnya, Nest Thermostat mungkin 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 diizinkan.
Untuk mencantumkan semua struktur, ruangan, atau perangkat yang diotorisasi dengan token akses tunggal, lakukan panggilan GET
terhadap 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 diberi otorisasi 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 Anda:
- Jangan kirim Permintaan Sinkronisasi untuk perangkat SDM
- Menghapus perangkat SDM dari respons apa pun terhadap intent SYNC
Error
Baca Referensi Kode Error API untuk mengetahui daftar lengkap kode error API.