Интеграция Marketo Webhook с Drupal: синхронизация данных потенциальных клиентов из Marketo в Drupal в режиме реального времени

Опубликовано: 2022-08-09

Когда Ассоциация национальных рекламодателей (ANA) называет «Персонализацию» «маркетинговым словом года», вы, вероятно, можете не сомневаться в том, что эта стратегия никуда не денется. Персонализированный контент добавляет человеческое прикосновение к опыту работы с клиентами, что бесценно на протяжении всего их пути. Это подтверждается статистикой, которая показывает, что 90% потребителей находят персонализированный контент более привлекательным и раздражаются, когда это не так.

Гигант программного обеспечения для автоматизации маркетинга Marketo помогает организациям B2B и B2C привлекать и развивать потенциальных клиентов, позволяя маркетологам создавать вокруг них персонализированные маркетинговые кампании.

Сочетание возможностей Marketo с системой управления контентом, такой как Drupal, является одним из лучших способов предоставить клиентам полностью бесшовный цифровой опыт.

С модулями интеграции Drupal и Marketo, такими как Marketo MA, вы можете автоматизировать захват лидов, отслеживание, взращивание, персонализацию, аналитику и многое другое. Теперь ваш веб-сайт Drupal также подключен к различным сторонним службам, которым часто требуются обновленные данные о лидах от Marketo. Введите, вебхуки. В одном из наших недавних проектов мы использовали Webhooks для получения данных в режиме реального времени от Marketo, чтобы контент мог быть более персонализированным для клиента, когда он входит в систему. Узнайте больше, чтобы узнать об интеграции Drupal-Marketo и о том, как настроить Webhook для синхронизации данных Marketo с Drupal в режиме реального времени.

Настройка Marketo в Drupal

Маркето

Прежде чем перейти к настройке интеграции Drupal и Marketo, обратите внимание, что этот процесс предполагает, что вы уже настроили свою учетную запись Marketo и знаете, как работает платформа.

Установка модуля Marketo MA Drupal

В вашей настройке администратора Drupal давайте продолжим и установим модуль Marketo MA отсюда. Затем перейдите в « Расширить » и включите следующие модули (как показано на снимке экрана ниже):

  • Пользователь Marketo MA
  • Веб-форма Marketo MA
  • Маркето М.А.
Установить

Конфигурация API

Теперь давайте активируем вашу интеграцию с Marketo, введя идентификатор учетной записи Marketo и другие данные для захвата потенциальных клиентов. Здесь мы собираемся использовать метод REST API для отслеживания данных о лидах вместо Munchkin JavaScript API. Итак, продолжайте и введите параметры конфигурации REST API, такие как идентификатор клиента и секрет клиента .

Конфигурация МА

Определение поля

Здесь вы настраиваете и сопоставляете поля пользователя и веб-формы с полями, определенными в вашей учетной записи Marketo (как показано на снимке экрана ниже).

Определение поля

Пользовательские настройки

В этом разделе вы можете включить триггер для обновления лида в Marketo во время таких событий, как вход пользователя, регистрация/создание и обновление профиля пользователя. Вы также можете выбрать поля пользователя, которые должны инициировать обновление, и сопоставить их с полем Marketo.

Настройка пользователя

Добавление обработчика веб-формы

Теперь выберите обработчик веб-форм Marketo MA, чтобы убедиться, что лид захватывается через веб-формы и отправляется в Marketo.

Обработчик

Эта настройка теперь позволит вам добавить возможности захвата, отслеживания и развития потенциальных клиентов на вашем сайте Drupal. Теперь вы готовы отправлять потенциальных клиентов из Drupal на вашу платформу Marketo.

Как настроить Webhook для получения обновленных данных о лидах из Marketo в Drupal

Ваши лиды могут поступать из разных источников. Некоторые из ваших потенциальных клиентов поступают через веб-форму вашего веб-сайта, в то время как другие могут быть введены непосредственно в панель инструментов Marketo через различные маркетинговые каналы.

Иногда пользовательские данные, которые собираются и отправляются с вашего сайта Drupal, могут обновляться на панели инструментов Marketo. Что происходит, когда вам нужны обновляемые в режиме реального времени данные от Marketo, чтобы персонализировать контент Drupal для этого пользователя?

Вариант использования

Недавно веб-сайт нашего клиента на Drupal потребовал от нас создать Webhook для нужд персонализации контента. У них есть система единого входа, в которой их пользователи могут войти в систему один раз и получить доступ к нескольким областям сайта, таким как события, вход в систему и покупки. Теперь, после входа в систему, контент персонализируется на веб-сайте Drupal на основе сегментации контента, такой как демографические данные, уровни работы и т. д. Для этого на нашем сайте Drupal были обновлены пользовательские данные, которые синхронизируются в режиме реального времени с их системой Marketo.

Одним из не очень осуществимых решений может быть вызов API для получения данных о лидах из Marketo при входе пользователя в систему. Однако этот метод не только замедляет процесс, но и оказывается более дорогим, поскольку запросы API оплачиваются.

Решение — вебхуки

Веб-хуки — это в основном запросы API, которые запускаются определенными событиями. Marketo позволяет регистрировать веб-хуки для подключения к различным сторонним приложениям. Для этого варианта использования мы настроили веб-хук для получения данных в реальном времени из Marketo на веб-сайт Drupal. Давайте углубимся в шаги, предпринятые для реализации веб-перехватчиков для интеграции Drupal Marketo.

Шаг 1. Создайте собственный модуль и определите маршрут для API.

Во-первых, вам нужно включить модуль HTTP Basic Authentication в настройках Drupal.

marketo_webhook.routing.yml

 marketo_webhook.webhook: path: '/webhooks/marketo' options: _auth: [ 'basic_auth' ] requirements: _user_is_logged_in: 'TRUE' defaults: _controller: '\Drupal\marketo_webhook\Controller\MarketoWebhookController::getMarketoLeads' methods: [POST]

Шаг 2. Создайте контроллер для API и сохраните данные в настраиваемых полях.

 <?php namespace Drupal\marketo_webhook\Controller; use Drupal\Core\Controller\ControllerBase; use Drupal\Core\Entity\EntityTypeManagerInterface; use Symfony\Component\DependencyInjection\ContainerInterface; use Symfony\Component\HttpFoundation\JsonResponse; use Symfony\Component\HttpFoundation\Request; /** * Controller for Marketo Webhook. */ class MarketoWebhookController extends ControllerBase { /** * The entity type manager. * * @var \Drupal\Core\Entity\EntityTypeManagerInterface; */ protected $entityTypeManager; public function __construct(EntityTypeManagerInterface $entityTypeManager) { $this->entityTypeManager = $entityTypeManager; } /** * {@inheritdoc} */ public static function create(ContainerInterface $container) { return new static( $container->get('entity_type.manager') ); } /** * Update user marketo fields. */ public function getMarketoLeads(Request $request) { $payload = json_decode($request->getContent(), TRUE); $payload_log = implode(',', $payload); \Drupal::logger('marketo_webhook')->notice($payload_log); if($payload){ if($payload['mail']){ $users = $this->entityTypeManager->getStorage('user') ->loadByProperties(['mail' => $payload['mail']]); $user = reset($users); if ($user) { if($payload['field_job_function'] != 'NA'){ $user->set('field_job_function',$payload['field_job_function']); } $user->save(); return JsonResponse::create('Success', 200); } } } return JsonResponse::create('Success', 400); } }

Шаг 3: Создайте интеграцию Webhook и Marketo

Но сначала вам нужно будет зарегистрировать Webhook. Чтобы зарегистрировать веб-перехватчик на Marketo, давайте сначала перейдем на панель инструментов Marketo и выберем опцию «Веб-перехватчики» в меню « Администратор» >> «Интеграция» (как показано на снимке экрана ниже).

Вебхуки

Затем создайте новый веб-перехватчик , который откроет диалоговое окно, в котором вы можете ввести такие данные, как имя веб-перехватчика, описание, URL-адрес, тип запроса, шаблон и т. д.

Новый вебхук

Дайте вебхуку имя и понятное описание. Введите URL-адрес для отправки запроса веб-службы.

Например, здесь:
https://www.specbee.com/webhooks/marketo — это конечная точка API для нашего вебхука.
Добавьте имя пользователя и пароль Drupal для базовой аутентификации, как указано ниже:
https://имя пользователя:[электронная почта защищена]/webhooks/marketo

Нажмите кнопку « Вставить токен » рядом с «Шаблон», чтобы добавить поля объекта Marketo, которые вы хотите передать с запросом.
Например: "field_job_function": "{{lead.Job Function:default=NA}}". Установите значение по умолчанию для любой клавиши по вашему выбору. «Н/Д» в нашем случае. Это вернет NA, если данных нет.

Имя

Шаг 4: Создайте умную кампанию

Чтобы создать интеграцию Webhook Marketo, вам нужно настроить Smart Campaign . Вы можете определить свои собственные смарт-кампании в Marketo, которые будут запускать программы Marketo, такие как вызов веб-перехватчика, отправка электронных писем после определенного события и т. д. Конфигурация смарт-кампании состоит из трех частей: смарт-список, поток и расписание . Вам нужно будет добавить триггер в Webhook в Smart List.

  • В разделе « Маркетинговые мероприятия » внутри вашей программы создайте новую умную кампанию.
  • Дайте смарт-кампании имя и описание. Здесь мы назвали это Drupal Integration .
  • В Smart List вы найдете все доступные триггеры. Перетащите нужные вам триггеры в Smart List. Здесь мы выбрали триггер « Человек создан», но он будет срабатывать только при создании нового лида. Чтобы решить эту проблему, давайте добавим еще один триггер для изменения значения данных, чтобы он срабатывал при обновлении данных лида.
  • Мы выбрали атрибуты « Функция работы» и « Уровень работы » в разделе «Человек» , чтобы активировать веб-перехватчик (как показано на снимке экрана ниже).
Человек

  • Теперь пришло время вызвать Webhook. Нажмите «Поток», выберите действие «Вызов веб-перехватчика» на правой панели и перетащите его в поток. Выберите имя созданного вами Webhook.
Вызов вебхука

  • Теперь, когда вы создали кампанию для вызова Webhook, давайте запланируем ее.
Расписание

  • В настройках смарт-кампании нажмите кнопку «Изменить», чтобы указать, как часто вы хотите запускать кампанию. Для нашего варианта использования мы выбрали «каждый раз», так как хотели, чтобы веб-хук срабатывал каждый раз, когда обновляются данные лидов. Сохраните эту настройку и нажмите АКТИВИРОВАТЬ.
Правила квалификации

Шаг 5: Проверьте это!

Теперь ваша кампания готова к тестированию. Вы сможете увидеть все действия, то есть количество обращений к вебхуку и другие детали на вкладке « Результаты » умной кампании.

Таким образом, в идеале, когда вы создаете нового лида (человека) или обновляете поле «Уровень должности» или «Функция работы» существующего лида, он должен вызвать Webhook и обновить лид в базе данных вашего веб-сайта Drupal.

Эта статья была бы невозможна без помощи Прашанта! Благодарю вас!

Последние мысли

Платформы автоматизации маркетинга, такие как Marketo, могут стать ценным дополнением к маркетинговой стратегии любой организации, помогая привлекать, взращивать и, в конечном итоге, конвертировать потенциальных клиентов. Использование Drupal в качестве системы управления контентом упрощает эти действия. В этой статье, помимо демонстрации того, как интегрировать Marketo с Drupal, мы также рассмотрели, как настроить веб-хуки, которые позволят вам получать обновленные данные о лидах из Marketo в Drupal. Нужна помощь в настройке интеграции Drupal с Marketo или любым другим сторонним приложением? Будем рады помочь!