I’m pleased to open the doors to the parkrun API at long last. It’s taken far longer than I’d like to have got here for one reason or another which I’ll expand on a little below.
The short version of this is that if you’d like access to the API, the steps are as follows:
- Review the developer terms at http://www.parkrun.com/api/resources/developer-terms
- Review the data licence terms and conditions at http://www.parkrun.com/api/resources/data-licence-terms-and-conditions
- If you have queries, please first review the API question/answer section on our support site. Specific queries/feedback via our support site: Please start your subject with 'API query', then appending a short summary (use the description for more detail)
- If you agree to them, please print, sign and scan these documents in and submit them via our support site - Please use a Subject of ‘API application’. Please also include your parkrun athlete id in your submission.
- We will review applications and queries periodically and send you test environment keys if we approve your application, and keep use under review.
Some key things to highlight:
- We will issue test environment keys initially. Once you’re ready to go live lodge a request for live keys. Note we will review your application before granting these to ensure it’s within the bounds of what we understand your application to be.
- You won't have access to sensitive data - essentially just what you can see on the website. However you should NOT store data other than what is reasonably required to operate your application. If the purpose is for limited personal use we would be happy to discuss further with you.
- At this stage it is important to stress developers will NOT have rights to use the term ‘parkrun’ in the title of your app, nor may they use any of the parkrun branding. These are copyrighted and trademarked. But we also wish to avoid causing confusion that their work is in some way an official parkrun application. To address the obvious complication this causes of what to call their efforts, we have asked our brand experts to come up with terms and usage for API powered applications, and their names: It is currently a work in progress and we hope to report soon.
- We are in the process of implementing a profile system requiring a login and password setup. If your application proposal is suited to this (most mobile apps will be) we will issue you with keys requiring a user authentication step. We will enable your parkrun account to do this in advance of the wider roll-out, and we will have specific instructions on how your application should behave regarding not storing passwords and securely handling tokens.
- We’d emphasise we are a very small team, and have a number of competing demands on our time from runners, event teams and country teams. I’ll principally be working on this, so will by necessity need to batch enquiries, and seek to answer questions generally.
- Two API client wrappers (PHP and .NET) are available on github at https://github.com/parkrun/parkrunAPI - Note only support client_credentials.
- The API is in a state of change, and hasn’t yet fully reached what we’d comfortably call version 1.0 - Some methods may change, some may be removed, more will be added.
- Basic documentation is available at https://developer.parkrun.com - Some elements are rather out of date. We hope to revise that and settle it down over the coming months.
- We would like to get a developer self-help community established, and would welcome suggestions for where to best host that. Just now we’d suggest creating a help-wanted issue on our github project at: https://github.com/parkrun/parkrunAPI/issues
We’ve still got a lot more to do, but opening the API out to a wider audience and seeing what you come up with is incredibly exciting. I look forward to seeing your ideas in the coming weeks and months,