API publishing is becoming a pressing technology concern for an ever-wider range of organizations. More and more companies and public sector agencies want to realize the business value of APIs but many decision makers lack a basic understanding of the technology behind APIs. In this lesson, we provide an overview of what APIs are and what they do.
APIs (application programming interfaces) provide a way to connect computer software components. Broadly speaking, APIs make it possible for organizations to open their backend data and functionality for reuse in new application services.
An API achieves this by facilitating interactions between code modules, applications and backend IT systems. The API specifies the way in which these different software components can interact with each other and enables content and data to be shared between components.
The API is not a new concept. But as the complexity of computer systems has increased, the need for APIs has increased, as evidenced by their prevalence in operating systems, programming languages and networks – including the Web.
As more and more organizations have adopted the Web as the primary network for systems integration and have started seeking ways to connect their information technology assets to online portals and mobile apps, adoption of APIs has grown rapidly.
When people talk about APIs today, they are more often than not referring to these “Web APIs”. On a technical level, a Web API can be defined as any software interface exposed over the HTTP protocol in order to facilitate the development of Web, mobile and cloud applications.
Web APIs are particularly important in social media – for example, a network might publish an API that allows developers to create client applications for posting status updates from mobile devices. However, Web APIs are becoming increasingly vital to organizations across all sectors.
GLOSSARY OF TERMS
API Design/API Architecture
Developing and implementing application programming interfaces in order to expose backend data and application functionality for reuse in new applications
Ensuring that APIs perform consistently and do not impact the security or performance of the backend systems they expose
An organization that uses APIs to expose its backend systems to internal, partner or third-party developers of client applications
An application (including but not limited to Web, mobile and cloud apps) that relies on data and functionality accessed via APIs
An API that exposes backend systems over the Web, using the HTTP protocol, specifically to facilitate the creation of Web, mobile and cloud applications