Рекомендации Маркета, касающиеся цен

Метод возвращает рекомендации нескольких типов.

1. Порог для привлекательной цены. Он нужен для участия в софинансировании скидок.

Показывает, какие цены для участия нужно установить, чтобы получить максимальные шансы на срабатывание скидок, софинансируемых Маркетом. Как это устроено

2. Оценка привлекательности цен на витрине.

Привлекательность влияет на вероятность срабатывания скидок за счет Маркета. Как это устроено

В запросе можно использовать фильтры.

Результаты возвращаются постранично.

⚙️ Лимит: 100 запросов в минуту

Request

POST

https://api.partner.market.yandex.ru/businesses/{businessId}/offers/recommendations

Path parameters

Name

Description

businessId*

Type: integer<int64>

Идентификатор кабинета. Чтобы узнать идентификатор, воспользуйтесь запросом GET campaigns.

ℹ️ Что такое кабинет и магазин на Маркете

Query parameters

Name

Description

limit

Type: integer<int32>

Количество товаров на одной странице.
Example: 20

page_token

Type: string

Идентификатор страницы c результатами.

Если параметр не указан, возвращается самая старая страница.

Рекомендуется передавать значение выходного параметра nextPageToken, полученное при последнем запросе.

Если задан page_token, параметры offset, page_number и page_size игнорируются.
Example: eyBuZXh0SWQ6IDIzNDIgfQ==

Body

application/json
{
    "offerIds": [
        "string"
    ],
    "cofinancePriceFilter": "SPECIFIED",
    "recommendedCofinancePriceFilter": "SPECIFIED",
    "competitivenessFilter": "OPTIMAL"
}

Name

Description

cofinancePriceFilter

Type: FieldStateType

Фильтр, выводящий товары, для которых заданы (SPECIFIED) или не заданы (EMPTY) цены для участия в софинансировании.

Enum: SPECIFIED, EMPTY

competitivenessFilter

Type: PriceCompetitivenessType

Фильтр, выводящий товары, с привлекательными, умеренными и непривлекательными ценами.

Enum: OPTIMAL, AVERAGE, LOW

offerIds

Type: string[]

Идентификаторы товаров, информация о которых нужна. ⚠️ Не используйте это поле одновременно с остальными фильтрами. Если вы хотите воспользоваться фильтрами, оставьте поле пустым.
Ваш SKU — идентификатор товара в вашей системе.

Разрешена любая последовательность длиной до 255 знаков.

Правила использования SKU:

  • У каждого товара SKU должен быть свой.

  • SKU товара нельзя менять — можно только удалить товар и добавить заново с новым SKU.

  • Уже заданный SKU нельзя освободить и использовать заново для другого товара. Каждый товар должен получать новый идентификатор, до того никогда не использовавшийся в вашем каталоге.

Что такое SKU и как его назначать

Min length: 1

Max length: 255

Pattern: ^[^\x00-\x08\x0A-\x1f\x7f]{1,255}$

recommendedCofinancePriceFilter

Type: FieldStateType

Фильтр, выводящий товары, для которых рассчитан (SPECIFIED) или не рассчитан (EMPTY) порог цены для участия в софинасировании.

Enum: SPECIFIED, EMPTY

FieldStateType

Фильтр по заполненности или незаполненности поля:

  • SPECIFIED — вывести товары, у которых поле заполнено.
  • EMPTY — вывести товары, у которых поле не заполнено.

Type

Description

FieldStateType

Enum: SPECIFIED, EMPTY

PriceCompetitivenessType

Привлекательность цены:

  • OPTIMAL — привлекательная.
  • AVERAGE — умеренная.
  • LOW — непривлекательная.

Type

Description

PriceCompetitivenessType

Enum: OPTIMAL, AVERAGE, LOW

Responses

200 OK

Список товаров с рекомендациями.

Body

application/json
{
    "status": "OK",
    "result": {
        "paging": {
            "nextPageToken": "string",
            "prevPageToken": "string"
        },
        "offerRecommendations": [
            {
                "offer": {
                    "offerId": "string",
                    "price": {
                        "value": 0,
                        "currencyId": "RUR"
                    },
                    "cofinancePrice": {
                        "value": 0,
                        "currencyId": "RUR",
                        "updatedAt": "2022-12-29T18:02:01Z"
                    },
                    "competitiveness": "OPTIMAL",
                    "shows": 0
                },
                "recommendation": {
                    "offerId": "string",
                    "recommendedCofinancePrice": {
                        "value": 0,
                        "currencyId": "RUR"
                    },
                    "competitivenessThresholds": {
                        "optimalPrice": {
                            "value": 0,
                            "currencyId": "RUR"
                        },
                        "averagePrice": {
                            "value": 0,
                            "currencyId": "RUR"
                        }
                    }
                }
            }
        ]
    }
}

Name

Description

result

Type: OfferRecommendationsResultDTO

Список товаров с рекомендациями.

status

Type: ApiResponseStatusType

Тип ответа.

Enum: OK, ERROR

OfferRecommendationsResultDTO

Список товаров с рекомендациями.

Name

Description

offerRecommendations

Type: OfferRecommendationDTO[]

Страница списка товаров.
Информация о состоянии цен и рекомендации.

paging

Type: ScrollingPagerDTO

Информация о страницах результатов.
Ссылка на следующую страницу.

ApiResponseStatusType

Тип ответа.

Type

Description

ApiResponseStatusType

Enum: OK, ERROR

OfferRecommendationDTO

Информация о состоянии цен и рекомендации.

Name

Description

offer

Type: OfferForRecommendationDTO

Информация о состоянии цен.

recommendation

Type: OfferRecommendationInfoDTO

Рекомендации.

ScrollingPagerDTO

Информация о страницах результатов.

Name

Description

nextPageToken

Type: string

Идентификатор следующей страницы результатов.

prevPageToken

Type: string

Идентификатор предыдущей страницы результатов.

OfferForRecommendationDTO

Информация о состоянии цены на товар.

Name

Description

cofinancePrice

Type: GetPriceDTO

Заданная цена для участия в софинансировании скидок.
Цена на товар.
Время последнего обновления.

competitiveness

Type: PriceCompetitivenessType

Привлекательность цены на товар.

Enum: OPTIMAL, AVERAGE, LOW

offerId

Type: string

Ваш SKU — идентификатор товара в вашей системе.

Разрешена любая последовательность длиной до 255 знаков.

Правила использования SKU:

  • У каждого товара SKU должен быть свой.

  • SKU товара нельзя менять — можно только удалить товар и добавить заново с новым SKU.

  • Уже заданный SKU нельзя освободить и использовать заново для другого товара. Каждый товар должен получать новый идентификатор, до того никогда не использовавшийся в вашем каталоге.

Что такое SKU и как его назначать

Min length: 1

Max length: 255

Pattern: ^[^\x00-\x08\x0A-\x1f\x7f]{1,255}$

price

Type: BasePriceDTO

Цена на товар в каталоге.

shows

Type: integer<int64>

Количество показов карточки товара за последние 7 дней.

OfferRecommendationInfoDTO

Рекомендации, касающиеся цены на товар.

Name

Description

competitivenessThresholds

Type: PriceCompetitivenessThresholdsDTO

Максимальные значения цены, при которых она является привлекательной или умеренной.

offerId

Type: string

Ваш SKU — идентификатор товара в вашей системе.

Разрешена любая последовательность длиной до 255 знаков.

Правила использования SKU:

  • У каждого товара SKU должен быть свой.

  • SKU товара нельзя менять — можно только удалить товар и добавить заново с новым SKU.

  • Уже заданный SKU нельзя освободить и использовать заново для другого товара. Каждый товар должен получать новый идентификатор, до того никогда не использовавшийся в вашем каталоге.

Что такое SKU и как его назначать

Min length: 1

Max length: 255

Pattern: ^[^\x00-\x08\x0A-\x1f\x7f]{1,255}$

recommendedCofinancePrice

Type: BasePriceDTO

Рекомендованное значение цены для участия в софинансировании скидки.

GetPriceDTO

Цена с указанием времени последнего обновления.

Name

Description

currencyId*

Type: CurrencyType

Валюта.

Если BasePriceDTO присутствует в запросе, указывайте RUR — российский рубль.

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

updatedAt*

Type: string<date-time>

Время последнего обновления.

value*

Type: number

Значение.

BasePriceDTO

Цена на товар.

Name

Description

currencyId*

Type: CurrencyType

Валюта.

Если BasePriceDTO присутствует в запросе, указывайте RUR — российский рубль.

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

value*

Type: number

Значение.

PriceCompetitivenessThresholdsDTO

Максимальные значения цены, при которых она является привлекательной или умеренной.

Name

Description

averagePrice

Type: BasePriceDTO

Максимальная умеренная цена.

optimalPrice

Type: BasePriceDTO

Максимальная привлекательная цена.

CurrencyType

Коды валют. Возможные значения:

  • BYR — белорусский рубль.
  • KZT — казахстанский тенге.
  • RUR — российский рубль.
  • UAH — украинская гривна.

Type

Description

CurrencyType

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

400 Bad Request

Запрос содержит неправильные данные.

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.

status

Type: ApiResponseStatusType

Тип ответа.

Enum: OK, ERROR

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: OK, ERROR

403 Forbidden

Данные для авторизации неверны или доступ к ресурсу запрещен.

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.

status

Type: ApiResponseStatusType

Тип ответа.

Enum: OK, ERROR

404 Not Found

Запрашиваемый ресурс не найден.

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.

status

Type: ApiResponseStatusType

Тип ответа.

Enum: OK, ERROR

420 Method Failure

Превышено ограничение на доступ к ресурсу.

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.

status

Type: ApiResponseStatusType

Тип ответа.

Enum: OK, ERROR

500 Internal Server Error

Внутренняя ошибка сервера.

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.

status

Type: ApiResponseStatusType

Тип ответа.

Enum: OK, ERROR