Перейти к основному контенту

/api/lite/products

Запрос списка продуктов (GET /api/lite/products)

/api/lite/products

Метод возвращает перечень всех продуктов / товарных предложений (активных и неактивных).

Продукт всегда содержит хотя бы один вариант.

Правильно рассматривать Продукт - как виртуальную сущность (группу), а вариант - как физический товар. В рамках одного Продукта может быть несколько Вариантов (например, различные цвета и размеры).

Каждый Вариант имеет набор Опций, характеризующих именно этот вариант (например Цвет=blue, Размер=XL). Не может существовать более одного Варианта с одинаковым набором Опций.

 

Фильтрация по полям товара

Можно задавать фильтр параметром ?query=test - для фильтрации по полям article, humanId, shortName, fullName, description

Дополнительно можно фильтровать по конкректному продукту параметром ?id=1000

Имеется поддержка фильтрации и по другим полям:

  • по Id варианта - ?variantId=1001
  • по ШК (штрихкоду товара) - ?barcode=0000000000001

 

Фильтрация по фильтрам, атрибутам, вариантам товара

Фронтенд при выборе покупателем значений тех или иных фильтров должен составить поисковый GET запрос и передать его в метод:

/pub/products

в виде суммы параметров:

?filters=field_name1:field_value1,field_value2;field_name2:field_value3-field_value4  для всех фильтров в блоке OTHER

?attributes=field_name1:field_value1,field_value2;field_name2:field_value3-field_value4 для всех фильтров в блоке ATTRIBUTES

?features=field_name1:field_value1,field_value2;field_name2:field_value3-field_value4 для всех фильтров в блоке FEATURES

где field_name - это значение поля filters.fields.name, field_value - это значение поля filters.fields.stringValues для filters.fields.type: "string" или decimalValues для filters.fields.type: "decimal" или true/false для filters.fields.type: "boolean".

Для filters.fields.type: "decimal" также можно передавать диапазон, указывая начальное и конечное значение через дефис: field_name2:field_value3-field_value4

 

Коллекции

Можно задавать фильтр по коллекциям параметром ?collections=1007,1008 - для фильтрации по id коллекций (можно передавать списком)

 

Архивные карточки

Можно дополнительно выводить архивные карточки товаров параметром deleted=true

 

ПейджинацияПагинация

Для пейджинации используются параметры page и size: size - продуктов на странице, page - номер страницы.

Пример: /api/lite/products?page=0&size=200

Если параметры не переданы, то дефолтные значения page=0&size=100

Максимальное количество продуктов - 100. Даже если указано значение более 100

Также, для отображение пейджинации следует анализировать параметр recordsTotal, возвращающий общее количество записей (с учетом примененной фильтрации, если она есть).

Сортировка

Для сортировки задается параметр order, принимающий код поля для сортировки и направление сортировки (asc, desc), отделенное символом плюса.

Пример сортировки по имени (возрастание): /api/lite/products?order=shortname+asc

Пример сортировки по имени (убывание): /api/lite/products?order=shortname+desc

Доступные коды сортировки:

  • shortnameкороткое имя
  • articleстатья
  • priceцена
  • amountколичество
  • stockUpdateFrom

Пример вызова с одновременной фильтрацией, пейджинацией и сортировкой:

/api/lite/products?query=Поло&order=shortname+asc&page=0&size=200

Структура ответа:

Поле Тип / формат Описание
recordsTotalвсего записей numв Общее количество записей в рамках заданной фильтрации. Используется для пейджинации.

productsпродукты

arrayмножество Перечень товарных предложений
idидентификатор stringнить Идентификатор продукта
extId stringнить Дополнительный идентификатор продукта
extId2 stringнить Дополнительный идентификатор продукта
extId3 stringнить Дополнительный идентификатор продукта
extId4 stringнить Дополнительный идентификатор продукта
extId5 stringнить Дополнительный идентификатор продукта

shortNameкороткое имя

stringнить НаименованиеНазвание продукта
descriptionописание stringнить Описание (может содержать html)
tnvedCode stringнить Кодкод ТНВЭДTNVED
internationalDescriptionмеждународное описание stringнить Описание на анлийском
additionalDescriptionsдополнительные описания arrayмножество Блоки с дополнительным текстовым описанием
availableдоступный booleanлогический Отображение для продажи в онлайн-магазине
boxNeeded booleanлогический Требуется обрешётка (при отгрузке товара)
deletedудалено booleanлогический Архивная карточка
typeтип enumперечисление Тип продукта.
SKU - Товар
PHYSICAL_SET - физический комплект
SERVICE- услуга
BUNDLE - виртуальный набор
PACKING_MATERIAL_BOXES - упаковочные материалы клиента - короба
PACKING_MATERIAL_ATTACHMENT - упаковочные материалы клиента - вложения
PACKING_MATERIAL_OTHER - упаковочные материалы клиента - другие материалы
COMMON_PACKING_MATERIAL - упаковочные материалы фулфилмент
vatНДС enumперечисление НДС товара. NO_VAT/VAT_0/VAT_10/VAT_20
reviewScore decimalдесятичная дробь Оценка товара
variantsварианты arrayмножество Массив вариантов
idидентификатор stringнить Уникальный идентификатор варианта.
articleстатья stringнить Артикул (sku) товара
priceцена decimalдесятичная дробь Цена продажи
oldPriceстарая цена decimalдесятичная дробь "Старая" цена. Для визуализации скидки. 
isFfSynchronised
booleanлогический Статус выгрузки товара на ФФ
ffSyncError
stringнить Ошибка выгрузки товара на ФФ
isPhysicalSet
booleanлогический Является ли товар физическим набором
isFfPhysicalSetSynchronized
booleanлогический Статус выгрузки набора на ФФ
ffPhysicalSetSyncError
stringнить Ошибка выгрузки набора на ФФ
discountPercentскидка в процентах
decimalдесятичная дробь Скидка, в процентах
discountFix
decimalдесятичная дробь Скидка, фикс
bundleOptionalCount
numв Размер опциональной части набора для выбора
autoPriceCalculationавторасчет цены
booleanлогический Авторасчет цены набора
autoDimensionsCalculationавтоматический расчет размеров
booleanлогический Авторасчет габаритов набора
pricesцены objectобъект Список всех присвоенных цен
stockзапас arrayмножество Массив данных об остатках (если остатки на складах имеются)
taggedProductsStock
arrayмножество Массив данных об остатках по тегам (если остатки на складах имеются)
warehouseCodeкод склада stringнить Код склада
stockTotal decimalдесятичная дробь Текущее количество на складе хранения
stockAvailableналичие товара decimalдесятичная дробь Количество товара, доступного к продаже (stockTotal за минусом резерва)
stockReserved decimalдесятичная дробь Количество товара, зарезервированного под заказы.
posпоз numв Порядковый номер варианта, относительно 
optionsUsed arrayмножество Массив, указывающий соответствие опции и её значения для конкретного продукта. 
defaultImage stringнить Ссылка на изображение из общего массива изображений. Может быть не задан.
weightмасса decimalдесятичная дробь Вес товара
dimensionsразмеры objectобъект Содержит информацию о размерах
weightFactвесФакт decimalдесятичная дробь Вес товара (по данным склада)
dimensionsFactразмерыФакт
objectобъект Содержит информацию о размерах (по данным склада)
canBeRotated
booleanлогический Определяет можно ли товар укладывать на бок при перевозке
barcodesштрихкоды objectобъект Список штрихкодов товара
isDefault booleanлогический ШК является по умолчанию
valueценить stringнить Значение ШКSHC
imagesизображения arrayмножество Массив изображений продукта. Первое изображение считается основным.
idидентификатор stringнить Идентификатор изображения
url stringнить URL изображения
posпоз decimalдесятичная дробь Позиция изображения в рамках продукта
collectionsколлекции arrayмножество Массив коллекций, в которые входит продукт
idидентификатор stringнить Идентификатор коллекции
attributesатрибуты arrayмножество Массив значений атрибутов продукта
codeкод stringнить Код атрибута
typeтип enumперечисление Тип атрибута (см. описание атрибутов)
stringValue stringнить Значение атрибута (строка)
decimalValue decimalдесятичная дробь Значение атрибута (число)
orderingзаказ decimalдесятичная дробь Cортировка
accountingAttributesатрибуты учета
arrayмножество Массив значений атрибутов учета
codeкод
stringнить Код атрибута
titleзаголовок stringнить Название атрибута
stringValue stringнить Значение атрибута
subscriptionInfoИнформация о подписке objectобъект Описание подписок (Не отображается, если пустой)
eshopSettings
arrayмножество Массив внешних кодов для интеграций
eshopId
stringнить ID интеграции
eshopType
stringнить Тип интеграции
eshopName
stringнить Название интеграции
enabledвключено
booleanлогический Включает товар для интеграции
zeroStock booleanлогический Включает выгрузку нулевых остатков по товару
extId
stringнить Внешний код товара для интеграции
useBatchAccounting booleanлогический

Флаг использования партионного учета

Для ведения учёта сроков годности в партиях необходимо также передать значение USE_EXPIRATION в поле expirationMode и указать срок годности товара в поле expirationMonthsLimit

expirationMode enumперечисление NO_EXPIRATION, USE_EXPIRATION - использование сроков годности в партиях
expirationMonthsLimit integerцелое число Срок годности в мес
manufacturedByпроизведено компанией stringнить Производитель
compositionкомпозиция stringнить Состав продукта
warrantyгарантия integerцелое число Срок гарантии в мес
warehouseCategoryCode
stringнить Код категории товара (из WMS)
warehouseCategoryTitle
stringнить Наименование категории товара (из WMS)
tagярлык
stringнить Тег, присвоенный товару

 

Пример результата запроса:

{
    "success": true,
    "recordsTotal": 1,
    "products": [
        {
            "id": "1000",
            "extId": null,
          	"extId2": null,
            "extId3": null,
            "extId4": null,
            "extId5": null,
            "shortName": "Кактус Эуфобия Триангуларис",
            "description": "Кактус Эуфобия Триангуларис",
            "tnvedCode": "123",
            "internationalDescription": "abc",
            "additionalDescriptions":[{"title":"some title", "description":"some description"}],
            "available": true,
            "deleted": false,
            "brandName": null,
            "countryOfOrigin": null,
            "isBestseller": null,
            "isNovelty": null,
            "type": "SKU",
            "vat": "VAT_20",
            "reviewScore": 4.0,
            "options": null,
            "images": null,
          	"useBatchAccounting": true,
            "expirationMode": "USE_EXPIRATION",
            "expirationMonthsLimit": 6,
          	"warranty": 12,
            "warehouseCategoryCode": "000000001",
            "warehouseCategoryTitle": "Парфюмерия"
          	"manufacturedBy": "Название производителя",
            "composition": "Состав",            
            "variants": [
                {
                    "id": "1000",
                    "extId": null,
                  	"extId2": null,
                    "extId3": null,
                    "extId4": null,
                    "extId5": null,
                    "article": null,
                    "price": 2190,
                    "oldPrice": 1590,
                    "isFfSynchronised": true,
                    "ffSyncError": null,
                    "isPhysicalSet": false,
                    "isFfPhysicalSetSynchronized": false,
                    "ffPhysicalSetSyncError": null,
                  	"discountPercent": 0,
                    "discountFix": 0,
                    "bundleOptionalCount": 0,
                    "autoPriceCalculation": false,
                    "autoDimensionsCalculation": false,
                  	"prices":[
                        {
                           "priceCode":"Розничная цена",
                           "priceName":"Розничная цена",
                           "value":2190
                        },
                      	{
                           "priceCode":"Цена до скидки",
                           "priceName":"Цена до скидки",
                           "value":1590
                        }
                     ],
                    "stock": [
                        {
                            "warehouseCode": "9a84e96f-3e8c-8f74-3b7a-50a1d3c2a130",
                            "stockTotal": 111,
                            "stockAvailable": 111,
                            "stockReserved": 0
                        }
                    ],
                    "taggedProductsStock": [
                        {
                            "outOfStock": 0,
                            "stockAvailable": 10,
                            "stockDefective": 0,
                            "stockDefectiveReserved": 0,
                            "stockReserved": 0,
                            "stockTotal": 10,
                            "tag": "ROZNECHNIE_SETY",
                            "warehouseCode": "9a84e96f-3e8c-8f74-3b7a-50a1d3c2a130"
                        }
                     ],
                    "ordering": "123.000000000000000",
                    "defaultImage": null,
                    "weight": 500,
                    "dimensions": {
                        "height": 4,
                        "width": 20,
                        "depth": 4
                    },
                    "weightFact": 500,
                    "dimensionsFact": {
                        "height": 4,
                        "width": 20,
                        "depth": 4
                    },
                    "canBeRotated": true,
                    "barcodes": [
                        {
                            "value": "42353456345345",
                            "isDefault": true,
                            "type": "COMMON"
                        },
                        {
                            "value": "34234232343",
                            "isDefault": false,
                          	"type": "WILDBERRIES"
                        }
                    ],                 
                    "optionsUsed": null,
                  	"eshopSettings": [
                        {
                            "eshopId": "e4a1920d-f154-7284-bad4-a7b9546032fe",
                            "eshopType": "BERU",
                            "eshopName": "Магазин на Беру",
                            "enabled": true,
                          	"zeroStock": false,
                            "extId": "variant-ext-id-for-beru"
                        }
                    ]
                }
            ],
            "collections": [
                "1001"
            ],
            "attributes": null,
            "accountingAttributes": [
                {
                    "code": "chestnyznak",
                    "title": "Честный знак",
                    "stringValue": "11111"
                }
            ],
          	"eshopSettings": [
                {
                  "eshopId": "e4a1920d-f154-7284-bad4-a7b9546032fe",
                  "eshopType": "BERU",
                  "eshopName": "Магазин на Беру",
                  "enabled": true,
                  "extId": "product-ext-id-for-beru"
                }
            ]
          	"subscriptionInfo": {
              "productId": "1002",
              "variantId": "1002",
              "onlinePaymentType": "recurrent",
              "type": "SUBSCRIPTION",
              "useShipmentDelayInterval": true,
              "items": [
                  {
                      "productId": "1002",
                      "variantId": "1006",
                      "count": 1,
                      "subscriptionShipmentNum": 1,
                      "shipmentDelayIntervalDays": 30,
                      "subscriptionStartDate": "2020-09-10",
                      "itemPrice": 120.0
                  },
                  {
                      "productId": "1002",
                      "variantId": "1007",
                      "count": 1,
                      "subscriptionShipmentNum": 1,
                      "shipmentDelayIntervalDays": 30,
                      "subscriptionStartDate": "2020-09-10",
                      "itemPrice": 120.0
                  },
                  {
                      "productId": "1002",
                      "variantId": "1008",
                      "count": 1,
                      "subscriptionShipmentNum": 2,
                      "shipmentDelayIntervalDays": 20,
                      "subscriptionStartDate": "2020-09-30",
                      "itemPrice": 150.0
                  },
                  {
                      "productId": "1002",
                      "variantId": "1009",
                      "count": 1,
                      "subscriptionShipmentNum": 2,
                      "shipmentDelayIntervalDays": 20,
                      "subscriptionStartDate": "2020-09-30",
                      "itemPrice": 150.0
                  },
                  {
                      "productId": "1002",
                      "variantId": "1010",
                      "count": 1,
                      "subscriptionShipmentNum": 3,
                      "shipmentDelayIntervalDays": 20,
                      "subscriptionStartDate": "2020-10-20",
                      "itemPrice": 250.0
                    }
                   ]
                }
          }
        }
    ]
}

Выгружать только остатки (специальный режим выгрузки)

Дополнительно можно передать параметр ?only_stock=true. Если он присутствует в запросе, то выгружается минимально необходимое кол-во полей.

Пример: /api/lite/products?only_stock=true

Максимальное количество продуктов в режиме остатков - 1000. Даже если указано значение более 1000

Пример результата запроса(режим остатков):

{
    "success": true,
    "recordsTotal": 1322,
    "products": [
        {
            "id": "1000",
            "extId": null,
            "extId2": null,
            "extId3": null,
            "extId4": null,
            "extId5": null,
            "variants": [
                {
                    "id": "1000",
                    "extId": null,
                    "extId2": null,
                    "extId3": null,
                    "extId4": null,
                    "extId5": null,
                    "stock": [
                        {
                            "warehouseCode": "5a93f7e7-4785-0332-8324-bf3a03ee8211",
                            "stockTotal": 10,
                            "stockAvailable": 8,
                            "stockReserved": 2,
                            "stockDefective": 0,
                            "stockDefectiveReserved": 0
                        }
                    ],
                    "taggedProductsStock": [
                        {
                            "outOfStock": 0,
                            "stockAvailable": 10,
                            "stockDefective": 0,
                            "stockDefectiveReserved": 0,
                            "stockReserved": 0,
                            "stockTotal": 10,
                            "tag": "ROZNECHNIE_SETY",
                            "warehouseCode": "5a93f7e7-4785-0332-8324-bf3a03ee8211"
                        }
                     ]
                }
            ]
        }
    ]
}

 

 

Создание/обновление продукта (POST /api/lite/products)

/api/lite/products

Создает или обновляет продукт.

Если id указан - проводится обновление продукта с указанным id, если не указан - создается новый.

Если проводится обновление продукта (или варианта) - то обновляются все поля на те, что переданы. Если какие то поля в продукте были непустые, а в запросе они не переданы - то после обновления поля очищаются.

Опционально можно передавать список вариантов товара для обновления, в поле variantsToUpdate. Обновление продукта выполняется первым, если успешно - то начинается обновление вариантов.

Этот список не означает, что коллекция вариантов данного продукта будет приведена к виду в переданном списке вариантов. Будет выполнено только обновление указанных вариантов, безотносительно остальных вариантов их продукта.

Если передан список вариантов - то в ответе в поле variantsResult будет список результатов обновления по каждому варианту, для сопоставления на вызывающей стороне (по полям productId + variantId)

Поле Тип / формат

Описание

idидентификатор stringнить

Идентификатор продукта. Если не указан, создается новый продукт. Если указан, обновляется продукт с данным id или создаётся новый продукт с пользовательским id.

extId stringнить Дополнительный идентификатор продукта
shortNameкороткое имя stringнить НаименованиеНазвание продукта
descriptionописание stringнить Описание (может содержать html)
tnvedCode stringнить Кодкод ТНВЭДTNVED
internationalDescriptionмеждународное описание stringнить Описание на анлийском
availableдоступный booleanлогический Отображение для продажи в онлайн-магазине
deletedудалено booleanлогический Архивная карточка
typeтип enumперечисление Тип продукта. SKU/PHYSICAL_SET/SERVICE.    Товар, набор товаров, услуга
vatНДС enumперечисление НДС товара. NO_VAT/VAT_0/VAT_10/VAT_20
collectionsколлекции arrayмножество Массив идентификаторов коллекций, в который входит данный продукт
attributesатрибуты arrayмножество Массив значений атрибутов продукта
codeкод stringнить Код атрибута
stringValue stringнить Значение атрибута (строка)
decimalValue decimalдесятичная дробь Значение атрибута (число)
accountingAttributesатрибуты учета arrayмножество Массив значений атрибутов учета
codeкод stringнить Код атрибута
stringValue stringнить Значение атрибута
eshopSettings
arrayмножество Массив внешних кодов для интеграций
eshopId
stringнить ID интеграции
enabledвключено booleanлогический Включает товар для интеграции
extId
stringнить Внешний код продукта для интеграции
variantsToUpdateвариантыОбновить объект Объект варианта товара (см. POST /api/lite/products/variants)
warehouseCategoryCode stringнить Код категории товара (из WMS)
parentPackageId stringнить Родительский вариант для монокороба
multiplicityмножественность stringнить Кратность монокороба

 

Пример вызова:

Пример запроса № 1.
!!!Внимание!!! Данный запрос будет успешен только в том случае, если предварительно был добавлен атрибут "material" и
accountingAttributes "chestnyznak".
{
      "id": "1015",
      "extId": "FAQ-D-000112",
      "extId2": null,
      "extId3": null,
      "extId4": null,
      "extId5": null,
      "shortName": "Limited Edition Паста (помада) для укладки волос Bro Cosmetics // средняя фиксация, матовый эффект",
      "description": "Limited Edition Паста (помада) для укладки волос Bro Cosmetics // средняя фиксация, матовый эффект",
  	  "additionalDescriptions":[{"title":"some title", "description":"some description"}],
      "available": true,
      "deleted": false,
      "brandName": null,
      "countryOfOrigin": null,
      "tnvedCode": "123",
      "internationalDescription": "abc",
      "isBestseller": null,
      "isNovelty": null,
      "type": "SKU",
      "vat": "NO_VAT",
      "warehouseCategoryCode": "000000001",
    "collections": [
        "1029",
        "1031"
    ], 
    "attributes": [
        {
            "code": "material",        
            "stringValue": "Хлопок 97%, эластан 3%"        
        }
    ],
    "accountingAttributes": [
        {
          "code": "chestnyznak",
          "stringValue": "11111"
        }
    ],
  	"eshopSettings": [
        {
          "eshopId": "e4a1920d-f154-7284-bad4-a7b9546032fe",
          "enabled": true,
          "extId": "product-ext-id-for-beru"
        }
    ],
    "variantsToUpdate": [
            {
                    "productId":"1002",
                    "variantId": "1007",
              		"extId": null,
                    "extId2": null,
                    "extId3": null,
                    "extId4": null,
                    "extId5": null,
                    "article": "well done",
                    "price": 6000, //deprecated
                    "oldPrice": 6500, //deprecated
              		"prices":[
                        {
                           "priceCode":"Розничная цена",
                           "value":6000
                        },
                      	{
                           "priceCode":"Цена до скидки",
                           "value":6500
                        }
                     ],
                    "stock": [
                        {
                           "warehouseCode": "9a84e96f-3e8c-8f74-3b7a-50a1d3c2a130",                         
                           "stockTotal": 111                          
                        }
                    ],
                    "updateStockTotal": true,                  
                    "ordering": "300.000000000000000",
                    "defaultImage": null,
                    "weight": 500,
                    "dimensions": {
                        "height": 30,
                        "width": 31,
                        "depth": 32
                    },
                    "canBeRotated": true,
                    "optionsUsed": [
                        {
                            "code": "color",
                            "stringValue": "синий",
                            "decimalValue": null,
                            "name": "Цвет"
                        }
                    ],
                    "eshopSettings": [
                        {
                          "eshopId": "e4a1920d-f154-7284-bad4-a7b9546032fe",
                          "enabled": true,
                          "extId": "variant-ext-id-for-beru"
                        }
                    ],
              		"discountType": "PERCENT", // FIX
              		"discountValue": 50
                }
        ]
}

Пример запроса №2.

{    
    "shortName": "Товар для демострации",
    "description": "Здесь указывается описание товара. Его свойства, назначение, и прочие данные.",
    "available": true,
    "brandName": "Здесь указывается бренд товара",
    "deleted": false,
    "tnvedCode": "1234567890",
    "internationalDescription": "abc1231AФФ",
    "vat": "NO_VAT",
    "type": "SKU",
    "attributes": null,
    "accountingAttributes": null,
    "countryOfOrigin": "RU",
    "useBatchAccounting": true,
    "expirationDaysLimit": null,
    "expirationMode": "USE_EXPIRATION",
    "expirationMonthsLimit": "36",
    "composition": "Состав продукта.",
    "manufacturedBy": "Производитель",
    "warranty": "6"
    }



Пример положительного ответа:

В зависимости от состояния конфига needApiProductsReturnDetails в настройках аккаунта(http://app.kak2c.ru/#!settings/lite) есть два варианта ответа: развернутый и сокращенный. Время выполнения сокращенного ответа значительно меньше, что позволяет загружать товары большими массивами. По умолчанию новые аккаунты создаются с сокращенным вариантом ответа.
Пример сокращенного ответа:
{
    "success": true,
    "id": "1002"
}
Пример развернутого ответа:
{
    "success": true,
    "id": "1002",
    "product": {
        "id": "1002",
        "extId": "FAQ-D-000112",
        "extId2": null,
        "extId3": null,
        "extId4": null,
        "extId5": null,
        "shortName": "Limited Edition Паста (помада) для укладки волос Bro Cosmetics // средняя фиксация, матовый эффект",
        "description": "Limited Edition Паста (помада) для укладки волос Bro Cosmetics // средняя фиксация, матовый эффект",
      	"additionalDescriptions":[{"title":"some title", "description":"some description"}],
        "available": true,
        "deleted": false,
        "brandName": null,
        "countryOfOrigin": null,
        "tnvedCode": "123",
        "internationalDescription": "abc",
        "isBestseller": null,
        "isNovelty": null,
        "type": "SKU",
        "vat": "NO_VAT",
        "reviewScore": null,
        "options": null,
        "images": null,
        "variants": [
            {
                "productId":"1002",
                "variantId": "1007",
              	"extId": null,
                "extId2": null,
                "extId3": null,
                "extId4": null,
                "extId5": null,
                "article": "well done",
                "price": 6000,
                "oldPrice": 6500,
              	"prices":[
                        {
                           "priceCode":"Розничная цена",
                           "priceName":"Розничная цена",
                           "value":6000
                        },
                      	{
                           "priceCode":"Цена до скидки",
                           "priceName":"Цена до скидки",
                           "value":6500
                        }
                     ],
                "stock": [
                        {
                            "warehouseCode": "9a84e96f-3e8c-8f74-3b7a-50a1d3c2a130",
                            "stockTotal": 111,
                            "stockAvailable": 111,
                            "stockReserved": 0
                        }
                    ],
                "ordering": "300.000000000000000",
                "defaultImage": null,
                "weight": 500,
                "dimensions": {
                    "height": 30,
                    "width": 31,
                    "depth": 32
                },
                "barcodes": null,
                "vat": "NO_VAT",
                "type": "SKU",
                "optionsUsed": [
                    {
                        "code": "color",
                        "stringValue": "синий",
                        "decimalValue": null,
                        "name": "Цвет"
                    }
                ]
            }
        ],
        "collections": [
            "1029",
            "1031"
        ], 
        "attributes": [
            {
                "code": "material",        
                "stringValue": "Хлопок 97%, эластан 3%"        
            }
        ],
        "accountingAttributes": [
            {
              "code": "chestnyznak",
              "title": "Честный знак",
              "stringValue": "11111"
            }
        ],
    },
    "variantsResult": [
        {
            "success": true,
            "productId": "1002",
            "variantId": "1003"
        }
    ]
}

 

Пример положительного ответа с ошибкой сохранения по указанному варианту:

Пример ответа
{
    "success": true,
    "id": "1002",
    "variantsResult": [
        {
            "success": false,
            "errors": [
                {
                    "code": 0,
                    "message": "Вариант с указанным id не найден"
                }
            ],
            "productId": "1002",
            "variantId": "100343"
        }
    ],
    "product": {
        "id": "1002",
        "extId": "FAQ-D-000112",
      	"extId2": null,
        "extId3": null,
        "extId4": null,
        "extId5": null,
        "shortName": "Limited Edition Паста (помада) для укладки волос Bro Cosmetics // средняя фиксация, матовый эффект",
        "description": "Limited Edition Паста (помада) для укладки волос Bro Cosmetics // средняя фиксация, матовый эффект",
        "available": true,
        "deleted": false,
        "brandName": null,
        "countryOfOrigin": null,
        "tnvedCode": "123",
        "internationalDescription": "abc",
        "isBestseller": null,
        "isNovelty": null,
        "type": "SKU",
        "vat": "NO_VAT",
        "reviewScore": null,
        "options": null,
        "images": null,
        "variants": [
            {
                "productId":"1002",
                "variantId": "1007",
               	"extId": null,
                "extId2": null,
                "extId3": null,
                "extId4": null,
                "extId5": null,
                "article": "well done",
                "price": 6000,
                "oldPrice": 6500,
                "stock": [
                        {
                            "warehouseCode": "9a84e96f-3e8c-8f74-3b7a-50a1d3c2a130",
                            "stockTotal": 111,
                            "stockAvailable": 111,
                            "stockReserved": 0
                        }
                    ],
                "ordering": "300.000000000000000",
                "defaultImage": null,
                "weight": 500,
                "dimensions": {
                    "height": 30,
                    "width": 31,
                    "depth": 32
                },
                "barcodes": null,
                "vat": "NO_VAT",
                "type": "SKU",
                "optionsUsed": [
                    {
                        "code": "color",
                        "stringValue": "синий",
                        "decimalValue": null,
                        "name": "Цвет"
                    }
                ]
            }
        ],
        "collections": [
            "1029",
            "1031"
        ], 
        "attributes": [
            {
                "code": "material",        
                "stringValue": "Хлопок 97%, эластан 3%"        
            }
        ],
        "accountingAttributes": [
            {
              "code": "chestnyznak",
              "title": "Честный знак",
              "stringValue": "11111"
            }
        ],
    }
}

Пример вызова c изменением карточки монокороба:

Пример запроса

{
    "dimensions": {
        "width": "11",
        "height": "11",
        "depth": "5"
    },
    "id": "566335465",
    "isFfPhysicalSetSynchronized": false,
    "isFfSynchronised": true,
    "isPhysicalSet": false,
    "marginParams": {
        "marketplaceCosts": []
    },
    "multiplicity": 5,
    "parentPackageId": "566335464",
    "shortName": "test (Короб 5 шт, test monokorob)",
    "stock": [
        {
            "outOfStock": 0,
            "stockAvailable": 0,
            "stockDefective": 0,
            "stockDefectiveReserved": 0,
            "stockExpired": 0,
            "stockReserved": 0,
            "stockTotal": 0,
            "warehouseCode": "21ad85be-09a9-c4f8-72e1-4976f9d5bda6"
        },
        {
            "outOfStock": 0,
            "stockAvailable": 0,
            "stockDefective": 0,
            "stockDefectiveReserved": 0,
            "stockExpired": 0,
            "stockReserved": 0,
            "stockTotal": 0,
            "warehouseCode": "6a50a3fe-29b6-42d7-2be0-a19a01d1f288"
        },
        {
            "outOfStock": 0,
            "stockAvailable": 0,
            "stockDefective": 0,
            "stockDefectiveReserved": 0,
            "stockExpired": 0,
            "stockReserved": 0,
            "stockTotal": 0,
            "warehouseCode": "9c639eca-7c7d-9231-5c1c-fbc3a84ac7f9"
        },
        {
            "outOfStock": 0,
            "stockAvailable": 0,
            "stockDefective": 0,
            "stockDefectiveReserved": 0,
            "stockExpired": 0,
            "stockReserved": 0,
            "stockTotal": 0,
            "warehouseCode": "a25965c4-06bd-9691-d468-1221371f1e71"
        }
    ],
    "type": "SKU",
    "vat": "VAT_0",
    "prices": [
        {
            "priceCode": "Розничная цена",
            "priceName": "Розничная цена",
            "value": 0
        },
        {
            "priceCode": "Цена до скидки",
            "priceName": "Цена до скидки",
            "value": 0
        }
    ],
    "weight": 1000,
    "weightType": "kg",
    "barcodes": [],
    "updateStockTotal": false,
    "eshopSettings": [],
    "productId": "1256635834",
    "isArchived": false,
    "variantId": "566335465"
}

Обновление отдельных полей продукта (PATCH /api/lite/products)

/api/lite/products

Обновляет одно или несколько полей продукта, значения отсутствующих в запросе полей при этом не изменяются.

Тело запроса аналогично POST /api/lite/products

id - необходимо указывать обязательно

Пример вызова:

Пример запроса
{
      "id": "1015",
      "shortName": "Limited Edition Паста (помада) для укладки волос",
  	  "internationalDescription": "abc"
}

ответ аналогичен POST /api/lite/products

 

Копирование продукта

/api/lite/products/copy

id - код существующего продукта для копирования

 

Запрос

{
     "id": "1234"            
}

 

Пример успешного ответа

{
    "success": true,
    "id": "1234-copy"
}

В случае ошибки:

{
    "success": false,
    "errors": [
        {
            "code": 0,
            "message": "Текст ошибки"
        }
    ]  
}