Integracja Marketo Webhook z Drupalem: Synchronizuj dane leadów z Marketo z Drupalem w czasie rzeczywistym
Opublikowany: 2022-08-09Kiedy Association of National Advertisers (ANA) nazywa „Personalizacja” „marketingowym słowem roku”, prawdopodobnie możesz czuć się komfortowo, że jest to strategia, która ma pozostać. Spersonalizowane treści dodają ludzkiego charakteru do doświadczenia klienta, co jest bezcenne podczas całej ich podróży. Potwierdzają to statystyki, które sugerują, że 90% konsumentów uważa spersonalizowane treści za bardziej atrakcyjne i denerwuje się, gdy tak nie jest.
Marketo, gigant oprogramowania do automatyzacji marketingu, pomaga organizacjom B2B i B2C angażować i pielęgnować potencjalnych potencjalnych klientów, jednocześnie umożliwiając marketerom tworzenie spersonalizowanych kampanii marketingowych wokół nich.
Połączenie potęgi Marketo z systemem zarządzania treścią, takim jak Drupal, to jeden z najlepszych sposobów na zaprezentowanie klientom całkowicie bezproblemowego cyfrowego doświadczenia.
Dzięki modułom integracyjnym Drupal - Marketo, takim jak Marketo MA, możesz zautomatyzować przechwytywanie, śledzenie, pielęgnowanie, personalizację, analitykę i wiele więcej leadów. Teraz Twoja witryna Drupal jest również połączona z różnymi usługami stron trzecich, które często będą potrzebować zaktualizowanych danych potencjalnych klientów z Marketo. Wejdź, webhooki. W jednym z naszych ostatnich projektów wykorzystaliśmy Webhooki, aby uzyskać dane w czasie rzeczywistym z Marketo, dzięki czemu treść może być bardziej spersonalizowana dla klienta po zalogowaniu. Przeczytaj więcej, aby dowiedzieć się o integracji Drupal - Marketo i jak skonfigurować Webhook do synchronizacji danych Marketo z Drupalem w czasie rzeczywistym.
Zakładanie Marketo w Drupal
Zanim przejdziesz do konfiguracji integracji Drupal - Marketo, pamiętaj, że ten proces zakłada, że masz już skonfigurowane konto Marketo i wiesz, jak działa platforma.
Instalacja modułu Marketo MA Drupal
W konfiguracji administratora Drupala, zainstalujmy moduł Marketo MA stąd. Następnie przejdź do Rozszerz i włącz następujące moduły (jak pokazano na poniższym zrzucie ekranu):
- Użytkownik MA Marketo
- Formularz internetowy Marketo MA
- Marketo MA
Konfiguracja API
Teraz aktywujmy integrację z Marketo, wprowadzając identyfikator konta Marketo i inne szczegóły dotyczące przechwytywania potencjalnych klientów. Tutaj do śledzenia danych leadów użyjemy metody REST API zamiast Munchkin JavaScript API. Więc śmiało wprowadź ustawienia konfiguracyjne interfejsu API REST, takie jak identyfikator klienta i klucz tajny klienta .
Definicja pola
Tutaj możesz skonfigurować i mapować pola użytkownika i formularza internetowego na pola zdefiniowane na Twoim koncie Marketo (jak pokazano na poniższym zrzucie ekranu).
Ustawienia użytkownika
W tej sekcji możesz włączyć wyzwalacz aktualizacji leada w Marketo podczas wydarzeń takich jak logowanie użytkownika, rejestracja/tworzenie i aktualizacja profilu użytkownika. Możesz także wybrać pola użytkownika, które powinny wywołać aktualizację i zmapować je do pola Marketo.
Dodawanie modułu obsługi formularzy internetowych
Teraz wybierz moduł obsługi formularzy internetowych Marketo MA, aby upewnić się, że potencjalny klient jest przechwytywany za pomocą formularzy internetowych i wysyłany do Marketo.
Ta konfiguracja pozwoli Ci teraz dodać możliwości przechwytywania, śledzenia i pielęgnowania leadów w Twojej witrynie Drupal. Możesz teraz wysyłać leady z Drupala na swoją platformę Marketo.
Jak skonfigurować webhooka, aby uzyskać zaktualizowane dane leadów z Marketo do Drupala?
Twoje leady mogą pochodzić z różnych źródeł. Kilka potencjalnych klientów wchodzi przez formularz internetowy Twojej witryny, podczas gdy inne mogą być wprowadzane bezpośrednio do pulpitu nawigacyjnego Marketo za pośrednictwem różnych kanałów marketingowych.
Czasami dane użytkownika, które są przechwytywane i przesyłane z Twojej witryny Drupal, mogą zostać zaktualizowane w panelu Marketo. Co się dzieje, gdy potrzebujesz aktualizowanych w czasie rzeczywistym danych z Marketo, aby spersonalizować zawartość Drupala dla tego użytkownika?
Przypadek użycia
Ostatnio serwis Drupal naszego klienta wymagał od nas stworzenia webhooka na potrzeby personalizacji treści. Mają system jednokrotnego logowania, w którym ich użytkownicy mogą zalogować się raz i uzyskać dostęp do wielu obszarów witryny, takich jak wydarzenia, logowanie członków i zakupy. Teraz, po zalogowaniu, treść na stronie Drupal jest personalizowana na podstawie segmentacji treści, takich jak dane demograficzne, poziom zatrudnienia itp. To wymagało, aby nasza strona Drupal miała zaktualizowane dane użytkownika, które są synchronizowane w czasie rzeczywistym z ich systemem Marketo.
Jednym z niezbyt wykonalnych rozwiązań byłoby wywołanie interfejsu API w celu pobrania danych potencjalnych klientów z Marketo podczas logowania użytkownika. Jednak ta metoda nie tylko spowolni proces, ale także okaże się droższa, ponieważ żądania API są rozliczane.
Rozwiązanie — webhooki
Webhook to w zasadzie żądania API, które są wyzwalane przez określone zdarzenia. Marketo umożliwia rejestrację webhooków w celu łączenia się z różnymi aplikacjami innych firm. W tym przypadku skonfigurowaliśmy webhooka, aby pobierał dane w czasie rzeczywistym z Marketo do witryny Drupal. Przyjrzyjmy się krokom podjętym w celu wdrożenia webhooków do integracji z Drupal Marketo.
Krok 1: Utwórz niestandardowy moduł i zdefiniuj trasę dla API
Najpierw musisz włączyć moduł HTTP Basic Authentication w swojej konfiguracji Drupala.
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]
Krok 2: Utwórz kontroler dla interfejsu API i przechowuj dane w polach niestandardowych
<?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); } }
Krok 3: Utwórz Webhook i integrację z Marketo
Ale najpierw musisz zarejestrować webhooka. Aby zarejestrować Webhooka w Marketo, przejdźmy najpierw do naszego pulpitu nawigacyjnego Marketo i kliknij opcję Webhooks w menu Administracja >> Integracja (jak pokazano na poniższym zrzucie ekranu).
Następnie utwórz nowy webhook , który otworzy okno dialogowe, w którym możesz wprowadzić szczegóły, takie jak nazwa webhooka, opis, adres URL, typ żądania, szablon itp.
Nadaj webhookowi nazwę i łatwy do zrozumienia opis. Wprowadź adres URL, aby przesłać żądanie usługi sieciowej.
Na przykład tutaj:
https://www.specbee.com/webhooks/marketo to punkt końcowy API dla naszego webhooka
Dodaj nazwę użytkownika i hasło Drupal do podstawowego uwierzytelniania, jak wspomniano poniżej:
https://nazwa użytkownika:[email chroniony]/webhooks/marketo
Kliknij przycisk Wstaw Token obok Szablonu, aby dodać pola obiektu Marketo, które chcesz przekazać wraz z żądaniem.
Na przykład: "field_job_function": "{{lead.Job Function:default=NA}}". Ustaw wartość domyślną na dowolny wybrany klucz. „NA” w naszym przypadku. To zwróci NA, jeśli nie ma danych.
Krok 4: Utwórz kampanię inteligentną
Aby utworzyć integrację Webhook Marketo, musisz teraz skonfigurować kampanię inteligentną . Możesz zdefiniować własne kampanie inteligentne w Marketo, które będą uruchamiać programy Marketo, takie jak wywoływanie webhooka, wysyłanie e-maili po określonym zdarzeniu itp. Konfiguracja kampanii inteligentnej składa się z trzech części: listy inteligentnej, przepływu i harmonogramu . Musisz dodać wyzwalacz do webhooka w sekcji Lista inteligentna.
- W obszarze Działania marketingowe i w swoim programie utwórz nową kampanię inteligentną.
- Nadaj inteligentnej kampanii nazwę i opis. Tutaj nazwaliśmy to Integracją Drupala .
- W Smart List znajdziesz wszystkie dostępne wyzwalacze. Przeciągnij i upuść potrzebne wyzwalacze do listy inteligentnej. Tutaj wybraliśmy wyzwalacz Osoba jest utworzona , ale będzie on wyzwalany tylko po utworzeniu nowego potencjalnego klienta. Aby rozwiązać ten problem, dodajmy kolejny wyzwalacz dla zmian wartości danych, aby był uruchamiany, gdy nastąpi aktualizacja danych potencjalnego klienta.
- Wybraliśmy atrybuty Stanowisko pracy i Poziom stanowiska w obszarze Osoba , aby uruchomić webhook (jak pokazano na poniższym zrzucie ekranu).
- Czas zadzwonić do webhooka. Kliknij Flow i wybierz akcję Call Webhook w prawym okienku i przeciągnij ją do Flow. Wybierz nazwę utworzonego webhooka.
- Po utworzeniu kampanii wywoływania webhooka zaplanujmy ją.
- W ustawieniach kampanii inteligentnej kliknij przycisk Edytuj, aby ustawić częstotliwość uruchamiania kampanii. W naszym przypadku użycia wybraliśmy „za każdym razem”, ponieważ chcieliśmy, aby webhook uruchamiał się za każdym razem, gdy dane potencjalnego klienta zostaną zaktualizowane. Zapisz to ustawienie i kliknij AKTYWUJ.
Krok 5: Przetestuj to!
Twoja kampania jest teraz gotowa do testowania. Będziesz mógł zobaczyć wszystkie działania, czyli liczbę połączeń do webhooka i inne szczegóły w zakładce Wyniki kampanii inteligentnej.
Idealnie więc, gdy tworzysz nowego leada (osobę) lub aktualizujesz pole Job level lub Job Function istniejącego leada, powinien on wywołać Webhooka i zaktualizować go również w bazie danych Twojej strony Drupal.
Ten artykuł nie byłby możliwy bez pomocy Prashantha! Dziękuję Ci!
Końcowe przemyślenia
Platformy do automatyzacji marketingu, takie jak Marketo, mogą być cennym dodatkiem do strategii marketingowej każdej organizacji, pomagając angażować, pielęgnować i ostatecznie konwertować potencjalnych klientów. Wykorzystanie Drupala jako systemu zarządzania treścią usprawnia te działania. W tym artykule, oprócz tego, że pokażemy Ci, jak zintegrować Marketo z Drupalem, omówiliśmy również, jak skonfigurować webhooki, które pozwolą Ci uzyskać zaktualizowane dane leadów z Marketo do Drupala. Potrzebujesz pomocy w dostosowywaniu integracji Drupala z Marketo lub dowolną inną aplikacją firmy zewnętrznej? Chętnie pomożemy!