The easiest way to think about what an API is to use a restaurant analogy. Everything that is available on the menu of the restaurant would essentially be the public API. 2 main gotchas to make the analogy work:
- the restaurant is giving out the food for free
- you can use the food to start your own little eatery.
Why is an public API important? API’s allow developers to build applications that consume resources from the service. More applications using data from the service generally results in greater usage. There comes a tipping point when enough network effect is created such that critical mass is achieved on the platform. Creating a platform where a network of applications can thrive in is the de-facto billion dollar goto growth strategy. However, always be wary when you’re building on someone else’s platform.
There are also private API’s or undocumented API’s that are not exposed to the user. This would be the special menu the chef cooks for the staff that is unorderable by the general public. That special lobster fried rice with chestnuts and leek. Private API’s are essentially what were used to build the service itself.