The API is looking a lot better! And yes I was probably wrong about Garmin, their API approach seems fairly thoughtful.
@xertedbrain here’s how I’m planning to use the Xert API. This is from Claude, with some notes.
Using Xert as the training model, with Intervals.icu for scheduling and a Claude agent as coach
Roles
Xert is the source of truth for fitness and load: the signature (TP, LTP, HIE, PP) plus XSS, Training Load, Recovery Load, Form, Training Status and Target XSS. I don’t use any CTL, ATL, TSB or ACWR metrics.
Intervals.icu holds the calendar. A script copies my Xert signature into the Intervals sport settings (TP→FTP, HIE→W′, PP→Pmax). Intervals’ Strain Score on planned and completed workouts then lines up with XSS.
A Claude agent does the planning. It reads Xert through the API using my personal client key, writes sessions to the Intervals calendar against weekly Low/High/Peak XSS targets, and adjusts each day using wellness data Xert doesn’t see (HRV, resting HR, sleep, strength training).
Daily loop
Ride. The ride syncs to Xert and Intervals.
If my signature changed, the script updates the Intervals settings.
In the morning the agent combines Xert Form/Status with HRV, resting HR and sleep, then confirms or adjusts the planned session.
Weekly, the agent reviews breakthroughs (comparing the signature before and after each ride) and per-system progression against my goal event.
Feedback on API v1.7
The personal key with client_credentials works well.
Would help: Recovery Load and Form in /oauth/training_info, since today they only appear in activity progression.
Would help: a recording device or source field in the activity list.
Would help: a webhook, or a cheap “signature changed since” endpoint, to trigger the Intervals sync.