
The Web has come a long way from a collection of Web pages to repositories of programmable data freely flowing from one site to another through APIs (Application Programming Interfaces). But it is difficult to keep track of all of the thousands of APIs out there. Wouldn’t it be great if there was a Google Analytics for APIs?
Today, Sonoa Systems is taking the first step towards building just that with the public beta launch of Apigee. (Developers can sign up for it here). Sonoa built the service around its massively scalable API router. Apigee offers Web developers and publishers a dashboard for managing both the APIs they provide to others and the ones they consume for themselves.
Easy to understand charts and graphs can tell a Web developer which one of five APIs is messing up his mashup or a bigger Website when an overzealous developer is making too many calls to its API and threatening to bring the whole thing down. “The way we see APIs is like the dark matter of the Internet,” says Brian Mulloy, the general manager of Apigee. “We know they are out there, but we are not directly observing their behavior.”
For a developer whose Website is a mashup of five APIs, Apigee would monitor each one for response time, error rates, and number of requests being put through (to make sure the developer is not hitting the limit). In the illustrative screenshot below, the example is for a fake app called “PhotoTwitty” which is a mashup of APIs from Twitter, Twitter Search, Flickr, Google, and 4PayPrints. All five have to work in order for PhotoTwitty to be up and running.
Big sites with popular APIs have a different problem. They set limits so their servers don’t crash, but sometimes all it takes is one or two heavy users to cause a meltdown. Just because an API providers set limits doesn’t mean they enforce them. Apigee lets sites throttle API limits with simple sliders and once the limits are hit, any individual API user cannot exceed them.
The reason Apigee can do this is because it is in fact creating a proxy for each API. “We want every API going through us,” says Mulloy. It uses Sonoa’s API routers to create its proxies and from then on all the API calls are routed through Apigee. The proxy works both ways. Either the API provider or consumer can set one up. Since you can’t drop a Javascript beacon in an API like you can on a Website, this is the only way to measure the broad usage of APIs.
If enough APIs start going through Apigee’s proxies and its users allow the data to be shared anonymously in an aggrgegate fashion, then Apigee could eventually create an Alexa-like service as well with public data for API usage and uptimes.
The downside to using Apigee is that it introduces a latency into the whole system. Mulloy estimate sthat this latency is only 200 to 300 milliseconds, which is is acceptable for most apps, but starts to become noticeable for real-time apps like Twitter. For URL Shorteners, for example, 300 milliseconds can mean the difference between an acceptable and unacceptable lag. But that’s the price you pay for visibility into your APIs.
You may also be paying Apigee, which wants to charge up to $100 a month for anyone monitoring more than 10,000 API calls an hour. Below that, the service is free. Competitors include Mashery and 3Scale.












As I was reading the article my thought was “This will add so much overhead though…” then you covered that. While 300MS isn’t that much, it’s still bad enough to be considered an annoyance and unnecessary, that’s their major problem and I can’t see many companies picking this up because of that…
Probably worth turning on for a day each month/week, just to get an impression of the situation, without the total overhead.
Sound like a pretty awesome tool for developers.
Awesome tool for the developers..combining all the app into a single,useful API is a great job..
good..The overzealous Apigee stands between an acceptable and unacceptable lag..If they reduce the monitoring charge to an extent,it will be more impressionable…
cool, i want to always know of the latest, coolest apps
Correction: according to this page http://www.apigee.com/pricing/, the service is free for 10,000 api calls/hour (you said 10k calls/month).
Beeing a developer that both consume apis and are going to provide apis, i’d say this is a very welcome and much needed service. I’m not sure if the price is cost-effective though.
yes, an hour. Thank you, fixed in post.
First impression is this is an excellent service! If you have every made a public API, this is what scares the hell out of you the most. In fact after the first 24 hours of seeing you API work with out fail, all you are thinking is “Well, all we have to worry about now is getting hammered” You have your own built in precautions, but this service seems to takes the need for that away, something that is time consuming as a developer and expensive for a business. This is one of the best new product launches I have seen for B2B, I love it.
Interesting service; Nice seeing more analytics tools built for monitoring API traffic.
Not sure how much I like the idea of piping traffic through a 3rd party, however. What about security, and privacy? What about a single point of failure? Also, 300ms is a pretty large amount of latency, at least it is for most commercial applications. Also likely not an option for EU folks given privacy/safe harbor rules.
These guys should consider creating customer-installable apache modules or packet sniffer analytics modules, to avoid some of these drawbacks.
Love the UI work on their site admin.
its looking pretty good. I think i’ll use this one.
How did you guys not mention Mashery at all in this article? They’ve been at this business for years and have a roster of clients including Compete, DayLife, FreeWebs, Hoovers, Get Satisfaction, Etsy, Shopping.com, LinkedIn, Trulia, Zemanta, Zoom Info, Calais, Netflix, MTV and many more.
They are by far the biggest player in this space and Im pretty sure TC has written about them as well.
http://www.mashery.com
My thoughts exactly, and http://3scale.net as well.
They are a bit newer than mashery, but in the same space.
Good points, added both. (Late night post).
Costs too much: a small website with a single server could easily host 10,000 API calls in a month. They need to make it free for the small players.
Also, Google could take their business in an instant by adding this to Analytics.
If the API calls you host are at different URLs, Google Analytics will already give you hit counters. They don’t, however, track your usage of others’ APIs and it wouldn’t make sense for them to add that. Nor would it make sense for Google Analytics to add API throttling.
Hi Tom,
There is a typo in the TechCrunch article. The actual limit for the free account is 10,000 requests per hour (not per month).
You can check out Apigee’s pricing matrix for more details: http://www.apigee.com/pricing
Great to see more companies in the space – you can also check out 3scale (http://www.3scale.net) which provide you some of the same tools and more
thats real cool..
This is pointless, who’s going to monitor their proxy api’s for failure.
And creating proxies for each API is a pain in the ass.
Doh !
Thanks for the feedback and encouragement. Lots of good discussion about latency.
Scott (from the Apigee team) posted some great info about calculating API latency on our blog, including how to test latency for yourself using ApacheBench on Apigee.
http://www.apig...me_with_apigee/
thanks again for the interest in Apigee!