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

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

Для подключения обратитесь к личному менеджеру в 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