In this article, Chris Kemp discusses API licensing, the key issues that need to be considered in the context of APIs, the developing landscape and what practitioners should do when advising on APIs.
What are APIs?
‘API’ stands for ‘Application Programming Interface’. An API is a set of standardised rules that allows data to be communicated between different pieces of software.
In practical terms, an API can take many different forms. At the simple end of the spectrum, an API can be a short document setting out a few basic rules a developer should follow to ensure two programmes can interoperate. At the complicated end, an API can take the form of a complex Software Development Kit (SDK)—a software kit consisting of routines, protocols and other software tools. And they can be anything in between.
APIs are not new. Historically, developers used APIs to ensure a software application written for one computer would run on another computer using the same operating system, without requiring any additional customisation work. So in a sense APIs are efficiency tools which enable one bit of software development work to be re-used multiple times and allow developers to take advantage of useful tools written by previous developers without having to reinvent the wheel each time.