Curl Beispiele in APICall, URLDownload oder SpreadsheetUrldownload verwenden

Curl ist ein weit verbreitetes Befehlszeilen-Tool, das verwendet wird, um Daten über verschiedene Protokolle wie HTTP, FTP, etc. zu übertragen. In API Dokumentationen werden Beispiel sehr auf als Curl Befehl angegeben.
Einige der am häufigsten verwendeten Curl Parameter und wie diese in den HTTP Steps gesetzt werden können, sollen hier vorgestellt werden:

In allen Beispielen wird die URL https://example.com verwendet. Die URL können Sie in allen HTTP Steps im Feld host eintragen oder eine HTTP Verbindung mit dieser URL als baseUrl erstellen.

  • Beispiel 1: HTTP Methode (-X, --request)

curl -X PUT https://example.com

Der Parameter -X oder --request steht für die „HTTP-Methode“. Diese können Sie im Feld method auswählen. Folgende HTTP-Methoden werden von den Steps unterstützt: GET, POST, PUT, PATCH, DELETE und HEAD. Wenn kein -X (oder --request) Parameter angegeben ist, wird von curl standardmäßig eine GET Anfrage ausgeführt.

  • Beispiel 2: HTTP Header (-H, --header)

curl -H 'X-Header: value' -H 'Authorization: Bearer {{token}}' https://example.com

Der -H oder --header Parameter steht für „Header“ (Kopfzeile) und wird verwendet, um zusätzliche HTTP-Header zur Anfrage hinzuzufügen. Es können mehrere Header Werte angegeben werden. Im Step können Sie diese Werte im Feld requestHeaders hinterlegen. Pro Zeile kann ein Wert angegeben werden. Bitte beachten Sie das der Headername und der Wert durch = getrennt werden (nicht Doppelpunkt).

  • Beispiel 3: POST Request mit Request Body (POST, -d oder --data)

Der -d Parameter wird verwendet, um Daten bei einer HTTP-Anfrage (HTTP Request) hinzuzufügen. Genau wie der --data -Parameter ermöglicht -d das festlegen des sogenannten Request Bodys für HTTP-Anfragen. Den Request Body können Sie nach der Auswahl der HTTP Methode im Feld requestBody hinterlegen. Bitte beachten Sie, dass dies nur bei den HTTP Methoden POST, PUT oder PATCH möglich ist.

curl --request POST 
 --url https://example.com 
 --header 'Accept: application/json' 
 --header 'Content-Type: application/json'
 --data '{ "data": { "id": "string", "name": "string" } }'

  • Beispiel 4: Basic Auth (--basic)

curl -u name:password --basic https://example.com

Der --basic -Parameter wird von curl genutzt, um die HTTP Basic Authentication in einer Anfrage zu verwenden. Basic Authentication ist ein einfaches Authentifizierungsverfahren. Zusätzlich werden über den -u Parameter („user“) die Anmeldedaten in der Form Benutzername:Kennwort angegeben. Benutzername und Kennwort können Sie in den Felder username und password der HTTP Steps hinterlegen. Sind diese beiden Felder gefüllt, wird automatisch das Basic Authentifizierungsverfahren verwendet.

Alternativ können Sie auch eine HTTP Verbindung mit Basic Authentication anlegen:

Für HTTP Verbindungen stehen auch noch weitere Authentifizierungsverfahren wie z.B. OAuth 2.0, Digest Auth, Bearer Token oder API Key zur Verfügung. Mehr Informationen zu HTTP verbindungen und möglichen Authentifizierungsverfahren finden Sie hier

  • Beispiel 5: Dateiupload (multipart/form-data, -F, --form)

curl --request POST 'https://example.com' 
--header 'Authorization: Bearer {{token}}' 
--header 'Content-Type: multipart/form-data'
--form 'attachment=@"example.pdf"' 
--form 'type=document'

Der -F oder --form Parameter wird verwendet, um Formulardaten zu übertragen, wenn z. B. eine Datei an einen Server gesendet werden soll. Dieser Parameter kann mehrfach verwendet werden, um z.B. weitere Formulardaten in einer Anfrage zu übermitteln. Im Beispiel werden die Datei „example.pdf“ als auch der zusätzliche Parameter type=document an den Server gesendet.

Die Datei kann im UrlDownload und APICall Step in der erweiterten Einstellung fileToUpload ausgewählt werden. Der Name des Parameters kann anschließend im Feld fileParameterName angegeben werden.

Die zusätzlichen Formulardaten (Parameter) können im requestBody Feld gesetzt werden. Alle Parameter-Wert Paare müssen durch ein & Zeichen getrennt werden.

Der SpreadsheetURLDownload ermöglicht weitere Möglichkeiten eine Datei pro Request zu senden. Mehr Informationen finden Sie in unserer Dokumentation unter SpreadsheetUrlDownload | Synesty Docs

Hilfreiche Links: