Редактирование категорийных характеристик товара
Редактирует характеристики товара, которые специфичны для категории, к которой он относится.
Здесь только то, что относится к конкретной категории
Если вам нужно изменить основные параметры товара (название, описание, изображения, видео, производитель, штрихкод), воспользуйтесь запросом POST businesses/{businessId}/offer-mappings/update.
Всегда передавайте список характеристик и значений целиком, даже если нужно изменить всего одну из них. Передача отсутствующего значения стирает значение, сохраненное ранее.
Данные в каталоге обновляются не мгновенно
Это занимает до нескольких минут.
⚙️ Лимит: 5000 товаров в минуту, не более 100 товаров в одном запросе |
---|
Request
POST
https://api.partner.market.yandex.ru/businesses/{businessId}/offer-cards/update
Path parameters
Name |
Type |
Description |
businessId* |
integer<int64> |
Идентификатор кабинета. Чтобы узнать идентификатор, воспользуйтесь запросом GET campaigns. |
Body
{
"offersContent": [
{
"offerId": "string",
"categoryId": 0,
"parameterValues": [
{
"parameterId": 0,
"unitId": 0,
"valueId": 0,
"value": "string"
}
]
}
]
}
Name |
Type |
Description |
offersContent* |
Список товаров с указанными характеристиками. |
OfferContentDTO
Товар с указанными характеристиками.
Name |
Type |
Description |
offerId* |
string |
Ваш SKU — идентификатор товара в вашей системе. Разрешена любая последовательность длиной до 80 знаков. В нее могут входить английские и русские буквы, цифры и символы Правила использования SKU:
Что такое SKU и как его назначать
|
categoryId* |
integer<int32> |
Идентификатор категории на Маркете. Чтобы узнать идентификатор категории, к которой относится товар, воспользуйтесь запросом POST categories/tree. |
parameterValues* |
Список характеристик с их значениями.
Обновляется всегда целиком.
Максимальное количество — 300.
Вы можете указывать несколько значений одной характеристики при условии, что:
Для этого в |
ParameterValueDTO
Значение характеристики.
Вы можете указывать несколько значений одной характеристики при условии, что:
- Тип характеристики —
ENUM
. - В ответе на запрос POST category/{categoryId}/parameters у данной характеристики поле
multivalue
имеет значениеtrue
.
Для этого в parameterValues
передавайте каждое значение отдельно — несколько объектов с параметрами parameterId
, valueId
и value
. Параметр parameterId
должен быть одинаковым.
Name |
Type |
Description |
parameterId* |
integer<int64> |
Идентификатор характеристики. |
unitId |
integer<int64> |
Идентификатор единицы измерения. Если вы не передали параметр |
valueId |
integer<int64> |
Идентификатор значения. Обязательно передавайте идентификатор, если передаете значение из перечня допустимых значений, полученного от Маркета. Только для характеристик типа |
value* |
string |
Значение. |
Responses
200 OK
Запрос выполнен корректно, данные обработаны.
Ответ 200 сам по себе не значит, что переданные значения корректны
Обязательно посмотрите детали ответа: status
и перечень ошибок, если он есть.
Даже если ошибка допущена в характеристиках всего одного товара, никакие изменения из запроса в каталог не попадут.
Если в status
вернулось ERROR
, убедитесь, что:
- все обязательные характеристики заполнены;
- характеристики действительно существуют в указанных категориях;
- значения соответствуют характеристикам;
- ваши собственные значения имеют нужный тип данных.
Найти проблемы помогут поля errors
и warnings
.
Body
{
"status": "OK",
"results": [
{
"offerId": "string",
"errors": [
{
"type": "OFFER_NOT_FOUND",
"parameterId": 0,
"message": "string"
}
],
"warnings": [
{
"type": "OFFER_NOT_FOUND",
"parameterId": 0,
"message": "string"
}
]
}
]
}
Name |
Type |
Description |
status |
Тип ответа.
|
|
results |
Ошибки и предупреждения, возникшие при обработке переданных значений. Каждый элемент списка соответствует одному товару. Поле не передается, если все в порядке.
|
UpdateOfferContentResultDTO
Ошибки и предупреждения, касающиеся переданных характеристик товара.
Name |
Type |
Description |
offerId* |
string |
Ваш SKU — идентификатор товара в вашей системе. Разрешена любая последовательность длиной до 80 знаков. В нее могут входить английские и русские буквы, цифры и символы Правила использования SKU:
Что такое SKU и как его назначать
|
errors |
Ошибки, препятствующие отправке контента в каталог. |
|
warnings |
Предупреждения, не препятствующие отправке контента в каталог. |
OfferContentErrorDTO
Сообщение об ошибке.
Name |
Type |
Description |
type* |
Типы ошибок:
|
|
parameterId |
integer<int64> |
Идентификатор характеристики, с которой связана ошибка. |
message* |
string |
Сообщение об ошибке. |
OfferContentErrorType
Типы ошибок:
OFFER_NOT_FOUND
— такого товара нет в каталоге.UNKNOWN_CATEGORY
— указана неизвестная категория.CATEGORY_MISMATCH
— указанная категория не совпадает с категорией товара.UNKNOWN_PARAMETER
— передана характеристика, отсутствующая среди характеристик категории.UNEXPECTED_BOOLEAN_VALUE
— вместо boolean-значения передано что-то другое.NUMBER_FORMAT
— передана строка, не обозначающая число, вместо числа.VALUE_BLANK
— передано пустое значение.INVALID_UNIT_ID
— передана единица измерения, недопустимая для характеристики.
Type |
Description |
Enum: |
400 Bad Request
Запрос содержит неправильные данные.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
Name |
Type |
Description |
status |
Тип ответа.
|
|
errors |
Список ошибок. |
ApiErrorDTO
Общий формат ошибки.
Name |
Type |
Description |
code* |
string |
Код ошибки. |
message |
string |
Описание ошибки. |
401 Unauthorized
В запросе не указаны данные для авторизации.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
Name |
Type |
Description |
status |
Тип ответа.
|
|
errors |
Список ошибок. |
403 Forbidden
Данные для авторизации неверны или доступ к ресурсу запрещен.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
Name |
Type |
Description |
status |
Тип ответа.
|
|
errors |
Список ошибок. |
404 Not Found
Запрашиваемый ресурс не найден.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
Name |
Type |
Description |
status |
Тип ответа.
|
|
errors |
Список ошибок. |
420 Method Failure
Превышено ограничение на доступ к ресурсу.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
Name |
Type |
Description |
status |
Тип ответа.
|
|
errors |
Список ошибок. |
423 Locked
К ресурсу нельзя применить указанный метод.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
Name |
Type |
Description |
status |
Тип ответа.
|
|
errors |
Список ошибок. |
500 Internal Server Error
Внутренняя ошибка сервера.
Body
{
"status": "OK",
"errors": [
{
"code": "string",
"message": "string"
}
]
}
Name |
Type |
Description |
status |
Тип ответа.
|
|
errors |
Список ошибок. |