С вопросом
description_category_id в ответе
10 октября 2023
2366
5
6
Мы использовали для публикации товаров старую схему категорий. Сейчас метод /v2/product/info/list возвращает некое значение description_category_id в ответе. Но этого значения нет в результате дерева категорий и типов /v1/description-category/tree
например
description_category_id=39474657Я полагал, что на вашей стороне сделано какое то сопоставление старых/новых категорий имеющихся товаров. Этот результат нельзя использовать и все категории придется выбирать заново?

Товарищи! Прошел почти год с публикации данного вопроса. Я столкнулся с такой же проблемой. Не подскажите, решили ли вы вопрос? Если да, то как ?
Есть информация насчет description_category_id? Я начал использовать новые методы и если я передаю последнюю категорию у меня игнорируются новые некоторые атрибуты и появляется ошибка
Я для проверки в ручную загрузил товар, потом с помощью метода /v2/product/info узнал его description_category_id и передал его в методе v2/product/import вместо поля category_id и тогда у меня все получилось. Товар в таком случае успешно загрузился. Но теперь встает вопрос - как мне получать description_category_id до того как загрузить товар? Я полагаю, что должен быть какой-нибудь метод для получения всех возможных description_category_id, чтобы сопоставить со своими товарами. Но такого метода я не нашел. Подскажите, если такой есть
@Itrukhin, @ssenkevich, @malferov всем привет!Все ваши вопросы видим, сейчас работаем над ответом, сможем чуть позже вернуться с обратной связью!
Присоединяюсь к вопросу.
Пока только известно, что type_id эквивалентен значению dictionary_value_id 8229-го атрибута товара. Атрибуты товара можно получить методом v3/products/info/attributes.
Также, как уже отметили, известно, что значения description_category_id из свойств товара отсутствуют в новом дереве категорий и типов товаров; нет ни одного соответствия. (Логично предположить, что значение description_category_id должно соответствовать категории, которая является непосредственным предком Типа товара. Тогда, зная type_id и description_category_id, можно будет проследить ветку дерева категорий до корня.)
Замечено, что Озон с момента публикации новых и методов и сообщения о скором прекращении старых методов (6 окт 2023) уже как минимум 1 раз перестроил новое дерево категорий, изменив их идентификаторы.
Также известно, что в разных подкатегориях могут быть Типы товаров с одинаковыми type_id и type_name, но с разным набором атрибутов.
Если вы храните или собираетесь хранить список категорийных атрибутов в БД, помните, что размер массива атрибутов категории в JSON-формате может занимать более 64 КБ; в моем случае пришлось изменить тип данных BLOB для поля attributes на MEDIUMBLOB.
Присоединяюсь к вопросу.
Вопрос по новой структуре каталога - откуда берется и для чего нужен description_category_id?
Например, я запросил через /v2/product/info данные смартфона. В ответе category_id = 17030819, что соответствует старой категории "Смартфоны" - тут все понятно. Новое свойство description_category_id = 17039977. Делаю запрос на /v1/description-category/tree, но в ответе не нахожу ни category_id равный 17039977, ни type_id равный 17039977. Категория "Смартфоны, планшеты, мобильные телефоны" имеет category_id = 15621050. Тип товара "Смартфон" имеет type_id = 95139.
В документации к /v2/product/info в описании свойства description_category_id написано "Идентификатор категории. Используйте его с методами /v1/description-category/attribute и /v1/description-category/attribute/values.". Я сделал запрос к /v1/description-category/attribute, в котором для category_id указал 17039977 - вернулась ошибка "description_category_id or item_id must not be empty". Тут вообще непонятно: свойств description_category_id и item_id нет в описании этого метода. Попробовал заменить в запросе category_id на description_category_id с тем же значением - получил ту же ошибку.
Итого:
1) Откуда взялось значение 17039977 для description_category_id в ответе /v2/product/info для смартфона?
2) Для чего вообще нужно свойство description_category_id?
3) Что мы должны передать в category_id при создании товара через /v2/product/import - category_id из нового дерева или type_id оттуда же, или вообще старый category_id? На примере смартфона: 15621050 или 95139 или 17030819?