To connect Hightouch to Marketing Cloud, a "package" must be created in Marketing Cloud on behalf of Hightouch.
Navigate to Setup > Apps > Installed Packages and click "New." Name your package and after creating it, add an API Integration component to the package with the integration type as "Server-to-server."
Grant Hightouch the scopes for journey, list, subscribers, accounts, and data
extensions as below. These are the minimum scopes. If using FTP
mode, additional permissions are required.
With the API Integration created, copy the client ID, client secret, and subdomain into Hightouch. The subdomain is the part of the authentication base URI highlighted in the red box.
This integration only supports upserting contacts into Marketing Cloud. In this mode, new users will be inserted into Marketing Cloud and all user attributes will be kept up-to-date when mapped.
Records can be matched from your source to your Marketing Cloud workspace by your contact key. Note: this is not the ID or email address, but the contact key on the top left of the contact page.
You can sync columns from your source to Marketing Cloud's attribute sets.
Ensure all the required fields in each attribute set is completed. For example, to add an email address, both Email Address and HTML Enabled must be mapped. Refer to the Usage section of the Creating Contacts documentation.
Field mapping is needed to map other columns in your results to the data extension containing data for your journey.
In the data extension, there is a required attribute email_address which means that you will have to map a result column to that attribute. You can do this in Hightouch by typing the attribute name in the mappings section.
If enabled, Hightouch will create a Data Extension for you the first time the
sync runs:
The Data Extension's name can be specified as well. The name defaults to the
model name, and it will be used for the Data Extension's customer key as well.
The Data Extension will only be created the first time the sync runs. Hightouch
will not modify the name or customer key of the Data Extension after the first
run. If you want to change the name or customer key, you will have to create a
new sync.
If FTP is selected, Hightouch will upload a file via FTP to SFMC. Then,
Hightouch will create and run an Import Definition to import the file to the
Data Extension. This is done in batches. After each batch, Hightouch processes
the SFMC results file to determine row errors.
If you enable deletion in FTP mode, Hightouch removes deleted rows in the Data Extension using the SOAP API. SFMC doesn't support deletions using FTP directly.
FTP mode requires:
FTP credentials to be configured for the destination in Hightouch.
Username, which is typically a ~10 digit numeric ID.
Password or private key with a corresponding public key uploaded to SFMC.
The private key in the Hightouch destination configuration should be the full
private key, starting with -----BEGIN...PRIVATE KEY-----. You can generate
a private-public key pair with a tool like
ssh-keygen.
A private key passphrase if required by your private key.
The following permissions granted to the installed package in SFMC:
File location read and write
Automation read, write, and execute
The default mode uses only the SOAP API and works in smaller batches. FTP mode
is generally faster.
Hightouch supports upsert mode for Data Extension objects. In this mode, new
objects will be inserted into the data extension and all object attributes will
be kept up-to-date when mapped.
Deletion is disabled by default. If you enable it, Hightouch will delete objects
that are removed from your results set.
Marketing Cloud requires a minimum of one field mapping when sending data
using SOAP-mode. This can be a placeholder field.
You can map from your source to any field in your Data Extension. Make sure that
you include all non-nullable fields when syncing new objects to the Data
Extension. In upsert mode, it's possible to send requests that don't have all
non-nullable fields, but only if the object already exists in the Data
Extension. For new objects, non-nullable fields are required.
For auto-created Data Extensions, you can select whether the Data Extension is
sendable and testable. These properties are set the next time the sync runs.
Testable can only be set if sendable is set.
The options available for the sendable field are the currently mapped fields.
Ready to get started?
Jump right in or a book a demo. Your first destination is always free.