BatchSize greift nicht

Hallo Zusammen,

die API unseres PIM erlaubt maximal 100 Einträge pro API Call.
Im SpreadsheetUrlDownload gibt es ja über die Möglichkeit über den BatchSize, die Anzahl Zeilen pro Call zu begrenzen.

Der Datastore aus dem der Input kommt, umfasst ca. 2.000 Zeilen.

Mein RequestBody sieht wie folgt aus:

<#list meta.output@SpreadsheetFilter_2.getRows() as row> 
{"identifier": "${row.get("sku")!}", "values": {"ecom_customer_products": [{"locale": null,"scope": null,<#if row.get("erp_1")! == "" && row.get("erp_2")! == "" && row.get("erp_3")! == "">"data": null<#else>"data": [ <#if row.get("erp_1")! == "true">"1",</#if><#if row.get("erp_2")! == "true">"2",</#if><#if row.get("erp_3")! == "true">"3"</#if> ]</#if>}]}}
</#list>

Auch wenn ich die BatchSize auf 100 stelle, erhalte ich über die API den Fehler, dass der Request zur groß ist "HTTP/1.1 413 Request Entity Too Large[\r][\n]"

Im Debug-Log sehe ich auch alle 2.000 Zeilen untereinander, also kein Hinweis, dass 100er Pakete versendet wurden.

Hat da jemand eine Idee, wo ich eventuell etwas falsch gemacht habe?

Viele Grüße
Ramin

Hallo @ramin-ww
Schreib mal

<#list rows as row> statt dem was du hast.

Tip:

Du kommst dazu wie folgt:

  • Batchsize auf > 1 stellen
  • Plus button im requestBody Feld drücken
  • dann im Tab „Spezial-Variablen“ auf die Zeile mit „BatchRows“ klicken

Hintergrund:

Die rows Variable ist direkt Teil des SpreadsheetUrlDownload Steps. Nur die „kennt“ und berücksichtigt die batchSize.

Ah…perfekt!! Wieder etwas dazugelernt!

Danke!

Viele Grüße
Ramin