Skip to main content

PyPI-Versions PyPI-Status Codacy-Grade Tests Coveralls

garpy is a simple app used to backup your data from Garmin Connect. It can be used to do incremental backups of your data from Garmin Connect or to download one specific activity.

Incremental backup of activities

The first time you use it, all the activities found on your Garmin Connect account will be downloaded to the directory that you specify. Afterwards, each time you run the command, only the newly available activities will be downloaded.

The command is used as follows:

garpy download {backup-dir}

Behind the scenes, this is what will happen:

  • garpy will prompt you for your password and will then authenticate against Garmin Connect.

  • It will first fetch the list of all your activities from garmin.

  • It will check which activities have already been backed up on the given backup-dir

  • It will proceed to download all the missing activities.

Downloading one activity from its ID

If you wish to download only one activity or simple you want to refresh an already downloaded activity, use the ‘-a/–activity’ flag as follows:

garpy download --activity 1674567326 {backup-dir}

This will download the activity in all existing formats to the given backup_dir

Full CLI options

For more detailed usage, invoke the ‘–help’ command:

$ garpy download --help
Usage: garpy download [OPTIONS] [BACKUP_DIR]

  Download activities from Garmin Connect

  Entry point for downloading activities from Garmin Connect. By default, it
  downloads all newly created activities since the last time you did a backup.

  If you specify an activity ID with the "-a/--activity" flag, only that
  activity will be downloaded, even if it has already been downloaded before.

  If no format is specified, the app will download all possible formats.
  Otherwise you can specify the formats you wish to download with the
  "-f/--formats" flag. The flag can be used several  times if you wish to
  specify several formats, e.g., 'garpy download [OPTIONS] -f original -f gpx
  [BACKUP_DIR]' will download .fit and .gpx files

  Options:
  -f, --formats [original|gpx|fit|tcx|kml|summary|details]
                                  Which formats to download. The flag can be
                                  used several times, e.g. '-f original -f
                                  gpx'
  -u, --username {username}       Username of your Garmin account
  -p, --password {password}       Password of your Garmin account
  -a, --activity {ID}             Activity ID. If indicated, download only
                                  that activity, even if it has already been
                                  downloaded. Otherwise, do incremental update
                                  of backup
  --user-agent {user_agent}       User agent to be used by requests
  --help                          Show this message and exit.

Installation

garpy requires Python 3.7 or higher on your system. For those who know your way around with Python, install garpy with pip as follows:

pip install -U garpy

If you are new to Python or have Python 2 installed on your computer, I recommend you install Miniconda. To my knowledge, it is the simplest way of installing a robust and lightweight Python environment.

Acknowledgements

The library is based on garminexport. I borrowed the GarminClient, refactored it to my taste and created a package from it.

Release files for garpy 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for garpy 0.4.0
File Size Uploaded
garpy-0.4.0.tar.gz 13.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for garpy 0.4.0
File Interpreter ABI Platform
garpy-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 27.8 kB

Release files / garpy-0.4.0.tar.gz

Download URL garpy-0.4.0.tar.gz
Size 13.1 kB
Tags Source
SHA-256 checksum
How to use checksums
a12de059d2dd65baa4b1bdde7a94589737db47bb362b0b75cdb7953194cf70ad
BLAKE2b-256 checksum
How to use checksums
662bbe3df45b1fd67c0add4f7e693607b9ad5e267a6b2f41b2afcd8443f457f5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.7

Release files / garpy-0.4.0-py3-none-any.whl

Download URL garpy-0.4.0-py3-none-any.whl
Size 14.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
092051a1957bbf91bd300fb35b28034dd0ba8088c9e0ad906756248d938e38f3
BLAKE2b-256 checksum
How to use checksums
6560694b7d68aa18073a0f8838676493c771a09b7e55097ccf9d432f675c52cf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.7

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 release files

0.3.8

2 release files

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page