What I Mean When I Say API

People love to tell me the limitations of my usage of the acronym API. They like to point out they were around before the web, that they are used in hardware, or are not an API unless it is REST. There are endless waves of dudes who like to tell me what I mean when I say API. To help counter-balance each wave I like to regularly evolve, and share what I mean when I say API--not what people might interpret I mean.

When I say API, I am talking about exposing data, content, or algorithm as an interface for programmatic use in other applications via web technology. Application in "Application Programming Interface" means any "application" to me, not just a software application. Consider visualizations, image rendering, bots, devices, or any other way that web technology is being applied in 2016.

I do not mean REST when I say API. I do not mean exclusively dynamic APIs--it could simply be a JSON  data store  made available via a Github repo. If machine-readable data, content, and algorithms are being accessed using web technology for use in any application, in a programmatic way--I'm calling it API. You may have your own interpretations, and be bringing your own API baggage along for the ride, but this is what I'm talking about when you hear me say API.