REST API - Varianten anlegen

Hi, ich teste gerade mit Varianten und der REST API. Varianten Optionen und Werte werden angelegt und auch im Artikel gezeigt. Aber die einzelenen Varianten mit den Preisen werden nicht generiert. Woran liegt das? $articleData2 = array( 'configuratorSet' =\> array( 'groups' =\> array( array( 'name' =\> 'Größe2', 'options' =\> array( array('name' =\> 'S'), array('name' =\> 'L'), ) ), array( 'name' =\> 'Farbe2', 'options' =\> array( array('name' =\> 'Schwarz'), ) ), ) ), 'name' =\> 'Variant Testartikel 123', 'active' =\> true, 'taxId' =\> 1, 'supplier' =\> 'Test Company', 'categories' =\> array( array('id' =\> 79), ), 'mainDetail' =\> array( 'number' =\> 'TEST000111', 'prices' =\> array( array( 'customerGroupKey' =\> 'EK', 'price' =\> 999, ), ) ), 'variants' =\> array( array( 'isMain' =\> true, 'number' =\> 'TEST000111', 'inStock' =\> 15, 'addtionnaltext' =\> 'L / Schwarz', 'configuratorOptions' =\> array( array('group' =\> 'Größe', 'option' =\> 'L'), array('group' =\> 'Farbe', 'option' =\> 'Schwarz'), ), 'prices' =\> array( array( 'customerGroupKey' =\> 'EK', 'price' =\> 999, ), ) ), array( 'isMain' =\> false, 'number' =\> 'TEST000111.1', 'inStock' =\> 15, 'addtionnaltext' =\> 'S / Schwarz', 'configuratorOptions' =\> array( array('group' =\> 'Größe', 'option' =\> 'S'), array('group' =\> 'Farbe', 'option' =\> 'Schwarz'), ), 'prices' =\> array( array( 'customerGroupKey' =\> 'EK', 'price' =\> 888, ), ) ), ) ); $request = $client-\>post('articles', $articleData2); Hat mir jemand einen Tipp?

Gute Frage :confused:

hm, bei mir klappt das prima, ich habe gerade erfolgreich einige varianten per (lokalem) rest-api angelegt. das einzige, was mir bei dir auffällt, ist ein kleiner typo: “addtionnaltext” -> “additionaltext”. grüße nils

Hey Nils, das hört sich gut an. Ich verzweifel total daran. Kannst du evtl den Quellcode posten?

Ich bekomme wenn ich Varianten anlegen will immer eine Fehlermeldung:„Invalid method or invalid json string.“ Diese Fehlermeldung bekomme ich sogar, wenn ich 1 zu 1 das Script von der Wiki Seite nehme und nur meine Artikelnummern ersetze. Also irgendwas ist da nicht ganz richtig. Bin schon wieder drauf und dran, das wie vorher, Hardcore in die Datenbank zu schreiben…

Hallo, ich bin gerade dabei die Daten über die Shopware API in den Shop zu laden. Bei Hauptartikeln klappt das auch wunderbar. Nun möchte ich aber Varianten Artikel in den Shop bringen. Dieser gibt mir aber wenn ich Varianten hinzufügen will, immer nur die Fehlermeldung ​ Invalid method or invalid json string. Selbst wenn ich den Code von der Wiki Seite 1 zu 1 übernehme und nur die Artikelnummern durch unsere ersetzte. Das configuratorSet und groups lege ich bereits manuell an, da dies über die API auch nicht geht. Mein Array, das ich benutzen möchte um die Varianten zu erstellen orientiert sich an der Wiki: Array ( [variants] =\> Array ( [0] =\> Array ( [number] =\> 100788 [supplierNumber] =\> 9091114 [isMain] =\> false [additionaltext] =\> Gr. L [active] =\> 1 [inStock] =\> 9 [stockMin] =\> 1 [weight] =\> 0.410 [width] =\> 1.100 [len] =\> 2.220 [height] =\> 0.580 [minPurchase] =\> 1 [purchaseUnit] =\> 1.0000 [referenceUnit] =\> 1.000 [packUnit] =\> Stück [shippingTime] =\> 3 [prices] =\> Array ( [1] =\> Array ( [customerGroupKey] =\> EK [price] =\> 7.9 [from] =\> 1 [to] =\> beliebig ) ) [configuratorOptions] =\> Array ( [0] =\> Array ( [name] =\> Gr. L [position] =\> 1 [group] =\> Gr\_Handschuhe [option] =\> Gr. L [groupId] =\> 12 [id] =\> 11 ) ) ) [1] =\> Array ( [number] =\> 104634 [supplierNumber] =\> 9091114 [isMain] =\> false [additionaltext] =\> Gr. M [active] =\> 1 [inStock] =\> 8 [stockMin] =\> 1 [weight] =\> 0.000 [width] =\> 1.100 [len] =\> 2.220 [height] =\> 0.580 [minPurchase] =\> 1 [purchaseUnit] =\> 1.0000 [referenceUnit] =\> 1.000 [packUnit] =\> Stück [shippingTime] =\> 3 [prices] =\> Array ( [1] =\> Array ( [customerGroupKey] =\> EK [price] =\> 7.9 [from] =\> 1 [to] =\> beliebig ) ) [configuratorOptions] =\> Array ( [0] =\> Array ( [name] =\> Gr. M [position] =\> 1 [group] =\> Gr\_Handschuhe [option] =\> Gr. M [groupId] =\> 12 [id] =\> 12 ) ) ) [2] =\> Array ( [isMain] =\> true [number] =\> 100787 [inStock] =\> 6 [additionaltext] =\> Gr. S [prices] =\> Array ( [0] =\> Array ( [customerGroupKey] =\> EK [price] =\> 7.9 [from] =\> 1 [to] =\> beliebig ) ) [configuratorOptions] =\> Array ( [0] =\> Array ( [group] =\> Gr\_Handschuhe [option] =\> Gr. S [name] =\> Gr. S [position] =\> 1 [groupId] =\> 12 [id] =\> 13 ) [1] =\> Array ( [group] =\> Gr\_Handschuhe [option] =\> Gr. X [name] =\> Gr. X [position] =\> 2 [groupId] =\> 12 [id] =\> 16 ) ) ) ) ) Wisst ihr vielleicht woran es liegt, das er hier keine Varianten anlegt, wenn ich das Array mit $client-\>put('articles', $xml\_varianten); in den Shop laden möchte? Beste Grüße,