Создание/обновление баннера

IMSHOP Retail Protocol (IRP) является объектом интеллектуальной собственности ООО «АЙ ЭМ СОЛЮШНЗ» (IMSHOP) и защищён как объект авторского права. Свидетельство о депонировании произведения № 023-014461 от 16 января 2023 г. подтверждает исключительные права ООО «АЙ ЭМ СОЛЮШНЗ» на данные технологии.

IMSHOP Retail Protocol создан по заказу ООО «АЙ ЭМ СОЛЮШНЗ». Использование IMSHOP Retail Protocol допустимо только при взаимодействии с ООО "АЙ ЭМ СОЛЮШНЗ" и наличии действующего лицензионного договора. Более подробно можно ознакомиться здесь.

АПИ для автоматизации управления (создание, обновление) баннеров на главном экране. Управление баннерами по-прежнему остается доступно через админ-панель. Данное АПИ может использоваться, если на стороне клиента уже есть собственная система управления контентом, большое количество баннеров и акций, и затраты на внесение контента в двух системах превышают затраты на поддержку и написания АПИ.

Для подключения обратитесь к личному менеджеру в IMSHOP.IO

Вам необходимо получить:

  • URL для подключения

  • API ключ

Ключ передается как  api-key токен в HTTP заголовке

Формат запроса и пример

Пример

{
  "privateId": "123",
  "cardTypeText": "-35%",
  "title": "Коллекция одежды",
  "isOnlyInnerTitle": false,
  "text": "Премиальное качество",
  "imageUrl": "",
  "url": "restore://cart/home",
  "colorName": "#ff1100",
  "active": true,
  "publishedOn": "2021-10-15 14:21:22",
  "publishedTo": null,
  "itemId": "012885b7-adf4-5b2b-8cfa-36451cb88e7b",
  "imageAspectRatio": "16:09",
  "tags": ["guide","promo"],
  "segmentIds": ["segment1","segment2", "geo_42"],
  "promocode": "promo1",
  "videoUrl": "",
  "content": [
    {
      "type": "header",
      "settings": {
        "text": "Header"
      }
    },
    {...}
  ]
}

Описание формата

  • id - идентификатор баннера в системе imshop, необязательно при создании баннера, обязательно или privateId или id при обновлении

  • privateId - идентификатор баннера в системе клиента, необязательно при создании баннера, обязательно или privateId или id при обновлении

  • cardTypeText - необязательно, текст который выводиться поверх картинки, только если есть картинка или видео

  • title - заголовок баннера, выводиться под картинкой, обязательно или title или text или imageUrl

  • isOnlyInnerTitle - необязательно, спрятать заголовок на баннере, но выводить его на внутреннем экране самого баннера

  • text - текст на карточке баннере, выводиться под заголовком, обязательно или title или text или imageUrl

  • imageUrl - веб-ссылка на картинку баннера, обязательно или title или text или imageUrl

  • url - необязательно, веб-ссылка/deeplink, веб-ссылки рекомендуется использовать только в крайнем случае, так как они уводят пользователя из приложения и могут снизить конверсию. Deeplink - ссылка на экраны внутри приложения, создается через конструктор ссылок в админ-панели. Нельзя одновременно задать и ссылку и контент для внутреннего экрана.

  • colorName - необязательно, цвет баннера, используется только если нет картинки, в формате #rrggbb

  • active - необязательно, показывать или нет, по-умолчанию показывать

  • publishedOn - необязательно, по-умолчанию используется текущая дата, с какой даты выводить, в формате YYYY-MM-DD HH:MM:SS

  • publishedTo - необязательно, до какой даты выводить, в формате YYYY-MM-DD HH:MM:SS

  • itemId - необязательно, id товара из фида, будет выводиться кнопка покупки указанного товара под картинкой баннера, только если есть картинка, а также на внутреннем экране баннера

  • imageAspectRation - необязательно, соотношение ширины и высоты картинки, чтобы сделать ее более вертикальной или горизонтальной в баннере

  • tags - необязательно, табы в которых будет выводиться баннер, если главный экран разделен на табы, если пусто, то выводиться в любом

  • segmentIds - необязательно, сегменты пользователя, баннер выводиться только если у пользователя есть все указанные сегменты, можно указать 'guests' - только для неавторизованных или 'users' - только для авторизованных.

    • Поддерживается также возможность передачи гео - сегментов в режиме ИЛИ, например, по регионам, т.е. чтобы баннер появился будет достаточно совпадение с одним из гео - сегментов. Для передачи гео - сегментов, нужно передавать приставку geo_ после чего идет фиас код объекта, например geo_a4859da8-9977-4b62-8436-4e1b98c5d13f. Если у Вас включена поддержка виртуальных номеров регионов, то передавать нужно именно виртуальные номера, например geo_42.

  • promocode - необязательно, если указан, то на баннере покажется промокод, при клике на баннер он будет скопирован в буфер

  • videoUrl - необязательно, ссылка на видео в формате MP4, вместо картинки

  • content - необязательно, содержимое внутреннего экрана баннера

    • id - необязательно, внутренний id блока для обновления в системе imshop, если нужно обновить допустим только указанный блок, если нет, то ищем и обновляем блоки по порядку, если не нашли, то создаем новый

    • type - обязательно, тип блока (см. ниже)

    • settings - обязательно, настройки блока, зависят от типа блока (см. ниже)

Типы и Настройки блоков

Заголовок

{  
  "type": "header",
  "settings": {
    "text": "Header"
  }
}
  • text - текст заголовка

Подзаголовок

{  
  "type": "section_header",
  "settings": {
    "text": "Subheader"
  }
}
  • text - текст подзаголовка

Параграф

{  
  "type": "text",
  "settings": {
    "text": "Text",
    "numberOfLines": 3
  }
}
  • text - текст параграфа

  • numberOfLines - количество видимых строк, если нужно скрыть большой текст

Картинка

{  
  "type": "image",
  "settings": {
    "image": "https://image.png",
    "url": "imshop://cart/home"
  }
}
  • image - веб-ссылка на картинку

  • url - веб-ссылка/deeplink при нажатии на картинку

Видео

{  
  "type": "video",
  "settings": {
    "text": "",
    "poster": ""
  }
}
  • text - веб-ссылка на MP4 видео

  • poster - опционально, веб-ссылка на картинку постера к видео

Товары

{  
  "type": "items",
  "settings": {
    "items": ["id1", "id2"]
  }
}
  • items - массив идентификаторов товаров из фида

Промокод

{  
  "type": "promocode",
  "settings": {
    "value": "sale"
  }
}
  • value - промокод

Кнопка

Показывается только если у баннера нет идентификатора товара, иначе показывается кнопка покупки товара.

{  
  "type": "button",
  "settings": {
    "title": "MyButton",
    "url": "imshop://account/home",
    "isFixed": true
  }
}
  • title - текст на кнопке

  • url - веб-ссылка/deeplink

  • isFixed - кнопка фиксируется снизу экрана

Формат ответа и пример

Пример

{  
  "success": true,
  "id": "uuid",
  "privateId": "123"
}

Описание формата

  • success - флаг успеха операции

  • id - идентификатор на стороне imshop

  • privateId - опционально, идентификатор на стороне клиента

Last updated