Skip to main content

Classes API

Auto-generated from the OpenAPI spec. Run node docs-site/scripts/fetch-openapi.js to regenerate.

POST /api/v1/classes/recurring

Schedule Recurring Classes

Request body

FieldRequiredTypeDescription
template_idYesinteger
instructor_idNointeger
location_idNointeger
starts_atYesstring
ends_atYesstring
capacityYesinteger
notesNostring
days_of_weekYesarray
recurrence_end_dateNostring
max_occurrencesNointeger
is_onlineNoboolean

Responses

  • 201 — Successful Response
  • 422 — Validation Error

GET /api/v1/classes

List Classes

Parameters

NameInRequiredTypeDescription
start_datequeryNo
end_datequeryNo
instructor_idqueryNo
template_idqueryNo
location_idqueryNo
statusqueryNo

Responses

  • 200 — Successful Response
  • 422 — Validation Error

POST /api/v1/classes

Schedule Single Class

Request body

FieldRequiredTypeDescription
template_idYesinteger
instructor_idNointeger
location_idNointeger
starts_atYesstring
ends_atYesstring
capacityYesinteger
notesNostring
is_onlineNoboolean

Responses

  • 201 — Successful Response
  • 422 — Validation Error

GET /api/v1/classes/{class_id}

Get Class

Parameters

NameInRequiredTypeDescription
class_idpathYesinteger

Responses

  • 200 — Successful Response
  • 422 — Validation Error

PUT /api/v1/classes/{class_id}

Update Class

Parameters

NameInRequiredTypeDescription
class_idpathYesinteger

Request body

FieldRequiredTypeDescription
instructor_idNointeger
location_idNointeger
starts_atNostring
ends_atNostring
capacityNointeger
notesNostring
is_onlineNoboolean

Responses

  • 200 — Successful Response
  • 422 — Validation Error

DELETE /api/v1/classes/{class_id}

Cancel Class

Parameters

NameInRequiredTypeDescription
class_idpathYesinteger

Responses

  • 200 — Successful Response
  • 422 — Validation Error

POST /api/v1/classes/{class_id}/zoom-meeting/retry

Retry Zoom Meeting

Manually retry Zoom meeting creation for an online class whose previous attempt failed (zoom_meeting_status == 'failed').

Parameters

NameInRequiredTypeDescription
class_idpathYesinteger

Responses

  • 200 — Successful Response
  • 422 — Validation Error

GET /api/v1/classes/{class_id}/roster

Get Roster

Parameters

NameInRequiredTypeDescription
class_idpathYesinteger

Responses

  • 200 — Successful Response
  • 422 — Validation Error

GET /api/v1/classes/{class_id}/waitlist

Get Waitlist

Parameters

NameInRequiredTypeDescription
class_idpathYesinteger

Responses

  • 200 — Successful Response
  • 422 — Validation Error

POST /api/v1/classes/{class_id}/complete

Complete Class

Parameters

NameInRequiredTypeDescription
class_idpathYesinteger

Responses

  • 200 — Successful Response
  • 422 — Validation Error

DELETE /api/v1/classes/{class_id}/remove

Remove Class

Permanently delete a scheduled class. Only allowed when there are no confirmed bookings.

Parameters

NameInRequiredTypeDescription
class_idpathYesinteger

Responses

  • 204 — Successful Response
  • 422 — Validation Error