This is a Mule 4 app created to communicate with your Data Cloud. You can query, insert, or delete records using this integration; as well as flatten a YAML schema for your Salesforce settings.
What's in this repo:
- Data Cloud Integration API/ ~ Contains the files I used to publish the API Specification that is publicly available in my Exchange Portal here.
- data-cloud-integration-impl/ ~ Contains the Mule project I created for you to call Data Cloud. This is the code used to generate the JAR file that you will use to deploy the Mule app in Anypoint Platform. You can download the latest JAR from the
releases
section of this repo or by clicking here. - rest-clients-requests ~ Contains the Postman/Thunder Client collections to run the requests to call your integration. There is also a .md file in the curl folder for you to copy/paste cURL commands if that's easier for you.
- example-schema.yaml ~ Example YAML file that you can use if you don't have a YAML schema to create the Ingestion API/Data Stream objects in Data Cloud.
I have created detailed resources for you to follow all the necessary steps to get this integration working.
In this first part, we'll go through the Salesforce/Data Cloud settings that we need to set up before even calling Data Cloud through the Mule app.
In this second part, we'll go through the MuleSoft side of the integration and you'll deploy your own Mule app to CloudHub. You do not have to know MuleSoft beforehand. I will guide you through every step.
In this third part, we'll learn how to use our integration. We'll use Postman for this article, but you can use any other REST client like Thunder Client, cURL, or Advanced REST Client.
In Part 2 of this series, we learned that we should not share the CloudHub URL because everyone had access to our Data Cloud credentials with just the link.
There is a simple solution to this problem. In this post, we'll learn how to connect our Mule app (deployed in CloudHub) to API Manager to add basic authentication. This way, even if you share your URL by mistake, people would still need your username/password to access it.
Follow this guide if you want to create your own Mule integration from scratch!