Multichannel marketing: integrating Google Analytics with Veeva


The main goals of the multichannel marketing (MCM) project can be defined as follows:

  • putting in place the infrastructure and tools to track all the marketing related communication with healthcare professionals (in Veeva CRM)
  • putting in place the reporting tools on the efficiency of the marketing campaigns and progress towards the goals (in SAS)

The metrics are captured on various systems and in various ways, depending on the type of communication: mails and calls are registered directly in Veeva, live webinar attendance in another tool …

The metrics on the country-specific web sites and the webinars on demand are gathered in Google Analytics. Since the team managing the Veeva project had no clear way to extract the data from Google Analytics and load it into Veeva they reached out to the integration team.

The schema below shows the data flows specific to the MCM-project and for which the integration team was actively involved. Only the green arrows are relevant to the main topic of this blog:


The facts:

  • Source is Google Analytics where the data is spread over different accounts. Data can be queried using REST, the response is in JSON format.
  • Destinations:
    • The SAS system: running on an Oracle database. Connectivity is handled by simple JDBC connections.
    • Veeva CRM: running on the Salesforce cloud. Connectivity is handled by the Salesforce Adapter.
  • Both destinations have custom data models in place to store the incoming data. Veeva however has the added requirements of data validation checks and data enrichment. For each registered session in Google Analytics (someone visiting the web site) multiple records have to be created in different objects.

The solution

In the end the solution turned out to be pretty straightforward:

  1. Query Google Analytics for new sessions since the last extract.
  2. Deliver the full dataset to the data warehouse staging tables.
  3. Walk through the same dataset, perform the necessary checks for each record and create the necessary additional data before delivery in Veeva.

The challenges

Surprisingly, getting Google Analytics configured for REST connectivity was not trivial. The documentation of Google is truly a maze. This excellent blog post confirmed I was not the only one struggling.

And as often is the case with projects having a considerable amount of stakeholders and external parties, getting hold of the right information, finalize on requirements, coordinate testing … was also a very time-consuming task in this albeit straightforward point to point integration.

Author: Olivier M.

PS: the blue arrows in the image above are part of another solution built for the MCM-project. For this we extended the Tibco architecture with API Exchange and created a vendor-facing web service to expose specific functionality required to complete the solution build by the vendor.  More to come in another blog.



Curious to know more about this topic?

Working at i8c

i8c is a system integrator that strives for an informal atmosphere between its employees, who have an average age of approx 30 years old. We invest a lot of effort in the professional development of each individual, through a direct connection between the consultants and the management (no multiple layers of middle management). We are based in Kontich, near Antwerp, but our customers are mainly located in the triangle Ghent-Antwerp-Brussels and belong to the top 500 companies in Belgium (Securex, Electrabel, UCB, etc…).

Quality Assurance

i8c is committed to delivering quality services and providing customer satisfaction. That’s why we invested in the introduction of a Quality Management System, which resulted in our ISO9001:2000 certification. This guarantees that we will meet your expectations, as a reliable, efficient and mature partner for your SOA & integration projects.

i8c - ISO9001-2015

Also worth reading

AWS AppFlow: Streamlining SaaS Integrations with AWS Services

In today’s digital world, organizations are constantly looking for ways to streamline their workflows and improve their data management processes. One of the key challenges that organizations face is integrating their various software as a service (SaaS) applications with their data management systems. This is

Read More »

Apigee Scope Validation using OpenAPI Specification

In API security and management, we often use a lot of different security mechanisms to protect the requested resource behind the API Gateway. One of these mechanisms is the validation of scopes to authorize a client on a specific sub-resource of the API. Most of

Read More »