Export Garmin Connect activities and wellness data to CSV/JSON.
Project description
garmin-exporter
Export your Garmin Connect activities (CSV) and wellness metrics - sleep, HRV, VO2max, Training Status, Training Readiness (JSON).
Install
The package is published on PyPI,
so the recommended way to install it is with uv or pip:
# with uv (recommended)
uv tool install garmin-exporter
# or with pip
pip install garmin-exporter
Quickstart
# Show help
garmin-exporter --help
# Export activities to CSV + wellness metrics (sleep, HRV, VO2max, ...) to JSON
garmin-exporter --wellness
# Also add per-activity HR time-in-zones
garmin-exporter --hr-zones
On the first run it asks for your Garmin email, password, and MFA code (if enabled), then stores the session token in your OS keyring - the password is never saved. Later runs reuse the session.
Options
| Flag | Description |
|---|---|
-o, --output |
Output CSV path (default: activities.csv) |
--days-back N |
Only the last N days (default: all activities) |
--activity-type T |
Garmin type key, e.g. running (default: all) |
--wellness |
Also write <output>.wellness.json |
--hr-zones |
Add per-activity HR time-in-zones (+1 call each) |
--reset-login |
Forget the stored session and log in again |
Development
The project uses Makefile for typical tasks:
make lint- Ruff check + mypy --strictmake format- Ruff formatmake clean- Remove cache files
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file garmin_exporter-0.0.2.tar.gz.
File metadata
- Download URL: garmin_exporter-0.0.2.tar.gz
- Upload date:
- Size: 5.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bbbd51a84ea590b1462fc17a3f82ff5512f116b8f01eba756c21f014923af68b
|
|
| MD5 |
289c3228411a2ba5e6aaa0ac758ca332
|
|
| BLAKE2b-256 |
aecf1687f329b9c88750f1709094469215d4bea6bb76ca23d08d2bab63c1cb29
|
File details
Details for the file garmin_exporter-0.0.2-py3-none-any.whl.
File metadata
- Download URL: garmin_exporter-0.0.2-py3-none-any.whl
- Upload date:
- Size: 7.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4fdc812df5248833460496ec583d9bf32c2c209aea79579a0b4313f907ab3a10
|
|
| MD5 |
96fb4ff9ad4220c84a4d36631444f296
|
|
| BLAKE2b-256 |
829e2a6c9f6a92673c3e21cd14e21ed4266e432e4c4cf9688f2a8ec64889cb26
|