Обновите Stock_level в OCAPI
Как я могу обновить инвентарь (stock_level) с помощью (API бизнес-менеджера).
Я использую API бизнес-менеджера для получения продуктов. Я могу получить продукты, но я не уверен, как я могу установить их запас (stock_level).
У меня есть специальное требование, когда количество продукта не может превышать 1, поэтому для этого мне нужно установить его в инвентаре, чтобы я мог проверить его.
Я пытался выяснить, могу ли я установить уровень запасов с помощью продукта, но это кажется невозможным.
Когда я пытаюсь получить инвентарь, следующая ошибка
{
"_v": "18.8",
"fault": {
"arguments": {
"method": "GET",
"path": "/data/v18_8/inventory_lists/*"
},
"type": "ClientAccessForbiddenException",
"message": "Access to resource 'GET /data/v18_8/inventory_lists/*' is not allowed for the current client."
}
}
1 ответ
На самом деле есть конечная точка API DATA, которую можно использовать для обновления инвентаря. Это называется ProductInventoryRecords
ресурс.
Вы можете обновить учетную запись продукта с помощью PATCH, например:
PATCH /inventory_lists/{inventory_list_id}/product_inventory_records/{product_id}
С ProductInventoryRecordAllocation
полезная нагрузка как таковая:
{
"_resource_state" : "847f9c3c5867f641470b3046aeec31f07757991b792d722e10079926f7a289fb",
"allocation": {
"amount": 2000,
"reset_date": "2016-03-31T14:05:40.872Z"
}
}
Подробнее об этом типе документа читайте здесь.
Пожалуйста, обратите внимание, что лучшая практика заключается в передаче _resource_state
ключ, чтобы убедиться, что запись правильно обновлена. OCAPI проверяет, совпадает ли это значение с текущим состоянием записи, если этот атрибут предоставлен.
Поэтому системы должны сначала проверить запись, чтобы получить _resource_state
выполняя GET
на том же ресурсе.
Ваш вопрос не кристально ясен, но я постараюсь ответить. В Commerce Cloud есть три отдельных (OCAPI) API:
- API магазина (предоставляет аналогичный доступ как клиент на сайте)
- API данных (предоставляет аналогичный доступ, как продавец, использующий бизнес-менеджера)
- Мета API (описывает API с функциональной точки зрения)
Чтобы узнать о наличии товара в инвентаре, используйте нижеприведенный звонок: {{shop_url}}/products/701644676568M/availability
и посмотрите на ATS в ответе.
Чтобы установить уровень запасов, перейдите к бизнес-менеджеру или используйте утилиту импорта бизнес-менеджера. Не существует готового API для обновления уровня запасов.