Salesforce Marketing Cloud (SFMC) is a marketing automation solution that helps marketers with email, mobile, social, and online marketing automation. Use this integration to stream SFMC events such as email sent, email open, email click or SMS sent and SMS not sent actions, in a near real-time manner and have them in TD CDP for further decision-making.
Features of this integration:
Easily configurable connector to ingest SFMC events data to the TD platform
Subscribe to specific or multiple SFMC events
Use as a reliable data source
Stop subscribing to event data as needed
The following event data can be selected and streamed to Treasure Data from SFMC:
EmailSent
EmailNotSent
EmailBounced
EmailOpen
EmailClick
EmailUnsubscribe
SmsSent
SmsNotSent
You can set the destination for data as:
Plazma DB
This feature is in beta. Contact your Customer Success representative for more information.
Learn more about:
Prerequisites
Basic Knowledge of Treasure Data.
Basic knowledge of Salesforce Marketing Cloud.
- Getting Your API Keys
Limitations
- The expected target latency for data to be available in Plazma is between 5 to 10 minutes.
- TD users are required to use the Write-only API key to create an SFMC Streaming connection.
- Be aware of the number of callbacks that can be created for your SFMC account because this limits the number of sources that can be created on TD to ingest events.
- Be aware of the email send limits for their SFMC account. See Salesforce Article.
- You must create databases and tables in Plazma before creating sources to ingest data in those tables. Full support for automatic database and table creation is expected in the next implementation.
- Expect a few seconds delay before the newly created source starts streaming data.
- TD Toolbelt commands are not supported for Streaming connectors.
- The event size commit to the SFMC streaming connection can't exceed 1MB.
- The SFMC streaming connection data ingestion endpoint per task limit is ~400 requests per second.
- Maximum of 2 tasks per account.
Requirements
You need to complete the SFMC Package API Integration Setup which requires obtaining the SFMC Client ID and Secret first.
Obtaining SFMC Client ID and Secret
These instructions guide you to locate the client ID and client secret that is necessary to authenticate using credentials.
1. Go to Setup > Apps > Installed Packages.
2. Select New.
3. Type the Name and Description of the Package.
4. Select Save.
5. Locate the newly created Package in the list of installed packages.
6. Select the package name.
7. Select Add Component.
8. Select API Integration
9. Select Server-to-Server.
10. Select EVENT NOTIFICATIONS options as showing in the following.
These options allow us to run operations for read/create/update/delete for callbacks and subscriptions.
OAuth 2.0 Scopes for Using API for SFMC Package Setup
If you use the API to get the credentials, then the following scopes need to be specified:
event_notification_callback_create
event_notification_callback_read
event_notification_callback_update
event_notification_callback_delete
event_notification_subscription_create
event_notification_subscription_read
event_notification_subscription_update
event_notification_subscription_delete
11. Copy Client Id and Client Secret.
- Both are needed when you create the Connection in TD.
12. Copy Authentication Base URI and Rest Base URI.
- Both are needed when you create the Source in TD.
Use the TD Console to Create Your Connection
Create a New Connection
In Treasure Data, you must create and configure the data connection before running your query. As part of the data connection, you provide authentication to access the integration.
1. Open TD Console.
2. Navigate to Integrations Hub > Catalog.
3. Search for and select Salesforce Marketing Cloud Data Streaming.
4. Select Create Authentication.
The following dialog opens.
5. Edit the following parameters:
Parameters | Description | |
---|---|---|
Client ID | Required | The Client ID of your Salesforce Marketing Cloud. See Obtaining SFMC Client ID and Secret. |
Client Secret | Required | The Client Secret of your Salesforce Marketing Cloud. See Obtaining SFMC Client ID and Secret. |
TD API Key | Required | TD write-only API Key for access to the database. |
6. Select Continue.
7. Enter a name for your connection.
8. Select Done.
Transfer Your Data to Treasure Data
After creating the authenticated connection, you are automatically taken to the Authentications listing page.
1. Search for the connection you created.
2. Select New Source.
3. Type a name for your Source in the Data Transfer field.
4. Select Next.
The Source Table dialog opens.
5. Edit the following parameters:
Parameters | Description | |
---|---|---|
Datastore | Required | Plazma is the only option available now. |
Tags | Optional | Tags can be used to find this source |
Database | Required | Specify the database within Treasure Data for which you want to import data into. |
Table | Required | Specify the table within the database where you would like the data placed. |
Authorization Endpoint | Required | Authenticate URL. The endpoint that you want to use to provide the authorization. |
Rest API Endpoint | Required | The Salesforce REST API endpoints. |
Event Categories | Required | Within event categories, you can add and specify as many event types as are necessary for your environment. |
Event Type | Required | Events can be generated, triggered by the system, or initiated by user action. Review the list of values and select event types that you want to monitor. |
6. Select Create.
Source Id should be treated with caution.
Data Preview
- For streaming data, there is no preview.
Data Ingestion
- The connector can start Event data ingestion in TD as soon as the first event is triggered after successful Streaming data source creation.