Skip to content

UrlDownload - API Connector Tools

← API Connector Tools Add-On Übersicht

Mit dem URLDownload Step kann man eine einzelne URL aufrufen (http://, https://) und den Inhalt als Datei (FILE) herunterladen. 
Für HTTP werden alle gängigen Methoden wie GET, POST, PUT, DELETE, HEAD und PATCH unterstützt. 

Weiterhin kann der Step auch verwendet werden um Dateien hochzuladen (analog zu einem Datei-Upload-Formular auf einer Website) oder API-Calls an eine REST-API abzuschicken. 

Konfiguration

Der abgesendete Request kann über verschiedene Parameter beeinflusst werden wie z.B.:

  • requestBody

  • contentType

  • requestHeader

  • timeout

  • HTTP errorStatusCodes

  • fileUpload

  • Basic Auth (username, password)

Alle Parameter werden weiter unten beschrieben.

HTTP Multipart Requests

Siehe APICall#HTTPMultipartRequests.

HTTP Error Codes

Im Feld errorStatusCodes können sie konfigurieren welche HTTP Status als Fehler gewertet werden. Standardmäßig (leeres Feld) sind Antworten mit einem HTTP-Statuscode größer oder gleich 300 ein Fehler. Im Falle einer Weiterleitung (Status 3xx) bei einem GET Request wird der Status Code zur weitergeleiteten URL ausgewertet.

Sie können auch individuelle Status als Komma-separierte Liste im Feld angeben. Es ist auch möglich die Status in Form von Regulären Ausdrücken anzugeben.

Beispiele:

  • leer -> Fehler bei Status >= 300
  • 401,407 -> Fehler bei Status Code 401 & 407
  • 40[0-7],5[0-9][0-9] -> Fehler bei Status Code 400 bis 407 und 500 bis 599
  • 40[135] -> Fehler bei Status Code 401, 403 und 405
  • 3.*,4.*,5.* -> Fehler bei 300 – 599

Inputs

Das sind die Optionen, mit denen man den Step konfigurieren kann.

NameDatentypBeschreibungPflichtfeldWerte
accountACCOUNTSelect a HTTP account for client certificate based authenticationNein
hostSTRINGDas ist die URL die heruntergeladen werden soll. (z.B. https://api.somewebservice.com/GetStock, https://www.mywebsite.com/products.csv). Unterstützte Protokolle sind http://, https://. Wenn das Protokoll weggelassen wird, wird es standardmäßig durch http:// ersetzt.Ja
methodSTRINGDie HTTP Methode (GET, POST, PUT, HEAD, PATCH, DELETE).Ja
  • GET
  • POST
  • HEAD
  • PUT
  • PATCH
  • DELETE
usernameSTRINGFalls die URL mit HTTP BASIC AUTH geschützt ist. Das ist der Benutzername.Nein
passwordSTRINGDas HTTP BASIC AUTH Passwort.Nein
errorStatusCodesSTRINGkommagetrennte Liste von HTTP Status Codes bei denen der Flow anhält, z.B. 403,404,500. Leer lassen für alle Status Codes größer 300.Nein
filenameSTRINGKann verwendet werden um Dateinamen der Antwort-Dateien zusammenzusetzen. Bitte geben sie die Dateierweiterung für den Dateinamen immer mit an (z.B. meinedatei.txt). Wenn leer wird der Dateiname automatisch gesetzt.Nein
requestBodySTRINGOptional: Den HTTP request body direkt senden. Besonders nützlich bei der Kommunikation mit REST-APIs oder XML-Webdiensten, bei denen die ganze Anfrage in das Text Feld geschrieben wird. Kann nur bei der POST, PATCH, PUT HTTP Methode verwendet werden. Bei bodyContentType=multipart/form-data (oder Dateiupoad mit fileToUpload) kann man auch Form-Parameter übermitteln z.B. &param1=value1&param2=value2 (wenn die URL/host keine Parameter hat, dann ohne das erste &-Zeichen). Es ist auch für bessere Lesbarkeit möglich, pro Zeile einen Parameter zu verwenden. Wichtig ist, dass der Wert keine Zeilenumbrüche beinhaltet. Verwenden Sie ggf. die Funktion ${urlEncode("one & one is two")}, um Werte url-encodiert zu schicken. Für mehrzeilige Werte sollte die Freemarker <#compress> function probiert werden.Nein
fileToUploadFILEOptional: Sendet diese Datei im request body, ähnlich dem Upload-Formular auf einer Webseite.Nein
fileParameterNameSTRINGOptional: Der Name des HTTP-Anfrage-Parameters unter dem die Datei hochgeladen wird (Default wenn leer: 'upfile').Nein
headerContentTypeSTRINGDer HTTP header Inhalts TypNein
  • application/octet-stream
  • application/xhtml+xml; charset=ISO-8859-1
  • application/json; charset=UTF-8
  • application/xml; charset=ISO-8859-1
  • text/html; charset=ISO-8859-1
  • text/plain; charset=ISO-8859-1
  • text/xml; charset=ISO-8859-1
  • application/x-www-form-urlencoded; charset=ISO-8859-1
  • text/csv; charset=UTF-8
  • multipart/form-data; charset=ISO-8859-1
bodyContentTypeSTRINGOptional: Der Content type des requestBody.Nein
  • application/octet-stream
  • application/xhtml+xml; charset=ISO-8859-1
  • application/json; charset=UTF-8
  • application/xml; charset=ISO-8859-1
  • text/html; charset=ISO-8859-1
  • text/plain; charset=ISO-8859-1
  • text/xml; charset=ISO-8859-1
  • application/x-www-form-urlencoded; charset=ISO-8859-1
  • text/csv; charset=UTF-8
  • multipart/form-data; charset=ISO-8859-1
requestHeadersSTRINGOptional: Zusätzliche HTTP request headers, die der HTTP Anfrage als key=value (Schlüssel-Wert-Paar) hinzugefügt werden (ein Paar pro Zeile).Nein
timeoutInSecondsSTRINGOptional: HTTP Verbingungs- und Lese-Timeout in Sekunden. Default: 60s. Wenn der Server für die Antwort länger als timeoutInSeconds braucht, schlägt der Step fehl und gibt ienen Fehler aus.Nein
sslCertificatesSTRINGExperten-Einstellungen für https-urls: Unter normalen Umständen resultieren URLs mit Selbst-Signierten SSL Zertifikaten in einem Fehler. Dieser kann übergangen werden wenn diese Einstellung auf 'Selbst-Signierten SSL Zertifikaten vertrauen' gesetzt wird. Diese Einstellung stellt aber ein Sicherheitsrisiko dar, da schadhafte Seiten dies missbrauchen könnten um sensitive Informationsn zu stehlen. Nur benutzen, wenn Sie wissen was Sie tun!!!Nein
  • Selbst-Signierten SSL Zertifikaten vertrauen (Sicherheitswarnung)
  • Selbst-Signierten SSL Zertifikaten nicht vertrauen (default)
responseEncodingSTRINGDiese Option nur verwenden, wenn der Ausgabe-Typ aus String gesetzt ist und der response header keinen gültigen Zeichensatz enthält.Nein
  • [AUTO-DETECT]
  • UTF-8
  • UTF-16
  • ISO-8859-1
  • ISO-8859-2
  • ISO-8859-4
  • ISO-8859-5
  • ISO-8859-15
  • cp1252 (Windows-1252, ANSI)
  • MacCentralEurope
  • US-ASCII
  • KOI8-R
outputtypeSTRINGDer Typ der Ausgabe des Steps. (Anmerkung: String ist veraltet und sollte nur während der Entwicklung zum debuggen genutzt werden. Könnte ohne weiteren Hinweis in der Zukunft entfernt werden.)Nein
  • Datei
  • String

Outputs

Das sind die Ergebnisse des Steps, die von nachfolgenden Steps, nach der Ausführung verwendet werden können.

NameDatentypBeschreibungWerte
fileFILEDie heruntergeladene Datei (nur wenn der Ausgabetyp 'Datei' ausgewählt ist).
urlcontentSTRINGDer heruntergeladene Inhalt als STRING (Nur wenn der Ausgabetyp 'string' ausgewählte ist). Anmerkung: String ist veraltet und sollte nur während der Entwicklung zum debuggen genutzt werden. Könnte ohne weiteren Hinweis in der Zukunft entfernt werden.
statusCodeSTRINGDer HTTP Status Code der Antwort.
statusTextSTRINGDer HTTP Status Text der Antwort.
responseTimeInMillisNUMBERDie Antwort Zeit.
responseSizeNUMBERDIe Grüße des Antwort in bytes.
responseHeadersSTRINGDie HTTP-Antwort headers.
requestBodySTRINGDer gesendete HTTP-requestbody.