What This Screen Does
This is where you make changes to an existing program. A program is like a workout plan for a specific day — it tells coaches and members what exercises to do during a class. On this screen you can update the assigned classes, modify workouts, change notes, or delete the program entirely.
How to Get There
Open the dashboard.
In the left-hand menu, click Program.
Find the program you want to edit and click on it.
You are now on the Edit Program screen.
Step-by-Step Guide
1. Review the Breadcrumbs
At the top of the page you will see a breadcrumb trail: Dashboard → Program → Edit.
You can click Dashboard or Program to navigate back at any time.
2. Delete the Program (optional)
In the top-right corner there is a red Remove program button with a trash-bin icon.
Click it to permanently delete this program.
Warning: This action cannot be undone. The program will be removed and you will be redirected back to the programs list.
3. Assign Classes
In the Details card, find the Classes dropdown.
Click the dropdown to see a list of classes scheduled for the program’s date.
Each class is shown with its name and start time (e.g. “CrossFit (Feb 9, 2026 09:00)”).
Check or uncheck classes to control which ones this program is assigned to.
You must select at least one class.
Field | Required | What to Enter |
Classes | Yes | Select one or more classes from the dropdown. These are the classes that will use this program. |
4. Set External Programming Track (conditional)
This field only appears if your chain has an external programming access key configured.
If visible, type the name or identifier of the external programming track.
This links the program to content from an external programming provider.
Field | Required | What to Enter |
External programming track | No | The identifier for the external programming source, if applicable. |
5. Edit the Program Content
The program builder section lets you define exactly what happens during the class. It contains several fields:
Field | Required | What to Enter |
Timeline | No | A text outline of how the class time is structured (e.g. “0-10 min warm-up, 10-30 min workout, 30-35 min cool-down”). |
Equipment | No | List the equipment members need (e.g. “Barbell, jump rope, pull-up bar”). |
External References | No | Links or references to videos, articles, or other resources. |
Coaches Notes | No | Private notes for coaches — tips on scaling, things to watch for, or teaching cues. |
6. Edit Workouts
Each program has one or more workouts inside it.
For each workout you can set:
Field | Required | What to Enter |
Workout Title | No | A name for the workout (e.g. “Workout #1” or “Fran”). |
Workout Type | No | Pick a type from the dropdown (e.g. “For Time”, “AMRAP”, “EMOM”). If none applies, leave it unselected. |
Workout Text | No | The full workout description — movements, reps, and weights. |
Time Cap | No | The maximum time allowed. Set hours, minutes, and/or seconds. Leave blank if there is no time cap. |
You can add more workouts or remove existing ones using the controls in the program builder.
You can also apply a workout template to quickly fill in a workout from a saved template.
7. Save Changes
When you are done editing, click the Save Changes button at the bottom-right of the form.
The system will:
Validate all your inputs.
Send the updated program to the server.
Show a success message.
Navigate you back to the previous page.
You will see a green “Update success!” notification at the bottom of the screen.
What Happens Behind the Scenes
You click "Save Changes"
|
v
Form validates all fields (Yup schema)
|
v
API call: ProgramsService.update({ programId, body: updatedData })
|
v
Server updates the program record
|
v
Success notification: "Update success!"
|
v
You are navigated back to the previous page
If you click “Remove program” instead:
You click "Remove program"
|
v
API call: ProgramsService.removeById({ programId })
|
v
Server deletes the program
|
v
You are redirected to /programs (the programs list)
Troubleshooting
“I edited the program but the Save Changes button does nothing”
Make sure all required fields are filled in. At minimum, you must have at least one class selected.
Look for small red error messages below the fields — they tell you exactly what needs to be fixed.
If the button shows a loading spinner, the save is in progress. Wait for it to finish.
“I do not see any classes in the dropdown”
The class list is loaded based on the program’s date. If no classes are scheduled for that date, the dropdown will be empty.
Make sure classes have been created for the correct date in the Classes section of the dashboard before editing the program.
“The External Programming Track field is not showing up”
This field only appears when your chain has an external programming access key configured in the chain settings.
Contact your administrator to enable external programming integration if you need this feature.
“I accidentally deleted the program”
Deleting a program is permanent and cannot be undone.
You will need to create a new program from scratch with the same content.
To avoid accidental deletions, double-check before clicking the red Remove program button.
“I got an error after clicking Save Changes”
A red error message will appear. Read it carefully — it usually explains what went wrong.
Common causes: network timeout, server error, or a validation issue the form did not catch.
Try again after a moment. If the error persists, contact support with the error message.
“My workout template did not apply correctly”
Make sure you selected the correct template from the list.
Templates fill in the workout fields with saved content. You can still edit the fields after applying a template.
If the template list is empty, no workout templates have been created yet. Create one in the Workout Templates section first.
“The time cap field is not saving my value”
Make sure you enter a valid time. The hours, minutes, and seconds must be numbers.
A time cap of all zeros is treated as “no time cap” and will not be saved.
Enter at least one non-zero value (e.g. 0 hours, 12 minutes, 0 seconds).
“I changed classes but the old classes still show the program”
After saving, the system updates which classes are linked to this program.
If you still see the old assignment, try refreshing the page or navigating back to the class view.
There may be a short delay before the change is reflected everywhere in the dashboard.
