La documentation de l'API REST Magento 2 explique comment définir des attributs custom_attributes sur un client lors de sa mise à jour ou de sa création. http://devdocs.magento.com/swagger/index_20.html#/Attribut personnalisé client API Magento 2 REST
Malheureusement, je ne pouvais pas obtenir ce travail ...
Mon POST et PUT données de demande JSON est:
{
"customer": {
"custom_attributes": [
{
"attribute_code": "firstname",
"value": "TEST"
}
],
"email": "[email protected]",
"extension_attributes": [],
"firstname": "Someone",
"gender": null,
"lastname": "Else",
"middlename": null,
"taxvat": null,
"website_id": "1"
}
}
Le Client est créé, mais l'est pas Prénom "TEST". Y a-t-il quelqu'un qui a eu le même problème et l'a réparé? Faites-moi savoir comment.
J'ai fait exactement la même chose avec un article et un attribut "description" qui a fonctionné. Pourquoi cela ne fonctionne-t-il pas pour les clients? Je ne pouvais pas trouver l'endroit dans le code Magento 2 où cette demande est traitée, peut-être que vous pouvez me fournir l'emplacement? – MmynameStackflow
- En regardant la WebAPI définie ('Magento \ Customer \ etc \ webapi.xml') pour la méthode en question l'appel d'API' POST/V1/customers' est géré par 'Magento \ Client \ Api \ AccountManagementInterface :: createAccount () ' - D'après le fichier di.xml (' Magento \ Client \ etc \ di.xml') 'Magento \ Client \ Api \ AccountManagementInterface' est implémenté par' Magento \ Customer \ Model \ AccountManagement' ('Magento \ Client \ Model \ AccountManagement.php') - Je recommande d'utiliser Xdebug pour parcourir le code afin de comprendre comment/pourquoi l'attribut ne se met pas à jour. –
Merci d'avoir choisi @Sharath Kumar. Ma conclusion: Ce n'est tout simplement pas possible et Magento 2 ne fait rien avec custom_attributes sur l'API Customer. Contrairement à l'API du produit. Je me demande pourquoi la documentation dit que vous pouvez ... – MmynameStackflow