mb-apimatic-sdk 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (446) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +139 -0
  4. data/bin/console +15 -0
  5. data/lib/mindbody_public_api/api_helper.rb +10 -0
  6. data/lib/mindbody_public_api/client.rb +138 -0
  7. data/lib/mindbody_public_api/configuration.rb +181 -0
  8. data/lib/mindbody_public_api/controllers/appointment_controller.rb +746 -0
  9. data/lib/mindbody_public_api/controllers/base_controller.rb +60 -0
  10. data/lib/mindbody_public_api/controllers/class_controller.rb +826 -0
  11. data/lib/mindbody_public_api/controllers/client_controller.rb +2106 -0
  12. data/lib/mindbody_public_api/controllers/cross_site_controller.rb +43 -0
  13. data/lib/mindbody_public_api/controllers/enrollment_controller.rb +188 -0
  14. data/lib/mindbody_public_api/controllers/payroll_controller.rb +290 -0
  15. data/lib/mindbody_public_api/controllers/pick_a_spot_controller.rb +213 -0
  16. data/lib/mindbody_public_api/controllers/pricing_option_controller.rb +41 -0
  17. data/lib/mindbody_public_api/controllers/sale_controller.rb +1226 -0
  18. data/lib/mindbody_public_api/controllers/site_controller.rb +815 -0
  19. data/lib/mindbody_public_api/controllers/staff_controller.rb +408 -0
  20. data/lib/mindbody_public_api/controllers/user_token_controller.rb +92 -0
  21. data/lib/mindbody_public_api/exceptions/api_exception.rb +21 -0
  22. data/lib/mindbody_public_api/http/auth/custom_header_authentication.rb +52 -0
  23. data/lib/mindbody_public_api/http/http_call_back.rb +10 -0
  24. data/lib/mindbody_public_api/http/http_method_enum.rb +10 -0
  25. data/lib/mindbody_public_api/http/http_request.rb +10 -0
  26. data/lib/mindbody_public_api/http/http_response.rb +10 -0
  27. data/lib/mindbody_public_api/http/proxy_settings.rb +22 -0
  28. data/lib/mindbody_public_api/models/action10_enum.rb +48 -0
  29. data/lib/mindbody_public_api/models/action1_enum.rb +48 -0
  30. data/lib/mindbody_public_api/models/action8_enum.rb +48 -0
  31. data/lib/mindbody_public_api/models/action_enum.rb +48 -0
  32. data/lib/mindbody_public_api/models/add_appointment_add_on_request.rb +108 -0
  33. data/lib/mindbody_public_api/models/add_appointment_add_on_response.rb +74 -0
  34. data/lib/mindbody_public_api/models/add_appointment_outcome.rb +83 -0
  35. data/lib/mindbody_public_api/models/add_appointment_request.rb +319 -0
  36. data/lib/mindbody_public_api/models/add_appointment_response.rb +62 -0
  37. data/lib/mindbody_public_api/models/add_arrival_request.rb +113 -0
  38. data/lib/mindbody_public_api/models/add_arrival_response.rb +72 -0
  39. data/lib/mindbody_public_api/models/add_availabilities_request.rb +187 -0
  40. data/lib/mindbody_public_api/models/add_availabilities_response.rb +89 -0
  41. data/lib/mindbody_public_api/models/add_class_enrollment_schedule_request.rb +351 -0
  42. data/lib/mindbody_public_api/models/add_client_direct_debit_info_request.rb +119 -0
  43. data/lib/mindbody_public_api/models/add_client_direct_debit_info_response.rb +108 -0
  44. data/lib/mindbody_public_api/models/add_client_request.rb +854 -0
  45. data/lib/mindbody_public_api/models/add_client_response.rb +62 -0
  46. data/lib/mindbody_public_api/models/add_client_to_class_request.rb +199 -0
  47. data/lib/mindbody_public_api/models/add_client_to_class_response.rb +62 -0
  48. data/lib/mindbody_public_api/models/add_client_to_class_visit.rb +353 -0
  49. data/lib/mindbody_public_api/models/add_client_to_enrollment_request.rb +165 -0
  50. data/lib/mindbody_public_api/models/add_contact_log_request.rb +175 -0
  51. data/lib/mindbody_public_api/models/add_contact_log_type.rb +71 -0
  52. data/lib/mindbody_public_api/models/add_formula_note_request.rb +80 -0
  53. data/lib/mindbody_public_api/models/add_multiple_appointments_request.rb +71 -0
  54. data/lib/mindbody_public_api/models/add_multiple_appointments_response.rb +71 -0
  55. data/lib/mindbody_public_api/models/add_on_small.rb +90 -0
  56. data/lib/mindbody_public_api/models/add_on_small1.rb +90 -0
  57. data/lib/mindbody_public_api/models/add_promo_code_request.rb +201 -0
  58. data/lib/mindbody_public_api/models/add_promo_code_response.rb +62 -0
  59. data/lib/mindbody_public_api/models/add_site_client_index_request.rb +163 -0
  60. data/lib/mindbody_public_api/models/add_site_client_index_response.rb +175 -0
  61. data/lib/mindbody_public_api/models/add_staff_availability_request.rb +170 -0
  62. data/lib/mindbody_public_api/models/add_staff_request.rb +357 -0
  63. data/lib/mindbody_public_api/models/add_staff_response.rb +62 -0
  64. data/lib/mindbody_public_api/models/allowed_permission_enum.rb +764 -0
  65. data/lib/mindbody_public_api/models/alternative_payment_method.rb +71 -0
  66. data/lib/mindbody_public_api/models/amenity.rb +71 -0
  67. data/lib/mindbody_public_api/models/amenity1.rb +71 -0
  68. data/lib/mindbody_public_api/models/api_error.rb +71 -0
  69. data/lib/mindbody_public_api/models/api_error1.rb +76 -0
  70. data/lib/mindbody_public_api/models/applicable_item.rb +86 -0
  71. data/lib/mindbody_public_api/models/appointment.rb +351 -0
  72. data/lib/mindbody_public_api/models/appointment1.rb +322 -0
  73. data/lib/mindbody_public_api/models/appointment_add_on.rb +103 -0
  74. data/lib/mindbody_public_api/models/appointment_gender_preference1_enum.rb +41 -0
  75. data/lib/mindbody_public_api/models/appointment_gender_preference_enum.rb +44 -0
  76. data/lib/mindbody_public_api/models/appointment_option.rb +91 -0
  77. data/lib/mindbody_public_api/models/appointment_staff.rb +92 -0
  78. data/lib/mindbody_public_api/models/appointment_status_enum.rb +64 -0
  79. data/lib/mindbody_public_api/models/assign_staff_session_type_request.rb +146 -0
  80. data/lib/mindbody_public_api/models/assign_staff_session_type_response.rb +138 -0
  81. data/lib/mindbody_public_api/models/assigned_client_index.rb +71 -0
  82. data/lib/mindbody_public_api/models/autopay_schedule.rb +93 -0
  83. data/lib/mindbody_public_api/models/autopay_status_enum.rb +40 -0
  84. data/lib/mindbody_public_api/models/availability.rb +233 -0
  85. data/lib/mindbody_public_api/models/availability1.rb +228 -0
  86. data/lib/mindbody_public_api/models/base_model.rb +110 -0
  87. data/lib/mindbody_public_api/models/booking_status_enum.rb +40 -0
  88. data/lib/mindbody_public_api/models/booking_window.rb +130 -0
  89. data/lib/mindbody_public_api/models/cancel_single_class_request.rb +98 -0
  90. data/lib/mindbody_public_api/models/cancel_single_class_response.rb +63 -0
  91. data/lib/mindbody_public_api/models/cart_item.rb +147 -0
  92. data/lib/mindbody_public_api/models/category.rb +192 -0
  93. data/lib/mindbody_public_api/models/checkout_alternative_payment_info.rb +72 -0
  94. data/lib/mindbody_public_api/models/checkout_appointment_booking_request.rb +155 -0
  95. data/lib/mindbody_public_api/models/checkout_item.rb +77 -0
  96. data/lib/mindbody_public_api/models/checkout_item_wrapper.rb +183 -0
  97. data/lib/mindbody_public_api/models/checkout_payment_info.rb +101 -0
  98. data/lib/mindbody_public_api/models/checkout_shopping_cart_request.rb +339 -0
  99. data/lib/mindbody_public_api/models/checkout_shopping_cart_response.rb +119 -0
  100. data/lib/mindbody_public_api/models/class_client_detail.rb +68 -0
  101. data/lib/mindbody_public_api/models/class_description.rb +215 -0
  102. data/lib/mindbody_public_api/models/class_schedule.rb +365 -0
  103. data/lib/mindbody_public_api/models/client.rb +832 -0
  104. data/lib/mindbody_public_api/models/client_arrival.rb +95 -0
  105. data/lib/mindbody_public_api/models/client_contract.rb +353 -0
  106. data/lib/mindbody_public_api/models/client_credit_card.rb +153 -0
  107. data/lib/mindbody_public_api/models/client_document.rb +96 -0
  108. data/lib/mindbody_public_api/models/client_duplicate.rb +109 -0
  109. data/lib/mindbody_public_api/models/client_index.rb +127 -0
  110. data/lib/mindbody_public_api/models/client_index_value.rb +82 -0
  111. data/lib/mindbody_public_api/models/client_membership.rb +272 -0
  112. data/lib/mindbody_public_api/models/client_memberships.rb +91 -0
  113. data/lib/mindbody_public_api/models/client_purchase_record.rb +142 -0
  114. data/lib/mindbody_public_api/models/client_relationship.rb +109 -0
  115. data/lib/mindbody_public_api/models/client_reward_transaction.rb +132 -0
  116. data/lib/mindbody_public_api/models/client_service.rb +228 -0
  117. data/lib/mindbody_public_api/models/client_suspension_info.rb +86 -0
  118. data/lib/mindbody_public_api/models/client_with_suspension_info.rb +844 -0
  119. data/lib/mindbody_public_api/models/color.rb +71 -0
  120. data/lib/mindbody_public_api/models/commission_detail.rb +83 -0
  121. data/lib/mindbody_public_api/models/commission_payroll_purchase_event.rb +143 -0
  122. data/lib/mindbody_public_api/models/complete_checkout_shopping_cart_using_alternative_payments_request.rb +86 -0
  123. data/lib/mindbody_public_api/models/contact_log.rb +198 -0
  124. data/lib/mindbody_public_api/models/contact_log_comment.rb +101 -0
  125. data/lib/mindbody_public_api/models/contact_log_sub_type.rb +71 -0
  126. data/lib/mindbody_public_api/models/contact_log_type.rb +91 -0
  127. data/lib/mindbody_public_api/models/content_format_enum.rb +40 -0
  128. data/lib/mindbody_public_api/models/contract.rb +636 -0
  129. data/lib/mindbody_public_api/models/contract_item.rb +121 -0
  130. data/lib/mindbody_public_api/models/copy_credit_card_request.rb +120 -0
  131. data/lib/mindbody_public_api/models/copy_credit_card_response.rb +72 -0
  132. data/lib/mindbody_public_api/models/copy_credit_card_response_client.rb +102 -0
  133. data/lib/mindbody_public_api/models/course.rb +167 -0
  134. data/lib/mindbody_public_api/models/create_reservation_response.rb +73 -0
  135. data/lib/mindbody_public_api/models/credit_card_info.rb +168 -0
  136. data/lib/mindbody_public_api/models/cross_regional_client_association.rb +92 -0
  137. data/lib/mindbody_public_api/models/custom_client_field.rb +81 -0
  138. data/lib/mindbody_public_api/models/custom_client_field_value.rb +90 -0
  139. data/lib/mindbody_public_api/models/custom_payment_method.rb +71 -0
  140. data/lib/mindbody_public_api/models/days_of_week_enum.rb +56 -0
  141. data/lib/mindbody_public_api/models/days_valid_enum.rb +56 -0
  142. data/lib/mindbody_public_api/models/deactivate_promo_code_request.rb +60 -0
  143. data/lib/mindbody_public_api/models/delete_availability_request.rb +75 -0
  144. data/lib/mindbody_public_api/models/delete_client_formula_note_request.rb +90 -0
  145. data/lib/mindbody_public_api/models/delete_contact_log_request.rb +82 -0
  146. data/lib/mindbody_public_api/models/denied_permission_enum.rb +764 -0
  147. data/lib/mindbody_public_api/models/direct_debit_info.rb +97 -0
  148. data/lib/mindbody_public_api/models/discount.rb +71 -0
  149. data/lib/mindbody_public_api/models/formula_note_response.rb +172 -0
  150. data/lib/mindbody_public_api/models/frequency_type_enum.rb +40 -0
  151. data/lib/mindbody_public_api/models/gender_option.rb +93 -0
  152. data/lib/mindbody_public_api/models/gender_preference_enum.rb +41 -0
  153. data/lib/mindbody_public_api/models/get_activation_code_response.rb +76 -0
  154. data/lib/mindbody_public_api/models/get_active_client_memberships_request.rb +163 -0
  155. data/lib/mindbody_public_api/models/get_active_client_memberships_response.rb +83 -0
  156. data/lib/mindbody_public_api/models/get_active_clients_memberships_request.rb +151 -0
  157. data/lib/mindbody_public_api/models/get_active_clients_memberships_response.rb +83 -0
  158. data/lib/mindbody_public_api/models/get_active_session_times_request.rb +136 -0
  159. data/lib/mindbody_public_api/models/get_active_session_times_response.rb +81 -0
  160. data/lib/mindbody_public_api/models/get_add_ons_request.rb +81 -0
  161. data/lib/mindbody_public_api/models/get_add_ons_response.rb +82 -0
  162. data/lib/mindbody_public_api/models/get_alternative_payment_methods_request.rb +72 -0
  163. data/lib/mindbody_public_api/models/get_alternative_payment_methods_response.rb +71 -0
  164. data/lib/mindbody_public_api/models/get_appointment_options_response.rb +71 -0
  165. data/lib/mindbody_public_api/models/get_available_dates_request.rb +121 -0
  166. data/lib/mindbody_public_api/models/get_available_dates_response.rb +77 -0
  167. data/lib/mindbody_public_api/models/get_bookable_items_request.rb +190 -0
  168. data/lib/mindbody_public_api/models/get_bookable_items_response.rb +83 -0
  169. data/lib/mindbody_public_api/models/get_categories_request.rb +118 -0
  170. data/lib/mindbody_public_api/models/get_categories_response.rb +83 -0
  171. data/lib/mindbody_public_api/models/get_class_descriptions_request.rb +168 -0
  172. data/lib/mindbody_public_api/models/get_class_descriptions_response.rb +83 -0
  173. data/lib/mindbody_public_api/models/get_class_schedules_request.rb +172 -0
  174. data/lib/mindbody_public_api/models/get_class_schedules_response.rb +83 -0
  175. data/lib/mindbody_public_api/models/get_class_visits_request.rb +100 -0
  176. data/lib/mindbody_public_api/models/get_class_visits_response.rb +63 -0
  177. data/lib/mindbody_public_api/models/get_classes_request.rb +281 -0
  178. data/lib/mindbody_public_api/models/get_classes_response.rb +82 -0
  179. data/lib/mindbody_public_api/models/get_client_account_balances_request.rb +110 -0
  180. data/lib/mindbody_public_api/models/get_client_account_balances_response.rb +82 -0
  181. data/lib/mindbody_public_api/models/get_client_complete_info_request.rb +239 -0
  182. data/lib/mindbody_public_api/models/get_client_complete_info_response.rb +140 -0
  183. data/lib/mindbody_public_api/models/get_client_contracts_request.rb +127 -0
  184. data/lib/mindbody_public_api/models/get_client_contracts_response.rb +82 -0
  185. data/lib/mindbody_public_api/models/get_client_duplicates_request.rb +101 -0
  186. data/lib/mindbody_public_api/models/get_client_duplicates_response.rb +83 -0
  187. data/lib/mindbody_public_api/models/get_client_formula_notes_request.rb +93 -0
  188. data/lib/mindbody_public_api/models/get_client_formula_notes_response.rb +85 -0
  189. data/lib/mindbody_public_api/models/get_client_indexes_request.rb +64 -0
  190. data/lib/mindbody_public_api/models/get_client_indexes_response.rb +71 -0
  191. data/lib/mindbody_public_api/models/get_client_purchases_request.rb +141 -0
  192. data/lib/mindbody_public_api/models/get_client_purchases_response.rb +82 -0
  193. data/lib/mindbody_public_api/models/get_client_referral_types_request.rb +66 -0
  194. data/lib/mindbody_public_api/models/get_client_referral_types_response.rb +62 -0
  195. data/lib/mindbody_public_api/models/get_client_rewards_request.rb +119 -0
  196. data/lib/mindbody_public_api/models/get_client_rewards_response.rb +94 -0
  197. data/lib/mindbody_public_api/models/get_client_schedule_request.rb +180 -0
  198. data/lib/mindbody_public_api/models/get_client_schedule_response.rb +82 -0
  199. data/lib/mindbody_public_api/models/get_client_services_request.rb +356 -0
  200. data/lib/mindbody_public_api/models/get_client_services_response.rb +83 -0
  201. data/lib/mindbody_public_api/models/get_client_visits_request.rb +180 -0
  202. data/lib/mindbody_public_api/models/get_client_visits_response.rb +82 -0
  203. data/lib/mindbody_public_api/models/get_clients_request.rb +157 -0
  204. data/lib/mindbody_public_api/models/get_clients_response.rb +82 -0
  205. data/lib/mindbody_public_api/models/get_commissions_request.rb +144 -0
  206. data/lib/mindbody_public_api/models/get_commissions_response.rb +84 -0
  207. data/lib/mindbody_public_api/models/get_contact_log_types_request.rb +84 -0
  208. data/lib/mindbody_public_api/models/get_contact_log_types_response.rb +83 -0
  209. data/lib/mindbody_public_api/models/get_contact_logs_request.rb +167 -0
  210. data/lib/mindbody_public_api/models/get_contact_logs_response.rb +83 -0
  211. data/lib/mindbody_public_api/models/get_contracts_request.rb +128 -0
  212. data/lib/mindbody_public_api/models/get_contracts_response.rb +82 -0
  213. data/lib/mindbody_public_api/models/get_courses_reponse.rb +82 -0
  214. data/lib/mindbody_public_api/models/get_courses_request.rb +161 -0
  215. data/lib/mindbody_public_api/models/get_cross_regional_client_associations_request.rb +152 -0
  216. data/lib/mindbody_public_api/models/get_cross_regional_client_associations_response.rb +88 -0
  217. data/lib/mindbody_public_api/models/get_custom_client_fields_request.rb +71 -0
  218. data/lib/mindbody_public_api/models/get_custom_client_fields_response.rb +83 -0
  219. data/lib/mindbody_public_api/models/get_custom_payment_methods_request.rb +71 -0
  220. data/lib/mindbody_public_api/models/get_custom_payment_methods_response.rb +83 -0
  221. data/lib/mindbody_public_api/models/get_enrollments_request.rb +172 -0
  222. data/lib/mindbody_public_api/models/get_enrollments_response.rb +83 -0
  223. data/lib/mindbody_public_api/models/get_genders_response.rb +71 -0
  224. data/lib/mindbody_public_api/models/get_gift_card_balance_response.rb +73 -0
  225. data/lib/mindbody_public_api/models/get_gift_card_response.rb +82 -0
  226. data/lib/mindbody_public_api/models/get_gift_cards_request.rb +119 -0
  227. data/lib/mindbody_public_api/models/get_liability_waiver_response.rb +63 -0
  228. data/lib/mindbody_public_api/models/get_locations_request.rb +71 -0
  229. data/lib/mindbody_public_api/models/get_locations_response.rb +82 -0
  230. data/lib/mindbody_public_api/models/get_memberships_request.rb +63 -0
  231. data/lib/mindbody_public_api/models/get_memberships_response.rb +71 -0
  232. data/lib/mindbody_public_api/models/get_mobile_providers_request.rb +65 -0
  233. data/lib/mindbody_public_api/models/get_mobile_providers_response.rb +71 -0
  234. data/lib/mindbody_public_api/models/get_packages_request.rb +106 -0
  235. data/lib/mindbody_public_api/models/get_packages_response.rb +82 -0
  236. data/lib/mindbody_public_api/models/get_payment_types_request.rb +64 -0
  237. data/lib/mindbody_public_api/models/get_payment_types_response.rb +71 -0
  238. data/lib/mindbody_public_api/models/get_pick_a_spot_class_response.rb +92 -0
  239. data/lib/mindbody_public_api/models/get_products_inventory_request.rb +105 -0
  240. data/lib/mindbody_public_api/models/get_products_inventory_response.rb +83 -0
  241. data/lib/mindbody_public_api/models/get_products_request.rb +153 -0
  242. data/lib/mindbody_public_api/models/get_products_response.rb +82 -0
  243. data/lib/mindbody_public_api/models/get_programs_request.rb +112 -0
  244. data/lib/mindbody_public_api/models/get_programs_response.rb +82 -0
  245. data/lib/mindbody_public_api/models/get_promo_codes_request.rb +152 -0
  246. data/lib/mindbody_public_api/models/get_promo_codes_response.rb +83 -0
  247. data/lib/mindbody_public_api/models/get_prospect_stages_request.rb +65 -0
  248. data/lib/mindbody_public_api/models/get_prospect_stages_response.rb +71 -0
  249. data/lib/mindbody_public_api/models/get_relationships_request.rb +83 -0
  250. data/lib/mindbody_public_api/models/get_relationships_response.rb +83 -0
  251. data/lib/mindbody_public_api/models/get_required_client_fields_response.rb +64 -0
  252. data/lib/mindbody_public_api/models/get_reservation_response.rb +93 -0
  253. data/lib/mindbody_public_api/models/get_resource_availabilities_request.rb +149 -0
  254. data/lib/mindbody_public_api/models/get_resources_request.rb +124 -0
  255. data/lib/mindbody_public_api/models/get_resources_response.rb +71 -0
  256. data/lib/mindbody_public_api/models/get_sales_reps_request.rb +95 -0
  257. data/lib/mindbody_public_api/models/get_sales_reps_response.rb +82 -0
  258. data/lib/mindbody_public_api/models/get_sales_request.rb +134 -0
  259. data/lib/mindbody_public_api/models/get_sales_response.rb +83 -0
  260. data/lib/mindbody_public_api/models/get_schedule_items_request.rb +145 -0
  261. data/lib/mindbody_public_api/models/get_schedule_items_response.rb +83 -0
  262. data/lib/mindbody_public_api/models/get_scheduled_service_earnings_request.rb +172 -0
  263. data/lib/mindbody_public_api/models/get_scheduled_service_earnings_response.rb +87 -0
  264. data/lib/mindbody_public_api/models/get_semesters_request.rb +132 -0
  265. data/lib/mindbody_public_api/models/get_semesters_response.rb +83 -0
  266. data/lib/mindbody_public_api/models/get_services_request.rb +221 -0
  267. data/lib/mindbody_public_api/models/get_services_response.rb +82 -0
  268. data/lib/mindbody_public_api/models/get_session_types_request.rb +95 -0
  269. data/lib/mindbody_public_api/models/get_session_types_response.rb +83 -0
  270. data/lib/mindbody_public_api/models/get_sites_request.rb +111 -0
  271. data/lib/mindbody_public_api/models/get_sites_response.rb +82 -0
  272. data/lib/mindbody_public_api/models/get_staff_appointments_request.rb +173 -0
  273. data/lib/mindbody_public_api/models/get_staff_appointments_response.rb +83 -0
  274. data/lib/mindbody_public_api/models/get_staff_image_url_request.rb +62 -0
  275. data/lib/mindbody_public_api/models/get_staff_image_url_response.rb +73 -0
  276. data/lib/mindbody_public_api/models/get_staff_permissions_request.rb +60 -0
  277. data/lib/mindbody_public_api/models/get_staff_permissions_response.rb +62 -0
  278. data/lib/mindbody_public_api/models/get_staff_request.rb +144 -0
  279. data/lib/mindbody_public_api/models/get_staff_response.rb +84 -0
  280. data/lib/mindbody_public_api/models/get_staff_session_types_request.rb +104 -0
  281. data/lib/mindbody_public_api/models/get_staff_session_types_response.rb +83 -0
  282. data/lib/mindbody_public_api/models/get_time_cards_request.rb +144 -0
  283. data/lib/mindbody_public_api/models/get_time_cards_response.rb +82 -0
  284. data/lib/mindbody_public_api/models/get_tips_request.rb +144 -0
  285. data/lib/mindbody_public_api/models/get_tips_response.rb +83 -0
  286. data/lib/mindbody_public_api/models/get_transactions_request.rb +173 -0
  287. data/lib/mindbody_public_api/models/get_transactions_response.rb +84 -0
  288. data/lib/mindbody_public_api/models/get_unavailabilities_request.rb +120 -0
  289. data/lib/mindbody_public_api/models/get_unavailabilities_response.rb +83 -0
  290. data/lib/mindbody_public_api/models/get_waitlist_entries_request.rb +144 -0
  291. data/lib/mindbody_public_api/models/get_waitlist_entries_response.rb +83 -0
  292. data/lib/mindbody_public_api/models/gift_card.rb +191 -0
  293. data/lib/mindbody_public_api/models/gift_card_layout.rb +82 -0
  294. data/lib/mindbody_public_api/models/http_content.rb +71 -0
  295. data/lib/mindbody_public_api/models/initiate_checkout_shopping_cart_using_alternative_payments_request.rb +265 -0
  296. data/lib/mindbody_public_api/models/initiate_purchase_contract_request.rb +184 -0
  297. data/lib/mindbody_public_api/models/issue_request.rb +71 -0
  298. data/lib/mindbody_public_api/models/issue_response.rb +101 -0
  299. data/lib/mindbody_public_api/models/lead_channel.rb +104 -0
  300. data/lib/mindbody_public_api/models/level.rb +81 -0
  301. data/lib/mindbody_public_api/models/liability.rb +102 -0
  302. data/lib/mindbody_public_api/models/location.rb +331 -0
  303. data/lib/mindbody_public_api/models/location1.rb +639 -0
  304. data/lib/mindbody_public_api/models/m0_culture_neutral_public_key_token_b77a5c561934e089.rb +71 -0
  305. data/lib/mindbody_public_api/models/mclass.rb +430 -0
  306. data/lib/mindbody_public_api/models/membership.rb +255 -0
  307. data/lib/mindbody_public_api/models/membership_type_restriction.rb +71 -0
  308. data/lib/mindbody_public_api/models/merge_clients_request.rb +75 -0
  309. data/lib/mindbody_public_api/models/minimum_commitment_unit_enum.rb +40 -0
  310. data/lib/mindbody_public_api/models/mobile_provider.rb +93 -0
  311. data/lib/mindbody_public_api/models/package.rb +131 -0
  312. data/lib/mindbody_public_api/models/pagination.rb +95 -0
  313. data/lib/mindbody_public_api/models/pagination_response.rb +95 -0
  314. data/lib/mindbody_public_api/models/payment_method_enum.rb +44 -0
  315. data/lib/mindbody_public_api/models/payment_processing_failure.rb +88 -0
  316. data/lib/mindbody_public_api/models/payment_type.rb +93 -0
  317. data/lib/mindbody_public_api/models/pick_a_spot_class.rb +193 -0
  318. data/lib/mindbody_public_api/models/pricing_relationships.rb +71 -0
  319. data/lib/mindbody_public_api/models/product.rb +267 -0
  320. data/lib/mindbody_public_api/models/products_inventory.rb +173 -0
  321. data/lib/mindbody_public_api/models/program.rb +129 -0
  322. data/lib/mindbody_public_api/models/program1.rb +150 -0
  323. data/lib/mindbody_public_api/models/program_membership.rb +71 -0
  324. data/lib/mindbody_public_api/models/promo_code.rb +233 -0
  325. data/lib/mindbody_public_api/models/prospect_stage.rb +84 -0
  326. data/lib/mindbody_public_api/models/public_display1_enum.rb +42 -0
  327. data/lib/mindbody_public_api/models/public_display_enum.rb +41 -0
  328. data/lib/mindbody_public_api/models/purchase_account_credit_request.rb +154 -0
  329. data/lib/mindbody_public_api/models/purchase_account_credit_response.rb +118 -0
  330. data/lib/mindbody_public_api/models/purchase_contract_request.rb +324 -0
  331. data/lib/mindbody_public_api/models/purchase_contract_response.rb +141 -0
  332. data/lib/mindbody_public_api/models/purchase_contract_response_totals.rb +92 -0
  333. data/lib/mindbody_public_api/models/purchase_gift_card_request.rb +273 -0
  334. data/lib/mindbody_public_api/models/purchase_gift_card_response.rb +183 -0
  335. data/lib/mindbody_public_api/models/purchased_item.rb +337 -0
  336. data/lib/mindbody_public_api/models/relationship.rb +85 -0
  337. data/lib/mindbody_public_api/models/remove_client_from_class_request.rb +142 -0
  338. data/lib/mindbody_public_api/models/remove_client_from_class_response.rb +63 -0
  339. data/lib/mindbody_public_api/models/remove_clients_from_classes_request.rb +140 -0
  340. data/lib/mindbody_public_api/models/remove_clients_from_classes_response.rb +102 -0
  341. data/lib/mindbody_public_api/models/remove_from_waitlist_request.rb +61 -0
  342. data/lib/mindbody_public_api/models/request_schedule_type_enum.rb +56 -0
  343. data/lib/mindbody_public_api/models/reservation.rb +158 -0
  344. data/lib/mindbody_public_api/models/resource.rb +71 -0
  345. data/lib/mindbody_public_api/models/resource1.rb +124 -0
  346. data/lib/mindbody_public_api/models/resource_availability.rb +100 -0
  347. data/lib/mindbody_public_api/models/resource_availability1.rb +124 -0
  348. data/lib/mindbody_public_api/models/resource_slim.rb +71 -0
  349. data/lib/mindbody_public_api/models/response_details.rb +82 -0
  350. data/lib/mindbody_public_api/models/return_sale_request.rb +71 -0
  351. data/lib/mindbody_public_api/models/return_sale_response.rb +82 -0
  352. data/lib/mindbody_public_api/models/sale.rb +210 -0
  353. data/lib/mindbody_public_api/models/sale_payment.rb +114 -0
  354. data/lib/mindbody_public_api/models/sales_rep.rb +107 -0
  355. data/lib/mindbody_public_api/models/sales_rep_response.rb +93 -0
  356. data/lib/mindbody_public_api/models/schedule_type1_enum.rb +57 -0
  357. data/lib/mindbody_public_api/models/schedule_type2_enum.rb +56 -0
  358. data/lib/mindbody_public_api/models/schedule_type3_enum.rb +57 -0
  359. data/lib/mindbody_public_api/models/schedule_type4_enum.rb +56 -0
  360. data/lib/mindbody_public_api/models/schedule_type_enum.rb +57 -0
  361. data/lib/mindbody_public_api/models/scheduled_service_earnings_event.rb +117 -0
  362. data/lib/mindbody_public_api/models/scheduled_service_type_enum.rb +44 -0
  363. data/lib/mindbody_public_api/models/semester.rb +167 -0
  364. data/lib/mindbody_public_api/models/send_auto_email_request.rb +71 -0
  365. data/lib/mindbody_public_api/models/send_password_reset_email_request.rb +81 -0
  366. data/lib/mindbody_public_api/models/service.rb +366 -0
  367. data/lib/mindbody_public_api/models/service_tag.rb +72 -0
  368. data/lib/mindbody_public_api/models/session_type.rb +198 -0
  369. data/lib/mindbody_public_api/models/session_type1.rb +204 -0
  370. data/lib/mindbody_public_api/models/shopping_cart.rb +151 -0
  371. data/lib/mindbody_public_api/models/site.rb +347 -0
  372. data/lib/mindbody_public_api/models/size.rb +71 -0
  373. data/lib/mindbody_public_api/models/spot.rb +87 -0
  374. data/lib/mindbody_public_api/models/staff.rb +501 -0
  375. data/lib/mindbody_public_api/models/staff1.rb +588 -0
  376. data/lib/mindbody_public_api/models/staff_permission_group.rb +105 -0
  377. data/lib/mindbody_public_api/models/staff_session_type.rb +205 -0
  378. data/lib/mindbody_public_api/models/staff_setting.rb +84 -0
  379. data/lib/mindbody_public_api/models/status1_enum.rb +56 -0
  380. data/lib/mindbody_public_api/models/status_enum.rb +66 -0
  381. data/lib/mindbody_public_api/models/stored_card_info.rb +62 -0
  382. data/lib/mindbody_public_api/models/sub_category.rb +82 -0
  383. data/lib/mindbody_public_api/models/substitute_class_teacher_request.rb +127 -0
  384. data/lib/mindbody_public_api/models/substitute_class_teacher_response.rb +63 -0
  385. data/lib/mindbody_public_api/models/substitute_teacher_class.rb +318 -0
  386. data/lib/mindbody_public_api/models/suspend_contract_request.rb +162 -0
  387. data/lib/mindbody_public_api/models/suspend_contract_response.rb +62 -0
  388. data/lib/mindbody_public_api/models/terminate_contract_request.rb +113 -0
  389. data/lib/mindbody_public_api/models/terminate_contract_response.rb +62 -0
  390. data/lib/mindbody_public_api/models/time_card_event.rb +139 -0
  391. data/lib/mindbody_public_api/models/tip.rb +101 -0
  392. data/lib/mindbody_public_api/models/transaction.rb +245 -0
  393. data/lib/mindbody_public_api/models/transaction_response.rb +74 -0
  394. data/lib/mindbody_public_api/models/type1_enum.rb +56 -0
  395. data/lib/mindbody_public_api/models/type2_enum.rb +56 -0
  396. data/lib/mindbody_public_api/models/type_enum.rb +57 -0
  397. data/lib/mindbody_public_api/models/unavailability.rb +109 -0
  398. data/lib/mindbody_public_api/models/unavailability1.rb +109 -0
  399. data/lib/mindbody_public_api/models/unavailability_plain.rb +119 -0
  400. data/lib/mindbody_public_api/models/upcoming_autopay_event.rb +133 -0
  401. data/lib/mindbody_public_api/models/update_appointment_request.rb +225 -0
  402. data/lib/mindbody_public_api/models/update_appointment_response.rb +62 -0
  403. data/lib/mindbody_public_api/models/update_availability_request.rb +171 -0
  404. data/lib/mindbody_public_api/models/update_availability_response.rb +89 -0
  405. data/lib/mindbody_public_api/models/update_class_enrollment_schedule_request.rb +343 -0
  406. data/lib/mindbody_public_api/models/update_class_schedule_notes_request.rb +62 -0
  407. data/lib/mindbody_public_api/models/update_client_contract_autopays_request.rb +149 -0
  408. data/lib/mindbody_public_api/models/update_client_request.rb +128 -0
  409. data/lib/mindbody_public_api/models/update_client_response.rb +62 -0
  410. data/lib/mindbody_public_api/models/update_client_rewards_request.rb +143 -0
  411. data/lib/mindbody_public_api/models/update_client_service_request.rb +121 -0
  412. data/lib/mindbody_public_api/models/update_client_service_response.rb +62 -0
  413. data/lib/mindbody_public_api/models/update_client_visit_request.rb +130 -0
  414. data/lib/mindbody_public_api/models/update_client_visit_response.rb +62 -0
  415. data/lib/mindbody_public_api/models/update_contact_log_comment.rb +72 -0
  416. data/lib/mindbody_public_api/models/update_contact_log_request.rb +188 -0
  417. data/lib/mindbody_public_api/models/update_contact_log_type.rb +71 -0
  418. data/lib/mindbody_public_api/models/update_pricing_option_request.rb +252 -0
  419. data/lib/mindbody_public_api/models/update_product_price_request.rb +83 -0
  420. data/lib/mindbody_public_api/models/update_product_price_response.rb +62 -0
  421. data/lib/mindbody_public_api/models/update_product_request.rb +83 -0
  422. data/lib/mindbody_public_api/models/update_reservation_response.rb +73 -0
  423. data/lib/mindbody_public_api/models/update_sale_date_request.rb +81 -0
  424. data/lib/mindbody_public_api/models/update_sale_date_response.rb +62 -0
  425. data/lib/mindbody_public_api/models/update_service_request.rb +82 -0
  426. data/lib/mindbody_public_api/models/update_service_response.rb +71 -0
  427. data/lib/mindbody_public_api/models/update_site_client_index_request.rb +172 -0
  428. data/lib/mindbody_public_api/models/update_site_client_index_response.rb +175 -0
  429. data/lib/mindbody_public_api/models/update_staff_permissions_request.rb +71 -0
  430. data/lib/mindbody_public_api/models/update_staff_permissions_response.rb +62 -0
  431. data/lib/mindbody_public_api/models/update_staff_request.rb +378 -0
  432. data/lib/mindbody_public_api/models/update_staff_response.rb +62 -0
  433. data/lib/mindbody_public_api/models/upload_client_document_request.rb +68 -0
  434. data/lib/mindbody_public_api/models/upload_client_document_response.rb +71 -0
  435. data/lib/mindbody_public_api/models/upload_client_photo_request.rb +68 -0
  436. data/lib/mindbody_public_api/models/upload_client_photo_response.rb +71 -0
  437. data/lib/mindbody_public_api/models/user.rb +95 -0
  438. data/lib/mindbody_public_api/models/visit.rb +399 -0
  439. data/lib/mindbody_public_api/models/visit_waitlist_info.rb +74 -0
  440. data/lib/mindbody_public_api/models/visit_with_waitlist_info.rb +410 -0
  441. data/lib/mindbody_public_api/models/waitlist_entry.rb +173 -0
  442. data/lib/mindbody_public_api/models/written_class_schedules_info.rb +73 -0
  443. data/lib/mindbody_public_api/utilities/date_time_helper.rb +11 -0
  444. data/lib/mindbody_public_api/utilities/file_wrapper.rb +28 -0
  445. data/lib/mindbody_public_api.rb +495 -0
  446. metadata +529 -0
@@ -0,0 +1,410 @@
1
+ # mindbody_public_api
2
+ #
3
+ # This file was automatically generated by APIMATIC
4
+ # v3.0 ( https://www.apimatic.io ).
5
+
6
+ require 'date'
7
+ module MindbodyPublicApi
8
+ # A Visit DTO with Waitlist Information
9
+ class VisitWithWaitlistInfo < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # A Visit DTO with Waitlist Informatoin
14
+ # @return [VisitWaitlistInfo]
15
+ attr_accessor :waitlist_info
16
+
17
+ # The appointment’s ID.
18
+ # @return [Integer]
19
+ attr_accessor :appointment_id
20
+
21
+ # The gender of staff member with whom the client prefers to book
22
+ # appointments.
23
+ # Possible values are:
24
+ # * Female - Indicates that the client prefers to book appointments with
25
+ # female staff members.
26
+ # * Male - Indicates that the client prefers to book appointments with male
27
+ # staff members.
28
+ # * None - Indicates that the client does not have a staff member gender
29
+ # preference.
30
+ # @return [AppointmentGenderPreferenceEnum]
31
+ attr_accessor :appointment_gender_preference
32
+
33
+ # The status of the appointment.
34
+ # @return [AppointmentStatusEnum]
35
+ attr_accessor :appointment_status
36
+
37
+ # The class ID that was used to retrieve the visits.
38
+ # @return [Integer]
39
+ attr_accessor :class_id
40
+
41
+ # The ID of the client associated with the visit.
42
+ # @return [String]
43
+ attr_accessor :client_id
44
+
45
+ # PhotoUrl for the client
46
+ # @return [String]
47
+ attr_accessor :client_photo_url
48
+
49
+ # The unique ID of the client associated with the visit.
50
+ # @return [Integer]
51
+ attr_accessor :client_unique_id
52
+
53
+ # The time this class is scheduled to start.
54
+ # @return [DateTime]
55
+ attr_accessor :start_date_time
56
+
57
+ # The date and time the visit ends. The Public API returns UTC dates and
58
+ # times. For example, a class that occurs on June 25th, 2018 at 2:15PM (EST)
59
+ # appears as “2018-06-25T19:15:00Z” because EST is five hours behind UTC.
60
+ # Date time pairs always return in the format YYYY-MM-DDTHH:mm:ssZ.
61
+ # @return [DateTime]
62
+ attr_accessor :end_date_time
63
+
64
+ # The ID of the visit.
65
+ # @return [Integer]
66
+ attr_accessor :id
67
+
68
+ # When included in the request, only records modified on or after the
69
+ # specified `LastModifiedDate` are included in the response. The Public API
70
+ # returns UTC dates and times. For example, a class that occurs on June
71
+ # 25th, 2018 at 2:15PM (EST) appears as “2018-06-25T19:15:00Z” because EST
72
+ # is five hours behind UTC. Date time pairs always return in the format
73
+ # YYYY-MM-DDTHH:mm:ssZ.
74
+ # @return [DateTime]
75
+ attr_accessor :last_modified_date_time
76
+
77
+ # When `true`, indicates that the class has been `LateCancelled`.<br />
78
+ # When `false`, indicates that the class has not been `LateCancelled`.
79
+ # @return [TrueClass | FalseClass]
80
+ attr_accessor :late_cancelled
81
+
82
+ # The ID of the business where the visit is booked.
83
+ # @return [Integer]
84
+ attr_accessor :site_id
85
+
86
+ # The ID of the location where the visit took place or is to take place.
87
+ # @return [Integer]
88
+ attr_accessor :location_id
89
+
90
+ # When `true`, the client can make up this session and a session is not
91
+ # deducted from the pricing option that was used to sign the client into the
92
+ # enrollment. When the client has the make-up session, a session is
93
+ # automatically removed from a pricing option that matches the service
94
+ # category of the enrollment and is within the same date range of the missed
95
+ # session.<br />
96
+ # When `false`, the client cannot make up this session. See [Enrollments:
97
+ # Make-ups](https://support.mindbodyonline.com/s/article/203259433-Enrollmen
98
+ # ts-Make-ups?language=en_US) for more information.
99
+ # @return [TrueClass | FalseClass]
100
+ attr_accessor :make_up
101
+
102
+ # The name of the class.
103
+ # @return [String]
104
+ attr_accessor :name
105
+
106
+ # The unique ID assigned to this pricing option when it was purchased by the
107
+ # client.
108
+ # @return [Integer]
109
+ attr_accessor :service_id
110
+
111
+ # The name of the pricing option at the site where it was purchased.
112
+ # @return [String]
113
+ attr_accessor :service_name
114
+
115
+ # A service that is on a client's account.
116
+ # @return [ClientService]
117
+ attr_accessor :service
118
+
119
+ # The ID of the pricing option at the site where it was purchased.
120
+ # @return [Integer]
121
+ attr_accessor :product_id
122
+
123
+ # When `true`, indicates that the client has been signed in.<br />
124
+ # When `false`, indicates that the client has not been signed in.
125
+ # @return [TrueClass | FalseClass]
126
+ attr_accessor :signed_in
127
+
128
+ # The ID of the staff member who is teaching the class.
129
+ # @return [Integer]
130
+ attr_accessor :staff_id
131
+
132
+ # When `true`, indicates that the client signed up online.<br />
133
+ # When `false`, indicates that the client was signed up by a staff member.
134
+ # @return [TrueClass | FalseClass]
135
+ attr_accessor :web_signup
136
+
137
+ # The action taken.
138
+ # @return [Action1Enum]
139
+ attr_accessor :action
140
+
141
+ # When `true`, indicates that the class has been `Missed`.<br />
142
+ # When `false`, indicates that the class has not been `Missed`.
143
+ # @return [TrueClass | FalseClass]
144
+ attr_accessor :missed
145
+
146
+ # Indicates the Id of visit type.
147
+ # @return [Integer]
148
+ attr_accessor :visit_type
149
+
150
+ # Indicates the Id of type group.
151
+ # @return [Integer]
152
+ attr_accessor :type_group
153
+
154
+ # Indicates the service type taken.
155
+ # @return [String]
156
+ attr_accessor :type_taken
157
+
158
+ # A mapping from model property names to API property names.
159
+ def self.names
160
+ @_hash = {} if @_hash.nil?
161
+ @_hash['waitlist_info'] = 'WaitlistInfo'
162
+ @_hash['appointment_id'] = 'AppointmentId'
163
+ @_hash['appointment_gender_preference'] = 'AppointmentGenderPreference'
164
+ @_hash['appointment_status'] = 'AppointmentStatus'
165
+ @_hash['class_id'] = 'ClassId'
166
+ @_hash['client_id'] = 'ClientId'
167
+ @_hash['client_photo_url'] = 'ClientPhotoUrl'
168
+ @_hash['client_unique_id'] = 'ClientUniqueId'
169
+ @_hash['start_date_time'] = 'StartDateTime'
170
+ @_hash['end_date_time'] = 'EndDateTime'
171
+ @_hash['id'] = 'Id'
172
+ @_hash['last_modified_date_time'] = 'LastModifiedDateTime'
173
+ @_hash['late_cancelled'] = 'LateCancelled'
174
+ @_hash['site_id'] = 'SiteId'
175
+ @_hash['location_id'] = 'LocationId'
176
+ @_hash['make_up'] = 'MakeUp'
177
+ @_hash['name'] = 'Name'
178
+ @_hash['service_id'] = 'ServiceId'
179
+ @_hash['service_name'] = 'ServiceName'
180
+ @_hash['service'] = 'Service'
181
+ @_hash['product_id'] = 'ProductId'
182
+ @_hash['signed_in'] = 'SignedIn'
183
+ @_hash['staff_id'] = 'StaffId'
184
+ @_hash['web_signup'] = 'WebSignup'
185
+ @_hash['action'] = 'Action'
186
+ @_hash['missed'] = 'Missed'
187
+ @_hash['visit_type'] = 'VisitType'
188
+ @_hash['type_group'] = 'TypeGroup'
189
+ @_hash['type_taken'] = 'TypeTaken'
190
+ @_hash
191
+ end
192
+
193
+ # An array for optional fields
194
+ def self.optionals
195
+ %w[
196
+ waitlist_info
197
+ appointment_id
198
+ appointment_gender_preference
199
+ appointment_status
200
+ class_id
201
+ client_id
202
+ client_photo_url
203
+ client_unique_id
204
+ start_date_time
205
+ end_date_time
206
+ id
207
+ last_modified_date_time
208
+ late_cancelled
209
+ site_id
210
+ location_id
211
+ make_up
212
+ name
213
+ service_id
214
+ service_name
215
+ service
216
+ product_id
217
+ signed_in
218
+ staff_id
219
+ web_signup
220
+ action
221
+ missed
222
+ visit_type
223
+ type_group
224
+ type_taken
225
+ ]
226
+ end
227
+
228
+ # An array for nullable fields
229
+ def self.nullables
230
+ []
231
+ end
232
+
233
+ def initialize(waitlist_info = SKIP, appointment_id = SKIP,
234
+ appointment_gender_preference = SKIP,
235
+ appointment_status = SKIP, class_id = SKIP, client_id = SKIP,
236
+ client_photo_url = SKIP, client_unique_id = SKIP,
237
+ start_date_time = SKIP, end_date_time = SKIP, id = SKIP,
238
+ last_modified_date_time = SKIP, late_cancelled = SKIP,
239
+ site_id = SKIP, location_id = SKIP, make_up = SKIP,
240
+ name = SKIP, service_id = SKIP, service_name = SKIP,
241
+ service = SKIP, product_id = SKIP, signed_in = SKIP,
242
+ staff_id = SKIP, web_signup = SKIP, action = SKIP,
243
+ missed = SKIP, visit_type = SKIP, type_group = SKIP,
244
+ type_taken = SKIP)
245
+ @waitlist_info = waitlist_info unless waitlist_info == SKIP
246
+ @appointment_id = appointment_id unless appointment_id == SKIP
247
+ unless appointment_gender_preference == SKIP
248
+ @appointment_gender_preference =
249
+ appointment_gender_preference
250
+ end
251
+ @appointment_status = appointment_status unless appointment_status == SKIP
252
+ @class_id = class_id unless class_id == SKIP
253
+ @client_id = client_id unless client_id == SKIP
254
+ @client_photo_url = client_photo_url unless client_photo_url == SKIP
255
+ @client_unique_id = client_unique_id unless client_unique_id == SKIP
256
+ @start_date_time = start_date_time unless start_date_time == SKIP
257
+ @end_date_time = end_date_time unless end_date_time == SKIP
258
+ @id = id unless id == SKIP
259
+ @last_modified_date_time = last_modified_date_time unless last_modified_date_time == SKIP
260
+ @late_cancelled = late_cancelled unless late_cancelled == SKIP
261
+ @site_id = site_id unless site_id == SKIP
262
+ @location_id = location_id unless location_id == SKIP
263
+ @make_up = make_up unless make_up == SKIP
264
+ @name = name unless name == SKIP
265
+ @service_id = service_id unless service_id == SKIP
266
+ @service_name = service_name unless service_name == SKIP
267
+ @service = service unless service == SKIP
268
+ @product_id = product_id unless product_id == SKIP
269
+ @signed_in = signed_in unless signed_in == SKIP
270
+ @staff_id = staff_id unless staff_id == SKIP
271
+ @web_signup = web_signup unless web_signup == SKIP
272
+ @action = action unless action == SKIP
273
+ @missed = missed unless missed == SKIP
274
+ @visit_type = visit_type unless visit_type == SKIP
275
+ @type_group = type_group unless type_group == SKIP
276
+ @type_taken = type_taken unless type_taken == SKIP
277
+ end
278
+
279
+ # Creates an instance of the object from a hash.
280
+ def self.from_hash(hash)
281
+ return nil unless hash
282
+
283
+ # Extract variables from the hash.
284
+ waitlist_info = VisitWaitlistInfo.from_hash(hash['WaitlistInfo']) if hash['WaitlistInfo']
285
+ appointment_id = hash.key?('AppointmentId') ? hash['AppointmentId'] : SKIP
286
+ appointment_gender_preference =
287
+ hash.key?('AppointmentGenderPreference') ? hash['AppointmentGenderPreference'] : SKIP
288
+ appointment_status =
289
+ hash.key?('AppointmentStatus') ? hash['AppointmentStatus'] : SKIP
290
+ class_id = hash.key?('ClassId') ? hash['ClassId'] : SKIP
291
+ client_id = hash.key?('ClientId') ? hash['ClientId'] : SKIP
292
+ client_photo_url =
293
+ hash.key?('ClientPhotoUrl') ? hash['ClientPhotoUrl'] : SKIP
294
+ client_unique_id =
295
+ hash.key?('ClientUniqueId') ? hash['ClientUniqueId'] : SKIP
296
+ start_date_time = if hash.key?('StartDateTime')
297
+ (DateTimeHelper.from_rfc3339(hash['StartDateTime']) if hash['StartDateTime'])
298
+ else
299
+ SKIP
300
+ end
301
+ end_date_time = if hash.key?('EndDateTime')
302
+ (DateTimeHelper.from_rfc3339(hash['EndDateTime']) if hash['EndDateTime'])
303
+ else
304
+ SKIP
305
+ end
306
+ id = hash.key?('Id') ? hash['Id'] : SKIP
307
+ last_modified_date_time = if hash.key?('LastModifiedDateTime')
308
+ (DateTimeHelper.from_rfc3339(hash['LastModifiedDateTime']) if hash['LastModifiedDateTime'])
309
+ else
310
+ SKIP
311
+ end
312
+ late_cancelled = hash.key?('LateCancelled') ? hash['LateCancelled'] : SKIP
313
+ site_id = hash.key?('SiteId') ? hash['SiteId'] : SKIP
314
+ location_id = hash.key?('LocationId') ? hash['LocationId'] : SKIP
315
+ make_up = hash.key?('MakeUp') ? hash['MakeUp'] : SKIP
316
+ name = hash.key?('Name') ? hash['Name'] : SKIP
317
+ service_id = hash.key?('ServiceId') ? hash['ServiceId'] : SKIP
318
+ service_name = hash.key?('ServiceName') ? hash['ServiceName'] : SKIP
319
+ service = ClientService.from_hash(hash['Service']) if hash['Service']
320
+ product_id = hash.key?('ProductId') ? hash['ProductId'] : SKIP
321
+ signed_in = hash.key?('SignedIn') ? hash['SignedIn'] : SKIP
322
+ staff_id = hash.key?('StaffId') ? hash['StaffId'] : SKIP
323
+ web_signup = hash.key?('WebSignup') ? hash['WebSignup'] : SKIP
324
+ action = hash.key?('Action') ? hash['Action'] : SKIP
325
+ missed = hash.key?('Missed') ? hash['Missed'] : SKIP
326
+ visit_type = hash.key?('VisitType') ? hash['VisitType'] : SKIP
327
+ type_group = hash.key?('TypeGroup') ? hash['TypeGroup'] : SKIP
328
+ type_taken = hash.key?('TypeTaken') ? hash['TypeTaken'] : SKIP
329
+
330
+ # Create object from extracted values.
331
+ VisitWithWaitlistInfo.new(waitlist_info,
332
+ appointment_id,
333
+ appointment_gender_preference,
334
+ appointment_status,
335
+ class_id,
336
+ client_id,
337
+ client_photo_url,
338
+ client_unique_id,
339
+ start_date_time,
340
+ end_date_time,
341
+ id,
342
+ last_modified_date_time,
343
+ late_cancelled,
344
+ site_id,
345
+ location_id,
346
+ make_up,
347
+ name,
348
+ service_id,
349
+ service_name,
350
+ service,
351
+ product_id,
352
+ signed_in,
353
+ staff_id,
354
+ web_signup,
355
+ action,
356
+ missed,
357
+ visit_type,
358
+ type_group,
359
+ type_taken)
360
+ end
361
+
362
+ def to_custom_start_date_time
363
+ DateTimeHelper.to_rfc3339(start_date_time)
364
+ end
365
+
366
+ def to_custom_end_date_time
367
+ DateTimeHelper.to_rfc3339(end_date_time)
368
+ end
369
+
370
+ def to_custom_last_modified_date_time
371
+ DateTimeHelper.to_rfc3339(last_modified_date_time)
372
+ end
373
+
374
+ # Provides a human-readable string representation of the object.
375
+ def to_s
376
+ class_name = self.class.name.split('::').last
377
+ "<#{class_name} waitlist_info: #{@waitlist_info}, appointment_id: #{@appointment_id},"\
378
+ " appointment_gender_preference: #{@appointment_gender_preference}, appointment_status:"\
379
+ " #{@appointment_status}, class_id: #{@class_id}, client_id: #{@client_id},"\
380
+ " client_photo_url: #{@client_photo_url}, client_unique_id: #{@client_unique_id},"\
381
+ " start_date_time: #{@start_date_time}, end_date_time: #{@end_date_time}, id: #{@id},"\
382
+ " last_modified_date_time: #{@last_modified_date_time}, late_cancelled: #{@late_cancelled},"\
383
+ " site_id: #{@site_id}, location_id: #{@location_id}, make_up: #{@make_up}, name: #{@name},"\
384
+ " service_id: #{@service_id}, service_name: #{@service_name}, service: #{@service},"\
385
+ " product_id: #{@product_id}, signed_in: #{@signed_in}, staff_id: #{@staff_id}, web_signup:"\
386
+ " #{@web_signup}, action: #{@action}, missed: #{@missed}, visit_type: #{@visit_type},"\
387
+ " type_group: #{@type_group}, type_taken: #{@type_taken}>"
388
+ end
389
+
390
+ # Provides a debugging-friendly string with detailed object information.
391
+ def inspect
392
+ class_name = self.class.name.split('::').last
393
+ "<#{class_name} waitlist_info: #{@waitlist_info.inspect}, appointment_id:"\
394
+ " #{@appointment_id.inspect}, appointment_gender_preference:"\
395
+ " #{@appointment_gender_preference.inspect}, appointment_status:"\
396
+ " #{@appointment_status.inspect}, class_id: #{@class_id.inspect}, client_id:"\
397
+ " #{@client_id.inspect}, client_photo_url: #{@client_photo_url.inspect}, client_unique_id:"\
398
+ " #{@client_unique_id.inspect}, start_date_time: #{@start_date_time.inspect}, end_date_time:"\
399
+ " #{@end_date_time.inspect}, id: #{@id.inspect}, last_modified_date_time:"\
400
+ " #{@last_modified_date_time.inspect}, late_cancelled: #{@late_cancelled.inspect}, site_id:"\
401
+ " #{@site_id.inspect}, location_id: #{@location_id.inspect}, make_up: #{@make_up.inspect},"\
402
+ " name: #{@name.inspect}, service_id: #{@service_id.inspect}, service_name:"\
403
+ " #{@service_name.inspect}, service: #{@service.inspect}, product_id:"\
404
+ " #{@product_id.inspect}, signed_in: #{@signed_in.inspect}, staff_id: #{@staff_id.inspect},"\
405
+ " web_signup: #{@web_signup.inspect}, action: #{@action.inspect}, missed:"\
406
+ " #{@missed.inspect}, visit_type: #{@visit_type.inspect}, type_group:"\
407
+ " #{@type_group.inspect}, type_taken: #{@type_taken.inspect}>"
408
+ end
409
+ end
410
+ end
@@ -0,0 +1,173 @@
1
+ # mindbody_public_api
2
+ #
3
+ # This file was automatically generated by APIMATIC
4
+ # v3.0 ( https://www.apimatic.io ).
5
+
6
+ require 'date'
7
+ module MindbodyPublicApi
8
+ # WaitlistEntry Model.
9
+ class WaitlistEntry < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # The date of the class or enrollment.
14
+ # @return [DateTime]
15
+ attr_accessor :class_date
16
+
17
+ # The ID of the class or enrollment.
18
+ # @return [Integer]
19
+ attr_accessor :class_id
20
+
21
+ # Represents a single class instance. The class meets at the start time,
22
+ # goes until the end time.
23
+ # @return [ClassSchedule]
24
+ attr_accessor :class_schedule
25
+
26
+ # The Client.
27
+ # @return [Client]
28
+ attr_accessor :client
29
+
30
+ # If the waiting list entry was created for an enrollment, this is the date
31
+ # on or after which the client can be added to the enrollment from the
32
+ # waitlist.
33
+ # @return [DateTime]
34
+ attr_accessor :enrollment_date_forward
35
+
36
+ # The ID of the waiting list entry.
37
+ # @return [Integer]
38
+ attr_accessor :id
39
+
40
+ # The date and time that the request to be on the waiting list was made.
41
+ # @return [DateTime]
42
+ attr_accessor :request_date_time
43
+
44
+ # The ID of the visit that is associated with the waiting list entry.
45
+ # @return [Integer]
46
+ attr_accessor :visit_ref_no
47
+
48
+ # If `true`, the entry on the waiting list was requested online.<br />
49
+ # If `false`, the entry on the waiting list was requested off-line, for
50
+ # example in person or by phone.
51
+ # @return [TrueClass | FalseClass]
52
+ attr_accessor :web
53
+
54
+ # A mapping from model property names to API property names.
55
+ def self.names
56
+ @_hash = {} if @_hash.nil?
57
+ @_hash['class_date'] = 'ClassDate'
58
+ @_hash['class_id'] = 'ClassId'
59
+ @_hash['class_schedule'] = 'ClassSchedule'
60
+ @_hash['client'] = 'Client'
61
+ @_hash['enrollment_date_forward'] = 'EnrollmentDateForward'
62
+ @_hash['id'] = 'Id'
63
+ @_hash['request_date_time'] = 'RequestDateTime'
64
+ @_hash['visit_ref_no'] = 'VisitRefNo'
65
+ @_hash['web'] = 'Web'
66
+ @_hash
67
+ end
68
+
69
+ # An array for optional fields
70
+ def self.optionals
71
+ %w[
72
+ class_date
73
+ class_id
74
+ class_schedule
75
+ client
76
+ enrollment_date_forward
77
+ id
78
+ request_date_time
79
+ visit_ref_no
80
+ web
81
+ ]
82
+ end
83
+
84
+ # An array for nullable fields
85
+ def self.nullables
86
+ []
87
+ end
88
+
89
+ def initialize(class_date = SKIP, class_id = SKIP, class_schedule = SKIP,
90
+ client = SKIP, enrollment_date_forward = SKIP, id = SKIP,
91
+ request_date_time = SKIP, visit_ref_no = SKIP, web = SKIP)
92
+ @class_date = class_date unless class_date == SKIP
93
+ @class_id = class_id unless class_id == SKIP
94
+ @class_schedule = class_schedule unless class_schedule == SKIP
95
+ @client = client unless client == SKIP
96
+ @enrollment_date_forward = enrollment_date_forward unless enrollment_date_forward == SKIP
97
+ @id = id unless id == SKIP
98
+ @request_date_time = request_date_time unless request_date_time == SKIP
99
+ @visit_ref_no = visit_ref_no unless visit_ref_no == SKIP
100
+ @web = web unless web == SKIP
101
+ end
102
+
103
+ # Creates an instance of the object from a hash.
104
+ def self.from_hash(hash)
105
+ return nil unless hash
106
+
107
+ # Extract variables from the hash.
108
+ class_date = if hash.key?('ClassDate')
109
+ (DateTimeHelper.from_rfc3339(hash['ClassDate']) if hash['ClassDate'])
110
+ else
111
+ SKIP
112
+ end
113
+ class_id = hash.key?('ClassId') ? hash['ClassId'] : SKIP
114
+ class_schedule = ClassSchedule.from_hash(hash['ClassSchedule']) if hash['ClassSchedule']
115
+ client = Client.from_hash(hash['Client']) if hash['Client']
116
+ enrollment_date_forward = if hash.key?('EnrollmentDateForward')
117
+ (DateTimeHelper.from_rfc3339(hash['EnrollmentDateForward']) if hash['EnrollmentDateForward'])
118
+ else
119
+ SKIP
120
+ end
121
+ id = hash.key?('Id') ? hash['Id'] : SKIP
122
+ request_date_time = if hash.key?('RequestDateTime')
123
+ (DateTimeHelper.from_rfc3339(hash['RequestDateTime']) if hash['RequestDateTime'])
124
+ else
125
+ SKIP
126
+ end
127
+ visit_ref_no = hash.key?('VisitRefNo') ? hash['VisitRefNo'] : SKIP
128
+ web = hash.key?('Web') ? hash['Web'] : SKIP
129
+
130
+ # Create object from extracted values.
131
+ WaitlistEntry.new(class_date,
132
+ class_id,
133
+ class_schedule,
134
+ client,
135
+ enrollment_date_forward,
136
+ id,
137
+ request_date_time,
138
+ visit_ref_no,
139
+ web)
140
+ end
141
+
142
+ def to_custom_class_date
143
+ DateTimeHelper.to_rfc3339(class_date)
144
+ end
145
+
146
+ def to_custom_enrollment_date_forward
147
+ DateTimeHelper.to_rfc3339(enrollment_date_forward)
148
+ end
149
+
150
+ def to_custom_request_date_time
151
+ DateTimeHelper.to_rfc3339(request_date_time)
152
+ end
153
+
154
+ # Provides a human-readable string representation of the object.
155
+ def to_s
156
+ class_name = self.class.name.split('::').last
157
+ "<#{class_name} class_date: #{@class_date}, class_id: #{@class_id}, class_schedule:"\
158
+ " #{@class_schedule}, client: #{@client}, enrollment_date_forward:"\
159
+ " #{@enrollment_date_forward}, id: #{@id}, request_date_time: #{@request_date_time},"\
160
+ " visit_ref_no: #{@visit_ref_no}, web: #{@web}>"
161
+ end
162
+
163
+ # Provides a debugging-friendly string with detailed object information.
164
+ def inspect
165
+ class_name = self.class.name.split('::').last
166
+ "<#{class_name} class_date: #{@class_date.inspect}, class_id: #{@class_id.inspect},"\
167
+ " class_schedule: #{@class_schedule.inspect}, client: #{@client.inspect},"\
168
+ " enrollment_date_forward: #{@enrollment_date_forward.inspect}, id: #{@id.inspect},"\
169
+ " request_date_time: #{@request_date_time.inspect}, visit_ref_no: #{@visit_ref_no.inspect},"\
170
+ " web: #{@web.inspect}>"
171
+ end
172
+ end
173
+ end
@@ -0,0 +1,73 @@
1
+ # mindbody_public_api
2
+ #
3
+ # This file was automatically generated by APIMATIC
4
+ # v3.0 ( https://www.apimatic.io ).
5
+
6
+ module MindbodyPublicApi
7
+ # WrittenClassSchedulesInfo Model.
8
+ class WrittenClassSchedulesInfo < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The ClassScheduleId.
13
+ # @return [Integer]
14
+ attr_accessor :class_id
15
+
16
+ # The individual ClassIds of the enrollment schedule.
17
+ # @return [Array[Integer]]
18
+ attr_accessor :class_instance_ids
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['class_id'] = 'ClassId'
24
+ @_hash['class_instance_ids'] = 'ClassInstanceIds'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ %w[
31
+ class_id
32
+ class_instance_ids
33
+ ]
34
+ end
35
+
36
+ # An array for nullable fields
37
+ def self.nullables
38
+ []
39
+ end
40
+
41
+ def initialize(class_id = SKIP, class_instance_ids = SKIP)
42
+ @class_id = class_id unless class_id == SKIP
43
+ @class_instance_ids = class_instance_ids unless class_instance_ids == SKIP
44
+ end
45
+
46
+ # Creates an instance of the object from a hash.
47
+ def self.from_hash(hash)
48
+ return nil unless hash
49
+
50
+ # Extract variables from the hash.
51
+ class_id = hash.key?('ClassId') ? hash['ClassId'] : SKIP
52
+ class_instance_ids =
53
+ hash.key?('ClassInstanceIds') ? hash['ClassInstanceIds'] : SKIP
54
+
55
+ # Create object from extracted values.
56
+ WrittenClassSchedulesInfo.new(class_id,
57
+ class_instance_ids)
58
+ end
59
+
60
+ # Provides a human-readable string representation of the object.
61
+ def to_s
62
+ class_name = self.class.name.split('::').last
63
+ "<#{class_name} class_id: #{@class_id}, class_instance_ids: #{@class_instance_ids}>"
64
+ end
65
+
66
+ # Provides a debugging-friendly string with detailed object information.
67
+ def inspect
68
+ class_name = self.class.name.split('::').last
69
+ "<#{class_name} class_id: #{@class_id.inspect}, class_instance_ids:"\
70
+ " #{@class_instance_ids.inspect}>"
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,11 @@
1
+ # mindbody_public_api
2
+ #
3
+ # This file was automatically generated by APIMATIC
4
+ # v3.0 ( https://www.apimatic.io ).
5
+
6
+ require 'date'
7
+ module MindbodyPublicApi
8
+ # A utility that supports dateTime conversion to different formats
9
+ class DateTimeHelper < CoreLibrary::DateTimeHelper
10
+ end
11
+ end