Установка цен на товары для всех магазинов
Метод доступен для моделей: FBY, FBS, Экспресс и DBS.
Если вы используете API-Key-токен, для вызова метода необходим один из доступов в списке
- pricing — Управление ценами
- all-methods — Полное управление кабинетом
Устанавливает цены, которые действуют во всех магазинах. Чтобы получить рекомендации Маркета, касающиеся цен, выполните запрос POST v2/businesses/{businessId}/offers/recommendations.
При необходимости передавайте НДС с помощью параметра vat в запросе POST v2/campaigns/{campaignId}/offers/update.
Данные в каталоге обновляются не мгновенно
Это занимает до нескольких минут.
| ⚙️ Лимит: 10 000 товаров в минуту, не более 500 товаров в одном запросе |
|---|
Request
POST
https://api.partner.market.yandex.ru/v2/businesses/{businessId}/offer-prices/updates
Path parameters
|
Name |
Description |
|
businessId |
Type: integer Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом GET v2/campaigns. ℹ️ Что такое кабинет и магазин на Маркете Min value: |
Body
application/json
{
"offers": [
{
"offerId": "example",
"price": {
"minimumForBestseller": 0
}
}
]
}
|
Name |
Description |
|
offers |
Type: UpdateBusinessOfferPriceDTO[] Список товаров с ценами. В рамках одного запроса все значения Min items: Max items: Example
|
ShopSku
Ваш SKU — идентификатор товара в вашей системе.
Правила использования SKU:
-
У каждого товара SKU должен быть свой.
-
Уже заданный SKU нельзя освободить и использовать заново для другого товара. Каждый товар должен получать новый идентификатор, до того никогда не использовавшийся в вашем каталоге.
SKU товара можно изменить в кабинете продавца на Маркете. О том, как это сделать, читайте в Справке Маркета для продавцов.
Важно
Пробельные символы в начале и конце значения автоматически удаляются. Например, " SKU123 " и "SKU123" будут обработаны как одинаковые значения.
Что такое SKU и как его назначать
Type: string
Min length: 1
Max length: 255
Pattern: ^(?=.*\S.*)[^\x00-\x08\x0A-\x1f\x7f]{1,255}$
Example: example
CurrencyType
Коды валют:
RUR— российский рубль.UAH— украинская гривна.BYR— белорусский рубль.KZT— казахстанский тенге.UZS— узбекский сум.
Type: string
Enum: RUR, USD, EUR, UAH, AUD, GBP, BYR, BYN, DKK, ISK, KZT, CAD, CNY, NOK, XDR, SGD, TRY, SEK, CHF, JPY, AZN, ALL, DZD, AOA, ARS, AMD, AFN, BHD, BGN, BOB, BWP, BND, BRL, BIF, HUF, VEF, KPW, VND, GMD, GHS, GNF, HKD, GEL, AED, EGP, ZMK, ILS, INR, IDR, JOD, IQD, IRR, YER, QAR, KES, KGS, COP, CDF, CRC, KWD, CUP, LAK, LVL, SLL, LBP, LYD, SZL, LTL, MUR, MRO, MKD, MWK, MGA, MYR, MAD, MXN, MZN, MDL, MNT, NPR, NGN, NIO, NZD, OMR, PKR, PYG, PEN, PLN, KHR, SAR, RON, SCR, SYP, SKK, SOS, SDG, SRD, TJS, THB, TWD, BDT, TZS, TND, TMM, UGX, UZS, UYU, PHP, DJF, XAF, XOF, HRK, CZK, CLP, LKR, EEK, ETB, RSD, ZAR, KRW, NAD, TL, UE
BasePriceDTO
Цена товара.
|
Name |
Description |
|
currencyId |
Type: CurrencyType Валюта. Коды валют:
Enum: |
|
value |
Type: number Цена товара. Min value: Exclusive min: |
Example
{
"value": 0,
"currencyId": "RUR"
}
DiscountBase
Зачеркнутая цена.
Число должно быть целым. Вы можете указать цену со скидкой от 5 до 99%.
Передавайте этот параметр при каждом обновлении цены, если предоставляете скидку на товар.
Type: number
Min value: 0
Exclusive min: true
PriceWithDiscountDTO
Цена с указанием скидки.
Type: object
All of 2 types
-
Type: BasePriceDTO
Цена товара.
Example
{ "value": 0, "currencyId": "RUR" } -
Type: object
discountBase
Type: DiscountBase
Зачеркнутая цена.
Число должно быть целым. Вы можете указать цену со скидкой от 5 до 99%.
Передавайте этот параметр при каждом обновлении цены, если предоставляете скидку на товар.
Min value:
0Exclusive min:
trueExample:
0Example
{ "discountBase": 0 }
Example
{
"value": 0,
"currencyId": "RUR",
"discountBase": 0
}
UpdateBusinessPricesDTO
Цены.
Type: object
All of 2 types
-
Type: PriceWithDiscountDTO
Цена с указанием скидки.
Example
{ "value": 0, "currencyId": "RUR", "discountBase": 0 } -
Type: object
minimumForBestseller
Type: number
Минимальная цена товара для попадания в акцию «Бестселлеры Маркета». Подробнее об этом способе участия читайте в Справке Маркета для продавцов.
При передаче цены ориентируйтесь на значение параметра
maxPromoPrice(максимально возможная цена для участия в акции) в методе POST v2/businesses/{businessId}/promos/offers.Товар не попадет в акцию с помощью этого способа, если:
-
Не передать этот параметр. Удалится значение, которое вы указали ранее.
-
В методе POST v2/businesses/{businessId}/offer-prices для этого товара возвращается параметр
excludedFromBestsellersсо значениемtrue.Но товар по-прежнему сможет попасть в акцию через автоматическое участие или ручное добавление.
Min value:
0Max value:
100000000Exclusive min:
trueExample
{ "minimumForBestseller": 0 } -
Example
{
"value": 0,
"currencyId": "RUR",
"discountBase": 0,
"minimumForBestseller": 0
}
UpdateBusinessOfferPriceDTO
Товар с новой ценой.
|
Name |
Description |
|
offerId |
Type: ShopSku Ваш SKU — идентификатор товара в вашей системе. Правила использования SKU:
SKU товара можно изменить в кабинете продавца на Маркете. О том, как это сделать, читайте в Справке Маркета для продавцов. Важно Пробельные символы в начале и конце значения автоматически удаляются. Например, Что такое SKU и как его назначать Min length: Max length: Pattern: Example: |
|
price |
Type: UpdateBusinessPricesDTO Цены. Example
|
Example
{
"offerId": "example",
"price": {
"value": 0,
"currencyId": "RUR",
"discountBase": 0,
"minimumForBestseller": 0
}
}
Responses
200 OK
Маркет принял информацию о новых ценах.
Body
application/json
{
"status": "OK"
}
Type: object
All of 1 type
-
Type: ApiResponse
Стандартная обертка для ответов сервера.
Example
{ "status": "OK" }
ApiResponseStatusType
Тип ответа. Возможные значения:
OK— ошибок нет.ERROR— при обработке запроса произошла ошибка.
Type: string
Enum: OK, ERROR
ApiResponse
Стандартная обертка для ответов сервера.
|
Name |
Description |
|
status |
Type: ApiResponseStatusType Тип ответа. Возможные значения:
Enum: |
Example
{
"status": "OK"
}
400 Bad Request
Запрос содержит неправильные данные. Подробнее об ошибках при работе с ценами
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
ApiErrorDTO
Общий формат ошибки.
|
Name |
Description |
|
code |
Type: string Код ошибки. Example: |
|
message |
Type: string Описание ошибки. Example: |
Example
{
"code": "example",
"message": "example"
}
ApiErrorResponse
Стандартная обертка для ошибок сервера.
Type: object
All of 2 types
-
Type: ApiResponse
Стандартная обертка для ответов сервера.
Example
{ "status": "OK" } -
Type: object
errors
Type: ApiErrorDTO[] | null
Список ошибок.
Min items:
1Example
[ { "code": "example", "message": "example" } ]Example
{ "errors": [ { "code": "example", "message": "example" } ] }
Example
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
401 Unauthorized
В запросе не указаны данные для авторизации. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
403 Forbidden
Данные для авторизации неверны или доступ к ресурсу запрещен. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
404 Not Found
Запрашиваемый ресурс не найден. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
420 Method Failure
Превышено ограничение на доступ к ресурсу. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
423 Locked
К ресурсу нельзя применить указанный метод. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
500 Internal Server Error
Внутренняя ошибка Маркета. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
No longer supported, please use an alternative and newer version.
Подробнее об этом читайте в Справке Маркета для продавцов.