Sync data from Attentive to Salesforce Marketing Cloud to use your Attentive data within Salesforce. There are two components to this integration:
- Sync contacts from Attentive to Salesforce. Use Attentive’s high-performing sign-up units, and sync contacts to Salesforce to unify profiles and for email marketing.
- Sync click-thru data for SMS messages sent through Salesforce Journey Builder (only applicable for customers using the Salesforce Journey Builder feature.)
Step 1. Create an API user in SFMC
Log in to your admin Salesforce account and complete the steps to create a Marketing Cloud API user. Ensure that the following are configured for the user:
- Roles: Ensure that you selected both Administrator and Marketing Cloud Administrator as your roles.
- Reply Email Address: We recommend adding your work email address. This ensures that you have access to the email inbox of the account.
Step 2. Install the Attentive app
Complete the following procedure to install the Attentive app from Salesforce AppExchange:
- Install the Attentive app from the Salesforce AppExchange.
Note: We recommend using Firefox when installing the Attentive app, due to an issue found in Salesforce. - Select the Access tab on the Attentive - AppExchange Prod package page, and then click License All Users in the top-right corner.
Note: Ensure you have an Event Entry Source present in your SFMC account. If so, continue to Step 4. If not, continue to the next procedure.
Step 3. Create an Event Entry Source
Note that you must complete this section if you plan to use Attentive in the Salesforce Journey Builder. Attentive relies on existing Entry Sources to properly connect the integration to SFMC Journey Builder.
If an Event Entry Source is present, you can skip this step and continue to Step 4. If an Event Entry Source isn’t present, you can create an event of any type in the SFMC Journey Builder. Complete the following procedure:
- Navigate to your Salesforce Journey Builder account.
- Select the Entry Sources tab, and then click New Event.
- Select API Event from the list of options; then click Next.
- Enter details for the Name and Description fields. Note that the Event Definition Key is automatically generated. Then, click Next.
- Select an existing Data Extension, and then click Next. If there are no Data Extensions in your account, see Create a Data Extension in Marketing Cloud.
Note: Attentive doesn’t reference or read data from this Data Extension. However, SFMC requires you to select an existing Data Extension in order for this setup to work. We recommend creating a separate, empty Data Extension for this step. - Click Next in the Contact Filter step. Note that you're not required to select a contact filter.
- Click Done.
Step 4. Collect SFMC information
Log in to your admin Salesforce account and collect the relevant information you’ll need to set up the integration in Attentive.
- Ensure you have Installed Package > Administrator permissions in Salesforce.
- In Marketing Cloud, go to Setup > Apps > Installed Packages.
- Click New.
- Name the package Attentive Data Feed.
- Save the package.
Note: After you save the package, you can view the package details. - Under Components, click Add Component.
- Make the following selections:
- Component Type: API Integration
- Integration Type: Server to Server Integration
- Once you’ve created the new API Integration, click Edit and select the following permissions to add to the API Integration:
- Journeys > Read
- List and Subscribers > Read & Write
- Email > Read & Send
- Data Extensions > Read & Write
- Click Save.
- Navigate to the installed Attentive application to find:
- Client Id
- Client Secret
- Copy the section of the Rest Base URI between https:// and .rest. (This will be the Subdomain you need in Step 5.)
- Click the drop-down in the upper-right corner, and copy the MID number. (This will be the Account Id you need in Step 5).
Step 5. Set up the integration in Attentive
Now, complete the following procedure to set up the integration in Attentive:
- Navigate to the integrations setup page and select Salesforce Marketing Cloud.
- Click Install.
- On the Connect Salesforce Marketing Cloud screen, make selections in the following fields based on the information you do/don’t want to send from Attentive to Salesforce:
- Email Forwarding
- Phone Forwarding
- Message Link Click Forwarding
- Pass additional attributes to Salesforce
- Click Connect.
- Enter the following information, which you collected in Step 4:
- Client ID
- Client Secret
- Account Id
- Subdomain
- Click Complete Setup.
Your Salesforce Marketing Cloud account is now connected to Attentive.
Notes:
- The Salesforce integration connection expires after 60 days if no new emails are captured.
- If you selected the Pass additional attributes to Salesforce option, you should work with your TAM to run an automation to dedupe and combine all data.
Step 6. Verify connection
Log in to your Salesforce Marketing Cloud account and check for the new Data Extension—Complete the procedure to View Marketing Cloud Data Extension Records. A new Data Extension, AttentiveAPIEvent, should appear. This is the new destination for email postbacks.
Salesforce API event postback
With the Attentive and Salesforce Marketing Cloud (SFMC) integration, Attentive offers the ability to post back email addresses and phone numbers collected through Attentive-hosted sign-up units to your SFMC account. With this integration, you install the Attentive app that adds emails to a data extension called AttentiveAPIEvent
, which can be used in the Salesforce Journey Builder. Each of the following event types (as described below) triggers a call to the Salesforce Marketing Cloud endpoint and populates the associated data extension. You can learn more about the data extension in Step 6.
View the following section to learn more about what data can be passed to your SFMC account.
Parameters
Parameter | Description/Notes | Type | |
ContactKey |
Attentive External Subscriber ID. If you want to change this to the subscriber's email address, contact your CSM. |
string | |
EventDefinitionKey |
The external identifier used to populate the Data Extension and trigger Salesforce Journeys related to the integration. There are two auto-generated EventDefinitionKeys. One for Subscription Events (begins with “AttentiveAPIEvent”) and one for Message Events (begins with “AttentiveMessageLinkClickEvent”). |
string | |
Data |
This includes a list of objects about the subscriber. | object | |
EmailAddress |
The email address of the subscriber. | string | |
Phone |
The phone number of the subscriber. Passing phone numbers must be approved by the White Glove team at Attentive. |
string | |
AttentiveSubscriberID |
Attentive External Subscriber ID. | string | |
Source |
Where the event is coming from. | string | |
DateAdded |
The date that the subscriber opted in or opted out. ISO 8601 format. |
date | |
creative_id |
The ID of the Attentive sign-up unit. For opt-outs, Attentive posts back -1 . |
string | |
First Name |
The subscriber’s first name. | string | |
Last Name |
The subscriber's last name. | string | |
Opt Out Timestamp |
The date that the subscriber opted out. ISO 8601 format Reach out to your Attentive CSM or White Glove (whiteglove@attentivemobile.com) if you want to post back Opt Out Timestamp |
date | |
Custom attributes |
Other Attentive custom attributes. | string |
Custom attributes as parameters
You can also post back custom attributes:
- Go to the App Marketplace.
- In the Installed by you tab, click Salesforce Marketing Cloud.
- In the Settings tab, check Pass additional attributes to Salesforce.
- Check the box next to each custom attribute you want to pass back.
- Click Save changes.
Event types
There are three event types that trigger a call to the Salesforce Marketing Cloud endpoint:
- SUBSCRIPTION_OPT_IN_COMPLETED(channel=email)
- SUBSCRIPTION_OPT_IN_COMPLETED(channel=phone).
- SMS_OPT_OUT (optional)
The following sections outline each event type and provide example payloads.
SUBSCRIPTION_OPT_IN_COMPLETED(channel=email)
This event occurs when an email address is captured through Attentive’s sign-up unit. The following is an example of the SUBSCRIPTION_OPT_IN_COMPLETED(channel=email) payload:
{
"ContactKey": "972619350",
"EventDefinitionKey":"AttentiveAPIEvent-XXXX",
"Data": {
"EmailAddress":"user@client.com",
"Phone": null,
"AttentiveSubscriberID": "972619350",
"Source": "Attentive",
"DateAdded": "2020-09-21T12:00:00:00Z"
}
}
SUBSCRIPTION_OPT_IN_COMPLETED(channel=phone)
This event occurs when a user subscribes to SMS through Attentive’s sign-up unit. Note that this information is sent to Salesforce only if Attentive has an email associated with the subscriber. For example, this would occur when a user submits their email address and phone number through Attentive’s sign-up unit. The following is an example of the SUBSCRIPTION_OPT_IN_COMPLETED(channel=phone) payload:
{
"ContactKey": "972619350",
"EventDefinitionKey":"AttentiveAPIEvent-XXXX",
"Data": {
"EmailAddress":"user@client.com",
"Phone": "+15555555555",
"AttentiveSubscriberID": "972619350",
"Source": "Attentive",
"DateAdded": "2020-09-21T12:00:00:00Z"
}
}
SMS_OPT_OUT
This event occurs when a subscriber unsubscribes from SMS.
The following is an example of the SMS_OPT_OUT payload:
{
"ContactKey": "972619350",
"EventDefinitionKey": "AttentiveAPIEvent-XXXX",
"Data": {
"EmailAddress": "user@client.com",
"Phone": "+15555550123",
"AttentiveSubscriberID": "972619350",
"Source": "Attentive",
"DateAdded": "2020-09-21T12:00:00:00Z",
"Phone_Opt_Status": "Inactive",
"Phone_Opt_Out_Date": "2020-09-21T12:00:00:00Z"
}
}
Questions?
We’re here to help! Contact our White Glove team (whiteglove@attentivemobile.com) to ask about the Attentive + Salesforce Marketing Cloud integration.