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:
- Kamera
- Kamera (baterai)
- Kamera dengan Lampu Sorot
- 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 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:
- Jangan mengirim Sinkronisasi Permintaan permintaan untuk perangkat SDM
- Jangan sertakan perangkat SDM dalam respons apa pun terhadap intent SYNC
Error
Lihat API Error Code Reference untuk mengetahui daftar lengkap kode error API.