Chapter 1. API Concepts
The term API stands for application programming interface. In this book, we focus on a particular type of API—namely, network-based APIs. After examining the history of APIs, you’ll be presented with an overview of the APIs covered in the book. The APIs will be compared based on the characteristics that define the API style.
Apart from the differences among various API styles, you’ll explore concepts common to all network-based APIs. You’ll learn about the reasons APIs are created, including treating them as products and monetizing them. You’ll walk through the Software Development Lifecycle (SDLC) process of creating APIs, as well as their governance and management. Understanding these elements will help you identify the API that matches your needs.
Before we explore the specific APIs covered in this book, let’s first look at the concept of APIs and their history.
What Is an API?
The term interface in application programming interface refers to a point of interaction where entities communicate with each other. An entity can, for example, be a user, a system, or an organization.
Figure 1-1 illustrates an example of an entity-to-entity interface. The image shows an electron microscope picture of a needle and a vinyl record. The needle interfaces with the surface of the vinyl. The grooves are a physical representation of a sound wave engraved into the vinyl. A force acts on the needle and keeps it in the groove, and when the vinyl is put in motion, its effects ...