create_planned_workout
Create structured workouts on Intervals.icu to sync planned sessions to Garmin Connect and your watch.
Instructions
Create a structured planned workout on the Intervals.icu calendar.
Intervals.icu syncs planned workouts to a connected Garmin Connect account, so this is the path for getting a session onto the watch. See the README caveat: confirm the first workout actually reaches Garmin before relying on this in a training block.
Args: start_date: Local date YYYY-MM-DD. Time is forced to 00:00:00, which the API requires for calendar events. name: Short session title, e.g. "3x8min Schwelle". description: Workout in Intervals.icu syntax (see below). activity_type: "Run", "Ride", "Hike", "WeightTraining", "Swim". moving_time: Total duration in seconds. Optional; Intervals.icu derives it from the parsed description. target: "HR", "PACE" or "POWER". Use "HR" for trail and hiking work where pace is meaningless on steep terrain. training_load: Optional manual load override. external_id: Stable id of your own. Reusing it with the same date makes the call idempotent, so a re-planned week updates instead of duplicating.
Workout syntax — one step per line, prefixed "- ":
- 15m Z2 Warmup
3x
- 8m Z4
- 3m Z1
- 10m Z1 CooldownA bare "Nx" line on its own starts a repeated block; the following steps until the next blank line are repeated. Durations use m/s/h. Targets can be zones ("Z2"), ranges of threshold ("75-82%"), or free text for steps with no measurable target. Blank lines separate blocks.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| target | No | HR | |
| start_date | Yes | ||
| description | Yes | ||
| external_id | No | ||
| moving_time | No | ||
| activity_type | No | Run | |
| training_load | No |