Massaal tags toevoegen aan contacten in ActiveCampaign

In dit topic leer je hoe je massaal en geautomatiseerd tags kunt laden voor bestaande contactpersonen in ActiveCampaign. De beschreven mogelijkheden werken ook voor het laden van bijvoorbeeld contactpersonen en bedrijven; de beschikbare tabellen zijn beschreven in het ActiveCampaign datamodel.

Waarom Tags in ActiveCampaign

In ActiveCampaign kan heel traditioneel gewerkt worden met mailinglijsten: iemand geeft interesse aan in een onderwerp (bijvoorbeeld “autotechniek”), landt op een mailinglijst en ontvangt bij tijd en wijle hierover een mail. Voor groepen mensen met een uniforme behoefte en een beperkt aantal thema’s werkt dit prima.

Echter, in bijvoorbeeld de dienstverlenende industrie wordt meestal niet vanuit het product geredeneerd, maar vanuit de oplossing. Er is bijvoorbeeld geen behoefte aan informatie over autotechniek, tenzij iemand een auto rijdt en hetzij een technisch interesse heeft, hetzij zorgen heeft dat de auto wat vaker stil komt te staan. Er zijn dan heel veel mogelijke thema’s, namelijk een deel van de combinaties van de eigenschappen van de persoon.

Met “tags” kunnen persoonseigenschappen geregistreerd worden en op basis van het maken van dwarsdoorsnedes op basis van de persoonseigenschappen kan gericht informatie verstrekt worden aan groepen contactpersonen. Hierdoor wordt de kans op het geven van relevante informatie veel hoger. Het is niet ongewoon dat conversies van minder dan 1% naar meer dan 10% gaan door te werken met specifiek toegesneden boodschappen.

Een tag is niet meer of minder dan een label die gekoppeld wordt aan een persoon: iemand heeft de tag of helemaal niet. Tags kunnen geen waarde hebben; er bestaan dus geen labels met een opschrift. ActiveCampaign biedt eigen velden voor als contactpersonen gekenmerkt moeten worden met een waarde of tekst.

ActiveCampaign mailingcampagnes kunnen gebaseerd worden op lidmaatschap van een mailinglijst, maar kunnen ook gebaseerd worden op een segmentatie met dwarsdoorsnedes op basis van bijvoorbeeld land, taal of tags. Bij het verzenden van een campagne wordt bepaald welke contactpersonen in het segment vallen. De mails worden vervolgens gestuurd, meestal gepersonaliseerd door het vervangen van velden in de mail.

Geautomatiseerd Laden van Tags

Voor het geautomatiseerd laden van tags uit andere systemen wordt een database gedefinieerd op Invantive Cloud of bijvoorbeeld Invantive Query Tool die in ieder geval een ActiveCampaign verbinding bevat. Aan de andere kant zit bijvoorbeeld een verbinding met Salesforce of met een Excel-bestand.

Het resultaat van het laden is bijvoorbeeld:

De volgende query maakt een tabel in het geheugen op basis van een vaste lijst; de daadwerkelijke query hangt af van het bronsysteem.

create or replace table contacttags_other_system@inmemorystorage
as
select 'john.doe@acme.com' email
,      'Test' tag

De data kan daarna heel gemakkelijk en snel geladen worden in ActiveCampaign met:

insert into ContactTagsByContactId@ac
( contact
, tag
)
select ctt.id
,      tag.id
from   contacttags_other_system@inmemorystorage ctg
join   contacts@ac ctt
on     ctt.email = ctg.email
join   tags@ac tag
on     tag.tag = ctg.tag

Op basis van de contactgegevens in contacttags_other_system@inmemorystorage worden de unieke numerieke ID’s opgehaald voor de tag en de contactpersoon uit ActiveCampaign via, respectievelijk, de tabel tags en contacts.

Deze query gaat er van uit dat de contactpersoon en de tagnamen al bekend zijn in ActiveCampaign. Zijn die nog niet bekend, dan kunnen die ook met een insert statement geladen worden zoals beschreven in Keep ActiveCampaign Data Aligned despite Synchronization Errors.

De query kan herhaaldelijk uitgevoerd. ActiveCampaign geeft geen foutmelding als een contactpersoon herhaaldelijk dezelfde tag krijgt toegewezen; er verandert gewoon niks als dezelfde tag nogmaals toegevoegd wordt. Mocht ActiveCampaign wel een foutmelding geven, dan is het gebruik van het synchronize statement aan te raden.