Skip to main content

Python 3 API wrapper for Garmin Connect

Project description

Python: Garmin Connect

image

Donate

Python 3 API wrapper for Garmin Connect to get your statistics.

NOTE: For developers using this package

From version 0.2.1 onwards, this package uses garth to authenticate and perform API calls.
This requires minor changes to your login code, look at the code in example.py or the reference.ipynb file how to do that.
It fixes a lot of stability issues, so it's well worth the effort!

About

This package allows you to request garmin device, activity and health data from your Garmin Connect account. See https://connect.garmin.com/

Installation

pip3 install garminconnect

Authentication

The library uses the same authentication method as the app using Garth. The login credentials generated with Garth are valid for a year to avoid needing to login each time.
NOTE: We obtain the OAuth tokens using the consumer key and secret as the Connect app does. garth.sso.OAUTH_CONSUMER can be set manually prior to calling api.login() if someone wants to use a custom consumer key and secret.

Testing

The test files use the credential tokens created by example.py script, so use that first.

export GARMINTOKENS=~/.garminconnect
sudo apt install python3-pytest (needed some distros)

make install-test
make test

Development

The tests provide examples of how to use the library.
There is a Jupyter notebook called reference.ipynb provided here.
And you can check out the example.py code you can find here, you can run it like so:

pip3 install -r requirements-dev.txt
./example.py

Credits

:heart: Special thanks to all people contibuted, either by asking questions, reporting bugs, coming up with great ideas, or even by creating whole Pull Requests to add new features! This project deserves more attention, but I'm struggling to free up time sometimes, so thank you for your patience too!

Donations

Donate

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

garminconnect-0.2.7.tar.gz (66.1 kB view details)

Uploaded Source

Built Distribution

garminconnect-0.2.7-py2.py3-none-any.whl (9.9 kB view details)

Uploaded Python 2Python 3

File details

Details for the file garminconnect-0.2.7.tar.gz.

File metadata

  • Download URL: garminconnect-0.2.7.tar.gz
  • Upload date:
  • Size: 66.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for garminconnect-0.2.7.tar.gz
Algorithm Hash digest
SHA256 340799576954393255dba17697a281fd230b46a0453ba10df4fab33992d68992
MD5 abcb6168445e21ebb3e33414efbd9269
BLAKE2b-256 f62292de7c0116b24a0fff87a30e9ac815370170cf8cd5fff2dd71b7bb34192c

See more details on using hashes here.

File details

Details for the file garminconnect-0.2.7-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for garminconnect-0.2.7-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 7d3339e8c1042da5c7d8fff3d7f210c685c164149efbdc4ef2c4bc8d85e7c14d
MD5 fbcdc6030b8f6e5b9662ab270e36425d
BLAKE2b-256 ae3305cfb344ffccffaf0559383b75d01deb155fbc5c823f537d37645aa0d524

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page