There’s a fascinating article over at Medium by on API Key Performance Indicators (KPIs) by Michael Leppitsch, who works on Digital Strategies for Global Enterprises at Google Cloud.
Here at APIContext, we are very interested in API Service Level Objectives (SLOs). What’s the difference between an SLO and a KPI? SLOs are generally part of a Service Level Agreement (SLA), which typically made between two parties, one exposing the API and the other consuming it.
KPIs aren’t the only measure
A KPI could be the same as an SLO, for instance, that the median latency of an API be less than 500 ms. But the KPIs that Michael is talking about are broader, more general, business-orientated factors such as the number of APIs, speed to onboard and cost reduction.
Michael cautions that one has to be careful how one makes use of many of these KPIs. Take, as an example, the number of API organization exposes. A manager might have heard that this is the Age of the API.
But just slapping an API abstraction layer on existing systems in order to get the API count up (“See! We are a cutting edge digital company. We have lots of APIs.”) is rarely going to be enough. How good are those APIs? Do they meet user expectations both in what they do and how they do it?
You can get an idea of the performance and quality of an API by asking the users? Some questions can only be answered by them. Does it do what you want it to do? Is it easy to use? But others can be quantified. Does the API seem fast enough? Is it always available? Does it return what it is supposed to return? Users can give an impressionistic answer, but digital managers demand hard answers.
Which is where APIContext comes in.
If you want to understand how your APIs are actually behaving from the end user perspective at any given instant, you have to monitor them actively. Using only user impressions is a necessary thing, but it is not a sufficient one. It is just too slow and unreliable to be the sole mechanism through which APIs are managed. You need to measure your business KPIs, but you also need to measure technical/operational SLOs, even if they don’t form part of an SLA and you call them KPIs.
As we always say, if you aren’t monitoring your APIs, you aren’t managing them. Michael’s article is an article about managing APIs. He mentions instrumentation twice. You need to instrument your APIs fully for passive and active monitoring. It’s not quite the case that what you can’t measure, you can’t manage.
There are lots of things that can’t be measured that have to be managed. But if you can measure something, it makes it a lot easier to manage it. And you can measure your API SLOs. And with APIContext offering API active monitoring packages starting from less than $500/yr, it is false economy not to monitor your APIs.