Per Rest API Artikel anlegen und Details ändern

[color=gray]Hallo allerseits, habe es endlich geschafft einen Artikel per Rest API anzulegen. Leider wird „weight“, „attr1“ bis „attr10“, „maxPurchase“, „shippingTime“ u.a. ignoriert. In welcher Ebene stehen diese (wie „supplier“ oder im Unterpunkt „mainDetails“) ? Hier der Code: $a = ‚10788‘; $maxPurchase = 5; $weight = 2; $shippingFree = true; $shippingTime = ‚3-5‘; $attr4 = ‚3-5‘; $attr5 = ‚0‘; $updateArticle = array( ‚keywords‘ => $keywords, ‚metaTitle‘ => $metaTitle, ‚changed‘ => $changed, ‚added‘ => $added, ‚mainDetail‘ => array ( ‚attribute‘ => array ( ‚attr4‘ => $attr4, ‚attr5‘ => $attr5, ), ‚shippingFree‘ => $shippingFree, ‚shippingTime‘ => $shippingTime, ), ‚supplier‘ => $supplier, ‚maxPurchase‘ => $maxPurchase, ‚weight‘ => $weight, ‚categories‘ => array( array(‚id‘ => 5), array(‚id‘ => 11), array(‚id‘ => 11), array(‚id‘ => 13), array(‚id‘ => 14), array(‚id‘ => 19), ), ); $client->put(‚articles/‘.$a.’?useNumberAsId=true’, $updateArticle);[/color] Gibt es irgendwo eine genaue Übersicht über die Artikel-Parameter ? Aus der Wiki bin ich nicht richtig schlau geworden …

guckst du hier

Die Infos habe ich ja schon durch. Aber um es konkret zu machen: Wie ändere ich per API das Gewicht eines Artikels ? Mit $updateArticle = array( ‚weight‘ => (string)‚2‘ ); $client->put('articles/123, $updateArticle); geht es bei mir nicht. Auch nicht per $updateArticle = array( ‚mainDetails‘ = array( ‚weight‘ => (string)‚2‘ )); $client->put('articles/123, $updateArticle); nicht … Wer weiß Rat ?

also weight gehört auf jeden fall zu mainDetail ist aber vom type float und nicht string. vielleicht hängt es daran? versuch’s doch mal so: $updateArticle = array( 'mainDetails' = array( 'weight' =\> 2.0));

Erst einmal Danke, mit dem richtigen Typ hat’s funktioniert. Den Rest schaffe ich jetzt auch :happy: Mich hat nur die Typenübersicht in der „Endpunkt Arikel API“ auf die falsche Fährte gebracht. Da steht ausdrücklich „Details … Feld: weight … Typ: STRING …“ Habe ich da etwas falsch verstanden ???

im zweifel immer ins Model gucken [quote] /** * @var float $weight * * @ORM\Column(name=“weight”, type=“decimal”, nullable=true, precision=3) */ private $weight = null; [/quote]