HTTPRequest – Übersicht
Die Aktion HttpRequest ruft eine Webadresse auf, typischerweise eine REST-API. Damit verbinden Sie RUNOS mit fast jedem Dienst: Mails über Microsoft 365 senden, Gmail lesen, Kontakte in Odoo anlegen, Aufträge aus einem Shop abrufen, Rechnungen hochladen, Wetterdaten lesen, Dateien herunterladen.
Die Antwort steht den folgenden Aktionen zur Verfügung, JSON-Antworten bereits als Objekt:
{ "Type": "HttpRequest", "Name": "WetterAbfragen", "Parameters": { "Url": "https://api.open-meteo.com/v1/forecast", "QueryParameters": { "latitude": "52.52", "longitude": "13.41", "current_weather": "true" } }}Die Temperatur steht danach in {{WetterAbfragen.Response.Body.current_weather.temperature}}, der Statuscode in {{WetterAbfragen.Response.StatusCode}}.
Im Workflow-Editor stellen Sie eine Anfrage im Formular zusammen und senden sie mit Schritt testen in der Testansicht.
Was die Aktion kann
Abschnitt betitelt „Was die Aktion kann“| Aufgabe | Wie |
|---|---|
| Daten abfragen | Method: GET mit QueryParameters |
| Daten senden | POST, PUT oder PATCH mit Body als JSON, Formular, Text oder XML |
| Dateien hochladen | BodyType: Multipart (Formular mit Dateien) oder File (die Datei als Inhalt) |
| Anmelden | Connector mit dem Namen eines gespeicherten Konnektors: API-Schlüssel, Benutzer und Passwort oder OAuth2 (Microsoft, Google) mit automatischer Token-Erneuerung |
| Mehrere Seiten | AutoPagination folgt den Links zur nächsten Seite; Response.Items enthält die Einträge aller Seiten |
| Viele Adressen | Urls, wahlweise mit Parallel: true |
| Dateien herunterladen | DownloadPath |
| Robust bei Netzproblemen | MaxRetries (Standard 2) wiederholt nach Verbindungsfehlern, Zeitüberschreitung und Überlastungsantworten (429, 503 …); ein POST wird nie doppelt gesendet, wenn der Server ihn schon verarbeitet haben kann |
| Andere Codes als Erfolg werten | SuccessStatusCodes, z. B. "200-299;404" |
Die Aktion schlägt fehl, wenn der Server mit einem Fehlercode (4xx, 5xx) antwortet, nicht innerhalb von TimeoutSeconds (Standard 100) antwortet oder nicht erreichbar ist. Der Fehler enthält den Anfang der Serverantwort, die meist sagt, was falsch war.
Alle Parameter und das Ergebnis stehen unter Struktur.
Anmeldung über Konnektoren
Abschnitt betitelt „Anmeldung über Konnektoren“Zugangsdaten gehören nicht ins Workflow-JSON. Legen Sie einen Konnektor an und geben Sie der Aktion seinen Namen:
"Connector": "Odoo","Url": "/json/2/res.partner/search_read"Die Aktion meldet sich dann so an, wie der Konnektor es festlegt, und hängt einen Pfad wie /json/2/… an die Basis-URL des Konnektors. Bei OAuth2-Konnektoren (Microsoft 365, Gmail) erneuert RUNOS das Token selbst und wiederholt eine Anfrage einmal, wenn der Server das Token ablehnt.
| Dienst meldet an mit … | Konnektor |
|---|---|
| nichts (nur die Basis-URL) | None |
| API-Schlüssel | ApiKey |
| Benutzer und Passwort | Basic |
| Anmeldung im Browser (Microsoft, Google) | OAuth2 |
Alternativ meldet sich die Aktion mit AuthType und AuthToken an, und einzelne Werte eines Konnektors lassen sich mit Platzhaltern wie {{connector.Shop.ApiKey}} einsetzen.
Beispiele
Abschnitt betitelt „Beispiele“- MS365: Mails über Microsoft 365 senden, Kontakte lesen
- Gmail: ungelesene Mails abrufen, als gelesen markieren, über Gmail senden
- Odoo Contacts: Kontakte in Odoo suchen und anlegen
