Включение буста продаж и установка ставок

Метод доступен для всех моделей.

Пока недоступен для продавцов Market Yandex Go.

Если вы используете API-Key-токен, для вызова метода необходим один из доступов в списке

Запускает буст продаж — создает и включает кампанию, добавляет в нее товары и назначает на них ставки.

Как в кабинете выглядит кампания, созданная через API

При первом использовании запроса Маркет: создаст единую на все магазины бизнес-аккаунта кампанию, добавит в нее товары с указанными ставками, включит для них ценовую стратегию и запустит продвижение. Повторное использование запроса позволит обновить ставки на товары в этой кампании или добавить новые. Подробнее о ценовой стратегии читайте в Справке Маркета для продавцов.

Если товара с указанным SKU нет, он будет проигнорирован. Если в будущем в каталоге появится товар с таким SKU, он автоматически будет добавлен в кампанию с указанной ставкой.

Запрос всегда работает с одной и той же созданной через API кампанией. Если в кабинете удалить ее, при следующем выполнении запроса Маркет создаст новую. Другими кампаниями управлять через API не получится. У созданной через API кампании всегда наибольший приоритет над остальными — изменить его нельзя.

Выполнение запроса включает кампанию и ценовую стратегию, если они были отключены.

Внести другие изменения в созданную через API кампанию можно в кабинете:

  • выключить или включить кампанию;
  • изменить ее название;
  • выключить или включить ценовую стратегию.

Чтобы остановить продвижение отдельных товаров и удалить их из кампании, передайте для них нулевую ставку в параметре bid.

Подробнее о том, как работает буст продаж, читайте в Справке Маркета для продавцов.

Узнать расходы на буст продаж можно с помощью запроса POST v2/campaigns/{campaignId}/stats/orders. Сумма содержится в поле bidFee.

Данные обновляются не мгновенно

Это занимает до нескольких минут.

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

Request

PUT

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

Path parameters

Name

Description

businessId

Type: integer

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

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

Min value: 1

Body

application/json
{
  "bids": [
    {
      "sku": "example",
      "bid": 570
    }
  ]
}

Name

Description

bids

Type: SkuBidItemDTO[]

Список товаров и ставки для продвижения, которые на них нужно установить.

Min items: 1

Max items: 1500

Example
[
  {
    "sku": "example",
    "bid": 570
  }
]

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

Bid

Значение ставки.

Type: integer

Min value: 0

Max value: 9999

SkuBidItemDTO

Список товаров и ставок на них.

Name

Description

bid

Type: Bid

Значение ставки для товара из параметра sku, от 50 до 9999.

Указывается в процентах от стоимости товара и умножается на 100. Например, ставка 5% обозначается как 500.

Значение ставки.

Min value: 0

Max value: 9999

Example: 570

sku

Type: ShopSku

SKU товара, которому соответствует ставка из параметра bid.

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

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

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

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

SKU товара можно изменить в кабинете продавца на Маркете. О том, как это сделать, читайте в Справке Маркета для продавцов.

Важно

Пробельные символы в начале и конце значения автоматически удаляются. Например, " SKU123 " и "SKU123" будут обработаны как одинаковые значения.

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

Min length: 1

Max length: 255

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

Example: example

Example
{
  "sku": "example",
  "bid": 570
}

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

Тип ответа. Возможные значения:

  • OK — ошибок нет.
  • ERROR — при обработке запроса произошла ошибка.

Enum: OK, ERROR

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: example

message

Type: string

Описание ошибки.

Example: 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: 1

    Example
    [
      {
        "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.