get_load_projection
Project future CTL, ATL and form from planned workouts or what-if scenarios. Returns weekly stats, race days, target form, and plan checks without writing data.
Instructions
Use for future fitness: CTL, ATL and form projected over the planned workouts in the calendar, or a what-if scenario (sessions or weekly templates not in the calendar) against the calendar plan (read-only, nothing is written).
Starts from Intervals.icu's CTL/ATL at the end of yesterday plus today's completed load; planned workouts without a load are reported, not guessed. Returns end values, lowest form, highest ramp, ISO weeks with plan statistics, race days, Intervals.icu's own projection, a model check and weeks outside commonly cited ranges (ramp 5-8 CTL/week, monotony > 2.0, no rest day). With target_date, target_form or a scenario: the target day (default the next RACE_A) at the start of the day; target_form adds a search for the load of the last taper_days that reaches it. Arithmetic, not a forecast; no verdict. Method and scenario format: intervals://methods/load (get_guide).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| atl_days | No | ATL time constant in days, at least 1 | |
| ctl_days | No | CTL time constant in days; atl_days < ctl_days <= 365 | |
| end_date | No | Last day YYYY-MM-DD, max 180 days ahead; default 28 days ahead, extended to the target and scenario | |
| scenario | No | What-if plan not in the calendar, object or JSON text: {"calendar": "add"|"replace"|"none", "sessions": [{"date", "load" or "duration_min"+"intensity_factor"}], "weekly": [{"start", "weeks", "load" or "hours"+"intensity_factor", "sessions" or "days"}]}; a list = sessions. Full format: intervals://methods/load | |
| athlete_id | No | Default: the configured athlete | |
| taper_days | No | Days before the target varied by the search, 1-42 | |
| target_date | No | Target day YYYY-MM-DD, today or later (form at the start of that day); default the next RACE_A event | |
| target_form | No | Form range at the start of the target day: "5,15" (CTL - ATL) or "5%,20%" (of CTL); starts the search for the load before it | |
| detail_level | No | compact = start, end, lowest form, races, target; standard adds ISO weeks and plan checks; full adds days (JSON: days always, with a scenario only at full) | standard |
| output_format | No | json = machine-readable, all fields | text |