API vs Middleware

11/16/2021
Your options for website integrations

With exponentially growing numbers of third-party tools designed to enhance your website’s capabilities and improve business operations, integrations have become an essential part of any website strategy. 
 
There are typically two approaches you can take when dealing with complex, highly-custom integrations:

  1. Use an API to connect your website directly.
  2. Use a middleware system as a connector between your website and other tools.

Here’s how to find which approach is right for you. 

API Integration: Direct Website Connection

An example of an API integration.

Consider the Application Programming Interface (API) to be a single, direct line of communication between your website and the tool you’ve integrated it with. Most tools — marketing technology integrations, order processing systems, even website platforms themselves — provide their own API.

The API gives your developer the instructions to connect two systems together to pass data or remotely execute commands in the other system. You see this everywhere these days. For example, enabling the Zoom plugin for our Slack application, made an API connection that allows us to initiate Zoom meetings from within Slack.

A few examples of APIs developers might use:  

From a web developer’s perspective, using an API is a common method of integration. For example, if a client is requesting we integrate their MailChimp email marketing tool with their Drupal CMS, we’ll write a Drupal module that uses the MailChimp API to create a new contact record when a webform is filled in on the website.

The benefit of the Direct API approach for development is that it provides direct, secure mechanisms for two entirely different systems to communicate and use each other's strengths.

However, an API is a “hard-coded” connection between systems. APIs get updated with some scheduled frequency, so you should have a plan for maintenance to support them. 

Integrations Getting Complex?

Bear Group specializes in scoping and solving integration setups. If you’re looking for assistance on your next web development project, click the button below to contact Bear Group.
Middleware Integration: Indirect Connection

An example of middleware integration.

Middleware is a generic term for software or applications that sit in the middle between two systems or data sources. For example, order data is processed from your ecommerce website, passed into a middleware application, and then distributed to your ERP, accounting software, and email marketing tool. So you might process data from one source to multiple destinations.

When managing a highly-custom website strategy—particularly websites that have a large number of potential integration points—utilizing middleware can be an extremely helpful approach to standardize processing and create a common connection point for many systems.

You’d often select the middleware app that has the highest number of pre-built “connectors” for your systems, so you don’t have to pay for the custom API development and do that work yourself. 

However, middleware providers usually have license or transaction, or data processing costs associated with them, where API use between applications does not. It’s also likely that the data being processed by your middleware is some of your most sensitive—order and customer data, for example—and passing it through your third-party middleware tool adds an additional vulnerability to your system.

An example of this type of middleware application is companies like Celigo, which we have used to provide middleware integrations between Adobe Commerce (Magento) and Netsuite. These “connector” apps are everywhere.

Plan for development with API or middleware

Both direct API connections and middleware connections require some maintenance. When you migrate your website to a new platform or update it to a new version of your current platform, it’ll have to be upgraded or rewritten.

Integrations are complex web development configurations and typically start with scoping and solution architecture discussions. Services will offer simple APIs or middleware that will advertise their ease to setup, more often than not it will take a few weeks of development work and extensive testing to integrate whichever method you choose.