Camunda Platform 8 introduced Connectors, a faster and easier way to integrate Camunda Platform with the many different types of process endpoints that you need to run your mission-critical business processes. Naturally, we saw a need for outbound Connectors, which are those that trigger something to happen while Camunda Platform is executing a BPMN process. We’ve released quite a few outbound Connectors, and our partners and members of the Camunda community have been building outbound Connectors, too.
But there are also many use cases for inbound Connectors, where something needs to happen in Camunda Platform because of an external event in a third-party system. Inbound Connectors allow you to automatically start process instances in response to things that happen throughout your technology stack, giving you maximum flexibility for even the most complex business processes.
Inbound Connectors leverage generic properties in BPMN, which you can read about in our technical sneak peek blog post. We’re excited to share that an HTTP Webhook Connector and a GitHub Webhook Connector are now available for you to use.
Tip: If you haven’t used Connectors before, be sure to first check out how to create secrets in Camunda Platform 8. Connector secrets help you avoid exposing sensitive information in your BPMN processes.
What are webhooks?
A webhook is a way for an application to automatically send a message to another application over HTTP. The receiving application has a unique URL where it can receive a payload of data from sending applications. The receiving application can respond using HTTP status codes, such as 302 if the payload was received successfully, or 404 if something went wrong. Webhooks can even be secured using HMAC authentication, for example.
An inbound webhook Connector creates a webhook for a Camunda process. Once a webhook is set up, an application can send a POST request containing data to a preconfigured URL, which triggers a process instance to start in Camunda Platform.
HTTP Webhook Connector
The HTTP Webhook Connector allows you to start a BPMN process instance triggered by an external HTTP call. This is a generic Connector that allows you to react to events in any system that supports webhooks or can send an HTTP POST payload to a URL. For example, you can start a process instance when a customer orders an item from your ecommerce site, when their credit card payment succeeds or fails, when their order is fulfilled at the warehouse, or when they initiate a product return.
Visit the HTTP Webhook Connector documentation for details on the data you’ll need to fill out the Connector properties in Modeler.
GitHub Webhook Connector
The GitHub Webhook Connector allows you to start a BPMN process instance triggered by an event on GitHub.com. GitHub offers many different webhook events, such as
issue_comment, and so on. Refer to GitHub’s documentation on webhook events and payloads to learn about the options that are available.
As an example, using the GitHub Webhook Connector, you can automatically start a process instance when a team member opens a new pull request. It’s easy to pass the URL of the pull request as a process variable that you can use in subsequent BPMN tasks. Combine this Connector with our built-in Slack or SendGrid Connector to automatically notify other team members of GitHub activity.
Visit the GitHub Webhook Connector documentation for details on how to register a webhook in GitHub and get the values needed to fill out the Connector properties in Modeler.
Inbound Webhook Connectors are already available for Camunda Platform 8 SaaS users. These Connectors are also available for Self-Managed users, with some limitations (such as no visual Webhook tab in Modeler – see the docs for full details).
Try it for yourself today by creating a free account.
Learn more about Connectors
Want to see more Connectors? Join us at the Camunda Community Summit, virtually or in-person, on May 10-11. Learn how to build a Connector during the Hackday, deep-dive into Connector architecture in a workshop, or watch presentations from community contributors who have released open source Connectors.