Application Programming Interface (API)
Before we begin, let’s quickly uncover the acronym. An API is an Application Programming Interface. One way to imagine this kind of application is to picture two separate sides of a small island, with two people occupying each side. The first person is an expert in making houses, but not so good at roofing, while the other has a talent for just that. It also happens that the second person has spent so much time mastering the art of making a good roof that they’ve completely forgotten how to build the body it rests on. So what do they do?
The API premise
They have two choices really, and this is where the premise of an API comes in. Either they keep to themselves, individually filling the respective gaps in their knowledge, or they pool their skills. The first is clearly more time consuming, whereas the second illustrates the benefits of exchanging information for a common goal. In short, this is what it does. It allows separate systems to communicate, with the aim of achieving an exchange of information. It also consists of a set of rules describing how one application can interact with another, and the mechanisms that allow such interaction to happen. Even a basic task such as pasting text from Notepad to Word or Chrome uses this technology to ensure seamless communication between these separate applications.
Why use an API?
If you want to enable your product or service to talk to other products or services, it can enable you to do this. Likewise, it works the same way if you want to open your data and functionality to other developers and / or businesses. The idea here is essentially to be able to do more with less. Instead of duplicating data processes, these applications remove barriers to accessing data. One of the most powerful functions is to enable the extraction and combination of data sets. For those outside of the developer world (i.e. end users), the code underpinning the functionality is largely invisible.
Types and Uses
They are used by a countless number of organisations, from government agencies to social networking services, and from multinational corporations to start-ups wanting to streamline their web conferencing capabilities.
Commercial and social use
As far back as the 1980s, they were used in hardware and software development. What is now known as the modern Web Application Programming Interface has a fairly brief history, a little over a decade. The first of these appeared when Salesforce demoed their system in 2000. This web service, using both SOAP (Simple Object Access Protocol) and REST (Representational State Transfer) opened the possibility for developers to integrate their own data with Salesforce data. Companies such as eBay and Amazon followed, allowing developers to incorporate their content and features into their own websites. Twitter, Facebook and Flikr also developed and launched their own web versions. These developments enabled users to share content across multiple social media platforms simultaneously.
Applications at work
The data service company Placr began development on what is known as the ‘Transport API*’ in 2010. This service pulls together aggregation and analytics capabilities to offer users, developers and operators access to transport data-as-a-service (DaaS). This unites timetables, routes, live running and performance history into a single format. As well as train and bus information, Placr also deliver tram and river boat departures and timetables, plus metro systems in various UK cities.
The placr.mobi consumer web app also provides travel information for the whole of the UK, providing service updates on transport such as local area buses, timetables, plus comments from other service users. Attached to the basic concept of bringing together many separate pieces of information (in this case sourced from Traveline, Network Rail and TFL), Placr are an example of a leader in the API market.
Identity fraud prevention
We’ve talked about ways to prevent corporate fraud in a previous Wiki page. Well here’s an example of how the latest technology has enabled the prevention of identity theft in the US. A company called CDYNE has created the Death Index application, which allows companies to verify identities in real-time. This is linked up directly with the United States Social Security Administration, validating social security numbers against the SSAD’s Master File (DMF). The main aim of this technology is to prevent the possibility of an applicant trying to use the identification of a deceased person.
The Death index version is a hosted, programmable Web Service that performs Deceased Suppression by Industries including the financial, insurance, security, and medical businesses, as well as Federal, State, and Local government.
One challenge facing developers is the time consuming nature of developing mobile and web applications around multiple APIs. As a result, an emerging trend is the aggregation of multiple applications into a single interface or stack for developer use. This helps to standardise both interfaces and objects across potentially very disparate platforms. Startup organisations like Singly are applying these concepts with social and personal data, combining social media platforms like Twitter, Facebook, LinkedIn and Instagram into single services.
Automation and interoperability has become a direction in which Business Intelligence platforms such as GoodData is travelling. Their recent software development kit releases for customers and third party ‘white label’ developers. Beyond allowing end users to collate store, analyse and visualise a wide variety of private and SaaS-based data sources, their new features offer greater predictive power and big data analytics capabilities that can update and rerun queries in real time, without requiring manual rewriting of the underlying data models.
As a summary, the positives are quite clear. If you’re a business, these include using functionality to pull real-time, relevant data to your site on related topics you know your customers could likely look for elsewhere. This creates a loyalty to your site and removes the need for copious research on the part of the user. In addition, they could be used to combine social insights with your customer database. For example, a more holistic database could use social signals to match email addresses against social media profiles. These profiles can then be checked against these profiles to improve your understanding of those engaged with your brand.
“As a witness to the development of web applications, I would say they have opened up infinite possibilities for the extraction and manipulation of relevant, valuable data.”
Idris Ahmad, IT Director Graydon