What advantages are there to both mobile operators open up their APIs to businesses and developers?
With help from Chilu Machona, 2014 MTN Appathon winner and developer, that subject is broken down below to help all interested parties understand how APIs work, their benefits and limitations.
API – Application Programming Interface
Application – Program or group of programs designed for the end user
Programing – How software is created
Interface – Line of communication between user and program
How APIs Work
Each time an application is used to access data, an API is called. The user is granted access to only a certain amount of data, using a unique language as a form of communication between the operator and the application.
Think of an API as a middleman between the application and the programmer, below is a visual representation of how APIs work.
Practical Examples of APIs
Today APIs are especially important because they dictate how third party developers can create new apps and web services for business, examples are plenty when it comes to APIs, from Twitters Data Graph, Facebook Social Graph to Google Maps API, that allow developers to use and manipulate data, the type of data varies from mapping data to health data.
API Calls and API Keys
A very good practical example of an API is 2Checkout by Brinks Payment Co, a credit card and online payment processing system that allows users to make payments for purchased goods through a website or an app. Here is what setting an API as a payment method for an e-commerce website would look like:
Figure one shows a website (www.flowery.co.zm), with a payment option being processed. The website serves as an Application that the end user is presented with to make payments, once the user selects “Submit Payment” an API call is made (a request) to verify whether the credit card details are correct or not. If the details are correct and funds are available the payment is deducted from the users account (the API interacts with the banks program, which not everyone can have access to!!)
If the details are wrong or funds are unavailable at the moment , that API call in this particular scenario is recorded as a failure.
The figure above, is an example of an API call log. As the name suggests, the API call log is a list of successful and unsuccessful data requests.
Just how secure are APIS?
On a scale of 1 – 2054bit encryption, APIs are pretty safe and any security threat can easily be detected and eliminated as soon as it is detected. Every developer that is granted access to a particular API is requested to sign up and is provided with a unique Key (API Key). This key is like a guideline, language or code that a developer’s application uses to communicate with the business’s program.
Chilu has been playing around with the VNC SDK for Internet of Things where API keys are used slightly differently when devices are involved, and are used to guide devices through a specific path in order for them to communicate with one another, more like TCP/IP:
Benefits of APIs for Business and Operators in Zambia
APIs have benefits written all over them, there are different types of APIs from Web, App, and OS, name it.
In Zambia a company could either roll out an Open API (open to public, usually software) or private (usually the developer pays to have access) or is invited (and is usually hardware).
Mobile operators in Zambia could benefit greatly by granting open API access as this would give developers an opportunity to unleash their inner creativity and create applications and web services that are tailored to the Zambian community.
Mobile operators like MTN Zambia and Zamtel have granted some websites Web API access, which allow users on the Internet to send money in form of airtime & mobile money:
• Efficiency – The key principle is that an organization is run efficiently, granting third party developers access to APIs saves time and reduces the initial cost it would take an in house team to develop various applications, if that doesn’t spell out E-F-F-I-E-N-C-Y, nothing else does .Providing API access allows for content to be created once and automatically published or made available to many channels.
• Wider Reach – By allowing anyone to create a new presentation layer – like an app, a website, or a widget – APIs can be used to distribute services and information to new audiences and in specific contexts that can be customized to provide tailored user experiences. People who do not visit a website can still get company information or services from apps or other websites that they regularly visit.
• Create Government Assets – Users who click the “I Accept terms and Conditions” (one of the
biggest lies ever told) agree that by using the app , website (of course designed by a third party developer) they could have their information stored in a database that could either be used by the government or the general public, have in mind an online directory like Yellow Pages for example.
• Automation – APIs allow machines to handle the workload, which would otherwise require the manual work of a human. This can be as simple as having one content update propagate to multiple sections of a site (or multiple websites) at once.
• Apps -Providing API access to information or a service sets up the use of that information or service in mobile apps.
• Partnerships – The mission of every operator is supplemented by like-minded non-profits and businesses, who are interested in using company information and services to provide services. They do this by consuming and repurposing company material into new, useful products and putting company content in front of their customers and clients. This can fuel innovation because any citizen with a good idea can create the next killer app for your communities.
• Integration – APIs allow your content to be easily embedded or interwoven throughout your sites or other applications. Thus, it ensures a smooth and integrated user experience, and relevant and up-to-date information, for the user. The information is delivered wherever it can be useful to them, not just in those places where a company team has had time to update the content.
• Personalization -The users of a website, businesses and non-profits benefit from the ability to personalize sessions with the information and services that are most useful to them.
• Mashups – Mashups allow the public to better understand information in the context of other sources of information.
• Future-Ready – As needs change, APIs help to support unanticipated future uses. Making data available via API can support faster and easier data migration and improved data quality review and clean-up. APIs can provide greater flexibility in delivering services; for example, using a service that accesses a backend system to power a new product.
• Developers get the chance to earn more money.
• Developers get to create and join online Zambian Development communities – where they could share some of their code in an effort to build bigger, better and much more innovative apps.
API usage limitation, really is a limitation, the fact that developers are given a number of tries sucks, but on the other hand that’s a feature that protects a company’s resources from being abused. Limitations actually make the developer work under a certain time frame, for security purposes.
API keys are sometimes refreshed, and sometimes the developer is pushed back to “sandbox mode” (testing) until they complete a compliance test, before the API Key can go back to being live.
Rolling out an API, isn’t much of an expensive process, simply because it would require creating an additional storage space and granting access roles to that data, especially for MNO’s that use cloud based systems.