REST API Fehlermeldungen trotz korrektem JSON

Wir senden in einem SpreadsheetUrlDownload Step eine Reihe von PUT Requests, hier haben wir in der Vorschau keine Probleme, die API nimmt den Request an. Wenn aber der Flow läuft, dann erhalten wir für jeden Request eine Fehlermeldung in dieser Form. Wir haben aber z.B. in dem Step jeglichen Zeilenumbrüche entfernt, kriegen aber von der API Unix Zeilenumbrüche im Response


HTTP status: 400 (Bad Request), Response Content: {"error":"783: unexpected token at '{\"customer\": {\"id\": xxxxxxxxxx,\"tags\": \"\n\n\xxxxxxx-ff80-xxxxxx-a5ea-xxxxxxxx, XXX_XX_NUMMER:1234567893, 1234567893\"}}'"}

Hallo David,


anhand der Fehlermeldung ist es schwer zu sagen wo die Zeilenumbrüche bzw. Fehler herkommen.


Wenn es in der Vorschau immer ohne Warnung funktioniert und der Fehler bei jedem Request während der "normalen" Ausführung kommt, deutet dass darauf hin, dass bei der Ausführung Daten im Request Body gesendet werden die während der Ausführung der Vorschau (wegen dem Vorschau-Zeilenlimit von 10) nicht gesendet werden.


Um die Ursache einzugrenzen kannst du den Debug Modus im Flow aktivieren. Im HTTP Log solltest du den kompletten Request finden. Diesen kannst du dann mit dem Request Body in der Vorschau vergleichen.


Zeilenumbrüche können sowohl in requestBody Template des SpreadsheetUrlDownloads als auch in den Daten des Input-Spreadsheets vorhanden sein. Wenn du die Zeilenumbrüche im SpreadsheetUrlDownload (RequestBody) alle entfernt hast, sind sie vermutlich im Input Spreadsheet (einer Spalte) vorhanden. Um diese zu entfernen könntest du bei "tags" noch das Freemarker BuildIn ?trim verwenden, z.B.:

{ 
    "customer": 
        {
           "id": xxxxxxxxxx,         
          "tags": "<#list tags?split(";") as tag>${tag!?trim}<#sep>, </#list>"
        }
}


Falls du den Fehler nicht findest kannst du uns auch gerne (per Ticket) den HTTP Log + deinen verwendeten Request Body im SpreadsheetUrlDownload schicken. Dann können wir uns das genauer anschauen.


Viele Grüße

Torsten

Hallo Torsten,

es kam wohl vor, dass bei manchen Tag Szrings ein Whitespace am Start oder Ende vom String war. Ich konnte das Problem durch erneutes Trimmen lösen.