Zum Inhalt springen
DeutschlandGPT
Nodes

Aktionsknoten

Eingebaute Knoten für HTTP-Anfragen, Websuche, Verzögerungen, Code, Bilder, Datentabellen, Geheimnisse und Ablaufsteuerung

Aktions- und Ablaufknoten erledigen die Arbeit zwischen Trigger und Ergebnis: Daten abrufen, Code ausführen, warten, verzweigen, wiederholen und andere Workflows aufrufen. Jeder Knoten hat Eingaben, die Sie eintippen oder mit Variablen füllen, und benannte Ausgaben für spätere Knoten. Die Namen der Ein- und Ausgaben zeigt der Builder auch in der deutschen Oberfläche auf Englisch.

Einstellungen, die jeder Knoten hat

Aktions-, Integrations- und Agentenknoten haben unten in ihrem Panel zwei Einstellungen:

  • Fehlerbehandlung: Workflow stoppen (Standard) beendet die Ausführung, wenn der Knoten fehlschlägt. Fehlerausgabe verwenden aktiviert stattdessen den Fehlerausgang des Knotens, an den Sie einen Ausweichpfad anschließen.
  • Genehmigung erforderlich: Die Ausführung hält vor diesem Knoten an, bis jemand genehmigt. Siehe Genehmigungen.
Knoteneinstellungen mit Fehlerbehandlung und dem Schalter Genehmigung erforderlich

Aktionen

HTTP-Anfrage

Sendet eine HTTP-Anfrage und gibt die Antwort zurück.

EingabeErforderlichBeschreibung
URLJaDie aufzurufende URL
MethodJaGET (Standard), POST, PUT, PATCH oder DELETE
HeadersNeinSchlüssel-Wert-Paare, die als Header gesendet werden
Request BodyNeinBody für POST, PUT und PATCH
Response TypeNeinAuto (text/JSON) (Standard) oder File (binary)
File NameNeinName der heruntergeladenen Datei beim Antworttyp File (binary)
AusgabeTypBeschreibung
responseanyDer Antwort-Body. null beim Antworttyp File
statusCodenumberHTTP-Statuscode
fileWorkflowFileDie heruntergeladene Datei, nur beim Antworttyp File
  • Bei Auto (text/JSON) lässt eine binäre Antwort (ein PDF, ein Bild, ein ZIP) den Knoten mit dem Hinweis fehlschlagen, den Antworttyp auf File (binary) zu stellen. Eine Datei wird bis 100 MB gespeichert.
  • Das Token eines Knotens Get Auth Credentials mitschicken: siehe Get Auth Credentials.

Websuche

Durchsucht das Web.

EingabeErforderlichBeschreibung
Search QueryJaWonach gesucht wird
Max ResultsNeinAnzahl der Ergebnisse, 1 bis 100 (Standard 10)
AusgabeTypBeschreibung
resultsarrayDie Suchergebnisse
resultCountnumberAnzahl der gelieferten Ergebnisse

Verzögerung

Hält die Ausführung für eine Dauer oder bis zu einem Zeitpunkt an und setzt sie dann fort. Während der Wartezeit läuft nichts weiter.

EingabeErforderlichBeschreibung
Wait ModeJaFor a duration (Standard) oder Until a specific time
DurationJe nach ModusWie lange gewartet wird, im Modus Dauer
UnitJe nach ModusSeconds, Minutes (Standard), Hours oder Days
Resume AtJe nach ModusDer Zeitpunkt, zu dem es weitergeht, im Modus Zeitpunkt
AusgabeTypBeschreibung
resumedAtstringISO-Zeitstempel, zu dem die Ausführung weiterlief

Liegt Resume At bereits in der Vergangenheit, geht es sofort weiter. Eine einzelne Verzögerung wartet höchstens 90 Tage. Eine längere Wartezeit lässt den Knoten fehlschlagen.

RSS-Feed

Ruft einen RSS- oder Atom-Feed ab und wertet ihn aus.

EingabeErforderlichBeschreibung
Feed URLJaDie Adresse des Feeds
Max ItemsNeinHöchstzahl der Einträge, 1 bis 100 (Standard 10)
AusgabeTypBeschreibung
itemsarrayFeed-Einträge, jeweils mit title, link, description, content und pubDate
feedTitlestringTitel des Feeds
feedDescriptionstringBeschreibung des Feeds
itemCountnumberAnzahl der gelieferten Einträge

Code

Führt JavaScript aus. Nutzen Sie ihn zum Filtern, Sortieren, für Textverarbeitung, Berechnungen und andere Logik, die keine KI braucht.

EingabeErforderlichBeschreibung
CodeJaDas auszuführende JavaScript
AusgabeTypBeschreibung
resultanyDer Wert, den Ihr Code zurückgibt
  • Ihr Code muss mit return einen Wert zurückgeben. Dieser Wert wird zu result.

  • Die Ausgaben früherer Knoten stehen als globale Variablen unter ihrem Variablennamen bereit, etwa formTrigger.outputs.formData. Die Schreibweise {{…}} gilt hier nicht.

  • async und await funktionieren, und fetch steht für HTTP-Aufrufe bereit.

  • fetchAs('jira', '/rest/api/3/myself') ruft einen verbundenen Dienst mit seinen Zugangsdaten auf, genau wie der Knoten Authentifizierte Anfrage, und liefert eine Antwort mit status, ok, headers, text(), json() und bytes(). Dafür nutzt es eine Verbindung, die ein anderer Knoten desselben Workflows schon verwendet. Nutzt der Workflow mehrere Verbindungen eines Dienstes, nennen Sie eine: fetchAs('jira@<Site oder Konto der Verbindung>', …). Die Zugangsdaten erreichen Ihren Code nie. Eine Weiterleitung auf einen anderen Host, wie sie ein Download-Link liefert, wird ohne die Zugangsdaten verfolgt; await res.bytes() enthält dann die Datei. Antworten sind auf 10 MB begrenzt.

  • dg.log(), dg.debug(), dg.warn() und dg.error() schreiben ins Protokoll des Knotens im Ausführungsverlauf. console.log() geht ebenfalls.

  • Neben Standard-JavaScript sind diese Hilfsmittel eingebaut:

    • atob() und btoa() für Base64 (nur Latin-1-Text, wie im Browser) sowie Buffer für Bytes und andere Kodierungen, etwa Buffer.from(text, 'utf8').toString('base64') oder Buffer.from(b64, 'base64').toString('utf8').
    • TextEncoder und TextDecoder, auch mit den Optionen fatal und ignoreBOM.
    • JSZip zum Lesen und Schreiben von ZIP-Dateien. Auch Word-, Excel- und PowerPoint-Dateien sind ZIP-Dateien, so lesen Sie den Text eines heruntergeladenen Dokuments: const zip = await JSZip.loadAsync(await response.bytes()); const xml = await zip.file('word/document.xml').async('string');. Passwortgeschützte ZIP-Dateien lassen sich nicht öffnen.
    • setTimeout() und clearTimeout(), etwa um zwischen zwei Anfragen zu warten. Ein Timer muss innerhalb von 60 Sekunden nach dem Start auslösen, und es können höchstens 1.000 Timer gleichzeitig ausstehen.
    • require('buffer') und require('jszip') liefern dieselben Bibliotheken.
  • Der Code läuft in einer abgeschotteten Umgebung. Es gibt kein Dateisystem, keine npm-Pakete und kein import; require() kennt nur die beiden Namen oben. FormData und Blob stehen nicht bereit.

  • Grenzen pro Lauf:

    • 60 Sekunden Rechenzeit und insgesamt 5 Minuten, einschließlich der Zeit, in der der Code auf Anfragen und Timer wartet.
    • 512 MB Arbeitsspeicher.
    • Ein Ergebnis von höchstens 10 MB.
    • Die ersten 1.000 Protokollzeilen oder 1 MB Protokolltext werden behalten.

    Über der Zeit-, Speicher- oder Ergebnisgrenze bricht der Lauf mit einer Fehlermeldung ab, die die Grenze nennt. Protokollzeilen über der Grenze werden mit einem Hinweis verworfen.

JS
const items = formTrigger.outputs.formData.items;
return items.filter((i) => i.status === 'open').map((i) => i.title);

Bildgenerierung

Erzeugt ein Bild aus einer Textbeschreibung.

EingabeErforderlichBeschreibung
ModelJaDas Bildmodell
PromptJaBeschreibung des Bildes
AusgabeTypBeschreibung
imageWorkflowFileDas erzeugte Bild
revisedPromptstringDer Prompt, wie das Modell ihn verstanden hat, falls es Prompts umschreibt

Datentabellen

Die Unteransicht Integrationen → Datentabellen der Knotenauswahl enthält vier Knoten: Datentabelle: Zeilen abrufen, Zeile einfügen, Zeilen aktualisieren und Zeilen löschen. Ihre Ein- und Ausgaben sowie die drei weiteren Knoten der Integration Datentabelle beschreibt die Seite der Integration Datentabelle.

Geheimnisspeicher

Die Unteransicht Integrationen → Geheimnisspeicher liest Werte aus Ihren Geheimnisspeichern:

  • Alle Geheimnisse abrufen: Eingabe Secret Store, Ausgabe variables, ein Objekt aus allen Schlüsseln und Werten
  • Einzelnes Geheimnis abrufen: Eingaben Secret Store und Variable Key, Ausgabe value

Spätere Knoten verweisen auf diese Ausgaben wie auf jede andere Variable, etwa {{getAllSecrets.outputs.variables.API_KEY}}. Als Secret markierte Werte werden als Verweis weitergegeben und erst aufgelöst, wenn der nächste Knoten läuft. Ausgaben und Ausführungsverlauf zeigen deshalb einen Verweis statt des Werts.

Ablauf

Bedingung

Leitet die Ausführung in einen von mehreren Zweigen. Jeder Zweig hat eine Bezeichnung und eine Bedingung. Es läuft der erste Zweig, dessen Bedingung zutrifft.

Eine Bedingung ist ein JavaScript-ähnlicher Ausdruck mit Variablen:

JS
{{webSearch.outputs.results.length}} > 0
{{httpRequest.outputs.statusCode}} === 200
{{aiAgent.outputs.result.sentiment}} !== "negative"
{{code.outputs.result.flag}} === true

Schreiben Sie die Variable ohne Anführungszeichen. Textwerte werden als Text verglichen, mit dem Vergleichswert in Anführungszeichen ("negative"); Zahlen und Wahrheitswerte ohne Anführungszeichen (200, true). Text, der genau eine Zahl, true, false oder null ist, wird als dieser Wert verglichen, "200" ist also gleich 200. Eine Variable in einem regulären Ausdruck (/…/) wird nicht unterstützt; um Text zu durchsuchen, verwenden Sie .includes("…").

Statt eines Ausdrucks können Sie die Bedingung im Modus KI-Prompt in normaler Sprache formulieren; ein KI-Modell entscheidet dann, ob sie zutrifft. Das kostet Tokens.

Einen automatischen Standardzweig gibt es nicht. Um alle übrigen Fälle aufzufangen, fügen Sie als letzten Zweig einen mit dem Ausdruck true hinzu.

AusgabeTypBeschreibung
matchedConditionIdstringID des passenden Zweigs oder null
matchedConditionLabelstringBezeichnung des passenden Zweigs oder null
evaluationErrorsarrayZweige, deren Bedingung sich nicht auswerten ließ, jeweils mit conditionLabel und error. Ein solcher Zweig gilt als nicht zutreffend; eine Variable, die es nicht gibt, beendet den Workflow mit einem Fehler

Schleife

Eine Schleife legt einen Knoten Schleife Start und einen Knoten Schleife Ende an. Die Knoten dazwischen laufen einmal pro Element.

Schleife Start nimmt ein Array und liefert pro Durchlauf:

AusgabeTypBeschreibung
currentItemanyDas aktuelle Element
currentIndexnumberIndex des Elements, beginnend bei 0
itemsarrayAlle Elemente
totalnumberAnzahl der Elemente
isFirstbooleanOb es das erste Element ist
isLastbooleanOb es das letzte Element ist

Schleife Ende nimmt ein Iteration Result, also den Wert, der aus jedem Durchlauf gesammelt wird, und liefert:

AusgabeTypBeschreibung
resultsarrayDie gesammelten Ergebnisse
countnumberAnzahl der Durchläufe

Subworkflow

Ruft einen anderen Workflow auf, der mit einem Subworkflow-Trigger beginnt, und wartet, bis er fertig ist. Wählen Sie den Workflow und füllen Sie die Parameter aus, die sein Trigger festlegt.

Der aufgerufene Workflow muss bereitgestellt, aktiv und im selben Arbeitsbereich sein. Aufrufe lassen sich bis zu 10 Ebenen tief verschachteln. Hält der Subworkflow für eine Genehmigung an, pausiert auch die aufrufende Ausführung.

Die Ausgaben des Knotens enthalten die Ausgaben der Knoten im Subworkflow, nach Knoten gruppiert, etwa {{subworkflow.outputs.<Knoten>.<Feld>}}. Die genauen Pfade zeigt das Panel Variablen. Kosten im Subworkflow zählen zur aufrufenden Ausführung.

War diese Seite hilfreich?
Aktionsknoten · DeutschlandGPT