| /product/list | Отримання списку товарів |
| /product/add | Створення нового товару |
| /product/update | Внесення змін до товару |
| /product/folder/list | Отримання списку папок |
| /product/folder/add | Створення нової папки |
| /product/folder/update | Внесення змін до папки |
Назва методу: /product/list
Повертає список товарів. Для навігації використовується номер сторінки (page).
Розмір сторінки фіксований і дорівнює 100 елементам.
| filter Тип: object (необов'язковий) | Доступні поля для фільтрації (Фільтр завжди використовує логіку “AND“): |
| | ParentFolder - масив ідентифікаторів батьківських папок. Необов'язковий параметр. Для отримання товарів, які не належать до жодної з папок, тобто не мають прив'язки до папки, потрібно вказувати значення null. |
| | Id - ідентифікатор товару. Необов'язковий параметр |
| | PriceType - масив ідентифікаторів типиів цін. Необов'язковий параметр |
| | Store - масив ідентифікаторів складів. Необов'язковий параметр |
| | Archive - Ознака того, що треба повертати архівні елементи |
| | Kind - Тип товару. Можливі значення: P - товар, K - набір, U - товар SKU, B - базовий товар SKU. Якщо не вказати, буде встановлений тип P. |
| | IsManufacture - Товар є продукцією. Необов'язковий параметр |
| | LastChangeTime - Дата та Час останньої зміни товару (у т.ч. ціни та залишки). Необов'язковий параметр. Якщо вказано, то повертаються тільки товари, в яких були зміни, починаючи із вказаної дати та часу |
| page Тип: integer (необов'язковий) | Якщо в запиті не передати, за замовчуванням буде встановлена перша сторінка. |
Якщо в запиті фільтр відсутній, то повертається список товарів у порядку зростання Id.
Значення полей товарів, що повертаються методом:
| Id | Ідентифікатор товару |
| Name | Назва товару (string) |
| ParentFolder | ID батьківської папки (integer) |
| SkuParentProduct | ID головного продукту для SKU |
| PrintName | Назва для друку (string) |
| Memo | Коментар (string) |
| Barcode | Штрих код (string) |
| UnitName | Назва одиниці виміру (string) |
| Description | Опис товару (string) |
| Article | Артикул (string) |
| Brand | Бренд (об'єкт) |
| MainSuppliers | Основний постачальник (structure) |
| | Id - Ідентифікатор постачальника |
| | Name - Назва постачальника (string) |
| | RegCode - Реєстраційний код постачальника (string) |
| Store | Основний склад (об'єкт) |
| | Id - Ідентифікатор складу |
| | Name - Назва складу |
| Manufacturer | Виробник (об'єкт) |
| | Id - Ідентифікатор виробника |
| | Name - Назва виробника |
| СustomsCode | Митний код (об'єкт) |
| | Id - Ідентифікатор митного коду |
| | Name - Назва митного коду |
| Images | Зображення (масив). Основна картинка товару завжди є першою в масиві. |
| Prices | Ціни (масив) |
| Stock | Залишки товару по складам (масив). Інформація передається, тільки якщо фільтр "Store" не пустий. |
| LastChangeTime | Дата та час останньої зміни у товарі (у т.ч. ціни та залишки) |
Запит:
{
"filter": {
"ParentFolder": 110,
"PriceType": [
335
],
"Store": [
113
],
"Kind": "P"
},
"page": 1
}
Результат:
{
"success": true,
"data": [
{
"Id": 111,
"ParentFolder": 110,
"Name": "Product_1",
"Images": [
{
"Id": 586,
"Name": "flowers.jpg",
"Url": "https://qfinprod.blob.core.windows.net/images/8c87c4db-9e0f-4e34-bf8f-d4cbc20e9f44_flowers.jpg"
},
...
],
"Prices": [
{
"Id": 106608,
"Date": "2022-07-15T00:00:00Z",
"PriceType": 335,
"Product": 89272,
"Price": 10.000000,
"Currency": "USD"
},
...
],
"MainSuppliers": [
{
"Id": 110,
"Name": "Name1",
"RegCode": "12345678"
}
],
"Store":
{
"Id": 110,
"Name": "Склад"
},
"Manufacturer":
{
"Id": 112,
"Name": "Yifan Hou"
},
"CustomsCode":
{
"Id": 100,
"Name": "Митний код #555"
},
"Stock": [
{
"Store": 346,
"Qty": 5.000
},
...
]
},
...
]
}
Метод створення товару(ів): /api/v2/product/add
Метод оновлення товару(ів): /api/v2/product/update
Методи додають або оновлюють товари. Максимальна кількість товарів в одному пакеті - 100.
Параметри запитів у методів майже ідентичні. Тільки для методу /product/update обов'язковим є передача Id товару. Якщо в запиті відсутній Id, повертається помилка і жоден з товарів не оновлюється. Пошук Основного постачальника відбувається по назві та реєстраційному коду. Достатньо співпадіння по одному з полей. Якщо не буде співпадіння - створиться новий контрагент і буде вказаний як основний постачальник. Поля не обов'язкові для заповнення.
Якщо в запиті Id переданий, але не знайдений в довіднику товарів, жоден з товарів також не оновлюється і додатково повертається перелік не знайдених Id.
| array Тип: масив (Обов'язковий) | Кожен товар в масиві являє собою об'єкт з переліком полів. Доступні поля: |
| | id Ідентифікатор товару. Враховується та є обов'язковим тільки для методу /product/update |
| | Name Назва товару (string) |
| | ParentFolder ID батьківської папки (integer) |
| | PrintName Назва для друку (string) |
| | Memo Коментар (string) |
| | Barcode Штрих код (string) |
| | UnitName Одиниця виміру (string). Одиниця виміру має бути вказана без зайвих символів. |
| | BrandName Бренд (string). Бренд має бути вказано без зайвих символів. |
| | Description Опис (string) |
| | MainSupplierName Назва постачальника (string) |
| | MainSupplierRegCode Реєстраційний код постачальника (string) |
| | Article Артикул (string) |
| | IsManufacture Товар є продукцією (boolean) |
| | PriceType - ідентифікатор типу ціни |
| | PriceValue - значення ціни |
Метод повертає масив:
| success | true или false |
| data | Масив ідентифікаторів створених товарів |
| error | Код та зміст помилки (вказується, якщо success = false) |
Запит:
{
"array": [
{
"Name": "Hola_product_0",
"Article": "5555",
"ParentFolder": "110",
...
},
...
]
}
Результат:
{
"success": true,
"data": [
{
"id": 116
},
...
]
}
Назва методу: /api/v2/product/folder/list
Повертає список папок товарного каталогу. Для навігації використовується номер сторінки (page).
Розмір сторінки фіксований і дорівнює 100 елементам.
| filter Тип: object (необов'язковий) | Доступні поля для фільтрації (Фільтр завжди використовує логіку “AND“): |
| | ParentFolder - Id батьківської папки. Необов'язковий параметр.
Для отримання папок першого рівня, потрібно вказувати значення null. |
| | Id - ідентифікатор папки. Необов'язковий параметр |
| page Тип: integer (необов'язковий) | Якщо в запиті не передати, за замовчуванням буде встановлена перша сторінка. |
Якщо в запиті фільтр відсутній, то повертається список папок у порядку зростання Id.
{
"success": true,
"data": [
{
"Id": 118,
"ParentFolder": 110,
"Name": "Hola_Folder_111"
},
...
]
}
Метод створення папки(ок): /api/v2/product/folder/add
Метод оновлення папки(ок): /api/v2/product/folder/update
Методи додають або оновлюють папки. Максимальна кількість папок в одному пакеті - 100.
Параметри запитів у методів майже ідентичні. Тільки для методу /product/folder/update обов'язковим є передача Id папки. Якщо в запиті відсутній Id, повертається помилка і жодна з папок не оновлюється.
Якщо в запиті Id переданий, але не знайдений в довіднику папок, жодна з папок також не оновлється і додатково повертається перелік не знайдених Id.
| array Тип: масив (Обов'язковий) | Кожна папка в масиві являє собою об'єкт з переліком полів. Доступні поля: |
| | Id Ідентифікатор папки. Враховується та є обов'язковим тільки для методу /product/folder/update |
| | Name Назва папки (string) |
| | ParentFolder ID батьківської папки (integer) |
Метод повертає масив:
| success | true или false |
| data | Масив ідентифікаторів створених папок для методу /product/folder/add або масив ідентифікаторів оновлених папок для методу /product/folder/update |
| error | Код та зміст помилки (вказується, якщо success = false) |
Запит:
{
"array": [
{
"Id": 110,
"Name": "Directory_111",
"ParentFolder": 100
},
...
]
}
Результат:
{
"success": true,
"data": [
{
"id": 129
},
...
]
}