SDM API는 Google Nest 기기 관리를 위해 트레잇을 보고 트레잇 명령어를 실행하는 다양한 메서드를 제공하는 REST API입니다. 각 API 호출 시 승인 프로세스 중에 부여된 액세스 토큰을 사용합니다.
특성
SDM API는 기기 정보에 특성 기반 모델을 사용합니다. 확인할 수 있습니다 개별 기기 가이드에서 특성이 무엇인지 확인하세요. 기기에서 사용할 수 있습니다.
메서드
SDM API에서 사용할 수 있는 모든 메서드에 관한 자세한 내용은 API 참조를 참고하세요.
executeCommand
승인된 기기에 명령어를 실행합니다.
POST
호출을 사용하여 명령어를 실행합니다. 예를 들어 온도 조절기 모드를 변경하려면 다음 단계를 따르세요.
POST /enterprises/project-id/devices/device-id:executeCommand { "command" : "sdm.devices.commands.ThermostatMode.SetMode", "params" : { "mode" : "HEAT" } }
명령어의 추가 예는 각 개별 특성 참조에서 확인할 수 있습니다. 있습니다. 자세한 내용은 전체 트레잇 목록을 참고하세요.
get
승인된 구조 또는 기기에 관한 정보를 가져옵니다.
GET
호출은 모든 현재 필드와 값이 포함된 단일 응답을 반환합니다.
특성이 user 인 구조 또는 기기에 사용 가능한 특성이
`parentRelations' 상위 리소스를 나타내는 객체입니다.
리소스(구조 또는 방)를 지정할 수 있습니다
예를 들어 Nest Thermostat은 있습니다.
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
승인된 구조물, 방 또는 기기를 나열합니다.
단일 액세스 토큰으로 승인된 모든 구조물, 방 또는 기기를 나열하려면 적절한 리소스 엔드포인트에 대해 GET
를 호출합니다.
GET /enterprises/project-id/structures
GET /enterprises/project-id/structures/structure-id/rooms
GET /enterprises/project-id/devices
Google 어시스턴트 통합
기기가 SDM에 승인되면 Google은 Home Graph에서 기기를 인식하고 기기 상태를 직접 관리합니다. Google 어시스턴트 통합을 사용 중인 경우 상업적 서비스의 일부로:
- SDM 기기에 요청 동기화 요청을 전송하지 않음
- SYNC에 대한 응답에서 SDM 기기를 생략합니다. 인텐트
오류
API 오류 코드의 전체 목록은 API 오류 코드 참조를 확인하세요.