Skip to main content

Garmindownloader

Author

Dominik Rappaport, dominik@rappaport.at

Motivation

For comprehensive statistical analysis, it is advisable to download Garmin data to a local computer. This is particularly important because Garmin aggregates historical data after a certain period. The script retrieves both Body Battery and heart rate data from Garmin and stores them in CSV format. Since Garmin allows downloading a maximum of one month of data per request, the script automatically generates a separate CSV file for each month.

Installation

The garmindownloader is distributed as a Python package. Several installation methods are available.

Using pip

Executing pip installs the package in your current Python environment. Global installation was once possible, but modern Linux distributions no longer permit this approach.

pip install garmindownloader

Using pipx or uv

Both pipx and uv enable global tool installation. The package can be installed as follows:

pipx install garmindownloader

or

uv tools install garmindownloader

These steps assume you are using uv as your package and project manager.

Usage

Authentication

First of all you need to create an authentication token for Garmin Connect. That can be done by running the authenticate script.

garminauthenticate

You need to enter your Garmin Connect credentials and the script will generate a token and save it in the ~/.garth directory.

Once that is done the script can be run as follows. You specify a year and a month or a range of months and if you want Body Battery data or heart rate data (or both).

garmindownloader <year> <month(s)> --datatype <datatype>

Examples:

garmindownloader --datatype hr 2025 9
garmindownloader --datatype bb,hr 2025 7-8
garmindownloader --datatype hr 2025 1

The script generates for each month a separate CSV file. For Body Battery, the files are names bb<year><month>.csv. For heart rate data, the files are named hr<year><month>.csv.

Metadata

Release files for garmindownloader 0.1.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 garmindownloader 0.1.0
File Size Uploaded Provenance Actions
garmindownloader-0.1.0.tar.gz 5.2 kB Without provenance Details for garmindownloader-0.1.0.tar.gz

Built distribution (wheel)

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

Total release size: 13.1 kB

Release files / garmindownloader-0.1.0.tar.gz

Download URL garmindownloader-0.1.0.tar.gz
Size 5.2 kB
Tags Source
SHA-256 checksum
How to use checksums
62e746646905c6e4f04159d89fc2e7202a8978182c7782ccdf6de5017aa546df
BLAKE2b-256 checksum
How to use checksums
07baef64a4209ce2b8fe787e33da59ee13a7a73b182a8507552782ec5c5090e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.1

Release files / garmindownloader-0.1.0-py3-none-any.whl

Download URL garmindownloader-0.1.0-py3-none-any.whl
Size 7.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
abbc55cbcbac48af76d8aa7f62d1a592b92ecca02b1148215f002533a8215d7e
BLAKE2b-256 checksum
How to use checksums
ddb3a1e0a3e44abc37bf922d008f87eff6e5848da2a3e15500bbdd0ff09eefbe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.1

Security for garmindownloader 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

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