API – Application Programming Interface

Today, we’re talking about one of our favorite topics: API. Unnoticed by most users, their Facebook, Gmail, LinkedIn and many other mobile apps, desktop apps, and websites are using APIs! API (application programming interface) is a set of routines, protocols, and tools for building software. An API packages the complex back-end logic and functionality of a system to make it easy to use by developers like us to build software. Below are some use cases for API architecture.

The Corporate Hub

Many companies develop applications to run their business. It’s common to have one or many eCommerce or customer portal applications along with backend administrative dashboards. The Corporate Hub API model is used to centralize common functionality so developers aren’t writing, maintaining, and testing the same functionality in multiple different applications.

The SPA Engine

The single page application, or SPA, pattern is widely popular! The core methodology is building an application which is primarily powered by an API to deliver data and functionality while leaving all of the design, UI, UX to modern javascript frameworks like Angular and React. Maintainability and extensibility are major features when choosing the SPA pattern for web-based application architecture.

The Integration Engine

Company software is usually expected to work seamlessly with external systems such as accounting, shipping, email, text, and inventory systems. By providing an integration point other applications can leverage the corporate functionality without development teams building the same functionality into their own application. Many businesses see this as a win-win relationship because each company can focus on what makes them great while still providing customers a connected and integrated experience.

The Dev Team Accelerator

Companies which are heavily software development dependent find there is a large difference between the skillsets and demands between frontend and backend developers. Companies which need to move fast and deliver high-quality products tend to segment their frontend and backend teams. They use an API architecture as a unification mechanism. Once the API inputs and outputs have been defined and documented both teams can run fast and hard on their own set of requirements with confidence that their work will plug together. This results in faster delivery and higher quality work, another win/win!

The API Company

Some companies have taken API design to such extremes that it has become the bulk of or their entire business. Modern Saas companies have built amazing companies with nothing but an API like Twilio and SendGrid. These APIs allow startups and large companies to integrate new functionality into their existing product offering.

The API Vision

There is no single solution which will result in ultimate software harmony between developers, business, and customers. However, API-oriented architecture will promote time-to-market and future software flexibility. The development teams will be able to work more independently while still providing a cohesive solution responsive to the business demands.

Authors:
Orion Jensen
Wm. Barrett Simms