Setting Up Outbound Messages in Salesforce

An Outbound Messages in Salesforce is an action that sends specified XML data from Salesforce to an endpoint. An outbound message can be configured to trigger a Flowgear Workflow using the XML source data to perform a specific integration task or set of tasks.

Configuring a Flowgear Workflow

To begin using Outbound Messages we start by creating a Workflow that is accessible over HTTP, see API for more information. Add a Variable Bar and add the special property FgRequestBody to it on order to receive the payload that will be sent from Salesforce.

Accessing Outbound Messages In Salesforce

After configuring the workflow's API Binding we need to configure the outbound message settings for your Salesforce environment. To do so, log into your Salesforce environment click on the gear icon at the top right to open a dropdown menu. Select Setup to navigate to the Salesforce Setup settings.

After navigating to Salesforce Setup settings, locate the Quick Find search bar located on the left pane. Search 'Outbound' to display a list of Outbound setting options. Select Outbound Messages located under Process Automation.

Selecting Outbound Messages will direct you to the Outbound Messages setup landing page.

To create a new Outbound Message click the New Outbound Message button located in the center of the landing page.

Configuring an Outbound Message

Click into the dropdown menu to select the object that has the fields you want to included in your outbound message. Click Next.

Enter the desired Name and Unique Name to identify the newly created Outbound Message.

Enter the Flowgear Workflow REST API Binding URL into the Endpoint URL field.

Select the fields to be included in the Outbound Message and click Add to move them from Available Fields to Selected Fields. When finished Click Save.

After clicking Save, navigate back to the Outbound Message Setup landing page to see the new Outbound Message in the list. You can now trigger your workflow by completing the Action or Object you selected when creating your Outbound Message. For example, if you chose the Contact object, the Outbound Message will be sent when a new Contact is created.

Acknowledging Outbound Messages in Flowgear

Outbound messages require an acknowledgement from your API endpoint. That acknowledgement is a SOAP message that includes an Ack property set to true as showing in this example:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
	<soapenv:Body>
		<notificationsResponse xmlns="http://soap.sforce.com/2005/09/outbound">
			<Ack>true</Ack>
		</notificationsResponse>
	</soapenv:Body>
</soapenv:Envelope>

To set up the acknowledgement, add the FgResponseBody Property to a Variable Bar in your Workflow. Copy and paste the above SOAP acknowledgement message into the the Property.

See Sample Workflow for an example Workflow that processes an outbound message. Use an API Client such as Postman to invoke the Flowgear Workflow directly during testing.