Товари та артикули
Товари з фото, характеристиками й варіантами, пошук артикула за кодом і штрихкодом, номери всіх товарів для звірки, вигляд опису.
На цій сторінці
Товар приходить одним об’єктом, у якому є все для картки на вашому сайті. У
ньому назви й описи всіма мовами, фото повними адресами, характеристики,
посилання на товар у магазині та всі артикули. Якщо ключ має право prices:read, у
кожного артикула є блок price із ціною, а якщо є право inventory:read, то
й блок stock із наявністю.
Усі адреси на цій сторінці потребують права catalog:read і приймають
загальні параметри locale і storefront_id, а списки ще limit і offset. Що від них
залежить і які товари ви бачите, описано на сторінці
«Каталог: видимість і синхронізація».
GET /api/v1/products
Опубліковані товари з артикулами. Право: catalog:read. Порядок: за номером
товару, за зростанням.
Параметри
| Параметр | Тип | Типово | Що робить |
|---|---|---|---|
limit |
ціле | 50 | товарів на сторінці, від 1 до 200 |
offset |
ціле | 0 | скільки товарів пропустити. Разом з after_id не передається |
after_id |
ціле | немає | товари з номером, більшим за вказаний. after_id=0 — з самого початку. Докладно на сторінці «Запити та відповіді» |
category_id |
ціле | немає | товари категорії, як у розділі на вітрині |
brand_id |
ціле | немає | товари бренду. Номер бренду береться з /brands |
type_id |
ціле | немає | товари цього типу |
sku |
рядок | немає | товар, у якого є артикул із таким кодом |
barcode |
рядок | немає | товар, у якого є артикул із таким штрихкодом |
updated_since |
дата й час ISO 8601 | немає | лише товари, змінені починаючи з цього моменту. Докладно в розділі «Зміни: updated_since» |
locale |
рядок | основна мова магазину | мова посилань і назв характеристик |
storefront_id |
ціле | основна вітрина | вітрина відповіді |
Фільтри можна поєднувати, тоді товар має підійти під усі одразу.
category_id добирає товари так само, як розділ на вітрині. До звичайної
категорії входять товари, прив’язані до неї, і товари, для яких вона головна.
Товари підкатегорій входять, лише якщо в налаштуваннях категорії ввімкнено
показ товарів підрозділів. До категорії «за умовами» входять товари, що
підходять під її умови. Якщо категорію на цій вітрині не видно, список буде
порожнім.
brand_id за брендом, сторінку якого вимкнено або віддано іншій вітрині,
повертає порожній список.
sku і barcode шукають збіг усього коду чи штрихкоду, а не його
частини. Регістр літер не важливий: ab-12 знайде артикул AB-12. Пробіли по
краях відкидаються, а решта знаків мусить збігтися: AB12 артикул AB-12 не
знайде. Латинська й кирилична літери, навіть однакові на вигляд, вважаються
різними, тому код із кириличною «А» не знайде артикул із латинською «A». Щоб
знайти сам артикул, а не товар, зручніше /skus.
updated_since знаходить товар, якщо змінився він сам, будь-який його
артикул або залишок будь-якого артикула. Сюди ж належать перейменування
характеристики чи бренду, новий курс валюти, початок акції, правка в
доповненні «Оптові ціни» та інші зміни, які перелічено в розділі
«Зміни: updated_since».
Правка того, чого у відповіді немає, наприклад рейтингу чи кількості
продажів, товар зміненим не робить.
| Помилка 422 | Поле в errors |
Повідомлення |
|---|---|---|
| невідомий параметр | назва параметра | «Такого параметра в цієї адреси немає. Допустимі параметри: …» |
category_id, brand_id чи type_id не ціле додатне число |
назва параметра | «Потрібен номер запису — ціле додатне число.» |
sku чи barcode передано списком (sku[]=…) |
назва параметра | «Значення має бути одним рядком.» |
updated_since без часу, без поясу або не дата |
updated_since |
«Потрібні дата й час у форматі ISO 8601, наприклад 2026-10-17T09:00:00Z.» |
after_id не ціле число від 0 |
after_id |
«after_id — номер запису, ціле число від 0.» |
after_id разом з offset |
offset |
«offset і after_id разом не передаються. Гортайте сторінки чимось одним.» |
limit поза 1–200, offset менше за 0 |
limit, offset |
«limit — ціле число від 1 до 200.», «offset — ціле число від 0.» |
неправильний storefront_id |
storefront_id |
«Вітрини з таким номером немає або її вимкнено. Номери вітрин віддає адреса /storefronts.» |
Якщо такої категорії, бренду чи типу немає, помилки не буде, прийде порожній список.
Приклад
curl "https://shop.example.ua/api/v1/products?category_id=313&after_id=0&limit=1" \
-H "Authorization: Bearer <ключ>"
Ключ у прикладі має права catalog:read, prices:read і inventory:read, а
залишки в нього налаштовано «По кожному складу».
{
"data": [
{
"id": 1045,
"slug": "lampa-svetodiodnaya-g9",
"url": "https://shop.example.ua/electrics-and-lighting/lampochki/lampa-svetodiodnaya-g9/",
"type_id": 83,
"main_category_id": 313,
"category_ids": [313, 340],
"brand": { "id": 2368, "name": "Philips" },
"name": { "ru": "Лампа светодиодная G9", "uk": "Лампа світлодіодна G9" },
"summary": { "ru": "Тёплый или холодный свет, 10 Вт", "uk": "Тепле або холодне світло, 10 Вт" },
"description": {
"ru": "<p>Светодиодная лампа для люстр и бра.</p><ul><li>Цоколь G9</li><li>Ресурс 25 000 часов</li></ul>",
"uk": "<p>Світлодіодна лампа для люстр і бра.</p><ul><li>Цоколь G9</li><li>Ресурс 25 000 годин</li></ul>"
},
"meta_title": { "ru": "Лампа G9 светодиодная купить" },
"meta_description": null,
"meta_keywords": null,
"unit": "pcs",
"qty_step": "1.000",
"qty_min": "1.000",
"pack_only": false,
"images": [
{
"id": 710,
"url": "https://shop.example.ua/storage/products/1045/710/g9.jpg",
"preview": "https://shop.example.ua/storage/products/1045/710/conversions/g9-preview.jpg",
"sku_id": null,
"locales": []
},
{
"id": 711,
"url": "https://shop.example.ua/storage/products/1045/711/g9-cold.jpg",
"preview": "https://shop.example.ua/storage/products/1045/711/conversions/g9-cold-preview.jpg",
"sku_id": 2108,
"locales": []
}
],
"features": [
{
"id": 605,
"code": "base-cap",
"name": "Тип цоколя",
"value": "G9",
"unit": null,
"values": [{ "id": 2405, "label": "G9", "color": null }]
},
{
"id": 606,
"code": "height",
"name": "Высота",
"value": "50 мм",
"unit": "мм",
"values": [{ "id": null, "label": "50 мм", "color": null }]
}
],
"updated_at": "2026-10-09T02:28:42Z",
"skus": [
{
"id": 2108,
"sku": "730601",
"barcode": "4820000730601",
"name": { "ru": "холодный белый", "uk": "холодне біле" },
"is_default": true,
"is_available": true,
"qty_min": "1.000",
"qty_step": "1.000",
"options": [{ "feature_id": 616, "value_id": 2428 }],
"features": [
{
"id": 616,
"code": "light",
"name": "Свет",
"value": "холодный белый",
"unit": null,
"values": [{ "id": 2428, "label": "холодный белый", "color": null }]
}
],
"image": "https://shop.example.ua/storage/products/1045/711/g9-cold.jpg",
"price": { "price": "208.32", "compare_price": "320.00", "discount_percent": 35, "currency": "UAH", "tiers": [] },
"stock": {
"available": "12.000",
"in_stock": true,
"preorder": false,
"warehouses": [{ "id": 3, "name": "Склад в Киеве", "available": "12.000" }]
}
},
{
"id": 2109,
"sku": "730602",
"barcode": null,
"name": { "ru": "нейтральный", "uk": "нейтральне" },
"is_default": false,
"is_available": true,
"qty_min": "1.000",
"qty_step": "1.000",
"options": [{ "feature_id": 616, "value_id": 2426 }],
"features": [
{
"id": 616,
"code": "light",
"name": "Свет",
"value": "нейтральный",
"unit": null,
"values": [{ "id": 2426, "label": "нейтральный", "color": null }]
}
],
"image": "https://shop.example.ua/storage/products/1045/710/g9.jpg",
"price": { "price": "208.32", "compare_price": "320.00", "discount_percent": 35, "currency": "UAH", "tiers": [] },
"stock": { "available": "0.000", "in_stock": false, "preorder": false, "warehouses": [] }
}
]
}
],
"meta": { "total": 37, "limit": 1, "after_id": 0 },
"links": {
"next": "https://shop.example.ua/api/v1/products?limit=1&after_id=1045&category_id=313",
"prev": null
}
}
У прикладі мова відповіді російська, тому характеристики підписано російською.
Поля товару
| Поле | Тип | Що означає |
|---|---|---|
id |
ціле | номер товару |
slug |
рядок | адреса товару на сайті. Вона одна для всіх мов |
url |
рядок або null |
повна адреса товару на вітрині мовою відповіді. Якщо такої мови у вітрини немає, її основною мовою |
type_id |
ціле або null |
номер типу товару з /product_types |
main_category_id |
ціле або null |
головна категорія товару. null, якщо її не задано або її не видно на вітрині |
category_ids |
масив цілих | усі видимі на вітрині категорії, куди власник додав товар, разом із головною. Категорії «за умовами» сюди не входять |
brand |
об’єкт або null |
бренд товару. null, якщо бренду немає або його сторінку приховано на цій вітрині |
brand.id |
ціле | номер бренду з /brands |
brand.name |
рядок | назва бренду мовою відповіді. Якщо цією мовою назви немає, приходить назва будь-якою іншою мовою |
name |
об’єкт або null |
назва товару за мовами магазину |
summary |
об’єкт або null |
короткий опис за мовами. Вигляд залежить від налаштування ключа, як у description |
description |
об’єкт або null |
опис за мовами: безпечною розміткою або простим текстом, за налаштуванням ключа. Докладно в розділі «Опис товару» |
meta_title |
об’єкт або null |
SEO-заголовок сторінки товару за мовами |
meta_description |
об’єкт або null |
SEO-опис сторінки товару за мовами |
meta_keywords |
об’єкт або null |
ключові слова сторінки товару за мовами |
unit |
рядок | одиниця продажу: pcs, m, kg, g, l, m² або власна одиниця магазину. Якщо в товару її не задано, pcs |
qty_step |
рядок | крок кількості в одиницях unit, три знаки після крапки. Кількість у замовленні зростає від qty_min на цей крок. За мінімуму 0,5 і кроку 0,25 підійдуть 0,5, 0,75 і 1. У товару, який продають лише упаковками, крок дорівнює розміру упаковки: за упаковки 1,4 м² прийде "1.400" |
qty_min |
рядок | найменша кількість у замовленні в одиницях unit, три знаки після крапки. Якщо власник мінімум не задав, він дорівнює кроку. У товару, який продають лише упаковками, мінімум округлюють угору до цілої кількості упаковок, і він не буває меншим за одну упаковку |
pack_only |
логічне | товар продається лише упаковками, поштучно його купити не можна |
images |
масив | фото товару в порядку галереї |
images[].id |
ціле | номер фото |
images[].url |
рядок або null |
повна адреса фото у вихідному розмірі |
images[].preview |
рядок або null |
повна адреса зменшеної копії, до 800 пікселів за більшою стороною |
images[].sku_id |
ціле або null |
артикул, до якого прив’язано фото. null — спільне фото товару |
images[].locales |
масив рядків | мови, якими фото показується на вітрині. Порожній масив — усіма. Так власник позначає, наприклад, фото упаковки з написом однією мовою |
features |
масив | спільні характеристики товару, опис полів нижче |
updated_at |
дата або null |
коли товар або будь-який його артикул востаннє змінився так, що це видно у відповіді, в UTC. Цей час зсувають і новий курс, і акція, а правка рейтингу чи заборони індексації не зсуває. Рух залишку до цього часу не входить. Докладно в розділі «Зміни: updated_since» |
skus |
масив | артикули товару в порядку, заданому власником. Опис полів нижче |
Приходять ті фото, які показуються на цій вітрині. Якщо власник позначив для вітрини лише частину фото товару чи варіанта, приходять лише вони.
Поля qty_step і qty_min товару повторюють значення основного артикула. У
кожного артикула упаковка буває своя, тому кількість для замовлення беріть із
полів qty_min і qty_step самого артикула. Їх описано в розділі
«Поля артикула».
Поля характеристики
Характеристики приходять мовою відповіді, так само, як їх бачить покупець вітрини. Значення однієї характеристики зведено в один рядок.
| Поле | Тип | Що означає |
|---|---|---|
id |
ціле | номер характеристики з /features |
code |
рядок | код характеристики |
name |
рядок | назва характеристики мовою відповіді |
value |
рядок | усі значення через кому, готові до показу: «G9», «50 мм», «червоний, синій», «Так» |
unit |
рядок або null |
підпис одиниці мовою відповіді, наприклад «мм» чи «Вт». У числа вона вже стоїть усередині value |
values |
масив | значення по одному |
values[].id |
ціле або null |
номер значення зі словника характеристики. null у значення, введеного вручну, наприклад у числа, тексту чи «так чи ні» |
values[].label |
рядок | підпис значення |
values[].color |
рядок або null |
колір значення у вигляді #RRGGBB, якщо його задано в довіднику |
У товару в features приходять значення самого товару, а в артикула — лише
його власні значення, наприклад вага чи колір цього варіанта.
Поля артикула
| Поле | Тип | Що означає |
|---|---|---|
id |
ціле | номер артикула. За ним запитують ціни й залишки |
sku |
рядок | код артикула, який власник задав у магазині |
barcode |
рядок або null |
штрихкод |
name |
об’єкт або null |
підпис варіанта за мовами, наприклад «холодне біле» чи «XL» |
is_default |
логічне | основний варіант, вітрина показує його першим |
is_available |
логічне | варіант продається. false — власник зняв його з продажу |
qty_min |
рядок | найменша кількість цього артикула в замовленні, в одиницях unit товару, три знаки після крапки. Правила ті самі, що в поля qty_min товару, але з упаковкою цього артикула |
qty_step |
рядок | крок кількості цього артикула, в одиницях unit товару, три знаки після крапки. У товару, який продають лише упаковками, крок дорівнює розміру упаковки цього артикула |
options |
масив | опції покупки, за якими покупець обирає цей варіант |
options[].feature_id |
ціле | номер характеристики з /features, у неї for_skus: true |
options[].value_id |
ціле | номер значення зі словника цієї характеристики |
features |
масив | власні характеристики варіанта, поля як у характеристик товару |
image |
рядок або null |
повна адреса головного фото варіанта у вихідному розмірі. Якщо власного фото у варіанта немає, приходить спільне фото товару |
price |
об’єкт | ціна для вашого контакту. Є лише з правом prices:read. Поля описано на сторінці «Ціни», ціни від кількості (tiers) — у розділі «Щаблі за кількістю» |
stock |
об’єкт | наявність. Є лише з правом inventory:read. Поля описано на сторінці «Залишки» |
GET /api/v1/products/{id}
Один товар за номером. Право: catalog:read. Відповідь та сама, що в
елемента списку /products, лише в полі data приходить об’єкт, а не масив.
Приймає лише загальні параметри locale і storefront_id. Адреса віддає
один запис і сторінок не гортає, тому limit, offset і after_id дають
відповідь 422, як і будь-який інший параметр, зокрема фільтри списку:
{
"code": "validation_failed",
"errors": {
"limit": ["Такого параметра в цієї адреси немає. Допустимі параметри: locale, storefront_id."]
}
}
curl "https://shop.example.ua/api/v1/products/1045?locale=uk" \
-H "Authorization: Bearer <ключ>"
{
"data": {
"id": 1045,
"slug": "lampa-svetodiodnaya-g9",
"url": "https://shop.example.ua/uk/electrics-and-lighting/lampochki/lampa-svetodiodnaya-g9/",
"...": "..."
}
}
Якщо товару немає, його не опубліковано або номер записано не числом,
приходить відповідь 404 з кодом not_found.
GET /api/v1/products/ids
Номери всіх видимих товарів за зростанням. Право: catalog:read. Адреса
потрібна для звірки. Товар, якого більше немає в цьому списку, зняли з продажу
або видалили, і його час прибрати в себе.
Сторінка тут велика, без цін і залишків.
| Параметр | Тип | Типово | Що робить |
|---|---|---|---|
limit |
ціле | 5000 | номерів на сторінці, від 1 до 10 000 |
offset |
ціле | 0 | скільки номерів пропустити. Разом з after_id не передається |
after_id |
ціле | немає | номери, більші за вказаний |
category_id, brand_id, type_id, sku, barcode, updated_since |
немає | ті самі фільтри, що в /products |
Помилки ті самі, що в /products. На limit, більший за 10 000, приходить
повідомлення «limit — ціле число від 1 до 10000.».
curl "https://shop.example.ua/api/v1/products/ids?after_id=0&limit=10000" \
-H "Authorization: Bearer <ключ>"
{
"data": [1040, 1041, 1042, 1045, 1053],
"meta": { "total": 5, "limit": 10000, "after_id": 0 },
"links": { "next": null, "prev": null }
}
| Поле | Тип | Що означає |
|---|---|---|
data |
масив цілих | номери товарів за зростанням |
meta, links |
об’єкти | як у решти списків. З after_id у meta замість offset приходить after_id |
GET /api/v1/skus
Артикули опублікованих товарів, без поділу за товарами. Право:
catalog:read. Порядок: за номером артикула, за зростанням. Адреса потрібна,
щоб знайти свій товар за кодом чи штрихкодом і забрати змінені артикули.
| Параметр | Тип | Типово | Що робить |
|---|---|---|---|
limit |
ціле | 50 | артикулів на сторінці, від 1 до 200 |
offset |
ціле | 0 | скільки артикулів пропустити. Разом з after_id не передається |
after_id |
ціле | немає | артикули з номером, більшим за вказаний |
sku |
рядок | немає | артикул із таким кодом, точний збіг |
barcode |
рядок | немає | артикул із таким штрихкодом, точний збіг |
product_id |
ціле | немає | артикули одного товару |
updated_since |
дата й час ISO 8601 | немає | лише артикули, змінені починаючи з цього моменту. Зміною вважається правка самого артикула або його перекладу, рух залишку, зміна складу, на якому він лежить, нова ціна через акцію, курс, валюту вітрини чи правку в доповненні «Оптові ціни» та перемикання налаштування «Дозволити замовлення, коли товару немає». Сюди ж потрапляють артикули товарів, які змінилися самі, наприклад після правки характеристик чи фото, бо від товару залежать опції й фото артикула. Докладно в розділі «Зміни: updated_since» |
Помилки ті самі, що в /products: невідомий параметр, product_id не ціле
додатне число, sku чи barcode списком, неправильний updated_since,
after_id чи limit.
curl "https://shop.example.ua/api/v1/skus?barcode=4820000730601" \
-H "Authorization: Bearer <ключ>"
{
"data": [
{
"id": 2108,
"product_id": 1045,
"sku": "730601",
"barcode": "4820000730601",
"name": { "ru": "холодный белый", "uk": "холодне біле" },
"is_default": true,
"is_available": true,
"qty_min": "1.000",
"qty_step": "1.000",
"options": [{ "feature_id": 616, "value_id": 2428 }],
"features": [
{
"id": 616,
"code": "light",
"name": "Свет",
"value": "холодный белый",
"unit": null,
"values": [{ "id": 2428, "label": "холодный белый", "color": null }]
}
],
"image": "https://shop.example.ua/storage/products/1045/711/g9-cold.jpg",
"price": { "price": "208.32", "compare_price": "320.00", "discount_percent": 35, "currency": "UAH", "tiers": [] },
"stock": { "available": "12.000", "in_stock": true, "preorder": false }
}
],
"meta": { "total": 1, "limit": 50, "offset": 0 },
"links": { "next": null, "prev": null }
}
Поля ті самі, що в артикула в товарі, і ще product_id —
номер товару, якому належить артикул. Блоки price і stock приходять за
тими самими правами. У прикладі залишки в ключа налаштовано «Однією сумою»,
тому в stock немає розбивки за складами.
Опис товару
Опис пишуть у редакторі магазину, а ви вставляєте його в сторінку свого сайту. Тому магазин віддає його в безпечному вигляді й вичищає все, що може виконатися на вашій сторінці. Вигляд опису для ключа обирає власник магазину в налаштуванні «Опис товару»: «З розміткою» або «Лише текст». Типово опис приходить із розміткою.
Те саме налаштування діє на description і summary. Мова, якою після
очищення нічого не залишилося, до об’єкта не потрапляє.
З розміткою
В описі залишаються лише такі теги:
| Що | Теги |
|---|---|
| абзаци й розділювачі | p, br, hr, div, span, blockquote, pre, code |
| оформлення тексту | b, strong, i, em, u, s, sup, sub |
| заголовки | h2, h3, h4, h5, h6 |
| списки | ul, ol, li, dl, dt, dd |
| таблиці | table, caption, thead, tbody, tfoot, tr, th, td |
| посилання | a |
| зображення | img |
У тегів залишаються лише такі властивості:
styleу будь-якого тега зі списку, якщо в ньому немаєexpression(),url(),javascript:,vbscript:,behavior:,-moz-bindingі@import. Інакшеstyleприбирається повністю;hrefіtitleвa;src,alt,title,widthіheightвimg;colspanіrowspanуthіtd.
Решта властивостей, зокрема class, id, target і всі обробники виду
onclick, прибирається.
Адреси. Посилання може вести на http, https, mailto і tel, а
зображення завантажуватися лише через http і https. Адреса магазину без
домену (/storage/…, /delivery/) добудовується до повної адреси вітрини,
адреса виду //cdn.example.com/… отримує https:, посилання на якір #…
залишається як є. Будь-яка інша адреса (javascript:, data:, відносна
photo.jpg) прибирається, а зображення без адреси видаляється зовсім.
Що замінюється. Заголовок h1 стає h2, щоб на вашій сторінці
залишився один головний заголовок. Блоки section, article, header,
footer, main, aside, nav, figure, figcaption, address,
center, details і summary стають div, щоб текст сусідніх блоків не
злипався.
Що видаляється разом із вмістом. script, style, iframe, frame,
frameset, object, embed, applet, noscript, template, svg,
math, input, button, select, textarea, option, title, head,
link, meta, base, коментарі та вставки, які розуміє лише вітрина
магазину (блоки шаблону). Відео, вбудоване через iframe, теж зникає.
Що розкривається. Решта тегів, наприклад font, form чи label,
прибирається, а текст усередині них залишається.
Нехай у магазині записано такий опис:
<h1>Лампа G9</h1>
<p class="lead" style="color:#333">Світлодіодна лампа <b>10 Вт</b> для люстр.</p>
<ul><li>Цоколь G9</li><li>Світло: тепле</li></ul>
<table><tr><th>Потужність</th><td>10 Вт</td></tr><tr><th>Ресурс</th><td>25 000 год</td></tr></table>
<p><img src="/storage/products/1045/710/g9.jpg" alt="Лампа" onerror="x()"> <a href="/delivery/" target="_blank">Доставка</a><br>Гарантія 2 роки</p>
<iframe src="https://youtube.com/embed/x"></iframe>
<font color="red">Акція</font>
Із розміткою він прийде так (переноси рядків додано для читання):
<h2>Лампа G9</h2>
<p style="color:#333">Світлодіодна лампа <b>10 Вт</b> для люстр.</p>
<ul><li>Цоколь G9</li><li>Світло: тепле</li></ul>
<table><tr><th>Потужність</th><td>10 Вт</td></tr><tr><th>Ресурс</th><td>25 000 год</td></tr></table>
<p><img src="https://shop.example.ua/storage/products/1045/710/g9.jpg" alt="Лампа"> <a href="https://shop.example.ua/delivery/">Доставка</a><br>Гарантія 2 роки</p>
Акція
Лише текст
Якщо ваш сайт розмітку не приймає, власник обирає «Лише текст». Тоді опис
приходить звичайним текстом із переносами рядків \n:
- абзаци, заголовки, списки й таблиці відокремлено одне від одного порожнім рядком;
- кожен пункт списку починається з нового рядка й знака «• »;
- клітинки рядка таблиці розділено « | »;
- перенос рядка
brзалишається переносом, а всерединіpreпереноси зберігаються як були; - терміни й підписи (
dt,dd,caption,figcaption,summary) стоять кожен на своєму рядку; - спецсимволи розкодовано: замість
&приходить&, замість пробіл; - зайві пробіли схлопнуто, порожніх рядків поспіль не більше одного;
- зображення зникають, від посилання залишається лише його текст;
- скрипти, стилі, вбудовані вікна й вставки шаблону вирізаються разом із вмістом, як і в розмітці.
Той самий опис у вигляді тексту:
Лампа G9
Світлодіодна лампа 10 Вт для люстр.
• Цоколь G9
• Світло: тепле
Потужність | 10 Вт
Ресурс | 25 000 год
Доставка
Гарантія 2 роки
Акція
У JSON це один рядок: "Лампа G9\n\nСвітлодіодна лампа 10 Вт для люстр.\n\n• Цоколь G9\n• Світло: тепле\n\n…".
Короткий опис
Короткий опис summary у магазині зазвичай пишуть простим текстом. Із
розміткою такий текст приходить екранованим: «Розмір S<M & L» прийде як
Розмір S<M & L, і його можна вставляти в сторінку як є. У вигляді
«Лише текст» він прийде без змін: Розмір S<M & L. Якщо в короткому описі
все ж є розмітка (так буває після переїзду з іншої платформи), вона
очищується так само, як опис.