An API, (Application Programming Interface), is not a new technology. Software components have always had APIs in variable forms such as functions/procedures depending on the programming language used to produce an API.

 

The use of APIs have evolved from being a local software utility to a remote one allowing services to be invoked externally. For example, networking APIs, a form of Remote Procedure Calls (RPCs), are used to establish a communication path among end points. The end points might be internal or external. Interfaces may have certain input/output rules, and that applies to APIs since they are interface between software entities.

 

Let us define some API terminology:

 

  1. API: Is a software entity that provides a service for its clients which is another software entity. For example, services/utilities provided by a programming language platform provide APIs to perform I/O operations.
  2. Open API or OpenAPI: An API that is available to external entities. For example, a Communication Service Provider, (CSP), server may define an Open API for the purpose of billing record exchange with other CSPs or a brokering entity.
  3. Web API: An API that is accessible via the web. Many examples are available such as weather updates. This is sometimes referred to as Web Service, as it is the way to invoke or start/stop a Web Service.

So what is a Web Service: below is the quoted definition from http://www.w3.org/TR/ws-gloss/:

“A Web service is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP-messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards. “

An example of a Web Service is obtaining map updates in which a client may contact a map Web server for updates. The Web API is commonly used when referring to a Web Service.

What is the importance of APIs?

APIs are becoming a common practice by many service providers including CSPs. For example, APIs enable Google map usage by 3rd parties. CSPs’ may enable higher utilization of services such as messaging by 3rd party developers. GSMA has created a standard called OneAPI, http://www.gsma.com/oneapi/, which states: “OneAPI is a global GSMA initiative to provide application programming interfaces (APIs) that enable applications to exploit mobile network capabilities, such as messaging, authentication, payments and location-finding with a cross-operator reach”.

We can conclude that APIs are becoming an integral part of many services today. We can expect APIs’ usage to increase and evolve as more CSPs adopt APIs as part of their service offerings.