Рекомендации Маркета, касающиеся цен
Метод доступен для всех моделей.
Пока недоступен для продавцов Market Yandex Go.
Если вы используете API-Key-токен, для вызова метода необходим один из доступов в списке
- pricing — Управление ценами
- pricing:read-only — Просмотр цен
- all-methods — Полное управление кабинетом
- all-methods:read-only — Просмотр всех данных
Метод возвращает рекомендации нескольких типов.
- Порог для привлекательной цены.
- Оценка привлекательности цен на витрине.
Рекомендации показывают, какие цены нужно установить, чтобы привлечь покупателя.
В запросе можно использовать фильтры. Результаты возвращаются постранично.
| ⚙️ Лимит: 100 запросов в минуту |
|---|
Request
POST
https://api.partner.market.yandex.ru/v2/businesses/{businessId}/offers/recommendations
Path parameters
|
Name |
Description |
|
businessId |
Type: integer Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом GET v2/campaigns. ℹ️ Что такое кабинет и магазин на Маркете Min value: |
Query parameters
|
Name |
Description |
|
limit |
Type: integer Количество значений на одной странице. Min value: |
|
page_token |
Type: string Идентификатор страницы c результатами. Если параметр не указан, возвращается первая страница. Рекомендуем передавать значение выходного параметра Если задан Example: |
Body
application/json
{
"offerIds": [
"example"
],
"competitivenessFilter": "OPTIMAL"
}
|
Name |
Description |
|
competitivenessFilter |
Type: PriceCompetitivenessType Фильтр, выводящий товары, с привлекательными, умеренными и непривлекательными ценами. Привлекательность цены:
Enum: |
|
offerIds |
Type: ShopSku[] | null Идентификаторы товаров, информация о которых нужна. ⚠️ Не используйте это поле одновременно с остальными фильтрами. Если вы хотите воспользоваться фильтрами, оставьте поле пустым. Min items: Unique 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
PriceCompetitivenessType
Привлекательность цены:
OPTIMAL— привлекательная.AVERAGE— умеренная.LOW— непривлекательная.
Type: string
Enum: OPTIMAL, AVERAGE, LOW
Responses
200 OK
Список товаров с рекомендациями.
Body
application/json
{
"status": "OK",
"result": {
"paging": {
"nextPageToken": "example",
"prevPageToken": "example"
},
"offerRecommendations": [
{
"offer": {},
"recommendation": {}
}
]
}
}
Type: object
All of 2 types
-
Type: ApiResponse
Стандартная обертка для ответов сервера.
Example
{ "status": "OK" } -
Type: object
result
Type: OfferRecommendationsResultDTO
Список товаров с рекомендациями.
Example
{ "paging": { "nextPageToken": "example", "prevPageToken": "example" }, "offerRecommendations": [ { "offer": { "offerId": "example", "price": { "value": 0, "currencyId": "RUR" }, "competitiveness": "OPTIMAL", "shows": 0 }, "recommendation": { "offerId": null, "competitivenessThresholds": { "optimalPrice": null, "averagePrice": null } } } ] }Example
{ "result": { "paging": { "nextPageToken": "example", "prevPageToken": "example" }, "offerRecommendations": [ { "offer": { "offerId": "example", "price": {}, "competitiveness": "OPTIMAL", "shows": 0 }, "recommendation": { "offerId": null, "competitivenessThresholds": {} } } ] } }
ApiResponseStatusType
Тип ответа. Возможные значения:
OK— ошибок нет.ERROR— при обработке запроса произошла ошибка.
Type: string
Enum: OK, ERROR
ApiResponse
Стандартная обертка для ответов сервера.
|
Name |
Description |
|
status |
Type: ApiResponseStatusType Тип ответа. Возможные значения:
Enum: |
Example
{
"status": "OK"
}
ForwardScrollingPagerDTO
Идентификатор следующей страницы.
|
Name |
Description |
|
nextPageToken |
Type: string Идентификатор следующей страницы результатов. Example: |
Example
{
"nextPageToken": "example"
}
ScrollingPagerDTO
Информация о страницах результатов.
Type: object
All of 2 types
-
Type: ForwardScrollingPagerDTO
Идентификатор следующей страницы.
Example
{ "nextPageToken": "example" } -
Type: object
prevPageToken
Type: string
Идентификатор предыдущей страницы результатов.
Example:
exampleExample
{ "prevPageToken": "example" }
Example
{
"nextPageToken": "example",
"prevPageToken": "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"
}
OfferForRecommendationDTO
Информация о состоянии цены на товар.
|
Name |
Description |
|
competitiveness |
Type: PriceCompetitivenessType Привлекательность цены на товар. Привлекательность цены:
Enum: |
|
offerId |
Type: ShopSku Ваш SKU — идентификатор товара в вашей системе. Правила использования SKU:
SKU товара можно изменить в кабинете продавца на Маркете. О том, как это сделать, читайте в Справке Маркета для продавцов. Важно Пробельные символы в начале и конце значения автоматически удаляются. Например, Что такое SKU и как его назначать Min length: Max length: Pattern: Example: |
|
price |
Type: BasePriceDTO Цена товара в каталоге. Цена товара. Example
|
|
shows |
Type: integer Количество показов карточки товара за последние 7 дней. |
Example
{
"offerId": "example",
"price": {
"value": 0,
"currencyId": "RUR"
},
"competitiveness": "OPTIMAL",
"shows": 0
}
PriceCompetitivenessThresholdsDTO
Максимальные значения цены, при которых она является привлекательной или умеренной.
|
Name |
Description |
|
averagePrice |
Type: BasePriceDTO Максимальная умеренная цена. Цена товара. Example
|
|
optimalPrice |
Type: BasePriceDTO Максимальная привлекательная цена. Цена товара. Example
|
Example
{
"optimalPrice": {
"value": 0,
"currencyId": "RUR"
},
"averagePrice": null
}
OfferRecommendationInfoDTO
Рекомендации, касающиеся цены на товар.
|
Name |
Description |
|
competitivenessThresholds |
Type: PriceCompetitivenessThresholdsDTO Максимальные значения цены, при которых она является привлекательной или умеренной. Example
|
|
offerId |
Type: ShopSku Ваш SKU — идентификатор товара в вашей системе. Правила использования SKU:
SKU товара можно изменить в кабинете продавца на Маркете. О том, как это сделать, читайте в Справке Маркета для продавцов. Важно Пробельные символы в начале и конце значения автоматически удаляются. Например, Что такое SKU и как его назначать Min length: Max length: Pattern: Example: |
Example
{
"offerId": "example",
"competitivenessThresholds": {
"optimalPrice": {
"value": 0,
"currencyId": "RUR"
},
"averagePrice": null
}
}
OfferRecommendationDTO
Информация о состоянии цен и рекомендации.
|
Name |
Description |
|
offer |
Type: OfferForRecommendationDTO Информация о состоянии цен. Информация о состоянии цены на товар. Example
|
|
recommendation |
Type: OfferRecommendationInfoDTO Рекомендации. Рекомендации, касающиеся цены на товар. Example
|
Example
{
"offer": {
"offerId": "example",
"price": {
"value": 0,
"currencyId": "RUR"
},
"competitiveness": "OPTIMAL",
"shows": 0
},
"recommendation": {
"offerId": null,
"competitivenessThresholds": {
"optimalPrice": null,
"averagePrice": null
}
}
}
OfferRecommendationsResultDTO
Список товаров с рекомендациями.
|
Name |
Description |
|
offerRecommendations |
Type: OfferRecommendationDTO[] Страница списка товаров. Example
|
|
paging |
Type: ScrollingPagerDTO Информация о страницах результатов. Example
|
Example
{
"paging": {
"nextPageToken": "example",
"prevPageToken": "example"
},
"offerRecommendations": [
{
"offer": {
"offerId": "example",
"price": {
"value": 0,
"currencyId": "RUR"
},
"competitiveness": "OPTIMAL",
"shows": 0
},
"recommendation": {
"offerId": null,
"competitivenessThresholds": {
"optimalPrice": null,
"averagePrice": null
}
}
}
]
}
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" } ] }
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.
Если у вас установлена такая цена или ниже, она считается привлекательной.