THE DEMOCRATIZATION OF CUSTOMIZATION: APIS AND THE ENTERPRISE

Every business, even within the same industry, has different processes, needs, goals, and technological requirements.  Every organization must operate and innovate in their own way to achieve market success through efficiency and agility.  In order to do this, businesses are increasingly embracing the multicloud world with Postmodern ERP platforms and best-in-breed or industry-specific add-ons.

An adaptable technology platform has an interoperable, loosely coupled, and services-based architecture at its core and APIs to stitch mission-critical add-on services together as needed.  An Application Programming Interface (API) defines the way software and services interact with each other.  APIs empower developers to tie applications or services together in a standardized way.  These integrations allow applications to work with one another and share data generated by each component across the entire ecosystem.

The Connected Cloud

Gone are the days of a single, monolithic software suite with all of the functionality to run your business.  Of course, these solutions existed because it was difficult, and costly to integrate applications through laborious point-to-point interfaces in the past.  However, modern business ecosystems need to rethink their approach to innovation and integration.  Cloud technologies have made it possible to connect specialized applications through APIs.

What are APIs?

In broad terms, an Application Programming Interface (API) is a set of subroutines, protocols, and tools that define methods of communication between various software components. An API may be for a web-based system, operations system, database system, computer hardware, software, application, or platform.  API specification can take many forms, but usually includes specifications for routines, data structures, object classes, variables and/or remote calls.

In plain English, this means that APIs translate a program’s internal functions to the outside world in a limited, standardized fashion.  This means that applications can share data and take actions on one another’s behalf without developers building complex custom connectors or sharing all of their software’s code.  APIs clearly define how a program will interact with the rest of the software and multicloud world, saving time and resources while providing endless possibilities for added functionality.

Sometimes, the best way to explain something is to define what it is not.  With that in mind, let’s start with what APIs are not.

An API is not:

  • A piece of software: Software isn’t an API. However, the software may render itself as an API to easily communicate with another application.
  • A user interface: A user interface isn’t an API, though it may be built on top of one. Like a user interface, an API makes an application accessible to a specific audience.  A user interface is intended as a way for users to interact with an application, whereas an API is intended for other applications.
  • A server: A server isn’t an API. Though a server may host one or more APIs that expose the data and functions provided by the server.

APIs are often referred to as an engine of innovation because they allow developers to be more productive thus saving time and resources.  For example, the Google Maps API is just one API that has spawned a cycle of innovation that continues to this day.  It wasn’t long after Google offered an API for Google Maps that thousands of third-party developers created unique and innovative third-party applications that utilized the API in a variety of ways by incorporating Google’s mapping functionality directly into their programs.

Just as an electrical socket represents an endpoint of an electrical system into which electronic devices are plugged, APIs involve an endpoint into which interacting applications are plugged.  The number of applications that can take advantage of the functionality abstracted by an API endpoint is limited only by the imaginations of developers and the capacity of the API provider’s infrastructure.

Electrical sockets vary by country or region but have predictable patterns of openings into which electrical plugs that match those patterns fit and conforms to service specifications (volts and Hz).  These specifications set the expectation of the consuming devices.  Similarly, APIs adhere to different standards that specify how various applications communicate with one another.

Open API Architecture

An open API, also known as a public API allows the owner of a network-accessible service to give universal access to the public.  Open APIs can be designed in a variety of ways, but the main priority is that the API itself can be easily consumed and accessed.  As a result, using proprietary protocols or custom formats would be problematic, and using open source technology and community-driven standards makes the most sense.

The most common open API architectures fall into two categories: SOAP APIs and REST APIs.

SOAP (Simple Object Access Protocol)

SOAP was originally developed by Microsoft and is a standards-based Web services access protocol.  It relies exclusively on XML to provide messaging services and was developed to replace outdated technologies (DCOM, CORBA, etc.) that rely on binary messaging that doesn’t work well over the internet.

REST (Representational State Transfer)

Many developers found SOAP too rudimentary for their needs so they developed REST.  REST provides a lighter weight alternative.  Instead of using XML, REST relies on JSON or a URL in most cases.  REST can use four different HTTP 1.1 verbs (GET, POST, PUT, and DELETE) to perform tasks.  REST is newer and easier to use which is why it is heavily favored over SOAP.  Open API 2.0 Specification (formerly called Swagger) is a standard description that makes it easy for humans and machines to understand RESTful APIs and the capabilities of the service.

APIs are clearly a critical component of software platforms and allow businesses of all sized with the flexibility and agility to easily build a platform that best fits their unique needs.  An adaptable platform with robust API support allows organizations to fully embrace the multicloud world by accommodating the needs of an entire business ecosystem, connecting it together for specific transactional tasks that maximize efficiency and speed market success.

With the promise of Artificial Intelligence, the Internet of Things, and other disruptive technologies just around the corner, the ability to embrace new technologies quickly has never been more important.  It’s the difference between gaining a competitive edge and thriving or being left behind entirely.  The API economy delivers limitless possibilities and a robust, adaptable technology platform uses API technologies to deliver on the business needs of today and the possibilities of tomorrow.

Contact us if you have any questions about how ACC can help your business accelerate using the latest in API technology.

Free eBook - Future-Proof your business with Postmodern ERP


Solutions by Industry

What's New

How to do a Bank Transfer in Sage 100cloud

When making a bank transfer there are different ways one can do it and below we will discuss two different ways using the Sage 100Cloud General Ledger Module. Read More

Submitted by Patrick Wills on Thu, 08/02/18 - 9:28

How to Plan an ERP Implementation Project from Start to Finish (and Beyond!)

ERP implementation projects have a notoriously high failure rate.  One of the things conveniently left out of reports containing these troubling statistics is why so many implementation projects fail to deliver expected results on time or on budget.  Of course, there is an infinite number of reasons that ERP projects fail, but the truth is that poor project planning is one of the most common. Without clarity on project structure, activities, roles, and responsibilities, ERP implementation projects can often suffer from confusion and resistance, making execution extremely difficult.  Read More

Submitted by Sean Atkins on Wed, 07/18/18 - 11:42

5 Ways to Maximize the Value of your Current ERP System

Many organizations aren't satisfied with the value their current ERP system delivers to the business. Before starting over with a new evaluation and selection process, it may help to take a step back and examine the ways in which your current system could be better. Here are five recommendations for maximizing the value of the ERP resources you already have and how to know when it's time to start fresh with a new ERP system. Read More

Submitted by Sean Atkins on Thu, 06/28/18 - 9:03

Whatever Your ERP Needs, We Have the Solution!

Or call us for a free consultation 866-379-3799