Service Level Agreements (SLAs) for APIs
APIs are critical to your business operations and services. But how do you measure an SLA and manage that process?
With many different factors going into an SLA, which ones do you choose to highlight? What does true agreement look like? What are the ins and outs of API SLA management and how do you hit the elusive 5 9s (99.999% uptime) and what does that really mean? And do you want to?
How do you agree on an SLA?
Both parties in the API contract have to agree on what they’re getting. You need to know what you’re delivering to a third party. You need to accurately track what you’re receiving.
One of the key factors is where you measure things from. This will impact your results. So to be in true agreement, here’s what you need to confirm:
- Where do you measure from?
- How do you measure up-time?
- How do you understand consistency?
- How do you prove it?
Location, location, location
Did you know that API calls made in Asia can easily take twice as long as the same call made in the USA? And even inside the USA, there can be a 100% difference in speed from coast to coast.
Location affects performance more than people think. What a ping tool tells you about connection time might not be the same experience of the end user.
The cloud matters, too. API calls made from different providers in the same location can vary wildly – as can calls from the same provider, but in different locations.
If you’re underperfoming against an SLA because of location, you need to be able to show that it might be a matter of changing your underlying infrastructure.
What are you measuring, anyway?
In our performance survey of across >1000 APIs, we found there was a persistent error rate of about 0.5%. But all services have downtime – for maintenance, for example. So the more important metric is how consistent the service is over time.
Averages can be misleading as a metric when it comes to an SLA, especially over significant time periods. A high average, measured over the course of a month, could easily ignore periods where your APIs are too slow to function properly.
From an API SLA management perspective both parties also need to agree that what they’re measuring is the same thing before they get to arguing about whether or not they or you have missed a critical delivery.
What are your actual service levels?
Even before you agree on an SLA, you need to know what service levels are actually being achieved. APImetrics can help determine accurate service levels delivered by critical APIs. And you can avoid an SLA that cannot be enforced.
We’ve mentioned the 5 9s – 99.999% – which is a metric from the days of telephony availability and is often set as the gold standard for service quality. But it does have drawbacks. If your system relies on other providers, for example, and they aren’t delivering 5 9s then there’s no mechanism for you to deliver it.
Also, cost wise, the cost of getting to that level of service can be incredibly high for small companies, do you need to?
Pulling it all together
The key things to focus on for API SLA management are:
- Verify what level of service you deliver
- Test your SLAs against your SLOs before hand to make sure you are delivering on it!
- Agree on the terms of measurement: how, what and where and who
- Choose metrics that are meaningful – not just ones that make you feel good but actionable metrics that can be achieved
Total SLA Assurance
With APImetrics, we can monitor the delivered Service Levels as an independent third party with alerts and automated reports when SLAs are missed. We show how long issues lasted and the impact they could have had on services – even down to a region or particular cloud provider.
Never get caught out again. Have total assurance that you’re getting the level of service you’re paying for – or not being blamed for other people’s mistakes.
Take a detailed look
Download a detailed introduction to APImetrics and learn how we are bringing common standards to API monitoring with integrated monitoring, performance assurance and compliance analysis!