Salesforce Marketing Cloud

Salesforce Marketing Cloud is a marketing automation platform that enables you to create and manage marketing relationships.

For creating Pipelines using this Source, Hevo provides you a fully managed BigQuery data warehouse as a possible Destination. This option remains available till the time you set up your first BigQuery Destination irrespective of any other Destinations that you may have. With the managed warehouse, you are only charged the cost that Hevo incurs for your project in Google BigQuery. The invoice is generated at the end of each month and payment is recovered as per the payment instrument you have set up. You can now create your Pipeline and directly start analyzing your Source data. Read Hevo Managed Google BigQuery.

SFMC uses the concept of tenants and subdomains to host the data for your projects.

  • Tenant: Depending on the tenant type, a tenant can represent the top-level enterprise account, core account, top-level agency account, or your client account.

  • Subdomain: A subdomain is created within your main domain based on the tenant type. This subdomain is then added to the Application Programming Interface (API) which creates the tenant-specific endpoints. Hevo uses these endpoints to query the data.

To enable Hevo to access data from your Salesforce Marketing Cloud environment, you need to provide the Client ID and the Client Secret to Hevo.


Configuring Salesforce Marketing Cloud as a Source

Perform the following steps to configure Salesforce Marketing Cloud as a Source in your Pipeline:

  1. Click PIPELINES in the Asset Palette.

  2. Click + CREATE in the Pipelines List View.

  3. In the Select Source Type page, select Salesforce Marketing Cloud.

  4. In the Configure your Salesforce Marketing Cloud Source page, specify the following:

    Test and Continue

    • Pipeline Name: A unique name for your Pipeline.

    • Client ID: The API token created in Salesforce Marketing Cloud to enable Hevo to read data from your account.

    • Client Secret: The API Secret Key for your API token.

    • Sub Domain: A domain name within your main domain based on the tenant type. It is a 28 character string that begins with mc. Read Locating the Subdomain

    • Historical Sync Duration: The duration for which the past data must be ingested.

  5. Click TEST & CONTINUE.

  6. Proceed to configuring the data ingestion and setting up the Destination.

Creating the Client ID and Client Secret

Salesforce Marketing Cloud uses the concept of a package to create API integrations, install custom apps, or add custom components. You need to create an API Integration package to generate the Client ID and the Client Secret to allow Hevo to read your Salesforce Marketing Cloud data. To do this:

  1. Log in to your Marketing Cloud Instance.

  2. In the top right, click the drop-down next to your username, and then click Setup.

    Click Setup

  3. In the left navigation pane, under Platform Tools, click the Apps drop-down and then click Installed Packages.

    Click Installed Packages

  4. In the Installed Packages page, click New.

    Click New

  5. In the New Package Details window, specify the following:

    New package details

    • Name: A unique name for the package.

    • Description: A brief description of the package.

  6. Click Save.

  7. In the Components section, click Add Component.

    Add Component

  8. In the Add Component window, select API integration as the component type, and then, click Next.

    Select API integration

  9. Select Server-to-Server as the integration type and click Next.

    Select Integration type

    Note: A Server-to-Server integration allows server interaction without user involvement.

  10. Select the Read check box to grant read-only permission for the following objects:

    Email, OTT, Push, SMS, Social, Web, Documents and Images, Saved Content, Journeys, and List and Subscribers.

    Set server to server properties

  11. Click Save.

  12. Locate your Client Id and Client Secret under Components, API Integration.

    Locate Client Id and Secret

Locating the Subdomain

Data Replication

Default Pipeline Frequency Minimum Pipeline Frequency Maximum Pipeline Frequency Custom Frequency Range (Hrs)
3 Hrs 3 Hrs 24 Hrs 3-24

Note: The custom frequency must be set in hours, as an integer value. For example, 1, 2, 3 but not 1.5 or 1.75.

  • Historical Data: Once you create the Pipeline, all data associated with your Salesforce Marketing Cloud account is ingested by Hevo and loaded into the Destination.

  • Incremental Data: Once the historical load is completed, each subsequent run of the Pipeline:

    • Fetches the entire data for the campaign, campaign_asset, journey, activity, email, and outcome objects.

    • Fetches incremental data for all the other objects.

Source Consideration

  • The earliest date from which the data is fetched is 1st Jan, 2013.

  • By default, all available historical data is synchronized.

Schema and Primary Keys

Hevo uses the following schema to upload the records in the Destination:

Data Model

Hevo uses the following data model to ingest data from your Salesforce Marketing Cloud account:

Object Description
activity An activity can be a message, a decision, an update, or a combination of these elements that makes a journey. Read journey object below.
campaign Contains information about a campaign.
campaign_asset Contains the list of assets associated with a campaign.
email Contains the content of the email sent to the subscriber(s).
event(sent), event(bounce), event(open), event(click) Contains information about an event when an email is sent, bounced, opened, or clicked.
journey Contains the customer lifecycle interaction events. A journey has a goal and an exit which enables you to estimate the efficiency of your campaigns.
link Contains the link attached in the email sent to the subscriber(s).
link_send Contains details about the link attached in the email sent.
list Contains the list of subscribers.
list_subscriber Contains the subscribers for a list or the lists for a subscriber. A subscriber can belong to multiple lists and vice versa.
outcome Contains information about the outcome of an activity.
send Contains information about the time you send an email or an SMS to the subscriber(s).
subscriber Contains information about the person who has subscribed to an email.
triggered_send Contains information about the first time an event is triggered.


Revision History

Refer to the following table for the list of key updates made to this page:

Date Release Description of Change
Oct-25-2021 NA Added the Pipeline frequency information in the Data Replication section.
Jul-26-2021 NA Added a note in the Overview section about Hevo providing a fully-managed Google BigQuery Destination for Pipelines created with this Source.
Feb-22-2021 NA Updated the Limitations section to specify support for limited SFMC objects.
Last updated on 20 Sep 2022

Tell us what went wrong