Streaming SalesForce events with webMethods.io Workflows

Introduction

As you probably have noticed in the past couple of years, event streaming is a very hot topic these days. Almost every integration platform has the possibility to provide streaming capabilities in one way or the other. This means, having a constant flow of data, each containing information about an event or a change of state, flowing through your integration flows. webMethods.io is no different. It gives you the power to connect apps, devices, and on-premises systems with only clicks and zero code. It also allows you to have a constant data stream between these different components. This can be done with webMethods.io’s two basic integration components:

  1. webMethods.io Workflows
  2. webMethods.io FlowServices

Main differences

Now, although these two ultimately help you accomplish the same goal, there are some notable differences between the two. Let’s go over them really quick, so you know which one’s suited most for you.

Now, it is of course perfectly possible to only use WorkFlows, if your use case is relatively simple. However, when a more complex use case is needed, the goal is to use both together. For example, you can have a SalesForce trigger as input for your workflow, but you need to transform events (JSON), using different field checks, etc. Eventually, that JSON needs to be sent to a specific endpoint, where you have no out-of-the-box connector in your Workflow. 

This is an example where an integration specialist would step in, and create a complex data mapping in FlowServices, as well as a custom connector to reach the endpoint. 

The final step is then importing that FlowService in your workflow, and tadaaa, you have a workflow streaming SalesForce events with a complex data mapping & connector running behind the scenes in the FlowService! 

Salesforce event streaming with webMethods.io Workflows

Now you’ve had a short introduction of the two main products from webMethods.io, let’s look at how we can actually set up the event stream from SalesForce using a WorkFlow. So after creating a fresh workflow, you can select your desired trigger, which contains an impressive list of options. For our case, however, we need the “Salesforce streams” Trigger. 

Once you selected the Streams to trigger, you’ll have to specify your connection parameters, as well as some other properties related to the actual events you want to receive. You can select which type of SalesForce event you actually want to receive. The options are “PushTopic events”, “Platform events”, “Change data capture events” and “Generic events”. I think most of the time, the “Change data capture events” is the most popular option since this results in events related to every type of data change on Salesforce. But of course, feel free to investigate the other options. 

The next option is the “Channel” option, which gives you a list of all the different types of change events you can choose from. Now, one big attention point we noticed to this, is that you only have the option to get:

  • All Salesforce change events
  • One specific change event

So, you don’t have the option to select multiple specific events.. which is a pity of course.

Now you’ve got your Salesforce trigger in place, you can start connecting and routing your workflow according to your use case. For example, webMethods.io has a nice switch-case feature that you can implement in your flow, and route specific events to specific out terminals. This way you can implement different actions based on the type of SalesForce change event, very useful!

Implementing FlowServices into your main workflow

So, as mentioned in the introduction, Workflows, and FlowServices work hand in hand. Below you see a very basic example of a FlowService integrated with a webMethods.io workflow. As the node describes, a complex data mapping is done in the FlowService before creating a new card on our Trello board when a SalesForce contact is updated.

image-20221125-135948

To add this FlowService, you can just go to your connector tab in your workflow environment and go to the second tab. There you can see the list of all your FlowServices:

Conclusions

Alright, now you’ve had a brief summary of SoftwareAG webMethods.io integration Workflows & FlowServices, as well as the SalesForce event streaming aspect, it’s time, to sum up our positives regarding our short development experience, and some possible points of improvement to make the development experience even more pleasant.

Positives

  • Clean and easy-to-use graphical user interface
  • A lot of out-of-the-box connectors
  • Integration with FlowServices is very intuitive
  • Great data mapping features in most nodes (also in form of a drag-and-drop system)

Points of improvement

  • Possibility to select multiple specific channels when using SalesForce event streaming, instead of “All or only one”
evahensels

evahensels

Curious to know more about this topic?

Working at i8c

i8c is a system integrator that strives for an informal atmosphere between its employees, who have an average age of approx 30 years old. We invest a lot of effort in the professional development of each individual, through a direct connection between the consultants and the management (no multiple layers of middle management). We are based in Kontich, near Antwerp, but our customers are mainly located in the triangle Ghent-Antwerp-Brussels and belong to the top 500 companies in Belgium (Securex, Electrabel, UCB, etc…).

Quality Assurance

i8c is committed to delivering quality services and providing customer satisfaction. That’s why we invested in the introduction of a Quality Management System, which resulted in our ISO9001:2000 certification. This guarantees that we will meet your expectations, as a reliable, efficient and mature partner for your SOA & integration projects.

i8c - ISO9001-2015

Also worth reading

Integrating with TIBCO CLOUD

Our experts Glenn, Jason, Jurgen, and Kevin dedicated an i8c FastTrack Day to examining the TIBCO iPaaS offering. Check out their Research & Development day report to learn what they uncovered. 👇  TIBCO CLOUD™ The TIBCO Cloud™ Integration enterprise integration platform-as-a-service (iPaaS) provides self-service integration

Read More »

Meet our Integration Specialist – Alexandra

Alexandra worked in tech for 15 years before joining i8c. With lots of experience in API management and Java development, we’re thrilled to add yet another expert to our i8c community! It’s pretty clear why we want to work with Alexandra, so let’s take a

Read More »