Garmin Connect import

Bring Garmin activities into your private archive.

MTL Explorer can download new Garmin Connect activities, keep the exported files on your host, and process them with the same indexing flow as files placed in the import folder.

Configure access

Enable Garmin sync in the private server configuration and provide the Garmin Connect login used for exports.

Run the exporter

Start a sync from the Admin workspace or let the configured background schedule run it.

Skip known activities

Activity IDs already present in the archive are passed to the exporter so they are not downloaded again.

Index new files

Downloaded activities enter the normal import, duplicate detection, classification, map, and statistics flow.

Garmin sync is disabled by default.

The standard installation does not ask for a Garmin account. Enable sync only in a private configuration file that is not committed or shared.

A custom Spring configuration can enable the exporter and supply its account settings. The example values below are placeholders.

Keep the configuration private. Do not place real Garmin credentials in the repository, screenshots, support requests, or public logs.
mtl:
  garmin-sync:
    enabled: true
    user-name: your-garmin-login
    user-password: your-private-password

Create the override

Save the private settings as application.yml beside docker-compose.yml.

Mount the file

Enable the existing ./application.yml:/app/config/application.yml:ro volume entry for the application service.

Restart and review

Run docker compose up -d, then open Admin → Garmin Sync to start a sync and review its output.

Selected download failures get a second path.

The main exporter requests Garmin activity files. If a GPX activity download reports an HTTP 408 timeout, MTL Explorer can retry that activity by downloading its original FIT file and converting it to GPX for processing.

Original activity ID

The Garmin activity ID is retained so later syncs can identify activities that are already stored.

FIT fallback

The retry path applies to detected GPX timeout failures. It is not a general replacement for every exporter error.

Visible status

The Admin workspace exposes sync output and helper-tool status so failures can be reviewed on the self-hosted instance.

Normal processing

Successful downloads are handled like other imported tracks and become available to filters, maps, statistics, and segments.

Community integration Garmin may change authentication, endpoints, or rate limits. MTL Explorer uses community export tools and is not an official Garmin Connect integration.

Continue with related guides.