Integration und HTTP

Lerne, wie du externe Dienste aufrufst, XML gegen XSD-Schemas validierst, XML transformierst, E-Mails sendest und Kalendereinträge in Ninox Skripten erstellst.

Integrationsfunktionen verbinden deine App mit Diensten und Kommunikationstools außerhalb von Ninox. Du kannst APIs aufrufen, XML gegen Schemas validieren, XML transformieren, E-Mails senden und Termine oder Erinnerungen erstellen, wenn deine Umgebung das unterstützt.

In diesem Kapitel lernst du, wie du:

  • externe Dienste mit HTTP aufrufst.

  • XML transformierst.

  • Termine erstellst.

Funktion (A-Z)
Aufgabe

appointment()

Erstellt einen Terminwert

email()

Gibt einen E-Mail-Wert zurück oder verwendet ihn wieder

formatXML()

Konvertiert JSON-Daten in XML-Text

http()

Sendet eine HTTP-Anfrage

parseXML()

Konvertiert XML-Text in ein JSON-Objekt

Externe Dienste aufrufen

Nutze diese Funktionen, um jede REST API aufzurufen, Daten aus einem anderen Dienst zu holen oder Daten zwischen Ninox Datenbanken zu übertragen.

Mit http() eine API aufrufen

Nutze http(), um eine Anfrage an einen externen Dienst zu senden.

Nutze es, wenn du:

  • Daten aus einem anderen System holen oder Updates dorthin senden willst.

  • Ninox mit REST APIs und anderen Ninox Datenbanken verbinden willst.

http(method, url) http(method, url, body) http(method, url, header, body) http(method, url, header, body, files)

  • method: Textwert der HTTP-Methode, zum Beispiel "GET" oder "POST"

  • url: Textwert der Endpoint-URL

  • header: optionale Header als JSON-Objekt, zum Beispiel { Authorization: token }

  • body: optionaler Request-Body als JSON-Objekt

  • files: optionale Dateien zum Upload als [file], wenn der aktuelle Ausführungskontext Datei-Uploads unterstützt (Server-Kontext)

Schauen wir uns einige Beispiele an:

Ruft den externen Dienst auf und gibt ein JSON-Antwortobjekt oder ein Fehlerobjekt zurück.

Listet Tabellen aus der aktuellen Datenbank über die Ninox API oder gibt ein Fehlerobjekt zurück.

Sendet eine POST-Anfrage und gibt passende Datensätze oder ein Fehlerobjekt zurück.

Lädt eine Datei zu einem externen Dienst hoch, wenn Datei-Uploads im aktuellen Ausführungskontext unterstützt werden.

Tipps:

  • http() gibt ein JSON-Objekt zurück, keinen Klartext.

  • Wenn du auf eine andere Ninox Datenbank zugreifst, brauchst du einen API-Key.

  • Manche Endpoints erwarten selbst bei GET-Anfragen einen Body. Nutze {}, wenn der Ziel-Endpoint einen Body verlangt und du keine Felder senden musst.

  • Datei-Uploads hängen vom Ausführungskontext ab.

  • Teste Integrationsskripte mit echten Antworten des Dienstes, nicht nur mit Beispielausgaben.

XML transformieren

Nutze diese Funktionen, wenn ein anderes System XML sendet oder erwartet, besonders wenn das XML zu einem definierten Schema passen muss.

Mit parseXML() XML-Text in Daten umwandeln

Nutze parseXML(), um XML-Text in ein JSON-Objekt umzuwandeln, das du in Ninox prüfen kannst. Das ist besonders nützlich, wenn du Ninox per API mit externen Diensten verbindest und XML-Antworten verarbeiten musst. XML ist neben JSON ein gängiges Austauschformat.

Nutze es, wenn du:

  • Werte aus einer XML-Antwort lesen willst.

  • Felder aus importiertem XML extrahieren willst.

  • XML für spätere Logik in strukturierte Daten umwandeln willst.

parseXML(string)

  • string: der XML-Text, den du in ein JSON-Objekt umwandeln willst

Schauen wir uns einige Beispiele an:

Gibt ein JSON-Objekt zurück, das aus dem XML-Text erzeugt wurde, zum Beispiel:

Tipp:

  • Wenn du ein XSD-Schema hast, validiere externes XML vor dem Parsen.

Mit formatXML() XML-Text erstellen

Nutze formatXML(), um JSON-Daten in XML-Text umzuwandeln.

Nutze es, wenn du:

  • XML für einen anderen Dienst vorbereiten willst.

  • geparste Daten in lesbares XML umformatieren willst.

formatXML(JSON) formatXML(JSON, boolean)

  • JSON: die strukturierten Daten, die du in XML umwandeln willst

  • boolean: ob die Ausgabe zur besseren Lesbarkeit optisch strukturiert sein soll

Schauen wir uns einige Beispiele an:

Formatiert das geparste Objekt zurück in gut lesbaren XML-Text.

Konvertiert das JSON-Objekt in strukturierten XML-Text. Schlüssel wie @type werden zu XML-Attributen. @ wird zum Textwert des Knotens.

Tipps:

  • Nutze die Pretty-Option, wenn Menschen das Ergebnis lesen sollen.

  • Nutze kompakte Ausgabe, wenn das Zielsystem nur die Nutzlast braucht.

  • Diese Funktion ist besonders nützlich für API-Integrationen, die XML statt JSON erwarten.

Termine erstellen

Nutze diese Funktionen, wenn du für deinen Workflow ein zeitbasiertes Element erstellen willst.

Mit appointment() einen Terminwert erstellen

Nutze appointment(), um zeitbezogene Werte in einen Terminwert umzuwandeln.

Nutze es, wenn du:

  • einen Termin oder Zeitslot aus Start- und Endwerten aufsetzen willst.

  • einen Zeitraum aus einem Startwert und einer Dauer erstellen willst.

  • einen geplanten Zeitraum an spätere Logik übergeben willst.

appointment(any, any)

  • erstes any: der Start-Zeitstempel

  • zweites any: der End-Zeitstempel des Termins oder eine Dauer

Schauen wir uns einige Beispiele an:

Erstellt einen Termin aus zwei Zeitstempeln. Ninox nutzt automatisch den früheren Zeitstempel als Start.

Erstellt einen Termin aus einem Start-Datum mit Uhrzeit und einer Dauer von 1 Stunde und 45 Minuten.

Tipps:

  • Die Reihenfolge der Argumente ist egal, wenn du zwei Zeitstempel übergibst. Ninox nutzt den früheren Wert als Start.

  • Wenn Start und Ende am selben Tag liegen, zeigt die Anzeige meist nur ein Datum. Wenn der Zeitraum mehrere Tage umfasst, werden beide Daten gezeigt.

Das Verhalten von Integrationen kann von deiner Umgebung, dem Client und verbundenen Diensten abhängen. Prüfe HTTP- und E-Mail-Workflows in derselben Umgebung, die deine Nutzer in Produktion verwenden.

Zuletzt aktualisiert

War das hilfreich?