It has been more than a year since my last post about API usage, so this is long overdue. Needless to say, the NPR API has grown tremendously since its launch in 2008. The biggest consumer of the API is still NPR by a long shot. That said, member stations, partners and the general public have been making extensive use of the API.
Below are metrics on the API followed by a suite of examples of how it is being used. But first, here are a few qualifiers to the statistics:
- These statistics are about requests to the API, not necessarily what was consumed by or presented to users.
- These numbers were obtained through server logs. Although we believe they are largely accurate, it is possible that these numbers are off by a couple percentage points in either direction.
- A request to the API can mean many things. For example, on the NPR News iPhone app, the Top Stories section is populated by one request to the API - that one request returns many stories. The Flash Player on NPR.org, when playing a single piece of audio, represents one request to the API for exactly one story. Meanwhile, some requests (such as a story page on WBUR.org) get exactly one story, but because they get cached result in many page views for that one request. As a result, metrics around requests are imperfect. That said, they do offer some information about usage and consumption, even if not the whole story.
The NPR API has grown tremendously since its launch in July 2008. Most of the requests today are from NPR products, but a sizable portion of the activity is also from public usage and requests from NPR member stations.
The big jump in total API requests from July to August are due to the launch of many new products in July. Among them are the new NPR.org, the NPR.org Flash Player, the NPR News iPhone app, WBUR’s new web site, and Minnesota Public Radio’s new site. Since then an increasing number of applications have been implemented on the API, including the NPR mobile site and other station sites (like KQED and KPCC), accounting for the steady growth over the last few months.
In the six months of tracking stories delivered, the NPR API has delivered almost five billion stories. Last month alone, it pushed out over 1.1 billion.
The total number of stories requested is a new metric that we started tracking in October, 2009. This is the number of stories requested, not the number necessarily delivered or consumed by a user. This metric is based on the numResults parameter (or lack thereof) in the API request. And to be clear, in March, 2010, the API did deliver over 1.1 billion stories! Since tracking this metric six months ago, the API has handled almost 5 billion story requests.
Overwhelmingly, NPRML is the dominant output format delivered by the API. That said, most of the requests are from NPR and related products. In the past, prior to NPR building out the new site, iPhone app, etc., the distribution was slightly less NPRML-heavy. Those models had a distribution of NPRML at about 55% and RSS at about 25%, with MediaRSS, JS and HTML getting reasonable traffic but significantly less than RSS.
Although the API has always been dominated by NPRML requests, this dominance has only been more dramatic with the myriad launches in July 2009. Prior to those releases, NPRML represented about 55% of the 3.5M requests. Now NPRML represents about 85% of the 53M requests.
To get a sense as to what is creating all of this traffic, I have created a presentation that shows a range of examples on how the NPR API is getting used. The following presentation is probably missing some interesting and heavily-accessed examples, but it should give you an idea as to how pervasive the API has become.
Given the growth charts above, along with the introduction of the API to station sites and the launch of the iPad and other upcoming tablets and portable devices, we expect these numbers to continue to climb.
Finally, if you are aware of some interesting implementations using the NPR API, please let us know in the comments here or by emailing us at techcenter at npr dot org.