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