Endomondo GPX TCX activity exporter / downloader
If you use Endomondo great service to track your workouts you’ll soon realize of a very (IMHO) disappointing feature (or lack of): the ability to export all your information at once.
Unfortunately, even though this a request highly demanded by Endomondo’s users, they have no plans to implement it, as stated here:
Hi guys, there is unfortunately no way how to export/import (from the file) more than one workout at once and we do not plan to implement it.
There are several options around to be able to do this (sort of) including 3rd party apps and scripts, but I found myself in the need of creating something so it’s slightly easier to use for everyone. I’ve built this very simple Windows forms application that does this, and I’m also providing the code for everyone to peek at it and do whatever they want (maybe port it to a Linux app?).
I initially built it for myself, looking at some other places around to try to get some information, and looking into Fiddler to see what was going on, and I thought maybe someone else could find it useful, so you’re absolutely free to download it, and do whatever you want to do with the code if you wish, which BTW is provided as-is. 😉
Before unzipping the file please “unblock” it (right-click -> properties -> unblock) to avoid issues when executing.
How does it work?
The application couldn’t be simpler, you just need to type in your email address and password into the provided textboxes and hit the connect button.
After the application has connected, you can get a list of the last X workouts (by default 10, I suggest you start with 10 or 20 to test it works for you and then increase the number) which will be shown in the grid below (similarly as how they appear in Endomondo’s history view):
Once that is done, simply check the ones you want to download, choose a folder to save them, select the format (either TCX or GPX) and you’re done! 🙂
You can check all the items of a specific type from the dropdown:
Since this is my own interpretation of Endomondo’s data into GPX/TCX formats based on the scarce information around that Endomondo has, the resulting file might not be 100% accurate, there might be missing data which I’m unaware of, maybe using different sports it gets additional data somehow (?). For example, I’m not including heart rate information in the GPX format (although I am in TCX) because I simply didn’t have time to add it, but will probably work on that later.
For this, you can also download the “original” data provided by Endomondo if you mark the Originals checkbox, which will be saved with the same name as the GPX/TCX file with *.TXT extension, in case you want to mess around with that yourselves. 😉
Also, I’m not very sure of all the API possibilities (didn’t have much time to explore) so for now the tool only downloads the last X activities, there’s no possibility to choose a date range, etc.
BTW, the dropdown to select the workout type will check/uncheck the items in the grid. I might change this but for the moment I think it’s ok.
One last thing, for activities other than running or biking, tracks are not generated, so in the example above with the pedometer tracking list, those GPX/TCX will not have any corresponding track.
Currently there are no error handling blocks, and sometimes if you request too many activities from Endomondo you’ll end up with a 403 error. I implemented a workaround by adding an additional delay of 0.5s between each download, but again your results may vary, so you can download the code and experiment yourself if you wish (or I might implement some kind of hack if I have time).
Remember, this was part of a personal project and I may be extending these functionalities or not depending on my availability, so use it at your own risk.
You can download it here.
I hope you guys like it too. 🙂