The Application Programming Interface (API) is now almost everywhere within the IT industry. So much so that the first round of questions we at Node4 pose to any new software vendor is: “Does your product expose its core functions as API and is it limited in any way?”.
What is the API and why do we need it?
The use of APIs allow the integration of one or many applications by providing a standardised method of calling functions and transferring data.
The API benefits both the vendor and the consumer because the easier it is to integrate an application into your business, the more likely it is that you will use it. From the developer perspective, less time is spent working on communication between disparate applications.
The API presentation of an application is now so important to the success of an application that vendors are treating it as the priority product, with the Graphical User Interface (GUI) being built around the API itself instead of being a separate entity.
In addition, we have moved rapidly towards a network-connected world, so there is a need for a standardised method of communicating between web-based applications and client systems. This is where the RESTful API is most prevalent and something that most of us use every day without being aware of it.
What is the RESTful API?
REST, or Representational State Transfer, describes a set of simple commands that use a minimal amount of network bandwidth. This allows API developers to construct their API in an open and flexible fashion, ensuring that it’s possible to remotely communicate to a sophisticated level with other programs.
Simple examples of an API
Some of the most frequently encountered examples of API use in our daily lives are the Google Maps API and the PayPal API.
Every time we encounter a web page that provides a helpful map to a business or leisure location, there is a good chance that the webpage is calling the Google Maps API to deliver the map element on the page. Just like the map below.
Ever wondered how PayPal actually works? Every business that supports PayPal as a method of payment via their web-based business will be interacting with the PayPal API to process the payment. This shows that API-based software touches nearly every one of us at some point.
How does the API present itself to the world?
An application or hardware API will usually present itself via HTTP or HTTPS protocol using a Universal Resource Locator (URL), something we are all familiar with, though more conventionally to view web pages.
What this means in practice is that we are no longer dealing with multiple programming methods to interact with an application or devices.
The language of APIs
Once again, we should note that general-purpose data interchange languages have been adapted for this purpose rather than introducing yet another technical standard or using different vendors using different data interchange methods.
Why is it so important to us and the rest of the industry?
For many organisations, IT has until recently been managed through a collection of disparate interfaces. Typically, a virtualisation platform console, a network device console, a storage console and more frequently a cloud resource console too.
In the past, there have been attempts to consolidate all management interfaces into a single framework application, but the drawback most frequently encountered was that at least one or more enterprise platforms in use would not have a “snap-in” available for the chosen framework vendor.
The near-universal availability of published APIs means that we now have the choice to use packaged applications for management. Or we can design our own, with development costs reduced by orders of magnitudes resulting from the standardised method of communicating with either hardware or software processes.
What are the technical benefits?
Use of APIs ensures that services can be continually developed, taking advantage of new capabilities and technologies, but with the ability to maintain a consistent user interface to customers and operational staff. Essentially, the changes are “under the covers”.
What are the tangible benefits to your business?
This is best illustrated by a real-world example.
Suppose Node4 decided to add a new storage platform into our cloud services. The API exposed by the storage system would allow us to add or alter functions within our own customer portal that perform storage operations, such as generating snapshots, data replication jobs, responding to alerts and so on.
In essence, it provides a great user experience, with the customer being able to complete all their storage-related activities without ever having to leave their dedicated portal.
Case study: Node4 demonstrates the API advantage
Leading on from the point above, Node4 recently responded to a specific customer requirement to develop an API to simplify its operations.
In this case, the test environment burdened staff with the need to select and use many scripts, whilst ensuring that setup, operation and removal of cloud resources had no impact on production resources upon the shared platform.
Our API ensured that a streamlined set of PowerShell scripts could be used in conjunction with the customer’s existing scripts to test the state of provisioned resources, create new resources and decommission resources as required. The net result is a huge saving in time and greater control over the test environment.
We have only scratched the surface of explaining API-based development here. Still, the underlying message is that if you need support in this area, turn to an expert IT services provider. Whatever your requirements, get in touch with us today.