Salesforce Data Cloud Ingestion Template
Setup instructions
The comprehensive instructions on this page show how to configure and deploy the provided integration application template to MuleSoft Anypoint Platform. Users are guided through the essential steps needed for successful deployments in two different scenarios as well as a section on troubleshooting common issues:
- Deploying via MuleSoft Direct
- Deploying via Anypoint Platform
- Instructions for ingesting unstructured data from a new source
- Troubleshooting
Data source configurations
None required for the default template application.
Deploying via MuleSoft Direct
To enable the ingestion of unstructured data into Data Cloud this application must first be deployed using MuleSoft Direct. When enabling the integration, the following properties must be configured to connect with the data source and target system.
Property Name | Description |
---|---|
Source Container ID | An arbitrary value to identify a specific instance of the application. |
Salesforce Hostname | The address or domain name used to access a Salesforce instance, such as login.salesforce.com . |
Salesforce Consumer Key | The Consumer Key of a Connected App in Salesforce, used in conjunction with the Consumer Secret to authenticate and authorize API requests. |
Salesforce Consumer Secret | The Consumer Secret associated with the Consumer Key of the Connected App. |
Mule Configuration Environment | Target deployment environment configuration selector. |
Additional configuration steps
After the application has been deployed there are some additional configuration steps that should be done within Anypoint Runtime Manager. The following instructions are for CloudHub 2.0 deployments but the steps are similar for CloudHub deployments.
- Find the deployed application by entering the name in the
Search Applications
field. - Click on the application name or select the entry and click the Manage Application button on the right. For CloudHub 2.0 deployments, a screen appears with multiple tabs to configure the application (for CloudHub deployments you will need to click the Settings item on the left navigation bar).
- Update the
Runtime Version
to the latest patch release and select theUse Object Store V2
checkbox under theRuntime Options
section. - Consider increasing the number and size of the replicas (workers) if the source container being monitored has a large number of resources and/or a high volume of changes.
- Click the
Apply Changes
to deploy the new configuration
Deploying via Anypoint Platform
To support the ingestion of unstructured data into Data Cloud the application must first be deployed from MuleSoft Direct in order to create the required connector (in Data Cloud); once deployed the application can be updated in Anypoint Runtime Manager as needed.
Getting started
The Getting Started with MuleSoft Accelerators guide provides general information on getting started with the accelerator components. This includes instructions on setting up your local workstation for configuring and deploying the applications. |
Deployment
Each Accelerator implementation template in Exchange includes Bash and Windows scripts for building and deploying the APIs to CloudHub. These scripts depend on repositories, global settings, deployment profiles, and associated properties configured in the Maven settings.xml
file. In particular, make sure the common properties for your environment have been provided in the CloudHub-DEV
profile (e.g., Anypoint Platform client ID and secret).
For additional details, please refer to the Application Deployment section of the Getting Started Guide.
Required property overrides
Many templates can also be run from Anypoint Studio without having to customize the Run/Debug profiles. However, some templates make use of hidden deployment properties to protect sensitive information (e.g., passwords and secret keys). These properties must be supplied to the runtime by updating the configuration profile and adding them as VM arguments. At a minimum, the following properties must be customized to reflect the target deployment environment.
Property Name | Description |
---|---|
api.autodiscoveryID | Required if using API Manager to secure this API |
app.container-id | Source Container ID |
ingest-common.salesforce.host | Salesforce Hostname |
ingest-common.salesforce.client-id | Salesforce consumer key |
ingest-common.salesforce.client-secret | Salesforce consumer secret |
mule.env | Target deployment environment configuration selector |
Instructions for ingesting unstructured data from a new source
The ingestion of unstructured data into Data Cloud using the Mule ingestion applications requires them to be deployed from MuleSoft Direct in Salesforce. This is due to the fact that MuleSoft Direct auto-generates the connector in Data Cloud, which is required for creating a UDLO and ultimately ingesting data from the source system. Although this cannot currently be configured manually, a deployment of this Ingestion Template application can be updated to provide data from a source system not currently supported.
Prerequisites
To support a different data source, download the Ingestion Template and import it into Anypoint Studio or Code Builder. Rename the application to reflect the target source system and flesh out the implementation as required, using the other ingestion applications as reference as needed. In particular, it is recommended to implement the dependencies check for the health endpoint (get:/ping?checkDependencies=true
) to ensure proper deployment prior to creating a UDLO from the source. After testing and verification of functionality, build a deployable archive of the application.
Enabling a new ingestion source
Once your application is ready, it can be deployed by following these steps.
- Enable an instance of the Template app from MuleSoft Direct, specifying an app name reflective of the target source system.
- The container ID must match the desired container of the target ingestion source.
- The Salesforce hostname and credentials should also be provided.
- Wait for the application to be fully enabled.
- Once enabled, go to Anypoint Runtime Manager and open the Settings tab for the deployed application.
- Add any runtime properties required to connect to the target source system.
- Also take the opportunity to update the runtime version to the latest patch release and enable Object Store V2.
- Upload a new application jar file using the one built for the ingestion application that connects to the target source system.
- Apply the changes and monitor the runtime log to ensure successful startup.
- Use the Postman collection from the application to invoke the health check endpoint, with the dependencies flag enabled, to ensure connectivity to the target source system.
Once the deployment has been verified you can create the UDLO from the Data Cloud connector generated for the application deployment by MuleSoft Direct.
Troubleshooting
- If you need to change the source container identifier you will have to delete the instance and redeploy from MuleSoft Direct: the source ID cannot be modified after deployment by changing the runtime property of the application.