What This Screen Does
This is where you create a new class for your gym or fitness center. Think of it like setting up a scheduled session on a timetable — you give it a name, pick what type of class it is, choose when it happens, and assign coaches to run it. Once saved, the class appears in your schedule and members can start signing up.
How to Get There
Open the dashboard.
In the left-hand menu, click Classes.
Click the + New Class button in the top-right corner.
You are now on the Create a New Class screen.
Step-by-Step Guide
1. Fill In the Details
This is the first section of the form. It covers the basic identity of the class.
Field | Required | What to Enter |
Title | Yes | The name of the class. For example, “Endurance WOD” or “Morning Yoga”. |
Type | Yes | Pick a class description from the dropdown. These are pre-configured templates that describe what kind of class this is (e.g. “CrossFit”, “Spinning”). If you do not see the one you need, ask an administrator to create a new class description first. |
Gym | Yes | Select which gym or location this class belongs to. Every class must be tied to a location. |
2. Set the Properties
This section contains toggles that control how the class behaves. All toggles are optional and default to off.
Toggle | Required | What It Does |
Is open gym | No | Turn this on if the class is an “open gym” session where members can come and go freely rather than following a structured program. |
Is a closed class | No | Turn this on to make the class invite-only. Members will not be able to sign up on their own. |
Is personal training | No | Turn this on if the class is a one-on-one personal training session. |
Enable fines | No | Turn this on to charge a fee when members sign up but do not show up (a no-show fine). |
Is guests allowed | No | Turn this on to allow non-members (guests) to book a spot in this class. |
Release training program | No | Turn this on if you want to publish a training program for the class ahead of time. Turning this on reveals extra fields (see step 4). |
Change opt out time | No | Turn this on if you want to set a custom deadline for when members can cancel their booking. Turning this on reveals extra fields (see step 5). |
3. Set the Schedule (When)
This section controls when the class takes place and how long it lasts.
Field | Required | What to Enter |
Class begins | Yes | Use the time picker to set the start time (24-hour format). For example, 09:00. |
Class ends | No | Use the time picker to set the end time (24-hour format). If provided, it must be later than the start time. |
Shift duration in hours | No | How many hours the staff shift lasts for this class. Enter a whole number, 0 or greater. |
Shift duration in minutes | No | Additional minutes for the staff shift duration. Enter a whole number, 0 or greater. |
4. Configure Program Release (conditional)
These fields only appear if you turned on Release training program in step 2.
Field | Required | What to Enter |
Hours before program release | No | How many hours before the class the training program should be published to members. Enter a whole number, 0 or greater. |
Minutes before program release | No | Additional minutes before the class for program release. Enter a whole number, 0 or greater. |
For example, if you enter 2 hours and 30 minutes, the program will become visible to members 2 hours and 30 minutes before the class starts.
5. Configure Opt Out Time (conditional)
These fields only appear if you turned on Change opt out time in step 2.
Field | Required | What to Enter |
Earliest opt out time in hours | No | The minimum number of hours before the class that a member can cancel their booking. Enter a whole number, 0 or greater. |
Earliest opt out time in minutes | No | Additional minutes for the opt-out deadline. Enter a whole number, 0 or greater. |
For example, if you set 1 hour and 0 minutes, members must cancel at least 1 hour before the class starts, or they will not be able to cancel.
6. Assign Coaches
Open the Coaches dropdown.
Check one or more coaches (instructors) from the list.
These are the staff members who will lead the class.
You can select multiple coaches if the class has more than one instructor.
If you do not see a coach in the list, make sure they have been added as an employee first.
7. Save
Click the Create button at the bottom-right of the form.
The system will:
Validate all your inputs.
Create the class record.
Redirect you to the classes list.
You will see a green “Create success!” notification at the bottom of the screen.
What Happens Behind the Scenes
You click "Create"
|
v
Form validates all fields (Yup schema)
|
v
Are there validation errors?
Yes → Red messages appear below the invalid fields, form does NOT submit
No → Continue
|
v
API call: ClassesService.create({ body: formData })
|
v
Server creates the class record and returns a response
|
v
Success notification appears ("Create success!")
|
v
You are redirected to /classes (the classes list)
Troubleshooting
“I filled everything in but the Create button does not work”
Double-check that all required fields are filled in. The form will not submit if anything is missing.
Look for small red error messages below the fields — they tell you exactly what needs fixing.
Make sure you selected a Type (class description) and a Gym from the dropdowns. They must not be left on the default placeholder.
“The Type dropdown is empty”
Class descriptions are loaded when the page opens. If the list is empty, try refreshing the page.
If it is still empty, no class descriptions have been created yet. Ask an administrator to set up at least one class description under the Class Descriptions settings before creating a class.
“The Gym dropdown is empty”
You must have at least one gym or location set up in the system before creating a class.
If you are new to the platform, create a gym first under Gym settings, then come back to this screen.
“I do not see any coaches in the dropdown”
The coaches list is pulled from your employees. If it is empty, no employees have been added to the system yet.
Make sure the people you want to assign as coaches have been created as employees first (see the Employees section).
Try refreshing the page — the list loads when the form opens.
“I get an error saying ‘Ends must be later than begins’”
The Class ends time must be after the Class begins time.
For example, if the class begins at 09:00, the end time must be 09:01 or later.
If you do not know the exact end time, you can leave the field empty — it is not required.
“I get an error after clicking Create”
A red error message will appear at the top of the form. Read it carefully — it usually tells you what went wrong.
Common causes: a server timeout, a duplicate class at the same time, or a network issue.
If the error is unclear, try again. If it keeps happening, contact support with the exact error message.
“I turned on ‘Release training program’ but I do not see the extra fields”
The fields for Hours before program release and Minutes before program release appear directly below the schedule fields once the toggle is on.
Scroll down — they may be further down the page, especially on smaller screens.
“I turned on ‘Change opt out time’ but nothing changed”
Similar to the program release fields, the opt-out time fields appear below the schedule section.
Scroll down to find them. On mobile, they appear in a single column and may be further down the page.
“I entered a negative number for shift duration or opt-out time”
All duration and time fields must be 0 or greater. The form will show a validation error if you enter a negative number.
Enter whole numbers only. For example, use 1 hour and 30 minutes instead of 1.5 hours.
“The class was created but no coaches were assigned”
Assigning coaches is optional. If you forgot to select any, go to the class edit screen and add them there.
Open the classes list, find your class, click to edit it, and use the Coaches dropdown to assign instructors.
