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.