Изменение условий продажи товаров в магазине

Метод доступен для моделей: FBY, FBS, Экспресс и DBS.

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

Изменяет параметры размещения товаров в конкретном магазине: доступность товара, продажа квантами и применяемый НДС.

⚙️ Лимит: 10 000 товаров в минуту

Request

POST

https://api.partner.market.yandex.ru/v2/campaigns/{campaignId}/offers/update

Path parameters

Name

Description

campaignId

Type: integer

Идентификатор кампании (магазина) — технический идентификатор, который представляет ваш магазин в системе Яндекс Маркета при работе через API. Он однозначно связывается с вашим магазином, но предназначен только для автоматизированного взаимодействия.

Его можно узнать с помощью запроса GET v2/campaigns или найти в кабинете продавца на Маркете. Нажмите на иконку вашего аккаунта → Настройки и в меню слева выберите API и модули:

  • блок Идентификатор кампании;
  • вкладка Лог запросов → выпадающий список в блоке Показывать логи.

⚠️ Не путайте его с:

  • идентификатором магазина, который отображается в личном кабинете продавца;
  • рекламными кампаниями.

Min value: 1

Body

application/json
{
  "offers": [
    {
      "offerId": "example",
      "quantum": {
        "minQuantity": 1,
        "stepQuantity": 1
      },
      "available": true,
      "vat": 0
    }
  ]
}

Name

Description

offers

Type: UpdateCampaignOfferDTO[]

Параметры размещения товаров в заданном магазине.

Min items: 1

Max items: 500

Example
[
  {
    "offerId": "example",
    "quantum": {
      "minQuantity": 1,
      "stepQuantity": 1
    },
    "available": true,
    "vat": 0
  }
]

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

QuantumDTO

Deprecated

Настройка продажи квантами.

Чтобы сбросить установленные ранее значения, передайте пустой параметр quantum.

Пример
{
  "offers": [
    {
      "offerId": "08e35dc1-89a2-11e3-8055-0015e9b8c48d",
      "quantum": {}
    }
  ]
}

Name

Description

minQuantity

Type: integer

Минимальное количество единиц товара в заказе. Например, если указать 10, покупатель сможет добавить в корзину не меньше 10 единиц.

⚠️ Если количество товара на складе меньше заданного, ограничение не сработает и покупатель сможет его заказать.

Min value: 1

stepQuantity

Type: integer

На сколько единиц покупатель сможет увеличить количество товара в корзине.

Например, если задать 5, покупатель сможет добавить к заказу только 5, 10, 15, ... единиц товара.

⚠️ Если количество товара на складе не дотягивает до кванта, ограничение не сработает и покупатель сможет заказать количество, не кратное кванту.

Min value: 1

Max value: 100

Example
{
  "minQuantity": 1,
  "stepQuantity": 1
}

BaseCampaignOfferDTO

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

Name

Description

offerId

Type: ShopSku

Ваш 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

available

Type: boolean

Вместо него используйте методы скрытия товаров с витрины

Есть ли товар в продаже.

quantum

Type: QuantumDTO

Настройка продажи квантами. Что это значит?

Настройка продажи квантами.

Чтобы сбросить установленные ранее значения, передайте пустой параметр quantum.

Пример
{
  "offers": [
    {
      "offerId": "08e35dc1-89a2-11e3-8055-0015e9b8c48d",
      "quantum": {}
    }
  ]
}
Example
{
  "minQuantity": 1,
  "stepQuantity": 1
}
Example
{
  "offerId": "example",
  "quantum": {
    "minQuantity": 1,
    "stepQuantity": 1
  },
  "available": true
}

VatType

Идентификатор НДС, применяемый для товара:

  • 2 — НДС 10%. Например, используется при реализации отдельных продовольственных и медицинских товаров.
  • 5 — НДС 0%. Например, используется при продаже товаров, вывезенных в таможенной процедуре экспорта, или при оказании услуг по международной перевозке товаров.
  • 6 — НДС не облагается, используется только для отдельных видов услуг.
  • 7 — НДС 20%. Основной НДС с 2019 года до 1 января 2026 года.
  • 10 — НДС 5%. НДС для упрощенной системы налогообложения (УСН).
  • 11 — НДС 7%. НДС для упрощенной системы налогообложения (УСН).
  • 14 — НДС 22%. Основной НДС с 1 января 2026 года.

Если параметр не указан, используется НДС, установленный в кабинете.

Для продавцов Market Yandex Go недоступна передача и получение НДС.

Type: integer

UpdateCampaignOfferDTO

Параметры размещения товара в магазине.

Type: object

All of 2 types
  • Type: BaseCampaignOfferDTO

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

    Example
    {
      "offerId": "example",
      "quantum": {
        "minQuantity": 1,
        "stepQuantity": 1
      },
      "available": true
    }
    
  • Type: object

    vat

    Type: VatType

    Идентификатор НДС, применяемый для товара:

    • 2 — НДС 10%. Например, используется при реализации отдельных продовольственных и медицинских товаров.
    • 5 — НДС 0%. Например, используется при продаже товаров, вывезенных в таможенной процедуре экспорта, или при оказании услуг по международной перевозке товаров.
    • 6 — НДС не облагается, используется только для отдельных видов услуг.
    • 7 — НДС 20%. Основной НДС с 2019 года до 1 января 2026 года.
    • 10 — НДС 5%. НДС для упрощенной системы налогообложения (УСН).
    • 11 — НДС 7%. НДС для упрощенной системы налогообложения (УСН).
    • 14 — НДС 22%. Основной НДС с 1 января 2026 года.

    Если параметр не указан, используется НДС, установленный в кабинете.

    Для продавцов Market Yandex Go недоступна передача и получение НДС.

    Example: 0

    Example
    {
      "vat": 0
    }
    
Example
{
  "offerId": "example",
  "quantum": {
    "minQuantity": 1,
    "stepQuantity": 1
  },
  "available": true,
  "vat": 0
}

Responses

200 OK

Ответ 200 обозначает, что новые параметры получены Маркетом и скоро вступят в силу.

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"
        }
      ]
    }
    

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.