Ich versuche eine API anzubinden. Jedoch scheitere Ich schon an der eigentlich einfachen Authentifizierung.
Ich erhalte URISyntaxException: Malformed escape pair.
Wenn Ich es einfach im Browser aufrufe sehe ich die xml mit dem Token den ich für die api brauche.
du kannst den Token, sowie er aus dem Request ausgegeben wird weiterverwenden. Im parsingTemplate des APICalls könntest du das vorgefertigte template nutzen.
Näheres dazu findest du unter folgenden Link:
Leider erhalte Ich dann aber diese Fehlermeldung:
(Root Causes: ParseException: Syntax error in template „requestBody“ in line 1, column 33: Unexpected end of file reached. You have an unclosed „(“. Check if the FreeMarker end-tags are present, and aren’t malformed. (Note that FreeMarker end-tags must have # or @ after the / character.))
Gibt es keine Möglichkeit sich den Aufruf anzeigen zu lassen? Das würde mir das Debugging deutlich erleichtern.
der Syntax error in deinem parsingTemplate hängt mit den verschalten ${} (Freemarker Interpolations) zusammen. Das kann leider passieren, wenn du z.B. Funktion oder Variablen über den + Button einfügst.
Folgendes template sollte funktionieren:
token=${urlEncode(getVariable("token"))}
Eventuell ist es aber sinnvoll die Erstellung des Tokens einem extra Step zu nutzen und diesen dann in einem weiteren API Call Step zu verwenden. Im Prinzip so wie du es schon hattest, nur ohne Datastore. Du kannst im zweiten ApiCall Step auch auf den token (Spreadsheet output des 1. Steps zugreifen).
Die Outputs kannst du dir mit klick auf den Pfeil nach dem Step anzeigen lassen:
Du benötigst die Variable für den Spreadsheet Step Output:
Die Spreadsheet verfügen über eine Funktion (firstRow("Spaltenname")) mit der man auf die Daten der 1. Zeile zugreifen kann. Damit kannst du z.B. über ${output@APICall_57.firstRow(„token“)} auf den neu erstellten token aus dem Ergebnis des 1. Steps zugreifen.