OCT-Handbuch

3.2.3.8. Web-API

Mithilfe dieses Steps kann eine Web-API-Anfrage gestellt werden.

Wenn Sie globale Parameter verwenden möchten, muss die Parameter-ID in geschweifte Klammern gesetzt werden, z.B. {globalparam}. Dies gilt auch für Variablen, z.B. {variable1}.

3.2.3.8.1. Web-API - Step hinzufügen

  • Wählen Sie den gewünschten Step aus:

image-20260408-091949.png
Ansicht 1 “Step hinzufügen”
  • Wenn der Step ausgewählt wird, öffnet sich eine Übersicht:

image-20260819-090513.png
Ansicht 2 “Step hinzufügen”

3.2.3.8.2. Steuerungsabfrage (a)

Hier kann eine optionale Steuerungsabfrage erstellt werden.

image-20260518-090627.png

Steuerungsabfrage

  • Dies ist ein optionales Eingabefeld, um eine SQL-Abfrage auf der OCT-Datenbank auszuführen.

  • Für jede Ergebniszeile der Steuerungsabfrage wird die HTTP-Anfrage ausgeführt.

  • Die Ergebnisfelder der Steuerungsabfrage können als Variablen in der URL, im Header, im Body und im Namen der Zieltabelle im SQL-Befehl verwendet werden.

  • Jede Spalte der Steuerungsabfrage steht als {<Spaltenname>}-Platzhalter in der Anfrage (URL, Header, Body), in Zieltabellenfeldern, im Namen der Zieltabelle sowie in den zusätzlichen SQL-Befehlen zur Verfügung.

Icon image-20260408-112241.png “SQL-Editor-Dialog öffnen”

  • Über das Icon kann ein separater Dialog mit einem vergrößerten SQL-Editor geöffnet werden.

Icon image-20260518-090543.png “Lupe”

  • Mit einem Linksklick auf das “Suche”-Icon öffnet sich ein Dialog, der eine Übersicht der Steuerungsabfrage anzeigt.

  • Schwebt man mit der Maus über dem Icon image-20260518-090723.png , wird ein Tooltip angezeigt.


3.2.3.8.3. Anfrage (b)

Hier können alle Informationen für die HTTP-Anfrage eingetragen werden.

image-20260521-101859.png

HTTP-Methode

  • Es öffnet sich ein Drop-down, in welchem folgende Optionen verfügbar sind:

    • GET

    • POST

    • PUT

    • DELETE

    • PATCH

  • Wählen Sie die HTTP-Methode, die für Ihre API-Anfrage relevant ist.

  • Nur bei GET müssen Extraktionsfelder ausgewählt sowie eine Zieltabelle angegeben werden.

URL

  • Es muss die URL eingegeben werden, an welche die API-Anfrage gesendet werden soll.

Header

  • Die Eingabe ist optional.

  • Über den Button “Header hinzufügen” können mehrere Header hinzugefügt werden. Dafür muss ein Header-Name und ein Header-Wert eingegeben werden.

image-20260427-092554.png
  • Üblicherweise werden im Header z.B. Informationen für die Authentifizierung hinterlegt.

  • Über das “X” rechts neben dem Eingabefeld für den Wert, kann eine Zeile des Headers gelöscht werden.

Body

  • Die Eingabe ist optional, weshalb “Kein Body” standardmäßig ausgewählt ist.

image-20260427-093417.png
  • Das Format der Daten ist frei wählbar (z.B. JSON, XML, Text, Form URL kodiert).

  • Bei Auswahl eines Datenformats öffnet sich bei “JSON”, “XML” und “Text” ein Editorfeld, in welchem zusätzliche Daten stehen können, die mit der API-Anfrage gesendet werden.

image-20260429-094123.png
  • Über das Icon image-20260408-112241.png “Editor vergrößern” kann ein separater Dialog mit einem vergrößerten Editor geöffnet werden.

  • Bei Auswahl von “URL-kodierte Formulardaten” können über den Button “Feld hinzufügen” Schlüssel-Wert-Paare eingegeben werden.

image-20260521-101744.png
  • Über das “X” rechts neben dem Eingabefeld für den Wert, kann eine Zeile gelöscht werden.

Web API Authentifizierung

  • In einem Drop-down kann eine Authentifizierungsmethode (Datenquellen-ID/Name der Datenquelle) ausgewählt werden, die zuvor als Datenquelle vom Typ „Web API Authentifizierung“ angelegt wurde.

  • Bleibt das Eingabefeld leer, erfolgt keine Authentifizierung.

Hier finden Sie die Beschreibung der Datenquelle “Web API Authentifizierung”: 3.2.1.6. Web API Authentifizierung


3.2.3.8.4. Antwort (c)

Hier müssen das Antwortformat der Web-API-Anfrage, Extraktionsfelder und statische Felder definiert werden. Die Verarbeitung der Daten kann statt über die Extraktionsfelder auch über ein Transformationsskript individuell angepasst werden.

image-20260831-112024.png
  • Abhängig von der Antwort der Web-API muss das passende Antwortformat ausgewählt werden. Welches Format die Web-API zurückgibt, ist der jeweiligen API-Dokumentation zu entnehmen.

  • Das passende Antwortformat (JSON, XML oder Text) kann über ein Dropdown-Feld ausgewählt werden.

  • Wenn das passende Antwortformat ausgewählt ist, werden alle in der Antwort der Web-API vorhandenen Felder angezeigt.


3.2.3.8.4.1. Antwort im JSON-Format - Extraktionsfelder

Folgendes Beispiel beschreibt eine Antwort im JSON-Format.

image-20260518-094208.png

3.2.3.8.4.1.1. Extraktionsfelder auswählen

  • Die Extraktionsfelder kommen aus der Antwort der Web-API-Anfrage.

  • Bei Auswahl des Buttons “Extraktionsfelder auswählen” öffnet sich ein Dialog, in welchem die Extraktionsfelder in einer Tabelle aufgelistet sind.

image-20260427-080349.png

Menüleiste

Icon image-20260409-101643.png “Felder neu laden”

  • Die Quellfelder werden neu geladen bzw. neu aus der Antwort der Anfrage gelesen.

Icon image-20260409-101714.png “Alle auswählen”

  • Mit einem Linksklick auf das Icon werden alle Extraktionsfelder ausgewählt bzw. alle Checkboxen in der Spalte “Aktiv” aktiviert.

Icon image-20260409-101738.png “Alle abwählen”

  • Mit einem Linksklick auf das Icon werden alle Extraktionsfelder abgewählt bzw. alle Checkboxen in der Spalte “Aktiv” deaktiviert.

Suchfeld

  • Über das Suchfeld kann gezielt nach bestimmten Inhalten bzw. Feldern der API-Antwort in der Spalte “Quellfeld” gesucht werden.

Tabelle - Spaltenüberschriften

Aktiv

  • Über diese Spalte mit Checkboxen image-20260409-101819.png können einzelne Felder für den Transfer in die Zieltabelle ausgewählt werden.

Quellfeld

  • Zeigt den Namen und ggf. den Pfad des Quellfelds aus der API-Anfrage an.

  • Beispiel: response.address.street - Pfad: response.address / Feld: street

Zielspalte

  • Eingabefeld für den Namen des Felds in der Zieltabelle

SQL-Typ

  • Es können Spaltentypen für Spalten der Zieltabelle definiert werden.

  • Folgende SQL Server Datentypen werden unterstützt:

    • NVARCHAR(255) - Standardwert für das Extraktionsfeld

    • NVARCHAR(4000)

    • NVARCHAR(MAX)

    • INT

    • BIGINT

    • DECIMAL(18,6)

    • FLOAT

    • MONEY

    • BIT

    • DATE

    • DATETIME

    • UNIQUEIDENTIFIER

Standardwert

  • Eingabefeld für einen Standardwert für das Zielfeld, falls der Wert im Response-Objekt nicht vorhanden oder leer ist.

  • Variablen aus der Steuerungsabfrage können verwendet werden.

Vorschau

  • Vorschau des Feldwerts aus dem ersten zurückgegebenen Datensatz

  • Es werden die ersten hundert Zeichen angezeigt.

Tabelle allgemein

Sortierfunktion

  • Mit einem Linksklick neben die Spaltenüberschrift können die Angaben auf- oder absteigend bzw. alphabetisch sortiert werden.

Endfelder - Felder, die keine Unterobjekte enthalten - sind beim Öffnen des Dialogs “Extraktionsfelder” automatisch ausgewählt.

  • Die Anzahl der ausgewählten Extraktionsfelder wird direkt auf dem Button in eckigen Klammern angezeigt.

image-20260518-094651.png
  • Über das Icon image-20260518-094446.png “Extraktionsfeld-Auswahl aufheben” können alle aktiven Extraktionsfelder deaktiviert werden.


3.2.3.8.4.1.2. Statische Felder

  • Es besteht die Möglichkeit, den in die Zieltabelle zu übertragenden Daten zusätzliche statische Felder hinzuzufügen.

  • Variablen aus der Steuerungsabfrage werden ersetzt, wenn sie im Wert für das statische Feld verwendet werden.

  • Bei Auswahl des Buttons “Statische Felder” öffnet sich ein Dialog, in welchem neue statische Felder hinzugefügt werden können.

image-20260427-112238.png

Menüleiste

Icon image-20260427-112716.png “Feld hinzufügen”

  • Über das Icon kann ein neues statisches Feld hinzugefügt werden.

image-20260427-112840.png

Tabelle - Spaltenüberschriften

image-20260427-113105.png

Aktiv

  • Über diese Spalte mit Checkboxen image-20260409-101819.png können einzelne Felder für den Transfer in die Zieltabelle ausgewählt werden.

Spaltenname

  • Eingabefeld für den Spaltennamen

SQL-Typ

  • Es können Spaltentypen für Spalten der Zieltabelle definiert werden.

  • Folgende Typen werden unterstützt:

    • NVARCHAR(255) - Standardwert für das Extraktionsfeld

    • NVARCHAR(4000)

    • NVARCHAR(MAX)

    • INT

    • BIGINT

    • DECIMAL(18,6)

    • FLOAT

    • MONEY

    • BIT

    • DATE

    • DATETIME

    • UNIQUEIDENTIFIER

Wert

  • Es kann ein beliebiger fester Wert zugewiesen werden. Außerdem können Platzhalter aus der Steuerungsabfrage im Format {Feldname} verwendet werden.

Icon “Löschen”

  • Über das Icon kann die Zeile gelöscht werden.

  • Die Anzahl der ausgewählten Extraktionsfelder wird direkt auf dem Button in eckigen Klammern angezeigt.

image-20260518-094838.png

3.2.3.8.4.1.3. Transformationsskript

Das Transformationsskript bietet im Vergleich zur Auswahl der Extraktionsfelder mehr Möglichkeiten zur Anpassung der Datenübernahme.

  • Die Daten können mit Hilfe von JavaScript beliebig transformiert werden.

  • Die von der HTTP-Anfrage zurückgegebene Antwort ist in der Variable “response” verfügbar.

  • Ziel des Transformationsskripts ist die Rückgabe eines Arrays von Zeilenobjekten, das in die Zieltabelle übertragen wird.

  • Für HTTP-Antworten im JSON Format sollte die Funktion JSON.parse(response) verwendet werden.

image-20260427-083543.png
  • Das Transformationsskript kann an dieser Stelle in einem Editor angesehen sowie bearbeitet werden.

  • Über das Icon image-20260408-112241.png “Editor vergrößern” kann ein separater Dialog mit einem vergrößerten Editor geöffnet und in diesem das Transformationsskript bearbeitet sowie angewandt werden.

image-20260409-101220.png

3.2.3.8.4.2. Antwort im XML-Format - Extraktionsfelder

Folgendes Beispiel beschreibt eine Antwort im XML-Format.

image-20260831-111835.png

3.2.3.8.4.2.1. Extraktionsfelder auswählen

  • Die Extraktionsfelder kommen aus der Antwort der Web-API-Anfrage.

  • Bei Auswahl des Buttons “Extraktionsfelder auswählen” öffnet sich ein Dialog, in welchem die Extraktionsfelder in einer Tabelle aufgelistet sind.

image-20260831-112301.png

Menüleiste

Icon image-20260409-101643.png “Felder neu laden”

  • Die Quellfelder werden neu geladen bzw. neu aus der Antwort der Anfrage gelesen.

Icon image-20260409-101714.png “Alle auswählen”

  • Mit einem Linksklick auf das Icon werden alle Extraktionsfelder ausgewählt bzw. alle Checkboxen in der Spalte “Aktiv” aktiviert.

Icon image-20260409-101738.png “Alle abwählen”

  • Mit einem Linksklick auf das Icon werden alle Extraktionsfelder abgewählt bzw. alle Checkboxen in der Spalte “Aktiv” deaktiviert.

Suchfeld

  • Über das Suchfeld kann gezielt nach bestimmten Inhalten bzw. Feldern der API-Antwort in der Spalte “Quellfeld” gesucht werden.

Tabelle - Spaltenüberschriften

Aktiv

  • Über diese Spalte mit Checkboxen image-20260409-101819.png können einzelne Felder für den Transfer in die Zieltabelle ausgewählt werden.

Quellfeld

  • Zeigt den Namen und ggf. den Pfad des Quellfelds aus der API-Anfrage an.

  • Beispiel: response.address.street - Pfad: response.address / Feld: street

Zielspalte

  • Eingabefeld für den Namen des Felds in der Zieltabelle

SQL-Typ

  • Es können Spaltentypen für Spalten der Zieltabelle definiert werden.

  • Folgende SQL Server Datentypen werden unterstützt:

    • NVARCHAR(255) - Standardwert für das Extraktionsfeld

    • NVARCHAR(4000)

    • NVARCHAR(MAX)

    • INT

    • BIGINT

    • DECIMAL(18,6)

    • FLOAT

    • MONEY

    • BIT

    • DATE

    • DATETIME

    • UNIQUEIDENTIFIER

Standardwert

  • Eingabefeld für einen Standardwert für das Zielfeld, falls der Wert im Response-Objekt nicht vorhanden oder leer ist.

  • Variablen aus der Steuerungsabfrage können verwendet werden.

Vorschau

  • Vorschau des Feldwerts aus dem ersten zurückgegebenen Datensatz

  • Es werden die ersten hundert Zeichen angezeigt.

Tabelle allgemein

Sortierfunktion

  • Mit einem Linksklick neben die Spaltenüberschrift können die Angaben auf- oder absteigend bzw. alphabetisch sortiert werden.

Endfelder - Felder, die keine Unterobjekte enthalten - sind beim Öffnen des Dialogs “Extraktionsfelder” automatisch ausgewählt.

  • Die Anzahl der ausgewählten Extraktionsfelder wird direkt auf dem Button in eckigen Klammern angezeigt.

image-20260831-112617.png
  • Über das Icon image-20260518-094446.png “Extraktionsfeld-Auswahl aufheben” können alle aktiven Extraktionsfelder deaktiviert werden.

3.2.3.8.4.2.2. Statische Felder

  • Es besteht die Möglichkeit, den in die Zieltabelle zu übertragenden Daten zusätzliche statische Felder hinzuzufügen.

  • Variablen aus der Steuerungsabfrage werden ersetzt, wenn sie im Wert für das statische Feld verwendet werden.

  • Bei Auswahl des Buttons “Statische Felder” öffnet sich ein Dialog, in welchem neue statische Felder hinzugefügt werden können.

image-20260427-112238.png

Menüleiste

Icon image-20260427-112716.png “Feld hinzufügen”

  • Über das Icon kann ein neues statisches Feld hinzugefügt werden.

image-20260427-112840.png

Tabelle - Spaltenüberschriften

image-20260427-113105.png

Aktiv

  • Über diese Spalte mit Checkboxen image-20260409-101819.png können einzelne Felder für den Transfer in die Zieltabelle ausgewählt werden.

Spaltenname

  • Eingabefeld für den Spaltennamen

SQL-Typ

  • Es können Spaltentypen für Spalten der Zieltabelle definiert werden.

  • Folgende Typen werden unterstützt:

    • NVARCHAR(255) - Standardwert für das Extraktionsfeld

    • NVARCHAR(4000)

    • NVARCHAR(MAX)

    • INT

    • BIGINT

    • DECIMAL(18,6)

    • FLOAT

    • MONEY

    • BIT

    • DATE

    • DATETIME

    • UNIQUEIDENTIFIER

Wert

  • Es kann ein beliebiger fester Wert zugewiesen werden. Außerdem können Platzhalter aus der Steuerungsabfrage im Format {Feldname} verwendet werden.

Icon “Löschen”

  • Über das Icon kann die Zeile gelöscht werden.

  • Die Anzahl der ausgewählten Extraktionsfelder wird direkt auf dem Button in eckigen Klammern angezeigt.

image-20260831-112949.png

3.2.3.8.4.2.3. Transformationsskript

Das Transformationsskript bietet im Vergleich zur Auswahl der Extraktionsfelder mehr Möglichkeiten zur Anpassung der Datenübernahme.

  • Die Daten können mit Hilfe von JavaScript beliebig transformiert werden.

  • Die von der HTTP-Anfrage zurückgegebene Antwort ist in der Variable “response” verfügbar.

  • Ziel des Transformationsskripts ist die Rückgabe eines Arrays von Zeilenobjekten, das in die Zieltabelle übertragen wird.

  • Für eine HTTP-Antwort im XML Format sollte JSON.parse(parseXml(response)) verwendet werden.

image-20260831-115756.png
  • Das Transformationsskript kann an dieser Stelle in einem Editor angesehen sowie bearbeitet werden.

  • Über das Icon image-20260408-112241.png “Editor vergrößern” kann ein separater Dialog mit einem vergrößerten Editor geöffnet und in diesem das Transformationsskript bearbeitet sowie angewandt werden.

image-20260831-115909.png

3.2.3.8.4.3. Antwort im Text-Format - Extraktionsfelder

Folgendes Beispiel beschreibt eine Antwort im Text-Format.

image-20260831-113751.png

3.2.3.8.4.3.1. Extraktionsfelder auswählen

  • Die Extraktionsfelder kommen aus der Antwort der Web-API-Anfrage.

  • Beim Antwortformat “Text” gibt es immer nur genau ein Feld, das zurückgegeben wird.

  • Bei Auswahl des Buttons “Extraktionsfelder auswählen” öffnet sich ein Dialog, in welchem die Extraktionsfelder in einer Tabelle aufgelistet sind.

image-20260831-113929.png

Menüleiste

Icon image-20260409-101643.png “Felder neu laden”

  • Die Quellfelder werden neu geladen bzw. neu aus der Antwort der Anfrage gelesen.

Icon image-20260409-101714.png “Alle auswählen”

  • Mit einem Linksklick auf das Icon werden alle Extraktionsfelder ausgewählt bzw. alle Checkboxen in der Spalte “Aktiv” aktiviert.

Icon image-20260409-101738.png “Alle abwählen”

  • Mit einem Linksklick auf das Icon werden alle Extraktionsfelder abgewählt bzw. alle Checkboxen in der Spalte “Aktiv” deaktiviert.

Suchfeld

  • Über das Suchfeld kann gezielt nach bestimmten Inhalten bzw. Feldern der API-Antwort in der Spalte “Quellfeld” gesucht werden.

Tabelle - Spaltenüberschriften

Aktiv

  • Über diese Spalte mit Checkboxen image-20260409-101819.png können einzelne Felder für den Transfer in die Zieltabelle ausgewählt werden.

Quellfeld

  • Zeigt den Namen und ggf. den Pfad des Quellfelds aus der API-Anfrage an.

  • Beispiel: response.address.street - Pfad: response.address / Feld: street

Zielspalte

  • Eingabefeld für den Namen des Felds in der Zieltabelle

SQL-Typ

  • Es können Spaltentypen für Spalten der Zieltabelle definiert werden.

  • Folgende SQL Server Datentypen werden unterstützt:

    • NVARCHAR(255) - Standardwert für das Extraktionsfeld

    • NVARCHAR(4000)

    • NVARCHAR(MAX)

    • INT

    • BIGINT

    • DECIMAL(18,6)

    • FLOAT

    • MONEY

    • BIT

    • DATE

    • DATETIME

    • UNIQUEIDENTIFIER

Standardwert

  • Eingabefeld für einen Standardwert für das Zielfeld, falls der Wert im Response-Objekt nicht vorhanden oder leer ist.

  • Variablen aus der Steuerungsabfrage können verwendet werden.

Vorschau

  • Vorschau des Feldwerts aus dem ersten zurückgegebenen Datensatz

  • Es werden die ersten hundert Zeichen angezeigt.

Tabelle allgemein

Sortierfunktion

  • Mit einem Linksklick neben die Spaltenüberschrift können die Angaben auf- oder absteigend bzw. alphabetisch sortiert werden.

  • Die Anzahl der ausgewählten Extraktionsfelder wird direkt auf dem Button in eckigen Klammern angezeigt.

image-20260831-121019.png
  • Über das Icon image-20260518-094446.png “Extraktionsfeld-Auswahl aufheben” können alle aktiven Extraktionsfelder deaktiviert werden.

3.2.3.8.4.3.2. Statische Felder

  • Es besteht die Möglichkeit, den in die Zieltabelle zu übertragenden Daten zusätzliche statische Felder hinzuzufügen.

  • Variablen aus der Steuerungsabfrage werden ersetzt , wenn sie im Wert für das statische Feld verwendet werden.

  • Bei Auswahl des Buttons “Statische Felder” öffnet sich ein Dialog, in welchem neue statische Felder hinzugefügt werden können.

image-20260427-112238.png

Menüleiste

Icon image-20260427-112716.png “Feld hinzufügen”

  • Über das Icon kann ein neues statisches Feld hinzugefügt werden.

image-20260427-112840.png

Tabelle - Spaltenüberschriften

image-20260427-113105.png

Aktiv

  • Über diese Spalte mit Checkboxen image-20260409-101819.png können einzelne Felder für den Transfer in die Zieltabelle ausgewählt werden.

Spaltenname

  • Eingabefeld für den Spaltennamen

SQL-Typ

  • Es können Spaltentypen für Spalten der Zieltabelle definiert werden.

  • Folgende Typen werden unterstützt:

    • NVARCHAR(255) - Standardwert für das Extraktionsfeld

    • NVARCHAR(4000)

    • NVARCHAR(MAX)

    • INT

    • BIGINT

    • DECIMAL(18,6)

    • FLOAT

    • MONEY

    • BIT

    • DATE

    • DATETIME

    • UNIQUEIDENTIFIER

Wert

  • Es kann ein beliebiger fester Wert zugewiesen werden. Außerdem können Platzhalter aus der Steuerungsabfrage im Format {Feldname} verwendet werden.

Icon “Löschen”

  • Über das Icon kann die Zeile gelöscht werden.

  • Die Anzahl der ausgewählten Extraktionsfelder wird direkt auf dem Button in eckigen Klammern angezeigt.

image-20260831-121143.png

3.2.3.8.4.3.3. Transformationsskript

Für das Antwortformat “Text” wird kein Transformationsskript benötigt.

image-20260831-120605.png

3.2.3.8.5. Zieltabelle (d)

Hier wird definiert, in welcher Zieltabelle die Daten gespeichert werden.

Wenn keine Zieltabelle definiert ist, werden keine Daten in keine Zieltabelle übertragen. Dies ist in bestimmten Fällen vorgesehen und sinnvoll, z.B. bei POST-Aufrufen, bei denen ausschließlich ein HTTP-Statuscode zurückgegeben wird und der Response-Body leer bleibt.

image-20260427-094022.png

Name der Zieltabelle

  • Eingabefeld für den Namen der Zieltabelle in der OCT Datenbank, in welche die Daten übertragen werden.

  • Diese kann manuell vom Benutzer angelegt oder automatisch über den Button “Zieltabelle erstellen” generiert werden.

Icon “Lupe” image-20250218-091738.png

  • Mit einem Linksklick auf das “Lupe”-Icon öffnet sich ein Dialog, in welchem die ersten 100 Zeilen der Zieltabelle angezeigt werden und Gruppierungen möglich sind.

  • Schwebt man mit der Maus über dem Icon, wird ein Tooltip angezeigt.

Checkbox “Inhalt der Zieltabelle löschen”

  • Standardmäßig ist die Checkbox deaktiviert.

  • Bei aktivierter Checkbox wird die Zieltabelle vor jeder Ausführung des Transformationsskripts geleert.

  • Schwebt man mit der Maus über dem Icon image-20250218-092524.png , wird ein Tooltip angezeigt.

Button “Zieltabelle generieren”

  • Bei Auswahl des Buttons wird die Zieltabelle mit den aus dem Skript abgeleiteten Spaltennamen erstellt. Wenn die Tabelle bereits existiert, wird sie gelöscht und neu generiert.

Icon “Kopieren” image-20250218-092421.png

  • Über das Icon image-20250218-092421.png neben dem Button kann das Skript zum Erstellen der Zieltabelle in die Zwischenablage kopiert werden.

  • Bei erfolgreichem Kopieren erscheint eine kurze grün hinterlegte Meldung.

  • Schwebt man mit der Maus über dem Icon, wird ein Tooltip angezeigt.


3.2.3.8.6. Optionen (e)

Hier kann ein Timeout für den HTTP-Anfrage sowie Optionen für die Paginierung eingegeben werden.

image-20260819-093154.png

HTTP Timeout (s)

  • Eingabefeld für Sekunden

  • Standardmäßig sind 60 Sekunden für den Timeout eingestellt.

  • Die Timeout-Option gilt nur für HTTP-Aufrufe. Alle anderen Datenbankoperationen während der Step-Ausführung, wie z. B. Massenkopiervorgänge, unterliegen weiterhin den Timeout-Einstellungen anderer Datenflüsse.

Parallele Anfragen

  • Standardmäßig ist der Wert “1” eingestellt.

  • Wenn eine Steuerungsabfrage viele Zeilen zurückgibt, werden diese normalerweise nacheinander verarbeitet. Um eine schnellere Verarbeitung zu ermöglichen, können Anfragen parallel ausgeführt werden.

  • Wird der Wert auf einen Wert größer als 1 gesetzt, werden von der Steuerungsabfrage zurückgegebene Zeilen gleichzeitig verarbeitet. Dabei laufen für jede Zeile die HTTP-Anfrage, die Datenübertragung sowie das jeweilige PreSQL/PostSQL parallel.

  • Die Gesamtzahl der geschriebenen Zeilen bleibt identisch zu einem sequenziellen Lauf.

  • Die Einstellung greift nur bei einer Steuerungsabfrage, die mehr als eine Zeile zurückgibt.

  • Der Wert ist auf 1–99 begrenzt und ein Pflichtfeld.

Wiederholungen bei Fehler

  • Über dieses Feld kann festgelegt werden, wie oft eine fehlgeschlagene API-Anfrage erneut ausgeführt werden soll.

  • Standardmäßig ist eine Wiederholung bei Fehler eingestellt. Es können maximal 9 Wiederholungen durchgeführt werden.

  • Die Anfrage wird wiederholt, wenn die API den HTTP-Statuscode 500 oder höher zurückgibt oder ein Netzwerkfehler bzw. Timeout vorliegt.

  • Schlägt ein erster Versuch fehl, wird dies zunächst als Warnung (Warning) im Log protokolliert.

  • Erst wenn auch der letzte Wiederholungsversuch fehlschlägt, wird ein Fehler (Error) protokolliert und der gesamte Schritt als fehlerhaft beendet.

  • Dadurch können vorübergehende API-Ausfälle abgefangen werden, ohne den gesamten Prozess erneut starten zu müssen.

Antwort streamen

  • Bei aktivierter Checkbox wird nicht auf die komplette Antwort der API-Anfrage gewartet. Stattdessen werden die eingehenden Daten fortlaufend verarbeitet und unmittelbar Zeile für Zeile in die Zieltabelle geschrieben.

  • Der maximale Speicherverbrauch bleibt dabei weitgehend unabhängig von der Größe der zu verarbeitenden Datenmenge konstant. Das Verfahren eignet sich daher insbesondere für große Datenmengen und Bulk-Exporte, z.B. für DATEV-Exporte.

  • Streaming muss durch die API unterstützt werden.

  • Im Header wird, falls noch nicht vorhanden, die Eigenschaft “Accept” mit dem Wert “application/octet-stream” automatisch hinzugefügt.

Paginierung

  • Die Paginierung ist optional und standardmäßig auf “Keine” eingestellt.

  • Es können folgende Optionen ausgewählt werden: “Offset / Limit”, “Next Link” und “Page Token”.

image-20260819-123714.png

Offset / Limit

  • Optionale Eingabefelder für die Namen der Offset- und Limit-Parameter mit Namen und Werten

image-20260819-123538.png

Next Link

  • Optionales Texteingabefeld zur Angabe eines JSONPath-/XPath-Ausdrucks für die URL der nächsten Seite

image-20260819-123925.png
  • Beispiel Next-Link-Pfad:

    • JSON: {“data”: […], “nextPageUrl”: “https://api.example.com/customers/?sessionpage=jiagA5gag}”

    • Texteingabe $.nextPageUrl

Page Token

  • In einer JSON Antwort gibt es einen Parameter, den man an die URL anhängen muss.

  • Beispiel: URL: https://my.api.com/something

    • Token-Pfad: $.nextPageToken

    • Query-Parametername: myToken

    • Antwort:
      {“data”:[…], “nextPageToken”:”1234567890”}

    • URL: https://my.api.com/something?myToken=1234567890

image-20260819-124455.png

3.2.3.8.7. Statusabfrage (f)

Die Statusabfrage wird verwendet, wenn eine Web API Daten nicht unmittelbar bereitstellt, sondern diese zunächst berechnen muss.

image-20260819-124616.png

Statusfeld-Pfad

  • JSONPath (z.B. $state) oder Xpath-Ausdruck, der auf das Statusfeld in der Antwort zeigt.

  • Wenn ein Pfad eingetragen ist, fragt der Web-API Step seine eigene URL ab, bis dieses Feld den erwarteten Wert erreicht. Im Anschluss wird die Extraktion ausgeführt.

  • Ein leerer Statusfeld-Pfad deaktiviert die Statusabfrage.

Erwarteter Wert

  • Wert, den das Statusfeld erreichen muss, damit die Statusabfrage als abgeschlossen gilt.

  • Wenn kein Wert eingetragen wird, wird die Statusabfrage abgeschlossen, sobald das Feld in der Antwort der API existiert und einen beliebigen Wert hat.

Abfrageintervall (s)

  • Standardmäßig sind 60 Sekunden eingestellt.

  • Es kann die Wartezeit in Sekunden (0 - 3600 Sekunden) zwischen den Statusabfragen individuell eingegeben werden,

Maximale Versuche

Step-Status nach erfolgloser Statusabfrage

  • Endgültiger Step-Status, wenn das Statusfeld den erwarteten Wert nicht erreicht.

  • Es kann zwischen zwei Optionen gewählt werden:

    • Fehler = Der Step wird sofort mit einem Fehler beendet.

    • Warnung = Die betreffende Zeile wird übersprungen und die Ausführung des Steps fortgesetzt.


3.2.3.8.8. Zusätzliche SQL-Befehle (g)

Die von der Steuerungsabfrage zurückgegebenen Felder können als Variablen im Filterausdruck, PreSQL und PostSQL verwendet werden.

Werden keine Variablen im PreSQL- oder PostSQL-Befehl verwendet, wird der Befehl nur einmal vor der ersten oder einmal nach der letzten Anfrage durchgeführt.

image-20260521-102644.png

PreSQL

  • SQL-Befehl, welcher vor jeder HTTP-Anfrage auf der OneCoolTool-Datenbank ausgeführt werden soll.

  • Bei Verwendung von Platzhaltern bzw. Variablen wird das PreSQL-Skript vor jeder HTTP-Anfrage ausgeführt. Andernfalls wird es einmalig vor der ersten HTTP-Anfrage ausgeführt.

PostSQL

  • SQL-Befehl, welcher nach jeder HTTP-Anfrage auf der OneCoolTool-Datenbank ausgeführt werden soll.

  • Bei Verwendung von Platzhaltern bzw. Variablen wird das PostSQL-Skript nach jeder HTTP-Anfrage ausgeführt. Andernfalls wird es einmalig nach der ersten HTTP-Anfrage ausgeführt.

Icon image-20250114-131412.png “SQL-Editor-Dialog öffnen”

  • Mit einem Linksklick auf das Icon kann ein separater Dialog mit einem vergrößerten SQL-Editor geöffnet werden.

Icon “Tooltip” image-20250218-092524.png

  • Schwebt man mit der Maus über dem Icon image-20250218-092524.png , wird ein Tooltip angezeigt.

Last updated: