Установка цен на товары в конкретном магазине
Устанавливает цены на товары в магазине.
Метод только для отдельных магазинов
Используйте этот метод, только если в кабинете установлены уникальные цены в отдельных магазинах.
Для управления базовыми ценами используйте POST businesses/{businessId}/offer-prices/updates.
Данные в каталоге обновляются не мгновенно
Это занимает до нескольких минут.
⚙️ Лимит: 5000 товаров в минуту, не более 500 товаров в одном запросе |
---|
Request
POST
https://api.partner.market.yandex.ru/campaigns/{campaignId}/offer-prices/updates
Path parameters
Name |
Type |
Description |
campaignId* |
integer<int64> |
Идентификатор кампании в API и магазина в кабинете. Каждая кампания в API соответствует магазину в кабинете. Чтобы узнать идентификаторы своих магазинов, воспользуйтесь запросом GET campaigns. |
Body
{
"offers": [
{
"offerId": "string",
"id": "string",
"feed": {
"id": 0
},
"price": {
"value": 0,
"discountBase": 0,
"currencyId": "RUR",
"vat": 0
},
"marketSku": 0,
"shopSku": "string"
}
]
}
Name |
Type |
Description |
offers* |
Список товаров. |
OfferPriceDTO
Товар с информацией о новой цене на него.
Name |
Type |
Description |
offerId |
string |
Идентификатор предложения.
|
id |
string |
Это поле устарело Не используйте его — это может привести к ошибкам. Идентификатор предложения из прайс-листа. |
feed |
Это поле устарело Не используйте его — это может привести к ошибкам. Информация о прайс-листе. |
|
price |
Цена с указанием скидки, валюты и времени последнего обновления. |
|
marketSku |
integer<int64> |
Это поле устарело Не используйте его — это может привести к ошибкам. SKU на Маркете. |
shopSku |
string |
Это поле устарело Не используйте его — это может привести к ошибкам.
|
OfferPriceFeedDTO
Информация о прайс-листе, содержащем предложение.
Name |
Type |
Description |
id |
integer<int64> |
Идентификатор прайс-листа, содержащего предложение. |
PriceDTO
Цена с указанием скидки, валюты и времени последнего обновления.
Name |
Type |
Description |
value |
number |
Цена на товар. |
discountBase |
number |
Цена на товар без скидки. Число должно быть целым. Вы можете указать цену со скидкой от 5 до 75%. Передавайте этот параметр при каждом обновлении цены, если предоставляете скидку на товар. |
currencyId |
Валюта, в которой указана цена на товар. Возможно только значение
|
|
vat |
integer<int32> |
Идентификатор ставки НДС, применяемой для товара:
Если параметр не указан, используется ставка НДС, установленная в кабинете. |
CurrencyType
Коды валют. Возможные значения:
BYR
— белорусский рубль.KZT
— казахстанский тенге.RUR
— российский рубль.UAH
— украинская гривна.
Type |
Description |
Enum: |
Responses
200 OK
Маркет принял информацию о новых ценах.
Body
{
"status": "OK"
}
Name |
Type |
Description |
status |
Тип ответа.
|
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 |
Список ошибок. |