Yandex.Market's recommendations regarding prices

The method is available for all models.

Not yet available for Market Yandex Go sellers.

If you are using an API Key token, one of the accesses in the list is required to call the method
  • pricing — Manage prices
  • pricing:read-only — View prices
  • all-methods — Full account management
  • all-methods:read-only — View all data

The method returns several types of recommendations.

  1. The threshold for an attractive price.
  2. Evaluation of the attractiveness of prices in the showcase.

The recommendations show you what prices you need to set in order to attract a buyer.

Filters can be used in the request. The results are returned page by page.

⚙️ Limit: 100 requests per minute

Request

POST

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

Path parameters

Name

Description

businessId

Type: integer

Cabinet ID. To find out, use the request GET v2/campaigns.

ℹ️ What is a cabinet and a store on the Market?

Min value: 1

Query parameters

Name

Description

limit

Type: integer

The number of values per page.

Min value: 1

page_token

Type: string

ID of the results page.

If the parameter is omitted, the first page is returned.

We recommend transmitting the value of the output parameter nextPageToken, received during the last request.

If set page_token and the request has parameters page and pageSize they are ignored.

Example: eyBuZXh0SWQ6IDIzNDIgfQ==

Body

application/json
{
  "offerIds": [
    "example"
  ],
  "competitivenessFilter": "OPTIMAL"
}

Name

Description

competitivenessFilter

Type: string

The attractiveness of the price:

  • OPTIMAL — attractive.
  • AVERAGE — moderate.
  • LOW — Unattractive.

Enum: OPTIMAL, AVERAGE, LOW

offerIds

Type: string[] | null

The IDs of the products that information is needed about. ⚠️ Do not use this field at the same time as the other filters. If you want to use filters, leave the field empty.

Min items: 1

Unique items: true

Example
[
  "example"
]

Responses

200 OK

A list of products with recommendations.

Body

application/json
{
  "status": "OK",
  "result": {
    "paging": {
      "nextPageToken": "example",
      "prevPageToken": "example"
    },
    "offerRecommendations": [
      {
        "offer": {},
        "recommendation": {}
      }
    ]
  }
}

Type: object

All of 2 types
  • Type: object

    status

    Type: string

    The type of response. Possible values:

    • OK — There are no errors.
    • ERROR — an error occurred while processing the request.

    Enum: OK, ERROR

    The standard wrapper for server responses.

    Example
    {
      "status": "OK"
    }
    
  • Type: object

    result

    Type: object

    offerRecommendations

    Type: object[]

    offer

    Type: object

    competitiveness

    Type: string

    The attractiveness of the price:

    • OPTIMAL — attractive.
    • AVERAGE — moderate.
    • LOW — Unattractive.

    Enum: OPTIMAL, AVERAGE, LOW

    offerId

    Type: string

    Your SKU — the product ID in your system.

    Usage rules SKU:

    • For each product SKU there must be one.

    • Already set SKU it cannot be released and reused for another product. Each product should receive a new identifier that has never been used in your catalog before.

    SKU The product can be changed in the seller's account on the Market. Read about how to do this. in the Help of the Market for sellers.

    Warning

    Spaces at the beginning and end of the value are automatically deleted. For example, " SKU123 " and "SKU123" they will be treated as identical values.

    What is SKU and how to assign it

    Min length: 1

    Max length: 255

    Pattern: ^(?=.*\S.*)[^\x00-\x08\x0A-\x1f\x7f]{1,255}$

    Example: example

    price

    Type: object

    currencyId

    Type: string

    Currency codes:

    • RUR — the Russian ruble.
    • UAH — the Ukrainian hryvnia.
    • BYR — the Belarusian ruble.
    • KZT — Kazakhstani tenge.
    • UZS — Uzbek sum.

    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

    The price of the product.

    Min value: 0

    Exclusive min: true

    The price of the product.

    Example
    {
      "value": 0,
      "currencyId": "RUR"
    }
    

    shows

    Type: integer

    The number of product card impressions in the last 7 days.

    Information about the price status of the product.

    Example
    {
      "offerId": "example",
      "price": {
        "value": 0,
        "currencyId": "RUR"
      },
      "competitiveness": "OPTIMAL",
      "shows": 0
    }
    

    recommendation

    Type: object

    competitivenessThresholds

    Type: object

    averagePrice

    Type: object

    currencyId

    Type: string

    Currency codes:

    • RUR — the Russian ruble.
    • UAH — the Ukrainian hryvnia.
    • BYR — the Belarusian ruble.
    • KZT — Kazakhstani tenge.
    • UZS — Uzbek sum.

    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

    The price of the product.

    Min value: 0

    Exclusive min: true

    The price of the product.

    Example
    {
      "value": 0,
      "currencyId": "RUR"
    }
    

    optimalPrice

    Type: object

    currencyId

    Type: string

    Currency codes:

    • RUR — the Russian ruble.
    • UAH — the Ukrainian hryvnia.
    • BYR — the Belarusian ruble.
    • KZT — Kazakhstani tenge.
    • UZS — Uzbek sum.

    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

    The price of the product.

    Min value: 0

    Exclusive min: true

    The price of the product.

    Example
    {
      "value": 0,
      "currencyId": "RUR"
    }
    

    The maximum price values at which it is attractive or moderate.

    Example
    {
      "optimalPrice": {
        "value": 0,
        "currencyId": "RUR"
      },
      "averagePrice": {
        "value": 0,
        "currencyId": "RUR"
      }
    }
    

    offerId

    Type: string

    Your SKU — the product ID in your system.

    Usage rules SKU:

    • For each product SKU there must be one.

    • Already set SKU it cannot be released and reused for another product. Each product should receive a new identifier that has never been used in your catalog before.

    SKU The product can be changed in the seller's account on the Market. Read about how to do this. in the Help of the Market for sellers.

    Warning

    Spaces at the beginning and end of the value are automatically deleted. For example, " SKU123 " and "SKU123" they will be treated as identical values.

    What is SKU and how to assign it

    Min length: 1

    Max length: 255

    Pattern: ^(?=.*\S.*)[^\x00-\x08\x0A-\x1f\x7f]{1,255}$

    Example: example

    Recommendations regarding the price of the product.

    Example
    {
      "offerId": "example",
      "competitivenessThresholds": {
        "optimalPrice": {
          "value": 0,
          "currencyId": "RUR"
        },
        "averagePrice": {
          "value": 0,
          "currencyId": "RUR"
        }
      }
    }
    

    The product list page.

    Example
    [
      {
        "offer": {
          "offerId": "example",
          "price": {
            "value": 0,
            "currencyId": "RUR"
          },
          "competitiveness": "OPTIMAL",
          "shows": 0
        },
        "recommendation": {
          "offerId": "example",
          "competitivenessThresholds": {
            "optimalPrice": {
              "value": 0,
              "currencyId": "RUR"
            },
            "averagePrice": {
              "value": 0,
              "currencyId": "RUR"
            }
          }
        }
      }
    ]
    

    paging

    Type: object

    All of 2 types
    • Type: object

      nextPageToken

      Type: string

      ID of the next results page.

      Example: example

      The ID of the next page.

      Example
      {
        "nextPageToken": "example"
      }
      
    • Type: object

      prevPageToken

      Type: string

      ID of the previous results page.

      Example: example

      Example
      {
        "prevPageToken": "example"
      }
      

    Information about the result pages.

    Example
    {
      "nextPageToken": "example",
      "prevPageToken": "example"
    }
    

    A list of products with recommendations.

    Example
    {
      "paging": {
        "nextPageToken": "example",
        "prevPageToken": "example"
      },
      "offerRecommendations": [
        {
          "offer": {
            "offerId": "example",
            "price": {
              "value": 0,
              "currencyId": "RUR"
            },
            "competitiveness": "OPTIMAL",
            "shows": 0
          },
          "recommendation": {
            "offerId": "example",
            "competitivenessThresholds": {
              "optimalPrice": {},
              "averagePrice": {}
            }
          }
        }
      ]
    }
    
    Example
    {
      "result": {
        "paging": {
          "nextPageToken": "example",
          "prevPageToken": "example"
        },
        "offerRecommendations": [
          {
            "offer": {
              "offerId": "example",
              "price": {},
              "competitiveness": "OPTIMAL",
              "shows": 0
            },
            "recommendation": {
              "offerId": "example",
              "competitivenessThresholds": {}
            }
          }
        ]
      }
    }
    

400 Bad Request

The request contains incorrect data. More information about the error

Body

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

Type: object

All of 1 type
  • Type: object

    All of 2 types
    • Type: object

      status

      Type: string

      The type of response. Possible values:

      • OK — There are no errors.
      • ERROR — an error occurred while processing the request.

      Enum: OK, ERROR

      The standard wrapper for server responses.

      Example
      {
        "status": "OK"
      }
      
    • Type: object

      errors

      Type: object[]

      code

      Type: string

      The error code.

      Example: example

      message

      Type: string

      Description of the error.

      Example: example

      A list of errors.

      Min items: 1

      Example
      [
        {
          "code": "example",
          "message": "example"
        }
      ]
      
      Example
      {
        "errors": [
          {
            "code": "example",
            "message": "example"
          }
        ]
      }
      

    A standard wrapper for server errors.

    Example
    {
      "status": "OK",
      "errors": [
        {
          "code": "example",
          "message": "example"
        }
      ]
    }
    

401 Unauthorized

The authorization data is not specified in the request. More information about the error

Body

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

Type: object

All of 1 type
  • Type: object

    All of 2 types
    • Type: object

      status

      Type: string

      The type of response. Possible values:

      • OK — There are no errors.
      • ERROR — an error occurred while processing the request.

      Enum: OK, ERROR

      The standard wrapper for server responses.

      Example
      {
        "status": "OK"
      }
      
    • Type: object

      errors

      Type: object[]

      code

      Type: string

      The error code.

      Example: example

      message

      Type: string

      Description of the error.

      Example: example

      A list of errors.

      Min items: 1

      Example
      [
        {
          "code": "example",
          "message": "example"
        }
      ]
      
      Example
      {
        "errors": [
          {
            "code": "example",
            "message": "example"
          }
        ]
      }
      

    A standard wrapper for server errors.

    Example
    {
      "status": "OK",
      "errors": [
        {
          "code": "example",
          "message": "example"
        }
      ]
    }
    

403 Forbidden

The authorization data is incorrect or access to the resource is prohibited. More information about the error

Body

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

Type: object

All of 1 type
  • Type: object

    All of 2 types
    • Type: object

      status

      Type: string

      The type of response. Possible values:

      • OK — There are no errors.
      • ERROR — an error occurred while processing the request.

      Enum: OK, ERROR

      The standard wrapper for server responses.

      Example
      {
        "status": "OK"
      }
      
    • Type: object

      errors

      Type: object[]

      code

      Type: string

      The error code.

      Example: example

      message

      Type: string

      Description of the error.

      Example: example

      A list of errors.

      Min items: 1

      Example
      [
        {
          "code": "example",
          "message": "example"
        }
      ]
      
      Example
      {
        "errors": [
          {
            "code": "example",
            "message": "example"
          }
        ]
      }
      

    A standard wrapper for server errors.

    Example
    {
      "status": "OK",
      "errors": [
        {
          "code": "example",
          "message": "example"
        }
      ]
    }
    

404 Not Found

The requested resource was not found. More information about the error

Body

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

Type: object

All of 1 type
  • Type: object

    All of 2 types
    • Type: object

      status

      Type: string

      The type of response. Possible values:

      • OK — There are no errors.
      • ERROR — an error occurred while processing the request.

      Enum: OK, ERROR

      The standard wrapper for server responses.

      Example
      {
        "status": "OK"
      }
      
    • Type: object

      errors

      Type: object[]

      code

      Type: string

      The error code.

      Example: example

      message

      Type: string

      Description of the error.

      Example: example

      A list of errors.

      Min items: 1

      Example
      [
        {
          "code": "example",
          "message": "example"
        }
      ]
      
      Example
      {
        "errors": [
          {
            "code": "example",
            "message": "example"
          }
        ]
      }
      

    A standard wrapper for server errors.

    Example
    {
      "status": "OK",
      "errors": [
        {
          "code": "example",
          "message": "example"
        }
      ]
    }
    

420 Method Failure

The resource access limit has been exceeded. More information about the error

Body

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

Type: object

All of 1 type
  • Type: object

    All of 2 types
    • Type: object

      status

      Type: string

      The type of response. Possible values:

      • OK — There are no errors.
      • ERROR — an error occurred while processing the request.

      Enum: OK, ERROR

      The standard wrapper for server responses.

      Example
      {
        "status": "OK"
      }
      
    • Type: object

      errors

      Type: object[]

      code

      Type: string

      The error code.

      Example: example

      message

      Type: string

      Description of the error.

      Example: example

      A list of errors.

      Min items: 1

      Example
      [
        {
          "code": "example",
          "message": "example"
        }
      ]
      
      Example
      {
        "errors": [
          {
            "code": "example",
            "message": "example"
          }
        ]
      }
      

    A standard wrapper for server errors.

    Example
    {
      "status": "OK",
      "errors": [
        {
          "code": "example",
          "message": "example"
        }
      ]
    }
    

500 Internal Server Error

Internal error of Yandex. Market. More information about the error

Body

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

Type: object

All of 1 type
  • Type: object

    All of 2 types
    • Type: object

      status

      Type: string

      The type of response. Possible values:

      • OK — There are no errors.
      • ERROR — an error occurred while processing the request.

      Enum: OK, ERROR

      The standard wrapper for server responses.

      Example
      {
        "status": "OK"
      }
      
    • Type: object

      errors

      Type: object[]

      code

      Type: string

      The error code.

      Example: example

      message

      Type: string

      Description of the error.

      Example: example

      A list of errors.

      Min items: 1

      Example
      [
        {
          "code": "example",
          "message": "example"
        }
      ]
      
      Example
      {
        "errors": [
          {
            "code": "example",
            "message": "example"
          }
        ]
      }
      

    A standard wrapper for server errors.

    Example
    {
      "status": "OK",
      "errors": [
        {
          "code": "example",
          "message": "example"
        }
      ]
    }
    

No longer supported, please use an alternative and newer version.

If you have such a price set or lower, it is considered attractive.