RunKeeper at Quantified Self

While this post is targeted at attendees of the September 2012 Quantified Self conference in Palo Alto, even if you’re not attending you still might find some useful Health Graph information and development tips.

Welcome Quantified Self attendees and hackers! You’re in for a great weekend of learning and networking. And hopefully plenty of fun!

This post will walk you through RunKeeper and Health Graph platform related Quantified Self sessions, then provide key information and procedures you need to use the Health Graph.

Here are the sessions where I’ll be representing RunKeeper:

  • “Hacking APIs” breakout session, Saturday 10:30AM – Beau Gunderson (@beaugunderson) of Singly and I will be discussing APIs for self quantification and hackery. We hope to have a lively discussion with you and each other, examining APIs for QS from every angle.
  • RunKeeper & Health Graph office hour, Saturday 1:30PM – I’ll be available to discuss Health Graph development and answer any questions you may have.

I will also be attending as many of our partners’ sessions as I can, while hopefully having lots of time to share ideas and make new connections. Please contact me (@billday) if you’d like to get together at the conference.

To prepare for the conference, or begin using the Health Graph directly on your own, you should start by watching this high level overview of the Health Graph platform:

For a quick primer on developing with the Health Graph API, click through the more technical presentation below:

Health Graph Hacking 101

View more presentations from Bill Day

All Health Graph partners are required to follow the Health Graph API Policies.

You can access more technical details on the RESTful Health Graph API by clicking here. Experiment and prototype with the API using the Health Graph Developer’s Console (click here to load the console).

When you’re ready to start your app in earnest, visit the RunKeeper Partner page and click “Connect To Our API“. From there you can fill out the form to register your new Health Graph integrated app, service, or device.

Click here to learn about authorization removal callbacks before providing your callback URL on the form. If you will be reading data out of the Health Graph for accounts other than your own app registering account, you should also request Read permission on the form, being sure you give a detailed explanation of what you will do with that data once you’ve accessed it. Likewise, if you would like to ask users for permission to retain their Health Graph data across deauthorizations and/or edit health information for authorizing users, please request permission(s) on the form.

Need some inspiration to get your developer juices flowing? Check out some of the applications built and deployed using the Health Graph API, available from the RunKeeper Apps page (click here). You can also access an archive of third party libraries, wrappers, and bindings which might make your Health Graph API-based development easier by clicking here. And there’s more information on how app and library partners are taking advantage of the Health Graph via our Health Graph partner profiles series on the blog.

When you encounter issues, you can ask questions and join in the developer conversation by visiting the Health Graph discussion group. You can also reach our team on Twitter, Facebook, and Google+.

One more tip: Click here to learn how to export your own user data from the Health Graph; useful for programmable self hacks as well as backups and parsing your data to re-upload into a test account via the Health Graph API.

Now that you know how to use the Health Graph, go build something great!

Bill Day (@billday) is Platform Evangelist for RunKeeper where he helps developers learn about and use the Health Graph.

Advertisements

Health Graph API additions

We’ve made several recent additions to the Health Graph API (@healthgraphapi) based upon partner feedback and requests.

Recently added fields include:

  • source – string added to Fitness Activities, Background Activities, Nutrition, Sleep, Diabetes Measurements, and Weight portions of the Health Graph API; this provides the name of the application that last modified the given activity or measurement; see documentation for details.
  • is_live – boolean added to Fitness Activities to indicate whether the activity is currently being tracked via RunKeeper Live; note that this field will report ‘false‘ until at least one GPS point for the Live activity is received (this should occur immediately upon beginning the Live activity, but may be delayed up to several seconds if it takes longer than normal for GPS hardware to acquire a sufficient GPS signal).
  • userID – integer added to each team member entry from Street Team GET /team response to allow developers to more easily access team member account details (assuming member has authorized the calling app).
  • past activities are now available in a summary form that is more conducive to bandwidth-constrained environments; search for ‘summary’ in the Fitness Activities docs to learn more.
  • blood markers – a number of additional markers have been added to the General Measurements portion of the Health Graph API; for the complete list of what’s now available, please refer to documentation for General Measurements and Diabetes portions of the API.

Please let us know if you have any questions about these API updates by leaving a comment here or on this Health Graph discussion group thread (click here to access).

Bill Day (@billday) is Platform Evangelist for RunKeeper where he helps developers learn about and use the Health Graph.


Health Graph tip: Test data options

This tip expands upon one of the slides in our “Health Graph Hacking 101” presentation (click here to access). You can work through the complete presentation embedded at the bottom of this post.

One question we often get from developers new to the Health Graph platform is “How can I create test data?”. Here are some ways you can get up and running quickly.

After you request developer Health Graph access, you have automatic read access to any data in your developer account. You can take advantage of that by using various free Health Graph apps to add data to your account. For example, you can record or manually enter:

Another way to add data to your developer account is to use an existing non-development account and Street Team tagging.

You can copy existing fitness activity data into your developer account by:

  1. Logging into an existing non-development account containing fitness activities.
  2. Adding your developer account as a Street Team member in your non-development account; you’ll need to make the request from the latter and then approve it from the former.
  3. For each activity you wish to copy from your non-development account into your developer account, tag the developer account from that activity’s page; this copies the activity data into your developer account.
  4. Optional: When you’re done tagging and copying data, you can remove the tags while in your developer account, then remove your non-development account from your developer account Street Team, to sever the linkages but keep the copied data.

One more option: You can export an existing user’s data (click here for details) then parse that data and write it back into your own developer account via the Health Graph API. In fact, doing so is very instructive as it requires you to explore several different aspects of the Health Graph platform.

The above options should give you plenty of ways to get test data together for your application. I hope this helps and happy health hacking!

Bill Day (@billday) is Platform Evangelist for RunKeeper where he helps developers learn about and use the Health Graph.