Rest-API
Schwierigkeitsgrad: Experte
Lernziele
Nach der Lektüre dieses Artikels werden Sie in der Lage sein:
verstehen, was Workplace APIs leisten können
Workplace APIs testen
API steht für Application Programming Interface und ermöglicht den einfachen Austausch von Daten und Funktionen. Die Workplace-API-Dokumentation (Swagger) ist auf einer separaten Registerkarte im GO-Menü verfügbar.
Wie man auf Workplace API zugreift
Gehen Sie zu https://go.cobundu.com/
Anmeldung mit Ihren Anmeldedaten
Diese Option wird nur für Benutzer angezeigt, denen eine Entwickler- oder Administratorrolle zugewiesen ist. Siehe Roles and Profiles für weitere Informationen.
Um die APIs in Ihren eigenen Projekten zu verwenden (z. B. postman), sollten Sie den swagger.json-Link verwenden. Wie Sie auf dem Screenshot sehen können, wird standardmäßig die Seite "latest" geöffnet, aber das kann sich natürlich ändern.
Verwenden Sie nummerierte Versionen (z.B. https://go.cobundu.com/rest/v3/docs), um Konflikte zu vermeiden.
Die Verwendung einer bestimmten Version hat den Vorteil, dass man in Zukunft API-Versionen vergleichen kann.
Stellen Sie sicher, dass Sie für jede API-Methode die neueste Version wählen.
Stand September 2024
GO API: v3 ist die aktuellste Version, also siehe https://go.cobundu.com/rest/v3/docs
auth-basierte API: v2 ist die neueste Version, also siehe https://login.cobundu.com/rest/v2/docs
Testen der API: Beispiele
Es ist möglich, die Workplace API auszuprobieren/zu testen. Je nach Anfrage müssen Sie möglicherweise zunächst einige Informationen eingeben.
Beispiel 1. Abrufen der Liste der Sensorgeräte
Wählen Sie "Probieren Sie es aus",
dann "Ausführen",
um eine Liste aller Sensorgeräte zu erhalten, die derzeit mit diesem Mieter verbunden sind.
Wie Sie im Beispiel sehen können, wird jeder Sensorkanal (z.B. Luftfeuchtigkeit, Temperatur und CO2 in einem Komfortsensor) separat geliefert.
Beispiel 2. Abrufen der aktuellen Sensordaten für einen Standort
Wählen Sie "Probieren Sie es aus",
Hinzufügen der obligatorischen Standort-ID
dann "Ausführen",
um die aktuellen Sensordaten aller Sensoren zu erhalten, die mit diesem Ort verbunden sind.
Wie Sie im Beispiel sehen können, ist 1 Komfortsensor mit dem angefragten Ort verknüpft. Daher werden alle für diesen Sensor verfügbaren Kanalwerte (in diesem Fall Temperatur und Luftfeuchtigkeit) geliefert, sowie der Zeitstempel, zu dem diese Werte empfangen wurden.
In den folgenden Beispielen wird die "Standort-ID" erwähnt. Auswählen eines Ortes auf https://go.cobundu.com/ wird die Referenz angezeigt, z. B. "Besprechungsraum 1". Im Workplace-Backend hat jedoch jeder Standort eine eindeutige Standort-ID.
Die Standort-ID ist im Workplace-Backend verfügbar. https://studio.cobundu.com URL für jeden ausgewählten Standort.
Zum Beispiel lautet die Standort-ID für die Etage "2nd floor" in den Spacewell-Büros in Antwerpen "910000000004545".
Beispiel 3. Reservierungen
Um die Reservierungen aus Ihrer Umgebung abzurufen, können Sie Reservations API > "get a list of bookings" verwenden.
Ändern Sie die Daten in der Suchanweisung, um (gefilterte) Reservierungen zu erhalten, die jeweils die Standort-ID enthalten und somit angeben, welcher Standort gebucht wurde.
Geben Sie Standort-IDs in den Suchfilter ein, um gefilterte Daten zu erhalten.
Beispiel 4. Abrufen von Standortinformationen
Auswählen eines Ortes auf https://go.cobundu.com/ wird die Referenz angezeigt, z. B. "Besprechungsraum 1". Im Workplace-Backend hat jedoch jeder Standort eine eindeutige Standort-ID.
Die Standort-API kann Ihnen helfen, diese Informationen zu erhalten.
Je nachdem, was benötigt wird:
eine Liste der Standorte für diesen Kunden erhalten
spezifische Standortinformationen anfragen (z. B. Informationen über eine Reihe von Arbeitsplätzen): "get location tree" (Filter der obersten Ergebnisstufe = Workplace)
Beispiel 5. Grundriss
Um einen Workplace-Grundriss zu erhalten, wählen Sie API Locations > "get a location's drawing as SVG".
Die angefragte Standort-ID ist in diesem Fall die Etagen-ID.
"Testing" in Swagger liefert eine Antwort, kann aber das SVG nicht anzeigen.
Geben Sie die ID der Etage in die folgende URL ein, um die SVG zu sehen: https://go.eu1.cloud.cobundu.com/rest/v3/locations/Etagenstandort-ID/Zeichnung/svg
Konkreter Anwendungsfall: URL zur Anzeige eines Live-Grundrisses
Stellen Sie sich vor, Sie möchten eine URL an Ihre Kioskbildschirme senden, um Workplace Live-Grundrissdaten zu visualisieren.
Hier schlagen wir vor, ein Zugriffstoken mit einer URL bereitzustellen, so dass jeder, der den Link hat, den Live-Grundriss sehen kann.
Alternative Methoden und häufig gestellte Fragen zu diesem Thema finden Sie hier: Workplace live floorplan data visualization
Die unten vorgeschlagene dedizierte Methode beinhaltet eine Web-Authentifizierung über die Rest-API. Dies bedeutet, dass ein Workplace-Login und ein Passwort erforderlich sind und die API ein JWT-Token zurückgibt, das für den Zugriff auf alle anderen API-Aufrufe verwendet werden kann. Für eine autorisierungsbezogene Aktion haben wir den COBUNDU Autorisierungsdienst. Er hat eine öffentliche Swagger UI (und einen swagger.json-link), die unter https://login.cobundu.com/rest/v2/docs. Sie können die API über Swagger UI oder Postman oder ein anderes Tool Ihrer Wahl verwenden. Dieses Beispiel basiert auf unserer Swagger UI.
Voraussetzungen
Web-Kiosk muss in Studio konfiguriert werden
Pro Etage, für die Sie eine Visualisierung einrichten wollen, wird ein Workplace-Benutzer benötigt:
Workplace-Mindestrechte/keine besondere Rolle erforderlich
unter Berücksichtigung der für diese Umgebung eingerichteten Reservierungsfunktionen
Benutzername + Passwort
Für den Zugang zur API: Workplace-Benutzer mit der Rolle Admin oder Entwickler
Lösung
API verwenden, um Sitzungs-Token zu erhalten
Gehen Sie zu https://login.cobundu.com/rest/v2/docs (Benutzer benötigt entweder die Rolle Admin oder Entwickler)
Wählen Sie "auth" > /auth/ssosettings/{loginId} (gibt sso-Einstellungen für den Benutzer zurück)
Benutzernamen angeben
Der Antwortkörper enthält den Hostnamen der COBUNDU Auth-Instanz, die verwendet werden muss (Workplace IoT Platform ist für die EU und die USA verfügbar) (z. B. "apiUrl"): https://login.eu1.cloud.cobundu.com)
Navigieren Sie zum apiUrl + /rest/v2/docs aus dem vorherigen Schritt, d. h. https://login.eu1.cloud.cobundu.com/rest/v2/docs ist dieses Beispiel (der Benutzer benötigt entweder die Rolle Admin oder Entwickler)
Wählen Sie "auth" > /auth/login (Benutzer authentifizieren)
Geben Sie den Benutzernamen und das Passwort an, die für den Zugriff auf die Live-Daten verwendet werden sollen
Ändern Sie den Anmeldeparameter "rememberme": true
Das Restfeld kann entfernt werden. Beispiel (versuchen Sie, kein Komma am Ende der Passwortzeile zu lassen):
Der Antwortkörper enthält accessToken
Zugangstoken ist bereit zur Verwendung
Web-Kiosk-URL vorbereiten
Gehen Sie zu http://go.cobundu.com (Benutzer benötigt entweder die Rolle Admin oder Entwickler) > Kiosk-Modus
Wählen Sie die entsprechende Etage aus > Web-Kiosk öffnen
Die Web-Kiosk-URL hat das Format https://go.cobundu.com/kiosk/MEETING%7C1d18e8b0-48a7-464c-8813-66608b474d6d
Navigieren Sie in einem Browser zu https://go.cobundu.com/rest/serverinfo oder in Postman eine Anfrage stellen an https://go.cobundu.com/rest/serverinfo?jwt= und kopieren/einfügen Sie accessToken am Ende der URL
Die apiUrl enthält einen korrekten Cloud-Endpunkt für Ihr Konto (EU oder USA). Ersetzen Sie go.cobundu.com in Ihrer Web-Kiosk-URL mit dieser Region apiUrl, erhalten Sie z. B. https://go.eu1.cloud.cobundu.com/kiosk/MEETING| ...
Fügen Sie das Suffix "?jwt=" hinzu und fügen Sie accessToken am Ende der URL ein
Zugang zu dieser URL (z. B. im Inkognito-Modus), und der Webkiosk öffnet sich in der gewählten Etage, ohne dass eine Identifizierung erforderlich ist. Innerhalb der Anwendung wird alle 10 Minuten eine Sitzungsaktualisierung durchgeführt.
Nachdem der Token erhalten wurde, haben Sie 10 Minuten Zeit, um ihn in der URL weiterzugeben und den Grundriss zu öffnen.
Nach dem Laden des Grundrisses erfolgt die weitere Token-Erneuerung automatisch und ohne Sitzungsverluste oder manuelle Eingriffe.
Beschränkungen
Web-Kiosk zeigt Reservierungsansicht (= kombinierte Belegungs- und Reservierungsdaten (falls verfügbar))
Wenn der Browser abstürzt/der Computer nicht angeschlossen ist: Starten Sie den Prozess neu, um ein neues Zugriffstoken zu erhalten.
Suche