Hallo zusammen,
wir sind gerade dabei unseren SW5 Shop auf die Version 6 zu migrieren. Dabei würde ich gerne die Sync API verwenden und kämpfe mich gerade wie Rambo durch das Dickicht. Die Dokumentation ist leider sehr spartanisch und hilft nur bedingt weiter. An einer Stelle komme ich nun nicht weiter, und möchte gerne mal das Schwarmwissen anzapfen.
Das Ziel ist, Artikel, also zuerst einmal die „product“ Entity zu aktualisieren. Nach allem, was ich mir bisher zusammengereimt habe, sollte folgender Request an die Sync API dies erledigen:
(
[write-product] => Array
(
[entity] => product
[action] => upsert
[payload] => Array
(
[0] => Array
(
[id] => 0776A765A7B3449C9012C0F433AFE791
[name] => Tropffläschchen 100 ml blau
)
)
)
)
bzw. als JSON
{
"write-product" : {
"entity" : "product",
"action" : "upsert",
"payload" : [
{ "id" : "0776A765A7B3449C9012C0F433AFE791", "name" : "Tropffl\u00e4schchen 100 ml blau" }
]
}
}
Leider bekomme ich als Antwort folgendes:
stdClass Object
(
[errors] => Array
(
[0] => stdClass Object
(
[status] => 500
[code] => FRAMEWORK__PRIMARY_KEY_NOT_PROVIDED
[title] => Internal Server Error
[detail] => Expected primary key field id for definition Shopware\Core\Content\Product\ProductDefinition not provided
[meta] => stdClass Object
(
[parameters] => stdClass Object
(
[definition] => Shopware\Core\Content\Product\ProductDefinition
[propertyName] => id
)
)
)
)
)
Da die UUID offensichtlich angegeben ist, komme ich nicht weiter, wenn mir die API „FRAMEWORK__PRIMARY_KEY_NOT_PROVIDED“ sagt
Kann mir jemand einen beispielhaften Payload geben, mit dem ich eine „product“ Entity aktualisieren kann?
Danke
LG
Carsten