🏆
Eliona
German
German
  • 💡Vorwort
    • Willkommen!
    • Über dieses Dokument
    • Typographische Konventionen
    • Das Interface
    • Bedienelemente
    • Glossar
    • FAQ
  • 🎉Neue Funktionen
    • Changelog – Aktuelle Version: v14.0.4
  • 🎓Academy
    • Eliona als Ticketing Plattform
      • Anleitung aus Sicht Admin
      • Anleitung aus Sicht Service
      • Anleitung aus Sicht Kunde
    • Einführung in Ontologien
      • Einführung in die Haystack Ontologie
      • Einführung in die Brick Ontologie
      • Einführung in die RealEstateCore Ontologie
      • Wie deckt Eliona Ontologien ab
    • Einen Zählerwechsel konfigurieren
    • Aggregationen in Eliona
    • White-Labeling
    • Ein Projekt erstellen
    • Einen Benutzer erstellen
    • Benutzer zu einem Projekt hinzufügen
    • Eine Rolle erstellen
    • Einem Benutzer eine Rolle zuordnen
    • Ein Asset erstellen und konfigurieren
    • Ein Dashboard erstellen
    • Eine Analytic erstellen und konfigurieren
    • Einen Alarm konfigurieren
    • Einen Digitalen Zwilling anlegen
    • Wie “Wayfinding” funktioniert
    • Werte-Mapping in Eliona
    • Twig-Templating in Eliona
    • Einführung und Tour durch die Benutzeroberfläche
  • 📚Dokumentation
    • 🗺️Wayfinding
      • Ein neues Wayfinding-Gebäude mit Stockwerken erstellen
      • Ein bestehendes Gebäude bearbeiten
      • Ein bestehendes Stockwerk öffnen
      • Ein Wayfinding Stockwerk konfigurieren
      • QR-Code generieren
      • Wayfinding in der Nuzung
    • 📊Dashboard
      • Ein neues Dashboard erstellen
      • Widgets zum Dashboard hinzufügen
      • Zwischen Dashboards wechseln
      • Layout von Dashboards anpassen
      • Dashboards organisieren
      • Dashboards an Benutzer kopieren
      • Globale Dashboards
      • Dashboard Templates
    • 🧊Widgets
      • Widgets bedienen
      • Vordefinierte Widgets
        • Alarm
        • Alarmübersicht
        • Analog Eingabe
        • Analoger Trend
        • Analyse
        • Asset Tracking
        • Behaglichkeit
        • Bereichsdiagramm
        • Bild
        • Buchung
        • Digitaler Trend
        • Donut
        • Einfache Anzeige
        • Eingabe Auswahl
        • Eingabe Schalter
        • Fahrplan
        • Fortschritt Radial
        • Fortschritt Vertikal
        • Heatmap
        • HLK KPI
        • iFrame
        • Kalender
        • Karte
        • Kombinierte Trends
        • Lichtsteuerung
        • Links
        • Radar-Diagramm
        • Reporttabelle
        • Sankey-Diagramm
        • Schalter
        • Slider
        • Stockwerk
        • Temperaturbereiche
        • Ticketübersicht
        • Tracking heatmap
        • Trend mit Balken
        • Trigger
        • Wetter
        • Zwei analoge Trends
        • Zwei digitale Trends
      • Benutzerdefinierte Widgets
        • Detaillierte Liste der Alarme
        • Liste der Alarme
        • Module
          • Alarm
          • Bereich
          • Bild
          • Custom Stockwerk
          • Donut
          • Eingaben & Schalter
          • Fortschritt
          • Heatmap
          • Icon
          • iFrame
          • Kalender
          • Karte
          • Komfort
          • Links
          • Radar
          • Sankey
          • Tabelle
          • Ticket
          • Tracking
          • Trend
          • Uhrzeit
          • Wert
          • Wetter
    • 🎈Assets
      • Assets erstellen
      • Asset-Details
      • Ein Asset konfigurieren
      • QR-Codes generieren
      • Bewertungen
      • Asset Daten
      • Dokumente an Assets anhängen
      • Einem Asset Links hinzufügen
      • Asset-Status: Aktive / Inaktive / Nicht Überwachte Assets
      • Assets auf einer Karte platzieren
      • Assets strukturieren
      • Assets archivieren
      • Asset-Modellierung: Templates erstellen
        • Ein neues Template erstellen
        • Ein neues Asset-Charakteristik-Template erstellen
      • ❤️Die Template-Bibliothek
        • Ein Template importieren
        • Ein Template Exportieren
    • 🎛️Smart Views
      • Eine neue Smart View erstellen
      • Eine bestehende Smart View öffnen
      • Eine Smart View konfigurieren
      • Eine Smart View bereitstellen
      • Slider Gruppen
      • Smart Assist
    • ⏰Alarme, Regeln und Eskalationen
      • 🚦Regeln
        • Eine Regel erstellen
      • 🚨Alarme
        • Quittierpflichtige und Gehende Alarme
        • Alarmstatistik
      • ↗️Eskalationen
        • Eine Neue Eskalationen erstellen
        • Eine Eskalation konfigurieren
        • Nutzer für Eskalationen konfigurieren
        • Notification Provider
          • Mail
          • Google Chat
          • SMS
          • Slack
          • eCall-Services
          • Job diagnostic
        • Allgemeinen Kalender erstellen
        • Eskalationen gruppieren
      • ⛓️Regelketten
        • Die Regelketten Seite öffnen
        • Eine neue Regelkette erstellen
        • Die Konfiguration einer bestehenden Regelkette öffnen
        • Regelkette konfigurieren
    • 🎟️Tickets
      • Tickets erstellen
      • Ticket Einstellungen
      • Ticket konfigurieren
      • Ticket-Details
      • Tasks erstellen
      • Task starten und abschliessen
      • Tickets schliessen
    • 📈Analytics & Reports
      • Analytics Nutzen
      • Reports Nutzen
    • 🌍Karte und Stockwerk
      • Karte
      • Stockwerk
        • Ein Stockwerk erstellen
        • Assets auf einem Stockwerk platzieren
        • Räume erstellen
        • Localino Anker konfigurieren
    • 🏛️BIM
      • Ein BIM öffnen
      • In einem BIM navigieren
      • Ein neues BIM erstellen
      • Assets in einem BIM platzieren
    • 📫Benachrichtigungen
      • Interne Benachrichtigungen
      • Benachrichtigungen Stumm Schalten
      • Push-Benachrichtigungen
      • Benachrichtigungen anpassen
    • 👥Digitaler Zwilling
    • ⚙️Engineering
      • Skript Engine
        • Skripte konfigurieren
        • Python Skripte schreiben
          • Output Logging und Fehlerbehandlung
          • Vorinstallierte Python-Bibliotheken im Eliona-System
          • Erstellen und Lesen von Dateien
        • PL/PgSQL-Skripte schreiben
      • Asset-Modellierung / Templates
        • Ein neues Template erstellen
        • Ein neues Asset-Charakteristik-Template erstellen
    • 🔧Einstellungen
      • Apps
        • Asset-Filter
      • Audit Trail
      • Lizenz
        • Lizenz läuft ab
      • System
      • API-Schlüssel
    • 🚩Tags
    • 🔮Systeme und Projekte
      • Ein neues Projekt erstellen
      • Benutzer zu einem Projekt hinzufügen
      • Aussehen eines Projekts anpassen
      • Startseite
      • Zwischen Projekten wechseln
    • 🧑‍💻Benutzer
      • Einen neuen Nutzer anlegen
      • Einen Nutzer einem Projekt zuweisen
      • Rolle eines Nutzers ändern
      • Zugriffsrechte von Nutzern verwalten
      • Benutzer archivieren und wiederherstellen
      • Benutzerdaten anpassen
    • 🎭Rollen
      • Warum sind Rollen so wichtig?
      • Das Rollen-Menü
      • Systemrollen
      • Projektrollen
    • 👾Weitere Funktionen
      • 📑Attribut Funktionen
        • ➗Werte berechnen: Der Calculator
        • 🕵️Filter
        • 📈Gerätesimulator
      • 🪃Lesezeichen
      • Tracking
      • 👀Monitoring
        • Monitoring mit Grafana
        • HDD Monitor
      • 🤳Augmented Reality
      • 🚢Bulk Import
  • 📶connectivity as a service
    • Geräte mit Eliona verbinden
      • Geräte per Modbus verbinden
        • Neue Modbus-Verbindung erstellen
        • Jobs lesen
      • Geräte per MQTT verbinden
        • Neuen Client erstellen
        • Client konfigurieren
        • Eine Subscription konfigurieren
        • Eine Publication konfigurieren
        • Eliona Broker
      • Geräte per RESTful verbinden
        • RESTful Verbindung konfigurieren
        • RESTful Request konfigurieren
      • Geräte per Webhook verbinden
      • ...mit Kafka
        • Eine neue Verbindung aufbauen
        • Verbindung konfigurieren
        • Abonnement konfigurieren
        • Publication konfigurieren
      • Geräte per OPC UA verbinden
        • Einen Endpunkt erstellen und konfigurieren
        • Endpunkt-Details
        • Verbindungs-Details
      • Ein Format konfigurieren
        • Format Konventionen und Beispiele
      • Funktionen
  • Edge Nodes
    • Was sind Edge Nodes?
    • EdgeNodes in Eliona
      • Control Edge einrichten
        • Eliona-Module für Niagara
  • 🍎Apps
    • Apps
      • ABB free@home
      • Akenza
      • Buchung
      • CoffeeCloud
      • Correlation App
      • Device simulator
      • Exchange-App
      • Forecast
        • Was ist Forecasting
        • Forecast App einfach nutzen
        • Parameter richtig Wählen
          • Alle Parameter auf einem Blick
        • Ablauf der Forecast App
        • Was sind Hyperparameter?
        • Parameter Konfiguration
        • Training Parameter einstellen
        • Binäre und Mehrklassen-Prognosen
        • Automatische Parameter
        • API-Dokumentation
        • Use Cases
      • Glutz
      • GP Joule
      • Hailo
      • Kentix
      • KentixONE
      • Kontakt.io
      • Localino
        • Geofencing-Funktion im Localino-System
      • Loriot.io
      • Microsoft 365
      • Microsoft ADFS
      • myStrom App
      • Niagara
      • OpenBOS
      • Renzbox
      • ROOMZ
      • SAML SSO
      • Signify
      • Spread Sheet
      • Stoppuhr
      • Thingdust
      • Xovis
      • Xovis People Counter
      • Zevvy
    • App SDK
  • 📢Feedback
    • 🐛Einen Bug melden
    • 💝Verbesserungsvorschlag senden / Feature wünschen
  • 👩‍💻Für Entwickler
    • REST API
    • Engineering
Powered by GitBook
On this page
  • REST API
  • Zugriff und Authentifizierung
  • Postman Collection mit Beispielen
  • Clients für den Zugriff auf die API

Was this helpful?

  1. Für Entwickler

REST API

PreviousVerbesserungsvorschlag senden / Feature wünschenNextEngineering

Last updated 2 months ago

Was this helpful?

REST API

Überblick über die Eliona REST APIDie Eliona REST API ermöglich einen einheitlichen Zugriff auf die Ressourcen und Daten einer Eliona Umgebung. Die Beschreibung der API liegt im weit verbreiteten Format vor und kann somit auf vielfältige Weise weiterverwendet werden.

Das ermöglicht mit vorgefertigten Bibliotheken für unterschiedliche Programmiersprachen den Zugriff auf Eliona über die API.

Zugriff und Authentifizierung

Die Eliona API kann man über den URL-Pfad /api/v2 erreichen. Lautet die URL für Eliona beispielsweise https://meine.eliona.domain, dann erreicht man die API über folgende URL:

https://meine.eliona.domain/api/v2

Für die Authentifizierung ist ein API-Key zu verwenden. Dieser wird pro Anwendung vom Administrator von Eliona ausgestellt und kann mit einem Ablaufdatum versehen sein. Für die Erstellung muss bekannt sein, welche Endpunkte der API benötigt werden und ob darüber lesende oder schreibende Zugriffe erfolgen sollen.Der API-Key ist im HTTP-Header des Aufrufs als X-Api-Key mitzuliefern:GET https://meine.eliona.domain/api/v2/assets/158X-Api-Key: {{key}}

Postman Collection mit Beispielen

Eine Postman-Collection mit mehreren Anforderungsrequests steht für einfaches API-Testing zur Verfügung. Sie können die Datei postman_collection.json direkt in Postman über die folgende URL importieren. Bevor Sie die Sammlung verwenden, stellen Sie sicher, dass Sie die Variablen api-server und read-write-token entsprechend Ihrer Umgebung aktualisieren.

Clients für den Zugriff auf die API

Clients für unterschiedliche Programmiersprachen

Mit der OpenAPI-Beschreibung der Schnittstelle ist es mittels möglich passende Clients für die verschiedensten Programmiersprachen zu erstellen.Für die Generierung stehen unterschiedliche Methoden zur Verfügung. Es empfiehlt sich das bereitgestellte Docker-Image zu verwenden. Dazu wird die jeweils aktuelle Version der OpenAPI-Beschreibung referenziert:

Hier ein beispielhafter Aufruf zur Generierung eines Clients für die Programmiersprache Go.

docker run --rm \
     -v "${PWD}:/local" \
     openapitools/openapi-generator-cli:v6.2.1 generate \
     -g go \
     -i https://raw.githubusercontent.com/eliona-smart-building-assistant/eliona-api/main/openapi.yaml \
     -o /local \
     --additional-properties="packageName=api"

Für die Programmiersprachen Go und Python wird derzeit immer ein Client aktualisiert und über GitHub bereitgestellt.

Postman: Import der API-Beschreibung

Die OpenAPI-Beschreibung der Eliona REST-Schnittstelle kann in Postman importiert werden. Somit stehen alle Endpunkte für die Abfrage zur Verfügung. Dazu ist folgende URL in Postman zu importieren:

Import URL für WorkspaceNachdem die OpenAPI-Datei importiert wurde, stehe alle Endpunkte zur Verfügung. Damit API verwendet werden kann, muss unter dem Punkt Authorization der API-Key und unter Variables die jeweilige Basis-URL eingetragen werden.

Mock für API Tests

Für den Test mit der API steht eine entsprechender Eliona-Mock zur Verfügung. Dieser kann losgelöst von einer vollständigen Eliona-Umgebung genutzt werden. Der Mock stellt eine vollständige API-Implementierung und eine vereinfachte Eliona-Datenbank mittels Docker-Netzwerk zur Verfügung. Die passende docker-compose.yml und die Datenbankdefinition wird über GitHub bereitgestellt:

​​

​​

​​

👩‍💻
https://raw.githubusercontent.com/eliona-smart-building-assistant/eliona-api/main/openapi.yaml
https://raw.githubusercontent.com/eliona-smart-building-assistant/eliona-api/main/openapi.yaml
OpenAPI
Eliona API
Eliona App SDK
https://raw.githubusercontent.com/eliona-smart-building-assistant/eliona-api/refs/heads/main/examples/postman-collection.json
OpenAPI-Generatoren
GitHub - eliona-smart-building-assistant/python-eliona-api-client: Python client library to access Eliona APIGitHub
Python Client für Eliona API
GitHub - eliona-smart-building-assistant/go-eliona-api-client: Go client library to access Eliona APIGitHub
Go Client für Eliona API
GitHub - eliona-smart-building-assistant/eliona-mock: Mocks an Eliona environmentGitHub
Eliona-Mock
Logo
Logo
Logo