Some APIs are un-managed

Everyone knows that modern APIs must be powered by an API management solution, right? Not so fast…. not all API’s are necessarily managed. In a previous blog I talked about managing APIs. But what does it mean for an API to be un-managed? Let me consider the three basic characteristics of a managed API and identify the key differences:

- An un-managed API (still) has a well-defined interface.

- An un-managed API may have an intended target audience, but this target audience is rarely precisely defined, let alone enforced. If someone has network access to the API, generally it can be invoked.

- An un-managed API does not have independently enforced business and IT control. Any control present is (by necessity) done via logic in the API implementation, usually in the form of code.

In other words, un-managed APIs are still well defined, but there is no externalized way to enforce controls on their runtime behavior or even who uses them. So why would you want any API to be un-managed? If an API is a direct part of your business model, probably you do not want it to be un-managed. Having said that, here are a few examples of situations where un-managed APIs are appropriate or even un-avoidable:

- A device or sensor has a defined API as part of its physical reality. Could be a thermostat in your house that you program remotely while traveling. Or a fitbit that synchronizes data with your computer via a defined interface.

- An existing software system exposes a (micro) API. Could be a standard system like SAP or it could be a mainframe transaction exposing a native REST interface.

- The API sits inside your own domain and all you really need is connectivity to access it. This situation can apply to any internal API, including the previous examples.

Basically un-managed APIs are an important resource in many ecosystems, making key functions and data available in a uniform fashion. The uniform consumption model is the reason that you still want to think of these interfaces as APIs. Often you even want to catalog all the un-managed APIs available to you. This in order to make them easy to find for someone needing them, or to create SDK’s making their use as simple as possible in a particular programming model.

Turning everything into an API, as seen from the consumer, is the easiest and most effective way of innovating in a hybrid environment. This means that thinking APIs isn’t just about API management and managed APIs. Thinking APIs should be part of a bigger integration strategy turning your enterprise into an innovation engine.

Connect with me on @ClausTorpJensen or read my earlier blogs. You can also subscribe to the blog list here