--- id: garminconnect version: "0.3.10" license: MIT license_treatment: permissive maintenance: active --- # garminconnect — Python 3 API wrapper for Garmin Connect License: permissive · Maintenance: active · Downloads: 741.0K/mo ## What it is and what it does garminconnect is a Python 3 API client for Garmin Connect that handles authentication, token management, and access to API endpoints across multiple categories. It abstracts away the complexity of Garmin's mobile SSO flow, managing token refresh automatically so you can focus on querying health data, activities, devices, and fitness metrics. The library covers health metrics (heart rate, sleep, stress, SpO2, HRV), activity management (workouts, typed uploads, scheduling), nutrition logging, golf scorecards, device information, goals and achievements, and historical trends. It uses curl_cffi, requests, and ua-generator to handle HTTP communication and maintain compatibility with Garmin's API endpoints. Authentication tokens are stored locally and refreshed transparently; only a full re-login is needed if the refresh token expires. Use it for: - Extract daily step counts, calories, and resting heart rate for personal fitness dashboards or health tracking applications. - Programmatically upload workout data (running, cycling, swimming) to Garmin Connect or sync with external fitness platforms. - Retrieve historical activity and health trends over date ranges for analysis, reporting, or data migration. - Automate device management tasks like querying connected devices, alarms, or solar data without manual Garmin Connect login. - Build integrations that pull Garmin golf scorecard data, shot-by-shot metrics, or club statistics for analysis. - Monitor personal records, badges, challenges, and training readiness metrics for coaching or performance tracking workflows. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Python wrapper for the Garmin Connect API that provides programmatic access to health metrics, activity data, device information, and fitness tracking from Garmin Connect accounts. Yes. The package is actively maintained, has low install friction, carries no known vulnerabilities, and provides comprehensive API coverage for Garmin Connect. It's suitable for production use if you need programmatic access to Garmin health and fitness data. Requires Python 3.12 or later. ## Install pip install garminconnect uv add garminconnect poetry add garminconnect ## Installing garminconnect Before you install: Low friction installation with three runtime dependencies (curl_cffi, requests, ua-generator). Package is actively maintained with a recent release (3 days old) and 2804 GitHub stars. Requires Python 3.12 or later. License in practice: MIT license permits free use, modification, and distribution with minimal restrictions—suitable for both open-source and commercial projects. Quickstart: pip install garminconnect curl_cffi from garminconnect import Garmin client = Garmin(email='user@example.com', password='password') client.login() stats = client.get_stats_today() print(f"Steps: {stats['steps']}, Calories: {stats['calories']}") Requires Python 3.12 or later. First login may require MFA code entry via interactive prompt if multi-factor authentication is enabled on the Garmin account. Verify before relying: - Whether all documented API methods are fully functional or if some are experimental/partial implementations - Rate limiting or throttling behavior when making multiple API calls in succession - Whether MFA support covers all Garmin account types or only specific regions/configurations ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 741.0K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags garmin connect api wrapper, garmin health data python, garmin activity tracking api, garmin fitness metrics access, garmin device data python, garmin connect authentication, garmin workout data retrieval, fitness-api, health-data, garmin-integration [View on SkillFed](https://skillfed.io/packages/garminconnect) · [View on PyPI](https://pypi.org/project/garminconnect/)