QUINCEFIN
Відкрити меню

QUINCE API. Товари

Список методів

МетодОпис
/api/v2/product/listОтримання списку товарів
/api/v2/product/addСтворення товарів
/api/v2/product/updateОновлення товарів
/api/v2/product/folder/listОтримання списку папок товарів
/api/v2/product/folder/addСтворення папок товарів
/api/v2/product/folder/updateОновлення папок товарів

Отримання списку товарів

Назва методу: /api/v2/product/list

Повертає список товарів. Для навігації використовується номер сторінки page. Розмір сторінки фіксований і дорівнює 100 елементам.

Параметри запиту

ПолеТипОпис
filterobjectНеобов’язковий фільтр. Поля фільтра працюють з логікою AND.
filter.ParentFolderarrayІдентифікатори папок. Значення перетворюються в список через кому. Передайте null або порожній масив, щоб отримати товари першого рівня.
filter.FolderRecursivebooleanКерує глибиною вибірки за filter.ParentFolder. За замовчуванням true: повертаються товари вказаних папок і всіх вкладених підпапок. Передайте false, щоб отримати тільки прямий вміст указаних папок.
filter.IdintegerІдентифікатор товару.
filter.NamestringНазва товару.
filter.ArticlestringАртикул.
filter.BarcodestringШтрихкод.
filter.SearchstringПошуковий рядок.
filter.PriceTypearrayІдентифікатори типів цін, які треба повернути в блоці Prices.
filter.StorearrayІдентифікатори складів, для яких треба повернути Stock.
filter.ArchivebooleanОзнака повернення архівних товарів.
filter.KindstringТип товару: P - товар, K - набір, M - модифікація, U - товар SKU, B - базовий товар SKU. Якщо не передано або передано невідоме значення, використовується P.
filter.LastChangeTimestringДата й час останньої зміни товару, ціни або залишків. Повертає товари зі змінами від цієї дати.
filter.MobileAppbooleanЯкщо true, API використовує збільшений ліміт вибірки.
pageintegerНомер сторінки. Якщо не передати, використовується перша сторінка.

Якщо Store не передано, API повертає залишки для всіх складів. Для Kind: K і Kind: B залишки не повертаються.

Значення filter.FolderRecursive за замовчуванням збережене для сумісності з наявними інтеграціями. Якщо ви будуєте покрокову навігацію деревом папок, передавайте "FolderRecursive": false разом із filter.ParentFolder і окремо отримуйте підпапки через /api/v2/product/folder/list.

Основні поля відповіді

ПолеОпис
IdІдентифікатор товару.
NameНазва товару.
ParentFolderІдентифікатор батьківської папки.
SkuParentProductІдентифікатор базового товару для SKU.
MainSKUProductІдентифікатор базового товару для SKU у відповіді API.
PrintNameНазва для друку.
MemoКоментар.
BarcodeШтрихкод.
UnitNameНазва одиниці виміру.
DescriptionОпис товару.
ArticleАртикул.
BrandsБренди товару.
MainSuppliersОсновні постачальники.
WarrantyPeriodГарантійний строк.
CountryКраїна.
StoreОсновний склад.
ManufacturerВиробник.
CustomsCodeМитний код.
CustomsCodeIdІдентифікатор митного коду.
CustomsCodeNameНазва митного коду.
ImagesЗображення товару. Основне зображення йде першим у масиві.
PricesЦіни товару, якщо в запиті передано filter.PriceType.
StockЗалишки по складах, якщо в запиті передано filter.Store.
CategoryКатегорія.
UserFieldsКористувацькі поля.
ParentsІєрархія батьківських папок.
LastChangeTimeДата й час останньої зміни товару, ціни або залишків.

Користувацькі поля товару

Поле UserFields містить значення власних полів, заповнених у картці товару. Якщо для товару немає заповнених власних полів, масив може бути порожнім.

ПолеОпис
UserFields[].IdІдентифікатор користувацького поля.
UserFields[].NameНазва користувацького поля.
UserFields[].ValueЗначення користувацького поля у текстовому вигляді.

Приклад фрагмента відповіді:

{
  "Id": 12345,
  "Name": "Товар",
  "UserFields": [
    {
      "Id": 10,
      "Name": "Послуга",
      "Value": "true"
    },
    {
      "Id": 11,
      "Name": "Складський",
      "Value": "true"
    }
  ]
}

Приклад запиту

{
  "filter": {
    "ParentFolder": [110],
    "PriceType": [335],
    "Store": [113],
    "Kind": "P"
  },
  "page": 1
}

Створення та оновлення товарів

Назва методу створення: /api/v2/product/add

Назва методу оновлення: /api/v2/product/update

Методи додають або оновлюють товари пакетами до 100 елементів. Для /api/v2/product/update поле Id обов’язкове. Якщо переданий Id не знайдено, елемент не потрапляє в оновлення.

Під час передавання постачальника пошук відбувається за назвою або реєстраційним кодом. Якщо збіг не знайдено, створюється новий контрагент і встановлюється як основний постачальник.

Якщо передати одне з полів PriceType або PriceValue, треба передати й друге. Інакше API поверне помилку If one of the fields PriceType or PriceValue is present, the other must also be filled in.

Параметри запиту

ПолеОпис
arrayМасив товарів. Обов’язковий.
array[].IdІдентифікатор товару. Обов’язковий для /api/v2/product/update.
array[].KindТип товару для створення: P, B або U. Якщо не передати, використовується P.
array[].NameНазва товару.
array[].ParentFolderІдентифікатор папки.
array[].PrintNameНазва для друку.
array[].MemoКоментар.
array[].BarcodeШтрихкод.
array[].UnitNameОдиниця виміру.
array[].BrandБренд.
array[].DescriptionОпис.
array[].MainSupplierNameНазва основного постачальника.
array[].MainSupplierRegCodeРеєстраційний код основного постачальника.
array[].ArticleАртикул.
array[].IsManufactureОзнака продукції.
array[].PriceTypeІдентифікатор типу ціни.
array[].PriceValueЗначення ціни.
array[].SkuParentProductІдентифікатор базового товару для прямого створення SKU-товару (Kind: U).
array[].SkuParamsПараметри SKU з полями Name і Value.
array[].SkuМасив SKU-товарів під час створення базового товару (Kind: B).

Для створення звичайного товару (Kind: P) поле Name обов’язкове. Для прямого створення SKU (Kind: U) обов’язковий SkuParentProduct, а назва SKU формується з SkuParams.

Формат відповіді

ПолеОпис
successtrue або false.
dataМасив ідентифікаторів створених або оновлених товарів.
errorКод і текст помилки, якщо success = false.

Папки товарів

Назва методу списку: /api/v2/product/folder/list

Назва методу створення: /api/v2/product/folder/add

Назва методу оновлення: /api/v2/product/folder/update

Метод списку повертає папки товарів сторінками по 100 елементів. Фільтр filter.ParentFolder працює за загальним правилом з розділу Папки довідників: якщо поле не передати, повертаються всі папки; null повертає папки першого рівня; Id повертає прямі підпапки. У списку також підтримуються filter.Archive і filter.MobileApp.

Параметри списку папок

ПолеОпис
filter.ParentFolderІдентифікатор батьківської папки або null для першого рівня.
filter.IdІдентифікатор папки.
filter.ArchiveОзнака повернення архівних папок.
filter.MobileAppЯкщо true, API використовує збільшений ліміт вибірки.
pageНомер сторінки.

Поля відповіді списку папок

ПолеОпис
IdІдентифікатор папки.
NameНазва папки.
ParentFolderІдентифікатор батьківської папки або null для першого рівня.
VoidОзнака архівності.

Параметри створення та оновлення папок

ПолеОпис
arrayМасив папок. Обов’язковий.
array[].IdІдентифікатор папки. Обов’язковий для /api/v2/product/folder/update.
array[].NameНазва папки.
array[].ParentFolderІдентифікатор батьківської папки.

Для створення папки Name обов’язковий, а переданий Id ігнорується. Для оновлення Id має бути цілим числом; якщо передати порожній Name, API поверне помилку.