/
Rest-API

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

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.

 

image-20240524-135305.png

 

Stellen Sie sicher, dass Sie für jede API-Methode die neueste Version wählen.

Stand September 2024

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

  1. Wählen Sie "Probieren Sie es aus",

  2. dann "Ausführen",

  3. 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

  1. Wählen Sie "Probieren Sie es aus",

  2. Hinzufügen der obligatorischen Standort-ID

  3. dann "Ausführen",

  4. 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

  1. API verwenden, um Sitzungs-Token zu erhalten

    1. Gehen Sie zu https://login.cobundu.com/rest/v2/docs (Benutzer benötigt entweder die Rolle Admin oder Entwickler)

      1. Wählen Sie "auth" > /auth/ssosettings/{loginId} (gibt sso-Einstellungen für den Benutzer zurück)

      2. Benutzernamen angeben

      3. 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)

    2. 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)

      1. Wählen Sie "auth" > /auth/login (Benutzer authentifizieren)

      2. Geben Sie den Benutzernamen und das Passwort an, die für den Zugriff auf die Live-Daten verwendet werden sollen

      3. Ändern Sie den Anmeldeparameter "rememberme": true

      4. Das Restfeld kann entfernt werden. Beispiel (versuchen Sie, kein Komma am Ende der Passwortzeile zu lassen):

      5. Der Antwortkörper enthält accessToken

      6. Zugangstoken ist bereit zur Verwendung

  2. Web-Kiosk-URL vorbereiten

    1. Gehen Sie zu http://go.cobundu.com (Benutzer benötigt entweder die Rolle Admin oder Entwickler) > Kiosk-Modus

    2. Wählen Sie die entsprechende Etage aus > Web-Kiosk öffnen

    3. Die Web-Kiosk-URL hat das Format https://go.cobundu.com/kiosk/MEETING%7C1d18e8b0-48a7-464c-8813-66608b474d6d

    4. 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

    5. 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| ...

    6. Fügen Sie das Suffix "?jwt=" hinzu und fügen Sie accessToken am Ende der URL ein

  3. 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.

    1. Nachdem der Token erhalten wurde, haben Sie 10 Minuten Zeit, um ihn in der URL weiterzugeben und den Grundriss zu öffnen.

    2. 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

Search

Related content