There’s an interesting article over at SDTimes called “API management: The glue holding the app economy together.”
Yep, they’re right about that. If we think about what an app actually is, it’s basically a bit of a web browser that’s specially designed. So, you could access Facebook or Twitter via your browser, or you could use the app.
Getting a website to work on different devices with radically different screen sizes and input modes is a PitA. It’s much easier to use the iOS or Android SDK and build an app. It’ll make a lot of things easier, and the user experience will likely be much better.
Another aspect of the app revolution is their reliance on web APIs. This makes sense. Apps implement a client/server architecture and the cleaner you can make the interface, the better.
People have been trying to make clean interfaces for client-server architectures for decades. The good thing about REST and OAuth2 and properly defined endpoints that return JSON payloads is that it makes working with the app’s client-server architecture much easier and more transparent.
API Management
So, you’ve got API. And yes, they’re the glue holding together the app economy. But without API management, the apps aren’t going to stay working for long.
David Chiu, director of product marketing for CA API Management, is quoted in the article as saying, “Over the past 12 to 18 months there has really been an extension of what API management actually means.” Which sounds promising. He goes on to opine:
API management has gone from being primarily about security to encompass planning, designing, implementing, publishing, operating, consuming, maintaining and retiring APIs.
All of which are worthwhile, indeed necessary. But there is one glaring omission from that list.
API Monitoring.
Now to be fair, David might argue that monitoring is implicit by dint of maintaining APIs. But others are more explicit about the need for API monitoring. Ian Goldsmith, vice president of Akana product management at Rogue Wave Software, states:
Development teams have to make sure their back-end systems are ready to handle all the traffic, so they need performance monitoring in order to understand how the API is being used, who is using them, how it can be optimized, and how to prepare for spikes and new loads.
Not merely monitoring, but performance monitoring! Now we’re getting somewhere.
But it’s not just development teams that need API performance monitoring. It’s anyone who consumes or exposes APIs. And if by performance monitoring we mean load monitoring, yes, OK. But as we keep saying, you also need to do quality monitoring. Load monitoring just isn’t going to give you the full picture of what is really happening to the API.
David Chiu’s colleague, Bill Oakes, director of product marketing, makes it clear though that CA API management do get it: “To really secure and manage your API platform, you have to have API analytics and monitoring.”
Bill goes on to say:
[B]uying an API management solution that delivers all those capabilities helps the organization take advantage of [not duplicating capabilities] as a centralized service of the enterprise.
Again, let’s repeat a favorite: you can’t just do it with a bunch of cURL scripts (or trawling through server logs). There’s a lot more to API management than just an API gateway. CA API management and Rogue Wave know that. But as David says, it depends on who you ask.
Not all API management suites contain monitoring functionality, much less quality monitoring functionality. And they certainly don’t contain the best-of-breed API quality monitoring solution (which is APIContext). The right thing to do is always work out tasks you need to do, which include API quality monitoring, and then find the best tool for the task.
It’s great to see that over the last year or so, a definite consensus has emerged about the importance of not just API management, but also of API monitoring and analytics. I hope that by this time next year, best practices will make it clear that if you aren’t monitoring the quality of your APIs from the end user perspective using a dedicated API quality monitoring tool (like APIContext!), you aren’t properly managing your APIs.