This document contains an agenda and introduction for a MuleSoft Meetup Group event in Warsaw about integrating Salesforce Marketing Cloud with MuleSoft. The agenda includes introductions, an overview of the Marketing Cloud and its SOAP and REST APIs, and a quiz with prizes. The speaker is an integration consultant and the organizer is a MuleSoft ambassador. The event encourages attendees to network on social media and provides details on a lottery for Amazon vouchers.
5. ● Integration Consultant at Deloitte Digital Poland
● Working with Salesforce ecosystem products for 2 years
● Customer 360 Go To Market Champion
● Certified Salesforce and MuleSoft professional
Follow me on LinkedIn
/in/davydhashchak
5
Davyd Hashchak
Speaker
Your Photo
6. ● Subject Matter Expert at PwC Poland
● MuleSoft Ambassador
● MuleSoft Meetup Leader for Warsaw, Poland
● Working with MuleSoft products for over 10 years now
● One of Salesforce Trailblazers
https://trailhead.salesforce.com/trailblazers/patryk-bandurski
Organizer
Check out my integration blog
https://ambassadorpatryk.com/blog
6
7. Share the event
● Share the Meetup in your social media
● Tag the event using
#MuleSoftMeetup
#WarsawMuleSoftMeetup
Thanks ☺
7
8. Lottery
● How it works?
○ During the event randomly is selected a winner
among the present attendees.
○ One winner at a time!
○ Three winners at the event
○ I will ask winners to send me Direct Message with
email address
● Prize is sponsored by
Three winners of today’s
lottery receives:
Amazon Voucher for 30$
8
Go to www.menti.com and use the code 9155 3697
10. What is Marketing Cloud ?
Marketing Cloud is an integrated platform that
enables delivery of personalized customer
engagement at scale on any channel, including:
● Email
● Web
● Mobile
● Social
● Digital advertising
Marketing Cloud helps businesses to
● Know their customers – connect known and
unknown profiles in a unified view
● Create two-way, real-time personalized
engagement when and where the customer
wants
● Measure, report, and optimize on marketing
performance, impact, and customer loyalty 10
11. Data Model
Salesforce Marketing Cloud enables 3 types of data for its' users:
● Standard Objects – common for all marketing representatives definitions such as
Account, Subscriber, Email and system objects, like Automation.
● Data Extensions - custom objects, simply tables which may contain more specific for
company data, such as single-page application form subscribers, that have opted on
contact, which create an audience for our marketing campaign.
● Data Views - a powerful feature that allows storing subscribers' information and data
tracking. Can be accessed programmatically only. Provide data and metrics about
events and behavioural information to drive analytics. For example, email opens, emails
forwarded, links clicked, etc.
Attribute – is a column in SFMC table context.
SFMC enables different options for its' users to import data, one of them is SFTP, but today
we will review SOAP and REST APIs for integration.
11
12. Installed Package
● Installed Package is a
container of some
functionality in SFMC
● For integration with other
systems choose "API
Integration"
● Server-to-Server for
integration with Back End
● Web App and Public App for
integration with Front End
● Choose scope for your
Installed Package – what your
app will have access to
● Restrict access of your
integrated app as much as
possible
12
13. Installed Package
13
● After successful creation of
Installed Package, locate
your Client Id and Client
Secret, you will use them for
authentication.
● Change scope if needed
14. Authentication in REST
● URL: https://{domain}.auth.marketingcloudapis.com
● OAuth 2.0 Client Credentials Flow
○ POST /v2/token
○ Lifetime - 20 minutes
○ Bearer Authorization
● OAuth 2.0 Authorization Code Flow
○ GET /v2/authorize
○ Lifetime - 20 minutes
○ Can be refreshed
● Older "legacy" installed packages use OAuth 1.0
14
Ref: Create an OAuth 2.0 API Integration in Enhanced Packages | Marketing Cloud APIs and SDKs | Salesforce Developers
15. Authentication in SOAP
● WSDL: https://{domain}.soap.marketingcloudapis.com/ETLFramework.wsdl
● URL: https://{domain}.soap.marketingcloudapis.com/Service.asmx
Options
● Username and Password of user with API access – Gets access on behalf of the user
● Pass access token retrieved via OAuth 2.0 - Gets access on behalf of installed package
15
You can find your domain, WSDL and Service addresses at Setup > Company Settings > Account Settings
18. SOAP API Web Resources
SOAP API is your choice for integration of:
● Email Studio
● Automations – automated flows in
Automation Studio
● Content creation
● Lists – subscriber tables with default
attributes, lower limitations on number of
records, simplified
● Data Extensions – customizable subscriber
tables, higher limitations
● Tracking
● Triggered sends – action-based email
sending
18
19. SOAP API Methods
● Configure - Configure a Marketing Cloud account
● Create - Create one or more objects
● Delete - Delete one or more objects
● Describe - Retrieve metadata for an object
● Execute - Access and execute one or helper functions
● Extract - Extract a file to the Marketing Cloud FTP site
● GetSystemStatus - Retrieve the status of your
Marketing Cloud account
● Perform - Perform an asynchronous action
● Query - Query Marketing Cloud data
● Retrieve - Get information on a single object type
● Schedule - Schedule an action or event to occur
● Update - Update information on one or more objects
19
Operations in MuleSoft module
20. Add Data to Data Extension with SOAP API
- DEMO
● Create Data Extension
● Add fields
● Locate Customer Key – External ID
● Locate MuleSoft Connector Config
● Execute Create Entities call
● Observe logs and response
20
21. Technical Capabilities of SOAP API
Limits:
● 2000 calls per minute
● 120 seconds call timeout
● 2500 records – batch size
Optimum thresholds:
● Concurrent Imports to a single Data Extension – from 1 to 2
● Concurrent Imports to a single List – from 1 to 2
● It is recommended to make only 20 or fewer synchronous API threads per request
21
23. Request Options Set Up
Allow you control the execution logic:
● Request Type– Sync/Async
● Callback – Email, HTTP Post, FTP, None
● Priority
● Scheduled Time
● Unite calls in a group with Conversation ID
Supported methods are Create, Update,
Delete, Perform
Commonly used objects for Async operations:
● TriggeredSend
● SMSTriggeredSend
● VoiceTriggeredSend
● DataExtensionObject
23
24. Considerations for Options Set Up
● CreateOptions should be set up with PascalCase for keys
and SNAKE_UPPER_CASE for constant values when
forming a message for MuleSoft SFMC Connector
● HTTP Post return data format is application/x-www-form-
urlencoded
● HTTP Post does not have retry logic implemented in case
of error
● SFMC will execute callout only using HTTPS
● Callback URL should be allowlisted in Marketing Cloud
24
25. Asynchronous Process - DEMO
● Add Data to Data Extension asynchronously
● Locate callback
25
27. REST API Web Resources
REST API is your choice for integration of:
● Contacts
● Content Builder
● Journey Builder
● MobileConnect
● MobilePush
● Campaigns
● Personalization Builder
● Triggered Sends
27
28. Use REST API
Limits:
● 2500 calls per minute
● Request size limit is 4MB
● Tracking and data retrieve operation call timeout – 300 seconds
● Other requests – 120 seconds
28
30. Journey Builder API
Journey Builder is used for creation of event-
driven, responsive campaigns to distribute
across different channels at any time and any
frequency.
REST API allows us to programmatically
access and interact with this functionality.
30
32. Single-Sign-On
Salesforce Marketing Cloud can act as a Service Provider via SAML
● Enable SSO in Key Management
● Retrieve SAML Metadata
● Apply it to your Identity Provider
More about setting up SSO in Marketing Cloud:
Marketing Cloud Single Sign-On (SSO) Implementation Overview (salesforce.com)
32
35. Trivia Quiz
● Remember!
○ The quicker you respond more point you earn
○ Only good answers count ☺
○ Only one voucher per winner per month
○ Training account with the given email
● Prize is sponsored by
Three winners of today’s
quiz receives:
Free voucher for MuleSoft
online training
35
Go to www.menti.com and use the code 9155 3697
To Change
36. Congratulation
● Congratulation to all the winners
○ of the Quiz
○ of the lottery
36
Go to www.menti.com and use the code 9155 3697
To Change
38. Share your knowledge
● Become a speaker and share your knowledge with our community
● Submit your idea via this form:
https://tinyurl.com/become-speaker
via email patryk.bandurski@gmail.com
or
38
39. ● Share:
○ Tweet using the hashtag #MuleSoftMeetups
○ Invite your network to join: https://meetups.mulesoft.com/warsaw/
● Feedback:
○ Fill out the survey feedback and suggest topics for upcoming events
○ Contact MuleSoft at meetups@mulesoft.com for ways to improve the program
What’s next?
39