Salesforce Connector Reference

Use Salesforce as a data source (take new Salesforce records and copy them to a Google Sheet, for example) or a data target (take a new employee in Workday and create a contact in Salesforce). Some details of how to work with data in a flow are specific to the data source or data target. The details also depend on the trigger or actions you choose.


To connect to a system, whether it is a source of data or the target where you are sending data, you must create a connection with that system’s required credentials. You typically connect to different systems within a flow and can reuse each connection every time you need to connect.

This system requires the following credential information for its connections:

Connection Name

Enter a connection name that will help you remember the details of this connection. You can reuse connections multiple times in a single flow, and in more than one flow, and the credentials are hidden after you create the connection. Therefore, it’s helpful to provide a name that easily identifies this connection from others.

Only you can see the connection. Other users in your Composer app must create their own connections.

Username and password

The username and password that you used to log in to Salesforce. You’ll need to create a connection even if the data source is the same Salesforce org where you operate Composer. However, Composer won’t ask for your password again. Instead, it displays an authentication approval dialog.


The URL that you used to log in to Salesforce, for example, myOrg.salesforce.com.

Salesforce Connected App Limits

Salesforce allows each user to grant access to no more than five connected apps at a time. Because of this limit, if you create more than five Composer connections to the same Salesforce org, Salesforce revokes tokens from the oldest to the most recently created, without notice, until the number of authorized tokens returns to five.

If possible, create only one connection per user per Salesforce org to avoid this issue.

For more about Salesforce connected apps and authorization, see https://help.salesforce.com/articleView?id=remoteaccess_request_manage.htm.

Relaxed IP Restrictions

If your org has IP restrictions set, errors that reference IP or OAuth failures may occur. Relax the IP restrictions to resolve this error.

To relax IP restrictions on a connection to Salesforce:

  1. Log into the Salesforce org. You must be a Salesforce admin in that org.

  2. Navigate to Setup > Connected Apps OAuth Usage.

  3. Find MuleSoft Platform in the list with the description MuleSoft OCS app for KPROD, and click Install.

  4. Click Install on the authorization dialog.

    This makes the connected app (the connection you created) available so that you can relax the IP restrictions. It doesn’t reinstall the Composer app.

  5. Click Edit Policies.

  6. Change IP Relaxation to Relax IP Restrictions and then save your change.

IP restrictions are now relaxed for the connection.

Change a Connection

To change a connection:

  1. Open the flow.

  2. Click the change icon in the trigger or every action that connects to a sandbox:

    Change the connection control
  3. Choose a new connection and save your changes.

Salesforce Sandbox and Production Orgs

You can connect to Salesforce sandbox and production orgs.

To protect your production org:

  1. Connect to a sandbox org when you build and test a flow.

  2. After testing is complete, connect to a production org, test the flow with the new connection, and then activate the flow.

    Remember to change the connection from sandbox to production in every trigger and action that uses the sandbox connection.

Null Values

By default, Composer ignores fields with empty (null) values. To change this behavior to clear the existing value of the field when the field value is null, on the card, click the gear, and then select Clear on Null Values.


Each flow starts with a scheduler that specifies a time span for how frequently the flow starts or with a trigger that you define, such as "each time a new record is created." Triggers provide multiple options related to the data in your system.

Triggers execute every ten minutes.

This system provides the following trigger options:

New record

Checks for a new record every 10 minutes.

New or updated record

Checks for new or updated records of the specified object type every 10 minutes.

Deleted record

Checks for soft-deleted records. Soft-deleted records are stored in Salesforce for approximately 15 days.

Records are typically stored for approximately 15 days before being hard-deleted and irretrievable. * You can’t modify the soft-delete timestamp.

Trigger Conditions

You can add trigger conditions to specify which conditions should trigger a workflow, for example, you can restrict a workflow to trigger only when a specific field meets the conditions you specify.

To add a trigger condition:

  1. Select a trigger.

  2. In the Trigger Conditions section, click on the Criteria dropdown menu and select either All Conditions Must Be Met (AND) or Any Condition Must Be Met (OR).

  3. Specify your conditions for specific fields.

To add more trigger conditions, click Add Condition.


After you connect to a system and define the trigger or configure a scheduler, you define the actions that the flow performs, such as copying a record from Workday to Salesforce. The actions you can perform depend on which system you are connected to.

This system provides the following actions:

Create new record

Create a standard or custom record.

Update record

Update any standard or custom record as specified by an external ID.

Get records

Return all the records that match specified search terms:

Query builder UI
  • You can choose which fields that the action fetches in the Result fields section.

  • You can add one or more conditions to specify which types of records should be returned in the Filter records section. For example, you could specify that the last name begin with "B."

  • You can control the sort order of the returned records in the "Sort records" section. Records can be sorted in ascending or descending order of a field that you specify.

When you add a record that was returned from the Get records action, you must add a For Each loop to your flow.

When Get Records is a step in your flow, if Field-Level Encryption is enabled and you’re trying to filter on an encrypted field, only the following string operators are supported: equals, not equals, or empty. Field-Level Encryption doesn’t support contains, starts with, or ends with.

For more information on Field-Level Encryption, see the Salesforce documentation.

Create or update record

Update any standard or custom record as specified by record ID. If the record ID isn’t found, create the record.

Delete record

Delete a record specified by its object type and record ID.


All standard and custom Salesforce objects are available.

Some products in Marketing Cloud and Commerce Cloud use data that is not stored in Salesforce records and therefore is not available with a Salesforce connection.

Was this article helpful?

💙 Thanks for your feedback!

Edit on GitHub