Open API Access to the Keynote Business 40 Index Data
By Product Management | May 18, 2012
Of course the primary users of our RESTful API are customers who want to access their own measurement data. However, a neat easter egg is that anyone who makes a graph data API request but doesn't state which Keynote measurement slot(s) they want, will get back the Keynote Business 40 data. To do this you just need a free KITE log-in or a MyKeynote log-in if you are a customer.
Here's a step by step 'how to' that also has the nice side benefit of teaching you how to use the API in a rudimentary way.
Step 1: Generate a free KITE log-in
All this step requires is an email address, I suspect you might have one of these if you are reading this. Just go here and sign-up for KITE log-in. If you already use our free KITE tool or are a MyKeynote user then you'll have already completed this step.
Step 2: Generate an API key
Go to api.keynote.com and input your shiny new login where prompted. Now navigate over to the 'Key Management' tab to generate an API key as shown below. Save the results somewhere handy, like your clipboard.
Step 3: Make a request
To save time and effort I've provided a few sample API requests that you can just plug your key from Step 2 into. Note that you can enter these into a browser, just as if you were visiting a website.
However, you may still want to explore the API documentation yourself as the 'getgraphdata' command offers a multitude of optional parameters that work with the KB40 index, for example averaging data by city. With that query you could see how this group of sites performs differently around the world! Just keep in mind some options, like 'scatter', won't return anything since the index doesn't have that level of detail right now. Also getgraphdata is the only command that defaults to the index right now.
https://api.keynote.com/keynote/api/getgraphdata?api_key=[your key here]&graphtype=time&format=json&slotidlist=1091870,508374
https://api.keynote.com/keynote/api/getgraphdata?api_key=[your key here]&graphtype=city&format=json&slotidlist=1091870,508374
*Update* Notice that these examples specify two different Keynote 'measurement slots' at the end. That's because the public KB 40 index recently transitioned from our emulated browser to our real browser monitoring service. However, as you can see the old ApP version is still accessible via the API.
Step 4: Build an application
Of course your imagination, motivation, and capabilities are the only limits here. I'm hoping that anyone who builds an application or mashup with this data will let us know. Go ahead and drop a post over at the forums if you build an app or have a question about doing this.
Keynote now offers two KB 40 indices. The old one is based on our emulated browser technology, ApP, while the brand new one is based on our real browser technology, TxP. By default the API now returns the TxP version but you can select the one you want by specifying the specific slot ID as a parameter as shown in the examples above. For the record, the slot ID (unique indentifier) for KB 40 TxP is 1091870 and for ApP it is 508374. While the #'s may not be permanent, changes to them are rare.