Class

Update Class

Update a Class record given the Class identifier and Class data. Any fields not provided in the request will be ignored.

put/classes/{class_id}

Request

  • Base URL
    https://api.wodify.com/v1
  • URL
    https://api.wodify.com/v1/classes/{class_id}
  • Auth
    none declared. Required headers: x-api-key

Path parameters

class_idinteger required

Class Id

Headers

x-api-keystring required

A valid API key. If you don't have one, please request one through the Automations → Integrations page.

Request body

namestring

Class Name

descriptionstring

Class Description

start_datestring date

Class Start Date in Customer's Time Zone

start_timestring time

Class Start Time in Customer's Time Zone

end_timestring time

Class End Time in Customer's Time Zone

class_limitinteger

Maximum Attendees Allowed in Class

allow_waitliststring

True if the Class has a Waitlist Allowed

reservation_openinteger

Units of Time Before the Class when Reservations Open, based on the Reservation Open Time format

reservation_open_time_format_idinteger

Time Format Unit Id for Reservation Open

reservation_closeinteger

Units of Time Before the Class when Reservations Open, based on the Reservation Open Time format

reservation_close_time_format_idinteger

Time Format Unit Id for Reservation Close

reservation_close_time_relation_idinteger

[TimeRelationType] unit for ReservationsClose

reservation_close_time_point_idinteger

[TimePointType] unit for ReservationsClose

cancellation_timeinteger

Units of Time Before the Class when Attendees are allowed to cancel, based on the Reservation Open Time format

cancellation_time_format_idinteger

Time Format Unit Id for CancellationTime

cancel_class_if_no_reservationsstring

True If the Class Will Be Cancelled If It Has No Reservations

cancel_class_timeinteger

Units of Time Before A Class Cancels If There Are No Reservations

cancel_class_time_format_idinteger

Time Format Unit Id for CancelClassTime

cancel_class_number_reservationsinteger

Minimum number of reservations to NOT cancel a class

count_towards_attendance_limitsstring

True If Class Attendances Count Toward Client Attendance Limits

is_drop_in_onlinestring

True If Online Dropins Are Enabled For The Class

is_free_trial_onlinestring

True If Free Trials Have Been Enabled For The Class

waitlist_type_idinteger

The Type Of Class Waitlist, Indicating How The Waitlist Should Behave. NULL Or FirstReply - All Clients Emailed, First To Reply Gets Added To Class. PriorityWaitlist_FirstSignUp - Client Automatically Added To The Class In The Order They Signed Up.

free_trial_limitinteger

Limit Of Allowed Free Trials For The Class

has_free_trial_limitstring

True if there is a Free Trial Limit

drop_in_limitinteger

Limit Of Allowed Drop-Ins For The Class

has_drop_in_limitstring

True if there is a DropIn Limit

waitlist_limitinteger

Limit Of Allowed Waitlists For The Class

has_waitlist_limitstring

True if there is a Waitlist Limit

client_sign_is_enabledstring

Indicates if the Client self sign in is enabled

client_sign_startinteger

Max Number of [TIMEFORMAT] a client may signin in advance

client_sign_start_time_format_idinteger

[TIMEFORMAT] unit for ClientSignStart

client_sign_end_resinteger

Min Number of [TIMEFORMAT] a client may signin in advance for classes with reservations enabled

client_sign_end_res_time_format_idinteger

[TIMEFORMAT] unit for ClientSignEndRes

client_sign_end_res_time_relation_idinteger

[TimeRelationType] unit for ClientSignEndRes

client_sign_end_res_time_point_idinteger

[TimePointType] unit for ClientSignEndRes

client_sign_end_no_resinteger

Min Number of [TIMEFORMAT] a client may signin in advance for classes without reservations enabled

client_sign_end_no_res_time_format_idinteger

[TIMEFORMAT] unit for ClientSignEndNoRes

client_sign_end_no_res_time_relation_idinteger

[TimeRelationType] unit for ClientSignEndNoRes

client_sign_end_no_res_time_point_idinteger

[TimePointType] unit for ClientSignEndNoRes

employee_sign_startinteger

Number of [TIMEFORMAT] an employee may signin in advance

employee_sign_start_time_format_idinteger

[TIMEFORMAT] unit for EmployeeSignStart

count_late_cancellationsstring

Indicates whether late cancellation counts towards attendance limits

charge_late_cancellation_feestring

Charge Late Cancellation Fee

late_cancellation_feenumber

Late Cancellation Fee

late_cancellation_fee_tax_rate_idinteger

Late Cancellation Fee Tax Rate Identifier

count_no_show_reservationsstring

Indicates whether no-shows count towards attendance limits

charge_no_show_feestring

Charge No-Show Fee

no_show_feenumber

No-Show Fee

no_show_fee_tax_rate_idinteger

No-Show Fee Tax Rate Identifier

use_separate_drop_in_feestring

indicates if its to use a separated drop-in fee

non_client_drop_in_feenumber

Non Client Drop In Fee

client_drop_in_feenumber

Client Drop In Fee

room_idinteger

Room Id

layout_idinteger

Layout Id

Example request

{
  "start_date": "2014-12-31",
  "start_time": "23:59:59",
  "end_time": "23:59:59",
  "reservation_open_time_format_id": 1234567891234567,
  "reservation_close_time_format_id": 1234567891234567,
  "reservation_close_time_relation_id": 1234567891234567,
  "reservation_close_time_point_id": 1234567891234567,
  "cancellation_time_format_id": 1234567891234567,
  "cancel_class_time_format_id": 1234567891234567,
  "waitlist_type_id": 1234567891234567,
  "client_sign_start_time_format_id": 1234567891234567,
  "client_sign_end_res_time_format_id": 1234567891234567,
  "client_sign_end_res_time_relation_id": 1234567891234567,
  "client_sign_end_res_time_point_id": 1234567891234567,
  "client_sign_end_no_res_time_format_id": 1234567891234567,
  "client_sign_end_no_res_time_relation_id": 1234567891234567,
  "client_sign_end_no_res_time_point_id": 1234567891234567,
  "employee_sign_start_time_format_id": 1234567891234567,
  "late_cancellation_fee": 0.1,
  "late_cancellation_fee_tax_rate_id": 1234567891234567,
  "no_show_fee": 0.1,
  "no_show_fee_tax_rate_id": 1234567891234567,
  "non_client_drop_in_fee": 0.1,
  "client_drop_in_fee": 0.1,
  "room_id": 1234567891234567
}

Response

Class Data

idinteger required

Class Id

namestring required

Class Name

descriptionstring

Class Description

program_idinteger required

Class Program Id

program_namestring

Class Program Name

location_idinteger required

Location Id

locationstring

Location Name

start_date_timestring date-time required

Class Start Date Time, in Customer's time zone

start_datestring date

Class Start Date in Customer's Time Zone

start_timestring time required

Class Start Time in Customer's Time Zone

end_date_timestring date-time required

Class End Date Time, in Customer's Timezone

end_datestring date

Class End Date, In Customer's Timezone

end_timestring time required

Class End Time in Customer's Time Zone

recurring_class_idinteger

Class's Recurring Class Id

recurring_classstring

Class's Recurring Class Name

calendar_colorstring

Class Calendar Icon Color

class_limitinteger required

Maximum Attendees Allowed in Class

allow_waitlistboolean

True if the Class has a Waitlist Allowed

reservation_openinteger

Units of Time Before the Class when Reservations Open, based on the Reservation Open Time format

reservation_open_time_format_idinteger

Time Format Unit Id for Reservation Open

reservation_open_time_formatstring

Time Format Unit Name for Reservation Open

reservation_closeinteger

Units of Time Before the Class when Reservations Open, based on the Reservation Open Time format

reservation_close_time_format_idinteger

Time Format Unit Id for Reservation Close

reservation_close_time_formatstring

Time Format Unit Name for Reservation Close

cancellation_timeinteger

Units of Time Before the Class when Attendees are allowed to cancel, based on the Reservation Open Time format

cancellation_time_format_idinteger

Time Format Unit Id for CancellationTime

cancellation_time_formatstring

Time Format Unit Name for CancellationTime

cancel_class_if_no_reservationsboolean

True If the Class Will Be Cancelled If It Has No Reservations

cancel_class_timeinteger

Units of Time Before A Class Cancels If There Are No Reservations

cancel_class_time_format_idinteger

Time Format Unit Id for CancelClassTime

cancel_class_time_formatstring

Cancel Class Time Format

cancel_close_date_timestring date-time

Date Time At Which Cancellations Close

reservation_close_date_timestring date-time

Date Time At Which Reservations Close

is_cancelledboolean

True When The Class Is Marked As Cancelled

count_towards_attendance_limitsboolean required

True If Class Attendances Count Toward Client Attendance Limits

reservedinteger

Number of Reservations, When Class Limit Is Enabled

signed_ininteger

Number Signed In, When Class Limit Is Enabled

drop_ininteger

Number of Drop In Attendees For A Class

waitlistedinteger

Number Waitlisted, If The Class Limit Is Enabled

availableinteger

Number Of Available Class Slots, If The Class Limit Is Enabled

cancelledinteger

Number Of Attendee Cancellations, If The Class Limit Is Enabled

no_showinteger

Number Of No Shows, If The Class Limit Is Enabled

percent_filledinteger

Percent Of The Class Limit Filled By Attendees

is_fullboolean

True If The Class Is Full, If The Class Limit Is Enabled

class_warning_status_idinteger

Class Warning Status Id

class_warning_statusstring

Class Warning Status Label

warningstring

Class Warning

is_warning_ignoredboolean

True If The Class Warning Is Ignored

is_changedboolean

True If The Class Has Been Changed

change_logstring

Text Log Of Changes To The Class

is_marked_for_removalboolean

True If The Class Has Been Marked For Removal

is_drop_in_onlineboolean

True If Online Dropins Are Enabled For The Class

is_free_trial_onlineboolean

True If Free Trials Have Been Enabled For The Class

is_no_show_warning_completedboolean

True If The No Show Warning Has Been Completed

is_no_show_completedboolean

True If No Shows Have Been Completed

start_date_time_serverstring date-time required

Server Date Time When The Class Starts

start_date_serverstring date

Server Date When The Class Starts

start_time_serverstring time required

Server Time When The Class Starts

end_date_time_serverstring date-time required

Server Date Time When The Class Ends

end_date_serverstring date

Server Date When The Class Ends

reservation_close_date_time_serverstring date-time

Server Date Time When Class Reservations Close

cancel_class_date_time_serverstring date-time

Server Date Time When The Cancellation Window Closes

is_deletedboolean

Indicates if the class was manually deleted by a User. Only applied to classes that were borned from recurring classes. Eventually it will be hard deleted through a timer

waitlist_type_idinteger

The Type Of Class Waitlist, Indicating How The Waitlist Should Behave. NULL Or FirstReply - All Clients Emailed, First To Reply Gets Added To Class. PriorityWaitlist_FirstSignUp - Client Automatically Added To The Class In The Order They Signed Up.

waitlist_typestring
free_trial_limitinteger

Limit Of Allowed Free Trials For The Class

has_free_trial_limitboolean

True if there is a Free Trial Limit

is_free_trial_fullboolean

True if the number of Free Trials for this class is at capacity given the FreeTrialLimit number.

drop_in_limitinteger

Limit Of Allowed Drop-Ins For The Class

has_drop_in_limitboolean

True if there is a DropIn Limit

waitlist_limitinteger

Limit Of Allowed Waitlists For The Class

has_waitlist_limitboolean

True if there is a Waitlist Limit

client_sign_is_enabledboolean

Indicates if the Client self sign in is enabled

client_sign_startinteger

Max Number of [TIMEFORMAT] a client may signin in advance

client_sign_start_time_format_idinteger

[TIMEFORMAT] unit for ClientSignStart

client_sign_end_resinteger

Min Number of [TIMEFORMAT] a client may signin in advance for classes with reservations enabled

client_sign_end_res_time_format_idinteger

[TIMEFORMAT] unit for ClientSignEndRes

client_sign_end_res_time_relation_idinteger

[TimeRelationType] unit for ClientSignEndRes

client_sign_end_res_time_point_idinteger

[TimePointType] unit for ClientSignEndRes

client_sign_end_no_resinteger

Min Number of [TIMEFORMAT] a client may signin in advance for classes without reservations enabled

client_sign_end_no_res_time_format_idinteger

[TIMEFORMAT] unit for ClientSignEndNoRes

client_sign_end_no_res_time_relation_idinteger

[TimeRelationType] unit for ClientSignEndNoRes

client_sign_end_no_res_time_point_idinteger

[TimePointType] unit for ClientSignEndNoRes

employee_sign_startinteger

Number of [TIMEFORMAT] an employee may signin in advance

employee_sign_start_time_format_idinteger

[TIMEFORMAT] unit for EmployeeSignStart

count_late_cancellationsboolean

Indicates whether late cancellation counts towards attendance limits

charge_late_cancellation_feeboolean

Charge Late Cancellation Fee

late_cancellation_feenumber

Late Cancellation Fee

late_cancellation_fee_tax_rate_idinteger

Late Cancellation Fee Tax Rate Identifier

count_no_show_reservationsboolean

Indicates whether no-shows count towards attendance limits

charge_no_show_feeboolean

Charge No-Show Fee

no_show_feenumber

No-Show Fee

no_show_fee_tax_rate_idinteger

No-Show Fee Tax Rate Identifier

use_separate_drop_in_feeboolean

indicates if its to use a separated drop-in fee

non_client_drop_in_feenumber

Non Client Drop In Fee

client_drop_in_feenumber

Client Drop In Fee

room_idinteger

Room Id

roomstring

Room Name

layout_idinteger

Layout Id

layoutstring

Layout Name

wodify_validation_resultstring

The purpose of this attribute is to save any UserException message, that is, and user friendly message that should be shown to the end user. All methods should have, just like service actions:

  • an UserException with Abort Transaction = Yes, and a Log Error = No
  • an AllExceptions with Abort Transaction = Yes, and a Log Error = Yes With this, any known issue that we don't consider an error log, like a business validation, we raise it to be catch in the UserException and we don't log it. Then, in the OnResponse of the full REST service, the Build_Response_JSON action will take care on the output json format. An Exception will have the default formatted error message. If its an AllException, it will log the error so that we can fix it. If its a UserException, it will deliver as an error but it won't log it as an error. A success output will not have this attribute, the Build_Response_JSON will remove it from the final output.

Example response

{
  "program_id": 1234567891234567,
  "location_id": 1234567891234567,
  "start_date_time": "2014-12-31T23:59:59.938Z",
  "start_date": "2014-12-31",
  "start_time": "23:59:59",
  "end_date_time": "2014-12-31T23:59:59.938Z",
  "end_date": "2014-12-31",
  "end_time": "23:59:59",
  "recurring_class_id": 1234567891234567,
  "reservation_open_time_format_id": 1234567891234567,
  "reservation_close_time_format_id": 1234567891234567,
  "cancellation_time_format_id": 1234567891234567,
  "cancel_class_time_format_id": 1234567891234567,
  "cancel_close_date_time": "2014-12-31T23:59:59.938Z",
  "reservation_close_date_time": "2014-12-31T23:59:59.938Z",
  "class_warning_status_id": 1234567891234567,
  "start_date_time_server": "2014-12-31T23:59:59.938Z",
  "start_date_server": "2014-12-31",
  "start_time_server": "23:59:59",
  "end_date_time_server": "2014-12-31T23:59:59.938Z",
  "end_date_server": "2014-12-31",
  "reservation_close_date_time_server": "2014-12-31T23:59:59.938Z",
  "cancel_class_date_time_server": "2014-12-31T23:59:59.938Z",
  "waitlist_type_id": 1234567891234567,
  "client_sign_start_time_format_id": 1234567891234567,
  "client_sign_end_res_time_format_id": 1234567891234567,
  "client_sign_end_res_time_relation_id": 1234567891234567,
  "client_sign_end_res_time_point_id": 1234567891234567,
  "client_sign_end_no_res_time_format_id": 1234567891234567,
  "client_sign_end_no_res_time_relation_id": 1234567891234567,
  "client_sign_end_no_res_time_point_id": 1234567891234567,
  "employee_sign_start_time_format_id": 1234567891234567,
  "late_cancellation_fee": 0.1,
  "late_cancellation_fee_tax_rate_id": 1234567891234567,
  "no_show_fee": 0.1,
  "no_show_fee_tax_rate_id": 1234567891234567,
  "non_client_drop_in_fee": 0.1,
  "client_drop_in_fee": 0.1,
  "room_id": 1234567891234567,
  "layout_id": 1234567891234567,
  "coaches": [
    {
      "coach_id": 1234567891234567,
      "pay_rate_id": 1234567891234567,
      "payroll_position_id": 1234567891234567
    }
  ],
  "class_layout_items": [
    {
      "layout_item_id": 1234567891234567,
      "layout_item_type_id": 1234567891234567,
      "layout_item_shape_id": 1234567891234567,
      "deactivate_start_date": "2014-12-31",
      "deactivate_end_date": "2014-12-31",
      "class_layout_item_id": 1234567891234567,
      "assignee_object_id": 1234567891234567,
      "assignee_object_type_id": 1234567891234567,
      "created": {
        "created_by_id": 1234567891234567,
        "created_on_datetime": "2014-12-31T23:59:59.938Z"
      },
      "updated": {
        "updated_by_id": 1234567891234567,
        "updated_on_datetime": "2014-12-31T23:59:59.938Z"
      }
    }
  ],
  "created": {
    "created_by_id": 1234567891234567,
    "created_on_datetime": "2014-12-31T23:59:59.938Z"
  },
  "updated": {
    "updated_by_id": 1234567891234567,
    "updated_on_datetime": "2014-12-31T23:59:59.938Z"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.