Didomi - Developers documentation
  • Introduction
  • SDKs
    • Introduction
    • Web SDK
      • Getting started
      • Tags and vendors management
        • Tags management
          • Events & Variables
            • Deprecated
            • Custom events
          • Tag managers
            • Adobe Launch/DTM
            • Eulerian
            • Google Tag Manager
              • Configure the Didomi / GTM integration
              • Didomi's GTM template
            • Tealium
            • Other tag managers
        • Custom Didomi <script> tags
        • Third-party integrations
          • Google Ad Manager / AdSense
            • GDPR via Non-Personalized Ads
              • Share consent and load/refresh ads
              • Share consent without loading or refreshing ads
            • US states laws
          • Google Consent Mode V2
          • Kameleoon
          • Piano Analytics (AT Internet)
          • Prebid
            • GDPR via IAB TCF
            • US states laws
          • Salesforce DMP (Krux)
        • IAB frameworks
        • Programmatic API
      • Configuration
        • Bots (SEO & Performance tools)
        • Configuration by URL
        • Cookies and storage
        • Custom domains for events
        • Notice
          • Behavior
          • Interactions
          • Look and feel
        • Preferences
        • Theme
      • AB tests
      • Custom domain
        • Domain delegation
        • Reverse proxy
      • Share consents between domains
      • Share consents across devices
      • Pass user choices in query string
      • Serve Didomi assets from your domain
      • Reference
        • API
          • Deprecated
        • Events
      • Performance
      • Versions
    • Mobile and TV SDKs
      • Android and Android TV
        • Setup
        • Logging
        • Reference
          • API
            • Deprecated
          • Events
        • Versions
      • iOS and tvOS
        • Setup
        • Logging
        • App Tracking Transparency (iOS 14.5+)
        • Reference
          • API
            • Deprecated
          • Events
        • Versions
      • Unity
        • Setup
        • Reference
        • Versions
        • Troubleshooting
      • React Native
        • Setup
        • Reference
          • Deprecated
        • Versions
      • Flutter
        • Setup
        • Reference
        • Versions
      • Consent notice
        • Getting started
        • Customize the notice
        • Customize the preferences popup
        • Customize the theme & UI
        • Load notice by ID
      • Third-party SDKs
      • Share consents across devices
      • Share consent with WebViews
      • Google Consent Mode v2
      • FAQ
    • AMP SDK
      • Blocking Behaviors
        • Load immediately on page load
        • Load only after consent (positive or negative)
        • Load only after positive consent
      • Consent status for vendors
    • Help & Support
  • API
    • Introduction
      • Authentication
      • Errors
      • Pagination
      • Filters
      • Caching
      • Rate limiting
      • Quotas
      • Translations
    • Data Manager
      • Regulations
      • Configuration Tree
      • Purposes
        • Purposes & Vendors Numerical IDs
      • Preferences Library
      • User Rights
    • Widgets
      • Consent notices
        • Notices
        • Configurations
        • Multi-Regulation Configurations
          • Migration of Existing Notices and API Updates
        • Deployments
        • Tutorials
          • Create and publish a consent notice
          • Create and publish a multi-regulation consent notice
      • Privacy widgets
        • Create a widget
        • Retrieve widgets
        • Edit a widget
          • Content & Design
            • Themes & Shapes
            • Components
              • auth
              • dsar_form
              • footer
              • header
              • preference
              • preference_value
              • save
              • section
              • sections
            • Options
          • Purposes & preferences
          • Settings
        • Deploy a Widget
          • Use your own subdomain
          • Use your own domain
          • Implement an embeddable widget on your website
        • Authentication
          • Manage authentication providers
          • Authenticate your end-user
        • Archive a widget
        • Headless widgets
          • Public Methods
          • Custom elements
          • Custom events
          • Event listeners
        • Tutorial
          • Launch a Preference Center from a mobile app
    • Compliance Reports
      • Properties
      • Reports
      • CSV format reference
      • Websites
    • Consents and Preferences
      • Events
        • Generate IAB TCF consent string
      • Links
      • Proofs
      • Tokens
      • Secrets
      • Users
      • Tutorial
        • Collect and operate data
    • Privacy Requests
      • Requests
      • Notes
      • Links
      • Emails
  • Integrations
    • Introduction
      • Quotas
    • Generic integrations
      • Batch export
        • Destinations
          • AWS S3 Bucket (owned by Didomi)
          • GCP Storage Bucket
        • Exported data
          • Notices consents
        • Logs
      • Webhooks
      • Batch import
      • Analytics export
        • Destinations
          • AWS S3 Bucket (owned by Didomi)
          • GCP Storage Bucket
    • Third-party apps
      • CMP integrations
        • Didomi-mParticle integration for your CMP
        • Deploy Didomi’s SDK for your Adobe Commerce website
      • Preference Management Platform integrations
        • Actito
        • Adobe Campaign Classic
        • Adobe Experience Cloud
        • Adobe Marketo Engage
        • Adobe Source Connector
        • Braze
        • Dotdigital
        • Hubspot
        • Mailchimp
        • Microsoft Dynamics 365
        • Salesforce Marketing Cloud
        • Salesforce Sales & Service Cloud
        • Selligent
        • Brevo (ex Sendinblue)
    • Tutorials
      • Configure a HTTP webhook
      • Configure a batch export
      • Configure an analytics export
    • Emailing
      • Configurations
        • Actito Email
        • Actito SMS
        • Adobe Campaign Classic
        • Adobe Campaign Standard
      • Emails
        • Templates
        • Manage your templates
Powered by GitBook
On this page
  • Introduction
  • Implementation
  • Connection
  • Options
  • Mapping
  • Configuration
  • Example
  1. Integrations
  2. Third-party apps
  3. Preference Management Platform integrations

Salesforce Marketing Cloud

Introduction

Didomi allows you to update your Salesforce Marketing Cloud contact attributes with the preferences collected through your preference management platform (PMP).

Implementation

Connection

Didomi connects to Marketing Cloud on your behalf through API calls using Installed packages. You need to fetch your Client id, Client secret and Authentication Base URI.

Options

  • Upsert mode

Please note that the upsert_mode option is always set to false for Salesforce Marketing Cloud. This means that if the collected consent contains an organization_user_id that has no match in Marketing Cloud, Didomi will not create a new contact and skip the update. The organization_user_id must match an existing contact for the consent to be processed.

  • Bidirectional flow: Please note that the bidirectional flow is not supported at the moment.

Mapping

Didomi uses the entity Contact of Marketing Cloud. The PMP purpose/preference/value can be mapped with an attribute within attribute set of your Audience builder. Hence, a properties.id is a combination of attribute set and attribute name separated by a colon : (Cf. the example below).

For Salesforce Marketing Cloud native demographics (Email demographics, MobileConnect demographics..) your contact attributes may not be updated due to missing mandatory information. Here are some non exhaustive examples that you can also check with your Marketing Cloud expert:

  • Email Addresses: contacts with no attached email address will not be updated through Didomi and SalesForce Marketing Cloud integration.

  • MobileConnect Demographics: your contact must include a country code for the Locale value, otherwise the Didomi preference update will not be reflected on your contact

  • MobilePush Demographics: your contact must include an ApplicationID value.

  • GroupConnect: LINE Addresses and LINE Subscriptions fields are required for a contact to be updated with the Didomi preferences.

Configuration

Didomi needs the following configuration items to set up the connection with Marketing Cloud:

Property
Description
Required

Client ID

Client ID issued when you create the API integration in Installed Packages

Yes

Client Secret

Client secret issued when you create the API integration in Installed Packages.

Yes

URL

Url of the account’s authentication endpoint

Yes

Mappings

Mapping for properties between Didomi and Salesforce Marketing Cloud

Yes

Example

{
    "type_id": "sf-marketing-cloud",
    "authentication": {
        "client_id": "xxxx-xxxx-xxxx-xxxx",
	"client_secret": "xxxx-xxxx-xxxx-xxxx",
	"url": "<https://xxx-xxx.auth.marketingcloudapis.com/v2/token>"
    },
    "properties": {},
    "mappings": [
        {
	    "id": "Attribute Set:Attribute Name",
	    "value": "consents_purposes_cookies_preferences_newsletter_channel_email_enabled"
	}
    ],
    "upsert_mode": true
}

PreviousMicrosoft Dynamics 365NextSalesforce Sales & Service Cloud

Last updated 2 months ago

The configuration of the Salesforce Marketing Cloud integration can be done in the . First please reach out to to get the integration's premium feature activated.

Didomi Console
support@didomi.io