# Обновление акции с промокодами Обновляет акцию с промокодами. Endpoint: PUT /v3/project/{project_id}/admin/promocode/{external_id} Version: 2.0.0 Security: basicAuth ## Path parameters: - `project_id` (integer, required) ID проекта. Вы можете найти этот параметр в Личном кабинете рядом с названием проекта. Example: 44056 - `external_id` (integer, required) External ID акции. Уникальный идентификатор акции в рамках проекта. Example: "coupon_44056_1" ## Request fields (application/json): - `attribute_conditions` (array) Условия для проверки атрибутов пользователя. Определяют доступность акции на основе соответствия атрибутов пользователя всем указанным условиям. - `bonus` (array,null) - `bonus.quantity` (number) Количество товаров. - `bonus.sku` (string) Артикул товара. - `discount` (object,null) Example: {"percent":"10.10"} - `discount.percent` (string,null) Процент скидки. Цена корзины будет уменьшена с использованием значения, рассчитанного с использованием этого процента, а затем округлена до 2 знаков после запятой. Example: "10.00" - `discounted_items` (array,null) Список товаров, на которые действует скидка по промокоду. - `excluded_promotions` (array) Список акций, которые исключаются при применении этой акции. Example: [12, 789] Example: [12,789] - `item_price_conditions` (array,null) Массив объектов с условиями, задающими ценовой диапазон применения акции для отдельных товаров в корзине. Стоимость каждого товара в корзине пользователя сравнивается с заданным в условии ценовым диапазоном. [Бонусы](/ru/api/shop-builder/operation/create-promo-code/#!path=bonus&t=request) и [скидки](/ru/api/shop-builder/operation/create-promo-code/#!path=discount&t=request) применяются только к тем товарам в корзине, цена которых удовлетворяет условию. Если вы передаете этот массив, в массиве [discounted_items](/ru/api/shop-builder/operation/create-promo-code/#!path=discounted_items&t=request) передайте значение null. - `item_price_conditions.operator` (string, required) Оператор сравнения для задания ценового диапазона применения акции. Enum: "ge", "gt", "le", "lt", "eq", "ne" - `item_price_conditions.value` (string, required) Значение для определения ценового диапазона применения акции. - `name` (object, required) Название акции. Данный параметр должен содержать пары ключ/значение, где ключ — это локаль в формате "^[a-z]{2}-[A-Z]{2}$", значение — строка. Example: {"de-DE":"Gutscheintitel","en-US":"Coupon title"} - `price_conditions` (array,null) Массив объектов с условиями, задающими ценовой диапазон применения акции для отдельных товаров в корзине. Стоимость каждого товара в корзине пользователя сравнивается с заданным в условии ценовым диапазоном. [Бонусы](/ru/api/shop-builder/operation/create-promo-code/#!path=bonus&t=request) и [скидки](/ru/api/shop-builder/operation/create-promo-code/#!path=discount&t=request) применяются только к тем товарам в корзине, цена которых удовлетворяет условию. Если вы передаете этот массив, в массиве [discounted_items](/ru/api/shop-builder/operation/create-promo-code/#!path=discounted_items&t=request) передайте значение null. - `promotion_periods` (array) Периоды действия акции. Если указано больше одного периода, параметры date_from и date_until становятся обязательными. - `promotion_periods.date_from` (string, required) Дата начала действия указанной акции. Example: "2020-08-11T10:00:00+03:00" - `promotion_periods.date_until` (string,null) Дата окончания действия указанной акции. Если передано значение null, акция является бессрочной. Может быть null, только если указан один период действия. Example: "2020-08-11T20:00:00+03:00" - `redeem_code_limit` (integer,null) Количество погашений по коду. Example: 10 - `redeem_total_limit` (integer,null) Ограничивает общее количество купонов. Example: 10 - `redeem_user_limit` (integer,null) Ограничивает общее количество купонов, погашаемых одним пользователем. Example: 10 ## Response 401 fields (application/json): - `errorCode` (integer) Example: 1020 - `errorMessage` (string) Example: "[0401-1020]: Error in Authentication method occurred" - `statusCode` (integer) Example: 401 ## Response 404 fields (application/json): - `errorCode` (integer) Example: 4001 - `errorMessage` (string) Example: "[0401-9802]: Promocode not found" - `statusCode` (integer) Example: 404 - `transactionId` (string) Example: "x-x-x-x-transactionId-mock-x-x-x" ## Response 422 fields (application/json): - `errorCode` (integer) Example: 1102 - `errorMessage` (string) Example: "[0401-1102]: Unprocessable Entity. The property `external_id` is required" - `statusCode` (integer) Example: 422 ## Response 204 fields