Salesforce Marketing Cloud

Salesforce Marketing Cloud (formerly Exact Target) is a multi-tool marketing platform designed to effectively manage a brand's interactions with current (and potential) customers across multiple channels.

The technology behind the platform allows for more efficient and effective management of marketing activities. The platform allows the creation of multichannel experiences, contacting customers in the right channel, at the right time (email, SMS, push, social media advertisements, etc.) and increasing customer acquisition and sales.

Kondado's integration with Salesforce Marketing Cloud makes it easier than ever to plan, monitor, analyze and make decisions by bringing lots of data into your Data Warehouse and Data Lake.

Adding the data source

To automate Salesforce Marketing Cloud ETL with Kondado for your database, follow the steps below:

Access the Marketing Cloud login home page (https://mc.exacttarget.com), enter your username and click Next;

2) You will be redirected to the login page specific to the user account selected in step (1). Copy the URL that will be generated:

SALESFORCE_MC_1.png

3) With the URL in hand, you must obtain your company's subdomain by searching for the value before “.login”. In the example in step (2), this value will be mcx1072k138f919oowzqewciw06, which is obtained as follows:

https://mcx1072k138f919oowzqewciw06.login.exacttarget.com

4) Save the subdomain obtained in step (3), as it will be used to create the data source in Kondado;

5) Continue with your login and access the Salesforce Marketing Cloud platform;

6) Once logged in, locate your username on the right of the top bar, click on it and then on “Setup”;

7) On the new page, locate in the left sidebar the route Apps > Installed Packages;

8) On the Installed Packages page, you will see the list of connected applications. To create the Kondado integration, click on the “New” button located at the top right of the listing;

9) After clicking on the button, enter a name and a description (for example Kondado and kondado.com.br) and click on “Save”;

10) After creating the Installed Package, in the “DETAILS” tab, locate the “Components” section and click on the “Add Component” button;

11) In the first step of the popup, select the “API Integration” option and click “Next”;

12) In the next step, select the “Server-to-Server” option and click “Next”;

13) Now is the time to select the permissions/properties of the Kondado integration. Mark the Data > Data Extensions category as Read and Write and the categories listed below as Read only. After checking the permissions, click on “Save”:

Email, OTT, Push, SMS, Social, Web, Documents and Images, Saved Content, Automations, Journeys, Audiences, List and Subscribers, Marketing Cloud Connect, File Locations, Tracking Events, Approvals, Calendar, Campaign, Tags, Workflows, Accounts, OTT Channels, Users e Webhooks

SALESFORCE_MC_2.png

14) After adding the Component, copy the values of “Client Id” and “Client Secret” located in the tab “DETAILS” > Components > API Integration:

SALESFORCE_MC_3.png

15) On the Kondado platform, go to the add new sources page and select the Salesforce Marketing Cloud data source;

16) Fill in the values as follows:

  • Subdomain: The value obtained in step (3)
  • Client ID and Client Secret: The values obtained in step (14)

Now just click on SAVE and everything will be ready for you to start replicating your Salesforce Marketing Cloud data to your Data Warehouse!

Pipelines

Relationship Chart

Subscribers

Main object

FieldType 
idtext[en] Read-only identifier for an object. Some objects use the ObjectID property as the Marketing Cloud unique ID
client__idtext[en] Specifies the account ownership and context of an object.
partnerkeytext[en] Unique identifier provided by partner for an object. This property is accessible only via API
createddatetimestamp[en] date and time of the objects creation
objectidtext[en] System-controlled, read-only text string identifier for object
emailaddresstext[en] Contains the email address for a subscriber. Indicates the data extension field contains email address data
subscriberkeytext[en] Identification of a specific subscriber
statustext[en] Defines status of object. Status of an address.
emailtypepreferencetext[en] The format to use when sending an email to a subscriber. Valid values include: HTML, Text

Attributes

FieldType 
subscriber_idtext 
nametext[en] Specifies attributes associated with an object
valuetext[en] Value of the attribute associated with an object

Emails

FieldType 
idtext[en] Read-only identifier for an object. Some objects use the ObjectID property as the Marketing Cloud unique ID
statustext[en] Defines status of object. Status of an address.
nametext[en] Name of the object or property
customerkeytext[en] User-supplied unique identifier for an object within an object type. This property corresponds to the external key assigned to an object in Marketing Cloud.
emailtypetext[en] Defines preferred email type
charactersettext[en] Indicates encoding used in an email message. Valid values include
preheadertext[en] Contains text used in preheader of email message on mobile devices
partnerkeytext[en] Unique identifier provided by partner for an object. This property is accessible only via API
client__idtext[en] Specifies the account ownership and context of an object
modifieddatetimestamp[en] Indicates the last time object information was modified
hasdynamicsubjectlineboolean[en] Indicates whether email message contains a dynamic subject line
createddatetimestamp[en] Read-only date and time of the object's creation
contentcheckstatustext[en] Indicates whether content validation has completed for this email message
foldertext[en] Specifies folder information
ishtmlpasteboolean[en] Indicates whether email message was created via pasted HTML
objectidtext[en] System-controlled, read-only text string identifier for object
categoryidtext[en] Specifies the identifier of the folder containing the email
isactiveboolean[en] Specifies whether the object is active
subjecttext[en] Contains subject area information for a message

Events

Main object

FieldType 
sendidtext[en] Contains identifier for a specific send
subscriberkeytext[en] Identification of a specific subscriber
eventtypetext[en] The type of tracking event
eventdatetimestamp[en] Date when a tracking event occurred
urltext[en] Indicates URL included in an event or configuration
partnerkeytext[en] Unique identifier provided by partner for an object. This property is accessible only via API
client__idtext[en] Specifies the account ownership and context of an object
correlationidtext[en] Identifies correlation of objects across several requests
objectidtext[en] System-controlled, read-only text string identifier for object
batchidtext[en] Ties triggered send sent events to other events (like clicks and opens that occur at a later date and time)
triggeredsenddefinitionobjectidtext[en] Identifies the triggered send definition associated with an event. This value also appears in tracking events to allow you to tie those events to a specific triggered send

PartnerProperties

FieldType 
sendidtext 
subscriberkeytext 
eventtypetext 
eventdatetimestamp 
partnerproperties__nametext[en] Name of the metadata record supplied by the client and stored by the system
partnerproperties__valuetext[en] Value of the metadata record supplied by the client and stored by the system

Folders

FieldType 
idtext[en] Read-only identifier for an object. Some objects use the ObjectID property as the Marketing Cloud unique ID
nametext[en] Name of the object or property
allowchildrenboolean[en] Specifies whether a data folder can have child data folders
partnerkeytext[en] Unique identifier provided by partner for an object. This property is accessible only via API
client__enterpriseidtext[en] Unique identifier provided by partner for an object. This property is accessible only via API
client__modifiedbytext 
client__idtext 
client__createdbytext 
iseditableboolean[en] Indicates if the property can be edited by the end-user in the profile center
contenttypetext[en] Defines the type of content contained within a folder
descriptiontext[en] Describes and provides information regarding the object
customerkeytext[en] User-supplied unique identifier for an object within an object type. This property corresponds to the external key assigned to an object in Marketing Cloud
parentfolder__partnerkeytext 
parentfolder__contenttypetext 
parentfolder__descriptiontext 
parentfolder__customerkeytext 
parentfolder__nametext 
parentfolder__iseditableboolean 
parentfolder__objectidtext 
parentfolder__idtext 
parentfolder__isactiveboolean 
parentfolder__allowchildrenboolean 
modifieddatetimestamp[en] Indicates the last time object information was modified
createddatetimestamp[en] Read-only date and time of the object's creation
objectidtext[en] System-controlled, read-only text string identifier for object
isactiveboolean[en] Specifies whether the object is active

List Sends

FieldType 
list__idtext[en] ID of the list associated with an object
sendidtext[en] Contains identifier for a specific send
forwardedemailsfloat[en] Number of emails forwarded for a send
existingunsubscribesfloat[en] Indicates whether unsubscriptions occurred on previous send
unsubscribesfloat[en] Indicates the number of unsubscribe events associated with a send
uniqueopensfloat[en] Indicates number of unique opens resulting from a triggered send
uniqueclicksfloat[en] Indicates number of unique clicks on message
objectidtext[en] System-controlled, read-only text string identifier for object
duplicatesfloat[en] Represent the number of duplicate email addresses associated with a send (exists only when a send occurs to multiple lists)
list__listnametext[en] Name of the list associated with an object
list__objectidtext[en] ObjectID of the list associated with an object
list__partnerkeytext[en] PartnerKey of the list associated with an object
existingundeliverablesfloat[en] Indicates whether bounces occurred on previous send
otherbouncesfloat[en] Specifies number of Other-type bounces in a send
partnerkeytext[en] Unique identifier provided by partner for an object. This property is accessible only via API
client__idtext[en] Specifies the account ownership and context of an object
previewurltext[en] Indicates URL used to preview the message associated with a send
numberdeliveredfloat[en] Number of sent emails that did not bounce
invalidaddressesfloat[en] Specifies the number of invalid addresses associated with a send
softbouncesfloat[en] Indicates number of soft bounces associated with a specific send
numbersentfloat[en] Number of emails actually sent as part of an email send. This number reflects all of the sent messages and may include bounced messages
missingaddressesfloat[en] Specifies number of missing addresses encountered within a send
hardbouncesfloat[en] Indicates number of hard bounces associated with a send

List Subscribers

Main object

FieldType 
idtext[en] Read-only identifier for an object. Some objects use the ObjectID property as the Marketing Cloud unique ID
statustext[en] Defines status of a subscriber's address. Valid values include: Active, Bounced, Held, Unsubscribed, Deleted
listidtext[en] Defines identification for a list the subscriber resides on
partnerkeytext[en] Unique identifier provided by partner for an object. This property is accessible only via API
client__idtext[en] Specifies the account ownership and context of an object
modifieddatetimestamp[en] Indicates the last time object information was modified
objectidtext[en] System-controlled, read-only text string identifier for object
createddatetimestamp[en] Read-only date and time of the object's creation
subscriberkeytext[en] Identification of a specific subscriber

PartnerProperties

FieldType 
idtext 
partnerproperties__nametext[en] Name of the metadata record supplied by the client and stored by the system
partnerproperties__valuetext[en] Value of the metadata record supplied by the client and stored by the system

Lists

FieldType 
idtext[en] Read-only identifier for an object. Some objects use the ObjectID property as the Marketing Cloud unique ID
categorytext[en] ID of the folder that an item is located in
listclassificationtext[en] Specifies the classification for a list. Valid values include: ExactTargetList, PublicationList, SuppressionList
partnerkeytext[en] Unique identifier provided by partner for an object. This property is accessible only via API
client__idtext[en] Specifies the account ownership and context of an object
typetext[en] Indicates type of specific list. Valid values include Public, Private, Salesforce, GlobalUnsubscribe, and Master. Indicates the type of email to send to the address. Valid values include Text and HTML
listnametext[en] Name of a specific list
descriptiontext[en] Describes and provides information regarding the object
customerkeytext[en] User-supplied unique identifier for an object within an object type. This property corresponds to the external key assigned to an object in Marketing Cloud
modifieddatetimestamp[en] Indicates the last time object information was modified
createddatetimestamp[en] Read-only date and time of the object's creation
objectidtext[en] System-controlled, read-only text string identifier for object

Sends

Main object

FieldType 
idtext[en] Read-only identifier for an object. Some objects use the ObjectID property as the Marketing Cloud unique ID
statustext[en] Defines status of object. Status of an address
unsubscribesfloat[en] Indicates the number of unsubscribe events associated with a send
uniqueopensfloat[en] Indicates number of unique opens resulting from a triggered send
additionaltext[en] The ID for a send that customers use as a campaign ID
numbererroredfloat[en] Number of emails not sent as part of a send because an error occurred while trying to build the email
subjecttext[en] Contains subject area information for a message
fromnametext[en] Specifies the default email message From Name. Deprecated for email send definitions and triggered send definitions
isalwaysonboolean[en] Indicates whether the request can be performed while the system is is maintenance mode. A value of true indicates that the system processes the request
previewurltext[en] Indicates URL used to preview the message associated with a send
partnerkeytext[en] Unique identifier provided by partner for an object. This property is accessible only via API
client__idtext[en] Specifies the account ownership and context of an object
numberdeliveredfloat[en] Number of sent emails that did not bounce
invalidaddressesfloat[en] Specifies the number of invalid addresses associated with a send
ismultipartboolean[en] Indicates whether the email is sent with Multipart/MIME enabled
missingaddressesfloat[en] Specifies number of missing addresses encountered within a send
email__partnerkeytext[en] Unique identifier provided by partner for an object. This property is accessible only via API
email__idtext[en] Default email address for object. Indicates if subscriber information can be used for email sends
email__objectidtext 
forwardedemailsfloat[en] Number of emails forwarded for a send
existingunsubscribesfloat[en] Indicates whether unsubscriptions occurred on previous send
otherbouncesfloat[en] Specifies number of Other-type bounces in a send
numbersentfloat[en] Number of emails actually sent as part of an email send. This number reflects all of the sent messages and may include bounced messages
senddatetimestamp[en] Indicates the date on which a send occurred. CST (Central Standard Time) value
objectidtext[en] System-controlled, read-only text string identifier for object
duplicatesfloat[en] Represent the number of duplicate email addresses associated with a send (exists only when a send occurs to multiple lists)
uniqueclicksfloat[en] Indicates number of unique clicks on message
existingundeliverablesfloat[en] Indicates whether bounces occurred on previous send
hardbouncesfloat[en] Indicates number of hard bounces associated with a send
emailnametext[en] Specifies the name of an email message associated with a send
modifieddatetimestamp[en] Indicates the last time object information was modified
createddatetimestamp[en] Read-only date and time of the object's creation
softbouncesfloat[en] Indicates number of soft bounces associated with a specific send
numbertargetedfloat[en] Indicates the number of possible recipients for an email send. This number does not include unsubscribed or excluded subscribers for a given list or data extension
fromaddresstext[en] Indicates From address associated with a object. Deprecated for email send definitions and triggered send definitions
numberexcludedfloat[en] Indicates the number recipients excluded froman email send because of a held, unsubscribed, master unsubscribed, or global unsubscribed status

PartnerProperties

FieldType 
idtext 
partnerproperties__nametext[en] Name of the metadata record supplied by the client and stored by the system
partnerproperties__valuetext[en] Value of the metadata record supplied by the client and stored by the system

Data Extension

FieldType 
__kdd_rowkeytext 
col_xtext 
col_yboolean 
col_ztimestamp 

This pipeline can be integral or incremental. For it to be incremental, it is necessary that: (i) there is a column of type timestamp (or Date for SFMC) that marks when the record was updated or inserted that is selected to be sent to the integration (if there are timestamp columns, but that do not have this behavior, the ideal is to leave the integration as integral) ; (ii) the records are not deleted from the table (if they are, the ideal is to leave the integration as integral);. Once both these conditions are met, you can mark the integration as incremental in the last step when creating the integration, also selecting the incremental column. Incremental updates will always read data from the savepoint date minus 1 day backwards.