stats.training

Does Garmin have an API?

Yes. Two of them, well documented, with proper OAuth. You almost certainly cannot have either one.

TL;DR

Garmin's official API exists but is enterprise only and hard to get access to, so it isn't a route for one person wanting their own data. ✅ The quickest way is a hosted connector: stats.training costs $10/month, sets up in about a minute by pasting one link into Claude or ChatGPT, and works on web, mobile and desktop. The other options, a manual export or running open-source code yourself, are covered below.

Is there an API for Garmin?

There are two: the Health API for sleep, heart rate, stress, body battery and daily summaries, and the Activity API for workouts. Both are good, and both are hard to get access to. They're built for companies, not individuals, and access is granted case by case.

Worth saying plainly, because a lot of writing on this topic implies you're one form away. If you are one person who wants to read your own resting heart rate, the official API is not your route. Everything below is.

How to pull data from Garmin, then

Four routes actually exist. They trade off in the obvious way: the cheaper it is, the more of your time it costs.

1. Export it yourself

Garmin will hand you your whole account under Account Settings › Data Management › Export Your Data. You get a zip, eventually, by email.

It is free. It is also a one-time snapshot of raw files, not a live feed, and the format is closer to a database dump than something you'd read. Good for archiving or a one-off analysis in a spreadsheet. Useless if you want to ask a question next Tuesday and get a current answer.

2. Run an open-source library

There are free, open-source projects that pull your Garmin data into a script or a database. If you write code, they give you total control and cost nothing but time.

That time is the catch. You install and run them yourself, on your own machine or a server you rent, and keeping them working is your job. For a developer who enjoys this, it's the most flexible option there is. For everyone else it usually ends as a half-finished project that goes quiet a month later.

If that trade suits you, this is the right answer and you can stop reading.

3. Go through a data aggregator

A handful of companies already hold Garmin partnerships and resell access across many wearables through a single API. If you're building a product, this is often the sensible path, and it skips the application problem entirely.

It is priced for companies. If you're an individual wanting your own numbers, you'll bounce off the first pricing page.

4. Use a hosted connector ✅ recommended

The newest option. Someone else runs the connection and hands you a link you paste into Claude or ChatGPT, and from then on your AI can read your data when you ask it something. No install, nothing to keep running.

A few of these exist now and they differ more than the marketing suggests. Four things worth checking before you pay for one:

  • How you set it up. If it hands you a plain link, it will work in Claude on the web and on your phone. If it hands you a server address plus a separate API key, that key has to live in a config file, which means desktop only. This is the difference people notice last and mind most.
  • Read-only or not. Some can write back to your account and push workouts to your watch. Handy if you want it, worth knowing if you don't.
  • Whether your history gets stored. Ask whether the service keeps a copy of your training data or fetches it fresh each time you ask. Both designs exist.
  • What it costs to leave. Monthly and cancellable beats a year paid up front, and you should be able to revoke access from Garmin's side whenever you like.

stats.training is the one we'd point you at. Garmin and Strava, $10/month, read-only, nothing stored. Setup is a single link with your key already in it, so it works in Claude on web, mobile and desktop, and in ChatGPT. About a minute, no terminal, cancel any time.

Side by side

Route
Worth it when
Official API
You're a company building a product and can get approved
Manual export
You want an archive or one big offline analysis
Open-source library
You write code and want total control, upkeep included
Aggregator
You're building for other people and have a budget
✅ Hosted connector
You want to ask questions about your own training and not maintain anything. Best option for most people.

What you'd actually do with it

Worth remembering why you wanted the API in the first place. It usually isn't the data. It's the questions Garmin Connect won't answer:

"Compare my last four long runs. Pace, average heart rate, and how much my heart rate drifted across each one." Garmin shows one activity at a time. Lining them up is where the answer lives.
"What's the trend in my resting heart rate over the last 30 days, and does it line up with my hard weeks?" A creeping resting heart rate usually shows up before you feel run down.

What about Garmin's own subscription

Garmin sells Connect+ at $6.99/month, which adds AI insights on top of Connect. It's worth knowing about, and for some people it's enough.

The difference is who asks the questions. Connect+ shows you the insights Garmin decided to write. A connector lets you ask your own, follow up, disagree, and go three questions deeper on the one thing you actually care about this week.

Garmin has an API. What it doesn't have is a way for you to use it. So pick the route that costs you the least of whatever you have least of, money or Saturdays, and get on with the training.

Ask your own training data a question

$10/month, cancel any time. Read-only. Works with Claude on web, mobile and desktop, and with ChatGPT.

‹ back to blog More on the Garmin MCP