api put löscht bestehende werte, aber welche und wann?

ich habe erfahren das es eine feature ist das shopware api bei update (put) manchmal nicht definierte werte einfach löscht/nullt. zbs. aktualisieren von nur baseprice, setzt shopware price auf 0…

dann habe ich erfahren das es irgendwelche “merge modus” gibt, was aber leider auch nicht das aktualisieren von nur baseprice erlaubt, sondern legt einen neuen array in prices…

also nehme ich an es gibt keine möglichkeit nur die baseprice in vorhandenen prices über die api zu aktualisieren, oder doch?

daher möchte ich wissen:

  • welche werte genau werden überschrieben/gelöscht?
  • und bei welchen api knoten genau ist dies der fall?

so das ich als workaround dann die alten daten beim update nochmal mitgeben kann…

Meinst du mit API die REST-API ?

Wenn ja, dann stimmt es, der Merge Modus (replace => false) bringt in dem Fall nichts.

Das Workaround dafür ist es dir mit GET alle Preisdaten zu dem Produkt zu ziehen, entsprechendes Array mit neuem Preis anzupassen und dann das gesamte Array mit PUT übergeben so das mehr oder weniger ALLE Preiswerte neu geschrieben werden.

Hatte das gleiche Problem, leider konnte mir bis dato auch keiner helfen. Ich werde das Problem am Mittwoch mal auf dem Community-Treffen ansprechen aber bislang ist das denke ich die einzige Lösung. Habe es auch nur so lösen können.

 

Hier der Thread in dem ich danach gefragt hatte.