---
title: "Сохранение поартикульных настроек"
method: PATCH
path: "/rrc/sku-settings"
tags: ["Репрайсер РРЦ"]
---

# Сохранение поартикульных настроек

`PATCH /rrc/sku-settings`

Метод обновляет (или создаёт новые строки в таблице control_price_ozon_v2 (если артикул ни разу не настраивался)) поартикульные настройки.

## Query parameters

- `block` string
- `history_tool` string

## Headers

- `x-user-id` integer, required — ID пользователя
- `x-connect-id` integer, required — ID магазина

## Request body

- SkuSettingsRequest[]
  - `product_id` integer, nullable — Уникальный идентификатор товара в системе продавца (в Seller API). К одному product_id кроме основного товара могут быть привязаны кванты.
  - `offer_id` string, nullable — Идентификатор товара в системе продавца — артикул.
  - `sku_sds` integer, nullable — Уникальный идентификатор товара в системе Ozon — SKU. По sku мы можем найти товар в поиске OZON.
  - `tools_status` ToolsStatusInput, required
    - `rrc_status` 0 | 1, required — Статус инструмента "Репрайсер Ozon 2.0". - `0` - выключен. - `1` - включен.
    - `time_status` 0 | 1 | 2 — Поартикульная настройка расписания работы репрайсера. - `0` - Выключить расписание работы репрайсера по артикулу (репрайсер будет работать постоянно). - `1` - Учитывать поартикульное расписание (объект working_schedule в control_rrc_settings). **Важно:** данное расписание будет применяться только если глобальная настройка `rrc_working_status = 2`.
    - `action_status` 0 | 1 | 3, required — Режим работы с акциями для товара. Важно: данный режим будет применяться только если глобальная настройка `type_action_exit = 2`. - `0` — Не выходить из акций. - `1` — Выходить из всех акций Ozon. - `3` — Автоматически входить в подходящие акции и выходить из них, если это требуется для изменения цены
    - `low_stock_type` 0 | 1 — **Статус инструмента "Цена от остатков".** - `0` - Инструмент выключен. Настройки границ по остаткам сохраняются, но не применяются. - `1` - Инструмент включен. При достижении границ по остаткам изменяется цена на удержание.
    - `low_stock_control_type` 'ALL' | 'FBO' | 'FBS' | 'FBP'
    - `plan_fact_status` 0 | 1 — **Статус стратегии "План Факт".** - `0` - Стратегия выключена - `1` - Стратегия включена
    - `competitors_status` 0 | 1, nullable — Текущий статус по инструменту Конкуренты. - `0` - Выключен (допускается включение инструмента Ozon 2.0). - `1` - Включен (включение артикула на контроль недопустимо, так как артикул контролируется в репрайсере по конкурентам).
  - `control_rrc_settings` ControlRRCSettingsInput
    - `control_price` integer, required — Цена клиента на удержание (целевая цена, которую должен установить репрайсер).
    - `low_stock_settings` LowStockSettings[] — Список настроек на изменение цены при достижении границы по остаткам. Максимум - 5 ступеней. Отсортированы по убыванию остатков, то есть от большего к меньшему.
      - `stock_quantity` integer, required — Пороговое значение остатков для ступени при котором цена будет изменена
      - `target_percent` integer — Изменение цены в процентах относительно цены на удержание (если указано изменение в процентах, то изменение цены на удержание для той же ступени указать нельзя). `null` принимается как `0`.
      - `final_price` integer — Новая цена на удержание для клиента (если указано изменение цены на удержание, то изменение цены в процентах для той же ступени указать нельзя). `null` принимается как `0`.
    - `min_price` integer, required — Минимальная цена селлера на артикул, указанная в настройках репрайсера, допустимая для отправки в Ozon.
    - `max_price` integer, required — Максимальная цена селлера на артикул, указанная в настройках репрайсера, допустимая для отправки в Ozon.
    - `ignore_max_price` 0 | 1 | 2 — **Стратегия контроля максимальной цены селлера.**. - `0` - Цена селлера не выйдет за границу макс. цены, даже если из-за этого цена на удержание не будет установлена. **Исключение: стратегии Цена по времени и Цена от остатков (в них ограничение макс. цены снимается)** - `1` - Репрайсер будет точно соблюдать РРЦ, даже если для этого придётся превысить макс. цену. - `2` - Цена селлера не выйдет за границу макс. цены, даже если из-за этого цена на удержание не будет установлена. **Ограничение действует в том числе и во время работы стратегий Цена по времени.**
    - `type_control_price` 0 | 1 | 3, required — **Поартикульная настройка типа конечной цены, которую контролирует репрайсер.** Определяет, какую цену товара на Ozon система считает крнечной: - `0` - озон карта (зеленая) по указанному артикулу. - `1` - маркетинговая цена (серая) по указанному артикулу. - `3` - цена со скидкой продавца (из кабинета Ozon).
    - `change_price_if_green_absent` 0 | 1, required — **Изменять ли цену, если зеленая цена на сайте отсутствует?** - `0` - нет: если зелёной цены на сайте нет, то цену менять не будем. - `1` - да: будет меняться черная цена на сайте до появления скидки Озон карты.
    - `region` integer, required — **Город (регион).** Текущая настройка по которой будет выполняться сбор цен. *Список активных городов:* - `-77` - Неавторизованный Москва - `-66` - Неавторизованный Екатеринбург - `-48` - Неавторизованный Липецк - `-36` - Неавторизованный Воронеж - `-31` - Неавторизованный Белгород - `-21` - Неавторизованный Чебоксары - `21` - Чебоксары - `23` - Краснодар - `25` - Владивосток - `26` - Ставрополь - `54` - Новосибирск - `62` - Рязань - `63` - Самара - `66` - Екатеринбург - `77` - Москва - `78` - Санкт-Петербург - `771` - Одинцово
    - `working_schedule` WorkingSchedule
      - `MON` integer[], required — Расписание рабочих часов по Понедельникам. Время МСК (+3 UTC).
      - `TUE` integer[], required — Расписание рабочих часов по Вторникам. Время МСК (+3 UTC).
      - `WED` integer[], required — Расписание рабочих часов по Средам. Время МСК (+3 UTC).
      - `THU` integer[], required — Расписание рабочих часов по Четвергам. Время МСК (+3 UTC).
      - `FRI` integer[], required — Расписание рабочих часов по Пятницам. Время МСК (+3 UTC).
      - `SAT` integer[], required — Расписание рабочих часов по Субботам. Время МСК (+3 UTC).
      - `SUN` integer[], required — Расписание рабочих часов по Воскресеньям. Время МСК (+3 UTC).
  - `tags` integer[], nullable — Список ID тегов, в которые нужно добавить данный артикул (или удалить из каких-то групп).
  - `mode` string, nullable — **Стратегии работы репрайсера:** - `PRICE` - Стандартный режим контроля цены на удержания. - `TIME` - Включена стратегия контроля цены по времени. - `NIGHT` - Включена стратегия ночного повышения цены.
  - `time_intervals` TimeInterval[] — Список временных интервалов, которые настроены по этому артикулу. Если список пустой - интервалы не настроены.
    - `id` integer, nullable — ID интервала. Указывается только для уже существующих интервалов.
    - `start_time` integer, required — Время начала интервала (час от 0 до 23. Например, при 23 стратегия начинается с 23:00).
    - `end_time` integer, required — Время окончания интервала (час от 0 до 23. Например, при 23 стратегия заканчивается в 23:59).
    - `price` number, nullable, required — Конечная цена для клиента которую надо удерживать во время указанного интервала времени (если указано изменение цены на удержание, то изменение цены в процентах для того же интервала указать нельзя).
    - `price_change` number, nullable, required — Изменение цены в процентах относительно цены на удержание (если указано изменение в процентах, то изменение цены на удержание для той же ступени указать нельзя).
    - `weekday` integer, required — День недели [1 - пн; 7 - вс]
  - `plan_fact` PlanFact
    - `plan_fact_target` integer, nullable — Цель по заказам в день. Возвращается в ситуациях, когда стратегия уже настраивалась.
    - `type_change_price` 'PERCENT' | 'RUB' | 'FIX' — Тип изменения цены: - `PERCENT` - изменение текущей цены на удержание в процентах - `RUB` - изменение текущей цены на удержание в рублях - `FIX` - установка новой цены на удержание
    - `intervals` PlanFactIntervals[] — Настройки интервалов план факта (в примере понижаем control_price на 10%, пока заказы не достигнут 30)
      - `price` integer, required — Насколько изменять control_price в % (Если выбран type_change_price = PERCENT) Насколько изменять control_price в Руб. (Если выбран type_change_price = RUB) Какую цену на удержание установить (Если выбран type_change_price = FIX) Все значения (кроме type_change_price = FIX) принимаются отрицательные для понижения control_price. min обязательно < max и min != max
      - `min` integer, nullable — Минимальная граница интервала Если None, то нижней границы нет (будет работать также, если передать 0)
      - `max` integer, nullable — Максимальная граница интервала Если None, то верхей границы нет max обязательно > min и max != min
  - `night_control` integer — Процент повышения цены каждый час для ночной стратегии (`NIGHT`)

## Response `200`

Successful Response

- DefaultSuccessResponse
  - `msg` string, required — Дополнительные сообщение в в некоторых случаях
  - `error` false

## Other responses

- `400` — Bad Request
- `422` — Validation Error

---

[API](https://skmtc.dev/mpspace/apis/api.md) · [All operations](https://skmtc.dev/mpspace/apis/api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/mpspace/api/revisions/480b05bed427/schema)
