uploadCustomWorkout
Create new or update existing custom cycling workouts in MyWhoosh using structured steps and intervals.
Instructions
Upload or update custom cycling workouts to MyWhoosh.
CREATING NEW WORKOUTS:
Use a new unique workout ID (timestamp or random large number)
Define all workout properties and steps
UPDATING EXISTING WORKOUTS:
Use the same workout ID as the existing workout
Include all workout properties (changed and unchanged)
Only modify the fields you want to update (e.g., Name, Description, WorkoutStepsArray)
Keep other fields the same as the original workout
WORKOUT STRUCTURE:
Each workout consists of multiple steps (WorkoutStepsArray)
Steps are executed sequentially
Power values are FTP multipliers (0.55 = 55% FTP, 1.0 = 100% FTP, 1.2 = 120% FTP)
Time is in seconds
STEP TYPES:
E_Normal: Steady power interval (use Power field)
E_WarmUp: Ramp up from StartPower to EndPower
E_CoolDown: Ramp down from StartPower to EndPower
E_FreeRide: Free ride with optional message
INTERVALS:
Group steps into intervals by setting the same IntervalId (e.g., 1, 2, 3)
Steps with IntervalId = 0 are not part of an interval
Intervals can repeat (e.g., 3x [5min @ 80% FTP, 3min @ 120% FTP])
EXAMPLE WORKOUT:
5min warmup @ 55% FTP (Id: 1, StepType: E_Normal, Power: 0.55, Time: 300)
10min ramp 55% to 120% FTP (Id: 2, StepType: E_WarmUp, StartPower: 0.55, EndPower: 1.2, Time: 600)
3x [5min @ 80%, 3min @ 120%] (IntervalId: 1 for all 6 steps)
5min cooldown 120% to 55% (Id: 8, StepType: E_CoolDown, StartPower: 1.2, EndPower: 0.55, Time: 300)
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| workouts | Yes | Array of workout definitions to upload |