Обновление кампании (campaigns/update)
Метод обновляет существующую кампанию. Обязательный только параметр
partnerCampaignId
. Остальные параметры необязательные: можно передавать только те параметры, значения которых нужно поменять.
  1. После изменения данных кампания отправляется на проверку: переходит в статус
    moderation
    .
  2. После проверки статус кампании меняется (об этом сообщает модератор):
    • verified
       — всё в порядке, кампанию можно запустить (campaigns/start) или она запустится по расписанию (если указан
      campaignStart
      ).
    • declined
       — необходимо внести правки: вызвать метод campaigns/update с новыми данными и тем же
      partnerCampaignId
      .
  3. Кампания запускается: статус меняется на 
    started
    .
 
Запрос
Адрес для отправки запроса
POST https://yoomoney.ru/api/offerwall/v1/campaigns/update
Параметры
ПараметрТипОписание
partnerCampaignIdint
Идентификатор кампании. Уникальный для системы агрегатора или магазина.
Обязательный параметр
categoryIdint
Идентификатор категории ваших товаров для этой кампании по справочнику в сервисе ЮMoney. Справочник можно получить в ответ на вызов categories/get.
Обязательный параметр
campaignTypeenum
Тип кампании (способ получения бонуса). Возможные значения:
  • codeOnline
     — пользователь получает код для онлайн-заказа (можно перенаправлять его на нужный сайт с помощью
    acceptUrl
    );
  • codeOffline
     — пользователь получает код, который нужно предъявить на кассе в обычном магазине;
  • promo
     — пользователь должен перейти в интернет-магазин по специальной меченой ссылке (задается в параметре
    acceptUrl
    ).
Обязательный параметр
campaignStartdatetime
Дата старта кампании. Если не задан:
  • кампания агрегатора запускается в момент загрузки,
  • кампания магазина ждет проверки.
Необязательный параметр
campaignEnddatetime
Дата, с которой кампания не показывается пользователям. Если не задан, можно остановить кампанию вызовом метода campaigns/stop.
Необязательный параметр
offerDurationint
Срок в часах, в течение которого пользователь может использовать сохраненный оффер. По умолчанию 2 недели (366 часов). Задать другой срок можно в параметре
offerEnd
.
После того, как кампания заканчивается (если срок задан в 
campaignEnd
), выданные офферы будут действовать еще две недели — или в течение срока, заданного в 
offerDuration
. Магазину необходимо это учитывать и выдавать пользователям бонусы.
Необязательный параметр
pinTypeenum
Тип пин-кода. Возможные значения:
  • one-off
     — одноразовый, то есть каждому пользователю выдается уникальный код. Набор пин-кодов загружается в запросе campaigns/add-pins;
  • reusable
     — многоразовый, все покупатели получают один и тот же код, например
    YooMoney
    . Такой код обязательно передается в параметре
    couponCode
    .
Обязательный, если
campaignType=codeOnline
или
campaignType=codeOffline
pinDisplayTypestring
Способы отображения пин-кода. Возможные значения:
  • text
     — строка, уникальная для магазина (255 любых цифр, букв и символов, подходит для любых пин-кодов);
  • ean_13
     — пин-код выводится в виде штрих-кода (13 цифр).
Обязательный, если
campaignType=codeOnline
или
campaignType=codeOffline
couponCodestring
Значение пин-кода. С его помощью пользователь сможет получить скидку в магазине.
Передается для кампаний с пин-кодами. Передается для товаров с многоразовыми пин-кодами. Обязательный, если:
  • campaignType=codeOnline
    или
    campaignType=codeOffline
    ;
  • pinType=reusable
    (многоразовый).
acceptUrlstring
Меченая ссылка, по которой пользователь может получить бонус (используется вместо пин-кода или вместе с ним).
По умолчанию к ссылке сервис ЮMoney добавляют идентификатор клика (
clickId
), который вам необходимо анализировать. Вы можете добавлять в ссылку параметры по шаблону. Как формировать ссылку
Обязательный, если
campaignType=promo
или
campaignType=codeOnline
merchantDomainstring
Адрес сайта магазина без
http
,
www
и 
/
.
Пример:
example.com
Обязательный параметр
merchantLogoSvgvarchar (300)
Ссылка на логотип магазина:
  • формат SVG;
  • круглый логотип;
  • размеры: 80 X 80 px;
  • задан атрибут
    viewBox
    ;
  • максимум 100 КБ.
Используется для показа на веб-страницах.
Обязательный параметр
merchantLogoPngvarchar (300)
Ссылка на логотип магазина на прозрачном фоне:
  • формат PNG;
  • круглый логотип;
  • 240 X 240 px;
  • максимум 100 КБ.
Используется для показа на веб-страницах.
Обязательный параметр
merchantNamevarchar (300)
Название магазина.
Обязательный параметр
backgroundColorvarchar (30)
Цвет фона в формате #HEX (не белый и не светлый).
Обязательный параметр
backgroundImagestring
Фоновое изображение:
  • формат JPG или PNG;
  • размеры: 500 X 500 px;
  • максимум 300 КБ.
Если поле не заполнено, на фоне будет изображение, подходящее к категории этого оффера.
Необязательный параметр
fontColorvarchar (30)
Цвет шрифта в формате #HEX (контрастный фону).
Обязательный параметр
descriptionvarchar (90)
Описание акции.
Пример:
Скидка на товары для детей в магазине «Солнышко»
Обязательный параметр
conditionsvarchar (512)
Условия получения бонуса.
Пример:
Промокод действует 10 дней при заказе от 4000 рублей на сайте example.com. Его можно использовать один раз.
Обязательный параметр
discountTypevarchar (30)
Тип скидки или бонуса. Возможные значения:
  • text
     — бонус, подарок или специальное предложение (текст передается в 
    discount_amount
    );
  • fix
     — фиксированная сумма (числовое значение передается в 
    discount_amount
    );
  • percent
     — скидка в процентах (числовое значение передается в 
    discount_amount
    ).
Обязательный параметр
discountAmountvarchar (30)
Размер скидки или описание бонуса.
Обязательный параметр
discountCurrencyCurrencyCode
Код валюты скидки. Значение по умолчанию:
643
(рубль РФ).
Для скидки на определенную сумму (
discountType=fix
) можно задать другое значение:
840
(доллары США).
Необязательный параметр
campaignFeevarchar (30)
Размер вознаграждения ЮMoney по данной кампании. Сумма в рублях или долларах.
Обязательно передается что-то одно: либо размер вознаграждения (
campaignFee
), либо его минимум и максимум (
campaignFeeMin
и 
campaignFeeMax
).
campaignFeeMinvarchar (30)
Минимальный размер вознаграждения ЮMoney.
Необязательный параметр
campaignFeeMaxvarchar (30)
Максимальный размер вознаграждения ЮMoney.
Необязательный параметр
feeTypevarchar (30)
Тип вознаграждения ЮMoney по данной кампании. Возможные значения:
  • percent
     — процент от стоимости оплаченного заказа;
  • fix
     — фиксированное.
Обязательный параметр
feeCurrencyCurrencyCode
Код валюты вознаграждения ЮMoney.
  • 643
     — рубль РФ (задается по умолчанию, если значение не передано);
  • 840
     — доллар США.
Необязательный параметр
supportedPlatformsvarchar (300)
Позволяет показывать офферы только на определенных платформах. Возможные значения:
  • mobile
     — показывает офферы только на планшетах и смартфонах;
  • desktop
     — показывает офферы только на десктопных компьютерах.
Необязательный параметр
cashbackTypeenum
Для компаний с кэшбэком: тип кэшбэка, который приходит в кошелек пользователя. Возможные значения:
  • bonus
     — пользователь получает кэшбэк бонусами;
  • money
     — пользователь получает кэшбэк деньгами.
Необязательный параметр
cashbackConfirmTimelong
Для компаний с кэшбэком: срок, в течение которого необходимо подтвердить использование оффера с помощью метода campaigns/redeem и начислить кэшбэк. Количество дней, целое число.
Необязательный параметр
Размер скидки описывается тремя переменными:
discountType
,
discountAmount
и 
discountCurrency
. Например:
  • скидка 10%:
    discount_type=percent, discount_amount=10
    ;
  • скидка 500 рублей:
    discount_type=fix, discount_amount=500; currency=643
    ;
  • подарок за покупку:
    discount_type=text, discount_amount="Подарок"
    .
Пример тела запроса
JSON
{
    "backgroundColor": "#C85040",
    "discountAmount": "500",
    "fontColor": "#FAF4E9",
    "partnerCampaignId": 228
 }
Пример запроса
cURL
curl -X POST \
 --header 'Content-Type: application/json' \
 --header 'Accept: application/json' \
 --header 'Authorization: Bearer <авторизационный токен>' -d '{
    "backgroundColor": "#C85040",
    "discountAmount": "500",
    "fontColor": "#FAF4E9",
    "partnerCampaignId": 228,
  }' 'https://yoomoney.ru/api/offerwall/v1/campaigns/update'
 
Ответ
Параметры
ПараметрТипОписание
ymCampaignIdintУникальный идентификатор кампании в сервисе ЮMoney.
campaignStatusenum
Статус кампании. Возможные значения:
  • moderation
     — на проверке;
  • declined
     — отклонена (не прошла проверку, нужно обновить);
  • pin-required
     — закончились пин-коды (нужно загрузить);
  • started
     — запущена;
  • paused
     — остановлена;
  • finished
     — перенесена в архив.
Ошибки
Код ошибкиЗначениеОписание
campaignNotFoundНе найденаКампания с таким
partnerCampaignId
не существует.
Пример тела ответа
JSON
{
  "status": "success",
  "result": {
    "ymCampaignId": 2248,
    "campaignStatus": "moderation"
  }
}