API and Artificial Intelligence (Application Programming Interfaces and AI) have only one thing in common. They are both very old technologies that have been revamped in the recent years to see a phenomenal upsurge in their adoption. Both terms have been around since the early 1980s.
Artificial Intelligence was initially based on rule resolution to develop expert systems. Over the last decade, AI technology has become based on neural networks, allowing for pattern recognition, machine learning and prediction. API, on the other hand, were the interfaces used to factorize software modules within a single application or within the enterprise information system. They have evolved over the last decade to become REST protocol compliant, based on standard formats such as XML and JSON, that allow for reuse of services over the entire Internet.
If these technologies have so little in common, how then can they be complementary? Given their popularity and potential, finding use cases for putting them together can be promising.
API for Artificial Intelligence
There is nothing new here under the sun! Using API to publish AI services have been around for some time. Examples of API for AI abound, of which we can cite some prominent examples (see here for more details) :
Google prediction: The Google Prediction API provides access to cloud-based machine learning capabilities including natural language processing, recommendation engine, pattern recognition, and prediction. Developers can use the API to build applications capable of performing sentiment analysis, spam detection, document classification, purchase prediction, and more.
Wit.ai: Wit.ai is a popular natural language processing platform that makes it possible for developers to add intelligent speech functionality to web and mobile applications. Developers can use the Wit.ai API to add an intelligent voice interface to home automation, connected car, smart TV, robotic, smartphone, wearable, and many other types of applications.
AlchemyAPI: AlchemyAPI, provides a suite of deep learning-based cloud services that include AlchemyLanguage, AlchemyVision, and AlchemyData News API. AlchemyAPI provides more than a dozen APIs that developers can use to add machine learning-powered features to applications such as sentiment analysis, entity extraction, concept tagging, image tagging, and facial detection/recognition.
Artificial Intelligence for API
This is a more interesting and challenging topic. How can AI help in analyzing the API calls, the inbound and outbound data flows, in order to help API owners see what they would not otherwise see with the naked eye, or via basic statistical analytics? It is in the nature of neural-networks based AI to require massive quantities of data in order to learn patterns before it can recognize similar patterns or predict future behavior. API flows, given they can amount to huge volumes over time, can be a great source of learning for AI tools. Unfortunately, most of API data flows today are stateless, and data is forgotten as soon as the call is terminated.
Let us list a couple of “AI for API” examples:
AI for API security
This is typically what the company ElasticBeam provides. API are the open door to sensitive data and require a great effort to secure. AI can help analyzing secure threats and detect cyberattacks. AI can detect attacks such as Data Exfiltration, Advanced Persistent Threats (APT), Data Integrity, Memory Injection , DDoS API attacks, Login service DDoS, and so on.
The advantage of using AI for blocking security attacks is twofold. Firstly, AI is self-learning, which means you do not have to constantly update an enormous base of rules and policies, it can also adapt itself to the changing technical or business environment. Secondly, AI is based on well-known and solid mathematical models, which means that in theory it can be more accurate and efficient than a set of human-coded rules. If you can trust that a driver-less car is safer than an ordinary car, then you might as well accept this fact about AI for API.
AI for API business flows
Early in the 80’s, they used to say that a software program is defined by its API. Now that API have become the interface to the enterprise business services, we can safely say that a company’s part or entire business is defined by its API. API services can span the entire product life-cycle, the entire supply chain, as well as the financial transactions.
API calls and dataflows ARE the company’s business.
By using AI to analyze the API dataflows, you can cover the entire customer relationship spectrum. Early on in the sales cycle, you will be able to categorize and weigh the lead, predict a future purchase behavior, and tailor appropriate sales and marketing campaigns accordingly. By analyzing supply chain events, you can optimize stocks, shorten delivery delays and predict any order fulfillment issues before damage occurs. By analyzing customers behavior, you can later predict any possible payment delays and optimize your cash recovery. SideTrade provides AI based tools for a full vision of the customer relationship. Although they are not necessarily hooked on real-time API calls, they provide a good example of what AI coupled to business API can do.