Die Architektur der Nest API

Nest-Dienst

Mit Nest-Anwendungen können sich Nutzer von überall aus mit ihrem Zuhause verbinden. Alle Nest-Geräte (Thermostate, Protect-Geräte und Kameras) und Anwendungen (iOS, Android und Webanwendungen) sind mit dem Nest-Dienst verbunden.

Beispiel für eine Cloud-zu-Cloud

Der Nest-Dienst stellt ein Datenmodell des Zuhauses bereit. Geräte und Anwendungen, die aus diesem Datenmodell lesen, um die entsprechenden Maßnahmen zu ergreifen. Sie aktualisieren das Datenmodell, um Änderungen im System widerzuspiegeln.

Ein Thermostat liest beispielsweise seine Zieltemperatur aus dem Datenmodell. Die Umgebungstemperatur wird auf den aktuellen Messwert eingestellt und Sensordaten werden an die Zuhause/Abwesend-Funktion gesendet, die den Strukturmodus entsprechend anpasst.

Nest-Geräte arbeiten in Umgebungen mit eingeschränkter Umgebung. Die Stromversorgung ist eingeschränkt und die Heimnetzwerkverbindung kann nicht zuverlässig sein. Deine Produkte und Dienste können unsere Gerätealgorithmen nutzen, um den Nutzern eine einfache, intuitive Nutzung zu ermöglichen.

Das Datenmodell

Die Nest API wird als JSON-Dokument mit den übergeordneten Attributen metadata, devices und structures dargestellt. Ihre Works with Nest-Produkte verwenden dieses JSON-Dokument, um mit Nest-Geräten zu interagieren und auf entsprechende Statusänderungen zu reagieren.

Nest structures stellt reale Strukturen in der realen Welt dar. Sie dienen als organisatorischer Zugangspunkt für devices und speichern Daten für das gesamte Gebäude. Normalerweise ist structure das Zuhause eines Nutzers.

Nest devices stellt physische Geräte (Thermostate, Protect-Geräte und Kameras) innerhalb eines Gebäudes dar.

Jedes Datenelement im JSON-Dokument ist über die URL erreichbar (auch als "Speicherorte für Daten" bezeichnet). Works with Nest-Produkte können in diesem Dokument Abschnitte lesen und schreiben und Änderungen abonnieren. Mit dieser Abofunktion können Works with Nest-Produkte in Echtzeit auf Änderungen am System reagieren und beispielsweise das Licht ausschalten, wenn ein Nutzer das Gebäude in den Modus AwayAbwesend“ versetzt.

Objekte funktionieren auch unter realen Einschränkungen. Das Datenmodell schützt Geräte und das Zuhause des Nutzers, indem es unerwartete und gefährliche Aktionen verhindert. Der Thermostat schaltet die Klimaanlage beispielsweise nicht aus, wenn die Notheizung aktiviert ist.

Entdecken Sie das Datenmodell mit dieser interaktiven API-Referenz.

Gewünschter Zustand

Der Nest-Dienst speichert den autoritativen Status des Systems und Works with Nest-Produkte abonnieren Änderungen. Wenn Sie diesen Status ändern, um beispielsweise die Zieltemperatur eines Thermostats zu ändern, sendet der Dienst eine Änderungsbenachrichtigung an alle Abonnenten.

Da diese Übertragung etwas verzögert ist und Netzwerke unzuverlässig sein können, ist der von einem Produkt beobachtete Status möglicherweise nicht der Zustand, der aktuell von anderen Produkten oder dem Dienst beobachtet wird. Der Status wird schließlich synchronisiert, wenn Nachrichten zwischen verschiedenen Produkten übertragen werden.

Dieses dokumentenbasierte Veröffentlichungs-/Abonnieren-Modell bietet responsive Anwendungsinteraktionen.

Nest-Dienst verwenden

Verwenden Sie HTTPS in Ihrem Produkt, um auf die REST-Endpunkte im Nest-Dienst zuzugreifen. Dafür gibt es viele Clientbibliotheken von Drittanbietern.

Berechtigungen und Autorisierung

Wir möchten Entwicklern das Erstellen von Produkten und Diensten ermöglichen, die das Zuhause verbessern, ohne den Datenschutz und die Sicherheit für Nutzer zu gefährden. Die gesamte Kommunikation ist sicher und der Nutzer hat immer Zugriff auf die Daten. Weitere Informationen finden Sie in der Berechtigungsübersicht.

Die Autorisierung erfolgt über das OAuth 2.0-Protokoll. Wenn ein Nutzer Zugriff auf die angeforderte Berechtigungsstufe gewährt, authentifiziert Nest die Anfrage und dem Sender wird ein Zugriffstoken zugewiesen. Mit diesem Zugriffstoken können Sie auf die Nest API zugreifen und mit den Strukturen und Geräten des Nutzers interagieren.

Durch das Gewähren eines Zugriffstokens wird eine Vertrauensstellung zwischen einem Nutzer, einem Works with Nest-Produkt und Nest hergestellt. Nutzer können den Zugriff jederzeit widerrufen.

Informationen zum Autorisieren einer Verbindung zur Nest API finden Sie in der Autorisierungsübersicht.