Export all your workouts from Endomondo
It is not easy to export all workouts in Endomondo from web interface. You can do it only one by one. If you are active in this fitness…
Export all your workouts from Endomondo
It is not easy to export all workouts in Endomondo from web interface. You can do it only one by one. If you are active in this fitness network for several years it’s practically impossible.
There are some ways. You can use free services tapiriik, where you can export all your GPX file to Dropbox. But this is not our way. We want to have a full control over the process.
This example uses Node 9, where you can use async functions.
I created npm package endomondo-api-handler that can work with Endomondo web API. This API is not public and all endpoints are just sniffed by web browser. You need to have email and password of user, so it is mainly for personal use.
The simplest script, how to export all your workouts looks like this:
require('cross-fetch/polyfill');
const fs = require('fs');
const { Api } = require('endomondo-api-handler');
const api = new Api();
(async () => {
await api.login(LOGIN, PASSWORD);
await api.processWorkouts({}, (workout) => {
console.log(workout.toString());
if (workout.hasGPSData()) {
fs.writeFileSync(`tmp/${workout.getId()}.gpx`, workout.toGpx(), 'utf8');
}
});
})();
It will save all your GPX files to tmp folder. You can filter workouts that should be exported by adding parameter to processWorkouts method. You can use following:
type WorkoutFilters = {
after?: string | DateTime,
before?: string | DateTime,
fromDuration?: number | Duration,
toDuration?: number | Duration,
fromDistance?: number,
toDistance?: number,
title?: string,
sport?: Sport,
}
If you want to export only runs from year 2017, use this parameters:
import { DateTime } from 'luxon';
const { Api, SPORTS } = require('endomondo-api-handler');
await api.processWorkouts({
sport: SPORTS.RUNNING,
after: DateTime.fromISO('2017-01-01T00:00:00.000'),
before: DateTime.fromISO('2017-12-31T23:59:59.999'),
}, (workout) => {
...
});
Remember that GPX file does not include all information from Endomondo workout. It is general information like title, notes or tags. Only following information are included:
- link on original workout
- type of activity
- name of author
- list of gps points where is: time, location, speed, heart rate, cadence and altitude
메타데이터
- post_id
- e188c1da4e3
- slug
- export-all-your-workouts-from-endomondo-e188c1da4e3
- url
- https://medium.com/life-with-fitness-data/export-all-your-workouts-from-endomondo-e188c1da4e3
- canonical_url
- https://medium.com/life-with-fitness-data/export-all-your-workouts-from-endomondo-e188c1da4e3
- author_url
- https://medium.com/@michalozogan
- status
- ok
- fetched_at
- 2026-07-26 04:08:36