Zeilenumbrüche bei APICall

Hallo,

ich hole per APICall Daten zu Mail-Templates aus Shopware. So wie ich das verstehe, werden Zeilenumbrüche aber nicht ausgegeben. Ich habe es mit Postman getestet und dort werden mir die Zeilenumbrüche \n angezeigt. Lässt sich das auch in Synesty bewerkstelligen?

Aktuell parse ich die JSON Daten im APICall wie folgt:

<#assign row = target.addRow()>

<#list json.data as template >
    <#assign row = target.addRow()>
    ${addColumns(row, template, '', {'columns':['id', 'subject']})}

    <#assign row = target.addRow()>
    ${addColumns(row, template, '', {'columns':['id', 'contentHtml']})}

    <#assign row = target.addRow()>
    ${addColumns(row, template, '', {'columns':['id', 'contentPlain']})}
</#list>

VG Patrick

Hallo @abc_design,

was lässt dich vermuten, dass die Zeilenumbrüche nicht mit ausgeben? Lässt du die Daten dir zuschicken und da sind sie nicht mehr drin? Kannst du bitte einmal einen Mapper nach dem Call hinzufügen und dann im Mapper unter Einstellungen folgendes aktivieren?
image

Danach sollte der Zeilenumbruch wie folgt angezeigt werden:
image

Viele Grüße
Lukas

1 „Gefällt mir“

Hallo @synesty-Lukas,

so ergibt das Sinn :slight_smile:
Die Zeilenumbrüche werden doch ausgegeben. Die Einstellung kannte ich nicht.
Vielen Dank für den Hinweis.

VG
Patrick

Jetzt hätte ich doch nochmal eine Frage.

Und zwar hole ich die Daten aus Shopware, übersetzte sie mit DeepL und dann schiebe sie dann wieder für die entsprechende Sprache ins Shopware zurück. Das klappt grundsätzlich auch, nur gibt es hier wieder Probleme mit den Zeilenumbrüchen.
Ich habe die übersetzen Texte in der korrekten Formatierung vorliegen und möchte diese mit Zeilenumbrüchen also mit \n wieder ins Shopware laden. Das geht aber nicht, da Shopware sonst „The JSON payload is malformed.“ zurückmeldet. Ich kann somit nur einen String ohne Zeilumbrüche an Shopware senden. Das ist aber wiederum schlecht, weil ich die Zeilenumbrüche im Mail Content Plain benötige.
Über Postman funktioniert es wenn ich Zeilenumbrüche im String explizit mit „\n“ angebe.

Bsp. aus Postman:

VG Patrick

Hallo @abc_design,

versuch mal am Ende deines Textes noch ein ?json_string zu setzen. Also ohne schon im Text die Leerzeichen mit /n zu escapen, das macht die Methode ?json_string schon.

Viele Grüße
Lukas

1 „Gefällt mir“

Perfekt! Genau das habe ich gesucht :slight_smile:

Danke
Patrick