Boomi Flow’s API-First Architecture

7 minute read | 26 Jun 2019
Categories: ,

By Boomi

In our previous post, we explained the kinds of features a low-code application development platform needs to:

  • Build applications faster
  • Extend the functionality of existing applications
  • Connect and unify disparate applications

One of the most important components of a low-code development platform is its architecture. Boomi Flow uses an API-first architecture, which increases flexibility for replacing, improving and extending application services. Its user interface and tools are built as layers on top of the platform and interact with the platform through APIs.

In this post, we’ll dig deeper into the Boomi Flow architecture.

Boomi Flow is one of five related services on the Boomi Platform. The others include IntegrationMaster Data HubAPI Management and B2B/EDI Management.

Open Architectural Stack

Boomi Flow offers an open architectural stack based on REST APIs. This allows developers to tap into our platform at various levels using their language of choice: Java, C#, Ruby, NodeJS, etc. We also have an extensive library of integration connectors that minimize the need for coding when integrating with common applications such as Salesforce, Box, Workday and other popular products.

Our architecture takes advantage of a multi-tenant cloud platform with elastic scaling. Basic core services can be configured using our drag-and-drop interface, but for more complex integrations, our metadata APIs provide plenty of flexibility.

Boomi Flow Architecture

The core Boomi Flow service architecture supports the following capabilities:

Connect

Our services and connect frameworks can integrate workflow applications with any third-party platform or application. We ship with integration services for Salesforce, Box and Twilio. We also have a library of additional services built by our team of third-party vendors.

Provision

The Boomi Flow service includes user management for “builders” (the people building workflow applications) and automatic provisioning for workflow applications that use third-party services for identity. For example, users of an app that connects to Salesforce log in to Salesforce not Flow, but Boomi Flow ensures they are correctly provisioned into your app for tracking.

Model

All the modeling can be done using our point-and-click tooling, or you can work directly with the Boomi Flow metadata APIs.

Translate

Everything you build on the Boomi Flow platform has internationalization built in. This means you can translate your apps into any language without needing to change the logic. Boomi Flow also provides additional capabilities in our translate features for A/B testing and multichannel distribution.

Snapshot

Once you’ve built your flows and are ready to distribute the app to your eager user base, Boomi Flow provides a snapshot capability so you can manage versions and updates, track changes and manage rollbacks as needed.

Package

Boomi Flow provides packaging and distribution support, allowing you to move your flows among Boomi Flow environments (development, staging, production). Packaging can also be used to distribute template solutions.

Run

You can run your Boomi Flow workflow once it’s converted into an app. The Boomi Flow platform is API first, meaning apps are made accessible through our standard Run APIs. These are the APIs that our HTML5 UI framework uses to create the pages and screens that users interact with.

Embed

In addition to running your Flows as apps, the platform also allows you to embed those apps in other systems. For example, users might want to access your app inside Salesforce. Or your app might start when a user uploads a file into a folder in Box.

Frameworks

Many of our customers build their workflows and applications with the pre-configured, drag-and-drop tools in Boomi Flow, with no need for any coding. Nevertheless, things can get complicated in enterprise IT. So, we also provide open-source frameworks to support specialized work. As a result, developers can extend our platform to meet almost any customization requirements.

  • UI/UX (Embed) — Boomi Flow apps are largely distributed as HTML5 apps. Our standard UI is built using two of the world’s most popular HTML5 frameworks: Twitter Bootstrap and Facebook React. We’ve leveraged these frameworks because we know they’re battle-tested by billions of users. We also know you’ll have no difficulty finding a developer who can use them.
  • Integration/Services — Boomi Flow apps connect to third-party applications using a microservice architecture. Rather than connecting directly to the application from the drag-and-drop modeling environment, we abstract all systems using a service framework. This makes everyone’s life easier.
  • Flow builders don’t need to learn all the nuances of various applications and platform APIs. Developers can build services on the Boomi Platform and enjoy the full spectrum of connectivity that our market-leading infrastructure platform as a service (iPaaS) provides.
  • If the underlying system changes (you migrate from Microsoft Dynamics CRM to Salesforce Sales Cloud), you don’t have the huge job of rewriting all your flows. They’re not hardwired to the underlying application. We have software development kits (SDKs) for Java, C# and Salesforce Apex to accelerate the development of these microservices.
  • Reporting and Events — As part of the execution of your apps in Boomi Flow, we track various activities, events and errors to simplify management. This data can be stored in our standard repository or we can push it to any third-party system. Many of our customers prefer all their data in one place so they have a holistic view of how their business is operating.

Automation and digital transformation efforts don’t happen in isolation. That’s why low-code development platforms should foster collaboration between business and IT.

Sign up for the FREE Boomi Flow trial to see how easy we make digitizing your manual processes and building new apps.