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,62 @@
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
+ # AddClientResponse Model.
8
+ class AddClientResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The Client.
13
+ # @return [Client]
14
+ attr_accessor :client
15
+
16
+ # A mapping from model property names to API property names.
17
+ def self.names
18
+ @_hash = {} if @_hash.nil?
19
+ @_hash['client'] = 'Client'
20
+ @_hash
21
+ end
22
+
23
+ # An array for optional fields
24
+ def self.optionals
25
+ %w[
26
+ client
27
+ ]
28
+ end
29
+
30
+ # An array for nullable fields
31
+ def self.nullables
32
+ []
33
+ end
34
+
35
+ def initialize(client = SKIP)
36
+ @client = client unless client == SKIP
37
+ end
38
+
39
+ # Creates an instance of the object from a hash.
40
+ def self.from_hash(hash)
41
+ return nil unless hash
42
+
43
+ # Extract variables from the hash.
44
+ client = Client.from_hash(hash['Client']) if hash['Client']
45
+
46
+ # Create object from extracted values.
47
+ AddClientResponse.new(client)
48
+ end
49
+
50
+ # Provides a human-readable string representation of the object.
51
+ def to_s
52
+ class_name = self.class.name.split('::').last
53
+ "<#{class_name} client: #{@client}>"
54
+ end
55
+
56
+ # Provides a debugging-friendly string with detailed object information.
57
+ def inspect
58
+ class_name = self.class.name.split('::').last
59
+ "<#{class_name} client: #{@client.inspect}>"
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,199 @@
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
+ # AddClientToClassRequest Model.
8
+ class AddClientToClassRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The ID of the client who is being booked into the class
13
+ # @return [String]
14
+ attr_accessor :client_id
15
+
16
+ # The ID of the class into which the client is being booked
17
+ # @return [Integer]
18
+ attr_accessor :class_id
19
+
20
+ # When `true`, indicates that input information is validated, but not
21
+ # committed.<br />
22
+ # When `false`, the information is committed and the database is
23
+ # affected.<br />
24
+ # Default: **false**
25
+ # @return [TrueClass | FalseClass]
26
+ attr_accessor :test
27
+
28
+ # When `true`, the client must have an active, usable pricing option on
29
+ # their account.<br />
30
+ # When `false` or omitted, an active pricing option is not required to
31
+ # complete the client’s booking.
32
+ # @return [TrueClass | FalseClass]
33
+ attr_accessor :require_payment
34
+
35
+ # When `true`, indicates that the client should be added to a specific class
36
+ # waiting list.<br />
37
+ # When `false`, the client should not be added to the waiting list.
38
+ # @return [TrueClass | FalseClass]
39
+ attr_accessor :waitlist
40
+
41
+ # When `true`, the subscriber’s configured Booking Confirmation automatic
42
+ # email is sent to the client. Note that an email is sent only if the client
43
+ # has an email address and automatic emails have been set up.<br />
44
+ # When `false`, indicates that the client does not receive emails.<br />
45
+ # Default: **false**
46
+ # **Note**: When the Authorization header is passed and the SendEmail is set
47
+ # to `true`, then an email will be sent.
48
+ # When the Authorization header is passed and the SendEmail is set to
49
+ # `false`, then an email will not be sent.
50
+ # When the Authorization header is not passed and the SendEmail is set to
51
+ # either `true` or `false`, then an email will not be sent.
52
+ # @return [TrueClass | FalseClass]
53
+ attr_accessor :send_email
54
+
55
+ # The ID of the waiting list entry from which you are moving a client into a
56
+ # class.
57
+ # @return [Integer]
58
+ attr_accessor :waitlist_entry_id
59
+
60
+ # The ID of the pricing option on the client’s account that you want to use
61
+ # to pay for this booking, if payment is required at the time of the update.
62
+ # @return [Integer]
63
+ attr_accessor :client_service_id
64
+
65
+ # When `true`, cross regional series are checked and used if applicable.
66
+ # @return [TrueClass | FalseClass]
67
+ attr_accessor :cross_regional_booking
68
+
69
+ # If the request is cross regional, use a purchased pricing option from this
70
+ # specified site. If omitted, an attempt is made to use an applicable
71
+ # pricing option from the local site.
72
+ # @return [Integer]
73
+ attr_accessor :cross_regional_booking_client_service_site_id
74
+
75
+ # The UniqueID of the client who is being booked into the class
76
+ # @return [Integer]
77
+ attr_accessor :unique_id
78
+
79
+ # A mapping from model property names to API property names.
80
+ def self.names
81
+ @_hash = {} if @_hash.nil?
82
+ @_hash['client_id'] = 'ClientId'
83
+ @_hash['class_id'] = 'ClassId'
84
+ @_hash['test'] = 'Test'
85
+ @_hash['require_payment'] = 'RequirePayment'
86
+ @_hash['waitlist'] = 'Waitlist'
87
+ @_hash['send_email'] = 'SendEmail'
88
+ @_hash['waitlist_entry_id'] = 'WaitlistEntryId'
89
+ @_hash['client_service_id'] = 'ClientServiceId'
90
+ @_hash['cross_regional_booking'] = 'CrossRegionalBooking'
91
+ @_hash['cross_regional_booking_client_service_site_id'] =
92
+ 'CrossRegionalBookingClientServiceSiteId'
93
+ @_hash['unique_id'] = 'UniqueId'
94
+ @_hash
95
+ end
96
+
97
+ # An array for optional fields
98
+ def self.optionals
99
+ %w[
100
+ test
101
+ require_payment
102
+ waitlist
103
+ send_email
104
+ waitlist_entry_id
105
+ client_service_id
106
+ cross_regional_booking
107
+ cross_regional_booking_client_service_site_id
108
+ unique_id
109
+ ]
110
+ end
111
+
112
+ # An array for nullable fields
113
+ def self.nullables
114
+ []
115
+ end
116
+
117
+ def initialize(client_id = nil, class_id = nil, test = SKIP,
118
+ require_payment = SKIP, waitlist = SKIP, send_email = SKIP,
119
+ waitlist_entry_id = SKIP, client_service_id = SKIP,
120
+ cross_regional_booking = SKIP,
121
+ cross_regional_booking_client_service_site_id = SKIP,
122
+ unique_id = SKIP)
123
+ @client_id = client_id
124
+ @class_id = class_id
125
+ @test = test unless test == SKIP
126
+ @require_payment = require_payment unless require_payment == SKIP
127
+ @waitlist = waitlist unless waitlist == SKIP
128
+ @send_email = send_email unless send_email == SKIP
129
+ @waitlist_entry_id = waitlist_entry_id unless waitlist_entry_id == SKIP
130
+ @client_service_id = client_service_id unless client_service_id == SKIP
131
+ @cross_regional_booking = cross_regional_booking unless cross_regional_booking == SKIP
132
+ unless cross_regional_booking_client_service_site_id == SKIP
133
+ @cross_regional_booking_client_service_site_id =
134
+ cross_regional_booking_client_service_site_id
135
+ end
136
+ @unique_id = unique_id unless unique_id == SKIP
137
+ end
138
+
139
+ # Creates an instance of the object from a hash.
140
+ def self.from_hash(hash)
141
+ return nil unless hash
142
+
143
+ # Extract variables from the hash.
144
+ client_id = hash.key?('ClientId') ? hash['ClientId'] : nil
145
+ class_id = hash.key?('ClassId') ? hash['ClassId'] : nil
146
+ test = hash.key?('Test') ? hash['Test'] : SKIP
147
+ require_payment =
148
+ hash.key?('RequirePayment') ? hash['RequirePayment'] : SKIP
149
+ waitlist = hash.key?('Waitlist') ? hash['Waitlist'] : SKIP
150
+ send_email = hash.key?('SendEmail') ? hash['SendEmail'] : SKIP
151
+ waitlist_entry_id =
152
+ hash.key?('WaitlistEntryId') ? hash['WaitlistEntryId'] : SKIP
153
+ client_service_id =
154
+ hash.key?('ClientServiceId') ? hash['ClientServiceId'] : SKIP
155
+ cross_regional_booking =
156
+ hash.key?('CrossRegionalBooking') ? hash['CrossRegionalBooking'] : SKIP
157
+ cross_regional_booking_client_service_site_id =
158
+ hash.key?('CrossRegionalBookingClientServiceSiteId') ? hash['CrossRegionalBookingClientServiceSiteId'] : SKIP
159
+ unique_id = hash.key?('UniqueId') ? hash['UniqueId'] : SKIP
160
+
161
+ # Create object from extracted values.
162
+ AddClientToClassRequest.new(client_id,
163
+ class_id,
164
+ test,
165
+ require_payment,
166
+ waitlist,
167
+ send_email,
168
+ waitlist_entry_id,
169
+ client_service_id,
170
+ cross_regional_booking,
171
+ cross_regional_booking_client_service_site_id,
172
+ unique_id)
173
+ end
174
+
175
+ # Provides a human-readable string representation of the object.
176
+ def to_s
177
+ class_name = self.class.name.split('::').last
178
+ "<#{class_name} client_id: #{@client_id}, class_id: #{@class_id}, test: #{@test},"\
179
+ " require_payment: #{@require_payment}, waitlist: #{@waitlist}, send_email: #{@send_email},"\
180
+ " waitlist_entry_id: #{@waitlist_entry_id}, client_service_id: #{@client_service_id},"\
181
+ " cross_regional_booking: #{@cross_regional_booking},"\
182
+ ' cross_regional_booking_client_service_site_id:'\
183
+ " #{@cross_regional_booking_client_service_site_id}, unique_id: #{@unique_id}>"
184
+ end
185
+
186
+ # Provides a debugging-friendly string with detailed object information.
187
+ def inspect
188
+ class_name = self.class.name.split('::').last
189
+ "<#{class_name} client_id: #{@client_id.inspect}, class_id: #{@class_id.inspect}, test:"\
190
+ " #{@test.inspect}, require_payment: #{@require_payment.inspect}, waitlist:"\
191
+ " #{@waitlist.inspect}, send_email: #{@send_email.inspect}, waitlist_entry_id:"\
192
+ " #{@waitlist_entry_id.inspect}, client_service_id: #{@client_service_id.inspect},"\
193
+ " cross_regional_booking: #{@cross_regional_booking.inspect},"\
194
+ ' cross_regional_booking_client_service_site_id:'\
195
+ " #{@cross_regional_booking_client_service_site_id.inspect}, unique_id:"\
196
+ " #{@unique_id.inspect}>"
197
+ end
198
+ end
199
+ end
@@ -0,0 +1,62 @@
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
+ # AddClientToClassResponse Model.
8
+ class AddClientToClassResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [AddClientToClassVisit]
14
+ attr_accessor :visit
15
+
16
+ # A mapping from model property names to API property names.
17
+ def self.names
18
+ @_hash = {} if @_hash.nil?
19
+ @_hash['visit'] = 'Visit'
20
+ @_hash
21
+ end
22
+
23
+ # An array for optional fields
24
+ def self.optionals
25
+ %w[
26
+ visit
27
+ ]
28
+ end
29
+
30
+ # An array for nullable fields
31
+ def self.nullables
32
+ []
33
+ end
34
+
35
+ def initialize(visit = SKIP)
36
+ @visit = visit unless visit == SKIP
37
+ end
38
+
39
+ # Creates an instance of the object from a hash.
40
+ def self.from_hash(hash)
41
+ return nil unless hash
42
+
43
+ # Extract variables from the hash.
44
+ visit = AddClientToClassVisit.from_hash(hash['Visit']) if hash['Visit']
45
+
46
+ # Create object from extracted values.
47
+ AddClientToClassResponse.new(visit)
48
+ end
49
+
50
+ # Provides a human-readable string representation of the object.
51
+ def to_s
52
+ class_name = self.class.name.split('::').last
53
+ "<#{class_name} visit: #{@visit}>"
54
+ end
55
+
56
+ # Provides a debugging-friendly string with detailed object information.
57
+ def inspect
58
+ class_name = self.class.name.split('::').last
59
+ "<#{class_name} visit: #{@visit.inspect}>"
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,353 @@
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
+ # AddClientToClassVisit Model.
9
+ class AddClientToClassVisit < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # The appointment’s ID.
14
+ # @return [Integer]
15
+ attr_accessor :appointment_id
16
+
17
+ # The gender of staff member with whom the client prefers to book
18
+ # appointments.
19
+ # @return [AppointmentGenderPreference1Enum]
20
+ attr_accessor :appointment_gender_preference
21
+
22
+ # The status of the appointment.
23
+ # @return [AppointmentStatusEnum]
24
+ attr_accessor :appointment_status
25
+
26
+ # The class ID that was used to retrieve the visits.
27
+ # @return [Integer]
28
+ attr_accessor :class_id
29
+
30
+ # The ID of the client associated with the visit.
31
+ # @return [String]
32
+ attr_accessor :client_id
33
+
34
+ # The time this class is scheduled to start.
35
+ # @return [DateTime]
36
+ attr_accessor :start_date_time
37
+
38
+ # The date and time the visit ends. The Public API returns UTC dates and
39
+ # times. For example, a class that occurs on June 25th, 2018 at 2:15PM (EST)
40
+ # appears as “2018-06-25T19:15:00Z” because EST is five hours behind UTC.
41
+ # Date time pairs always return in the format YYYY-MM-DDTHH:mm:ssZ.
42
+ # @return [DateTime]
43
+ attr_accessor :end_date_time
44
+
45
+ # The ID of the visit.
46
+ # @return [Integer]
47
+ attr_accessor :id
48
+
49
+ # When included in the request, only records modified on or after the
50
+ # specified `LastModifiedDate` are included in the response. The Public API
51
+ # returns UTC dates and times. For example, a class that occurs on June
52
+ # 25th, 2018 at 2:15PM (EST) appears as “2018-06-25T19:15:00Z” because EST
53
+ # is five hours behind UTC. Date time pairs always return in the format
54
+ # YYYY-MM-DDTHH:mm:ssZ.
55
+ # @return [DateTime]
56
+ attr_accessor :last_modified_date_time
57
+
58
+ # When `true`, indicates that the class has been `LateCancelled`.<br />
59
+ # When `false`, indicates that the class has not been `LateCancelled`.
60
+ # @return [TrueClass | FalseClass]
61
+ attr_accessor :late_cancelled
62
+
63
+ # The ID of the location where the visit took place or is to take place.
64
+ # @return [Integer]
65
+ attr_accessor :location_id
66
+
67
+ # When `true`, the client can make up this session and a session is not
68
+ # deducted from the pricing option that was used to sign the client into the
69
+ # enrollment. When the client has the make-up session, a session is
70
+ # automatically removed from a pricing option that matches the service
71
+ # category of the enrollment and is within the same date range of the missed
72
+ # session.<br />
73
+ # When `false`, the client cannot make up this session. See [Enrollments:
74
+ # Make-ups](https://support.mindbodyonline.com/s/article/203259433-Enrollmen
75
+ # ts-Make-ups?language=en_US) for more information.
76
+ # @return [TrueClass | FalseClass]
77
+ attr_accessor :make_up
78
+
79
+ # The name of the class.
80
+ # @return [String]
81
+ attr_accessor :name
82
+
83
+ # The ID of the client's pricing option applied to the class visit.
84
+ # @return [Integer]
85
+ attr_accessor :service_id
86
+
87
+ # The name of the pricing option applied to the class visit.
88
+ # @return [String]
89
+ attr_accessor :service_name
90
+
91
+ # The business' ID of the type of pricing option used to pay for the class
92
+ # visit.
93
+ # @return [Integer]
94
+ attr_accessor :product_id
95
+
96
+ # When `true`, indicates that the client has been signed in.<br />
97
+ # When `false`, indicates that the client has not been signed in.
98
+ # @return [TrueClass | FalseClass]
99
+ attr_accessor :signed_in
100
+
101
+ # The ID of the staff member who is teaching the class.
102
+ # @return [Integer]
103
+ attr_accessor :staff_id
104
+
105
+ # When `true`, indicates that the client signed up online.<br />
106
+ # When `false`, indicates that the client was signed up by a staff member.
107
+ # @return [TrueClass | FalseClass]
108
+ attr_accessor :web_signup
109
+
110
+ # The action taken.
111
+ # @return [Action1Enum]
112
+ attr_accessor :action
113
+
114
+ # When `true`, indicates that the client is paying for the visit using a
115
+ # pricing option from one of their associated cross-regional profiles.
116
+ # @return [TrueClass | FalseClass]
117
+ attr_accessor :cross_regional_booking_performed
118
+
119
+ # The ID of the business from which cross-regional payment is applied.
120
+ # @return [Integer]
121
+ attr_accessor :site_id
122
+
123
+ # When this value is not null, it indicates that the client is on the
124
+ # waiting list for the requested class. The only additional fields that are
125
+ # populated when this is not null are:
126
+ # * ClassId
127
+ # * ClientId
128
+ # You can call GET WaitlistEntries using `WaitlistEntryId` to obtain more
129
+ # data about this waiting list entry.
130
+ # @return [Integer]
131
+ attr_accessor :waitlist_entry_id
132
+
133
+ # A mapping from model property names to API property names.
134
+ def self.names
135
+ @_hash = {} if @_hash.nil?
136
+ @_hash['appointment_id'] = 'AppointmentId'
137
+ @_hash['appointment_gender_preference'] = 'AppointmentGenderPreference'
138
+ @_hash['appointment_status'] = 'AppointmentStatus'
139
+ @_hash['class_id'] = 'ClassId'
140
+ @_hash['client_id'] = 'ClientId'
141
+ @_hash['start_date_time'] = 'StartDateTime'
142
+ @_hash['end_date_time'] = 'EndDateTime'
143
+ @_hash['id'] = 'Id'
144
+ @_hash['last_modified_date_time'] = 'LastModifiedDateTime'
145
+ @_hash['late_cancelled'] = 'LateCancelled'
146
+ @_hash['location_id'] = 'LocationId'
147
+ @_hash['make_up'] = 'MakeUp'
148
+ @_hash['name'] = 'Name'
149
+ @_hash['service_id'] = 'ServiceId'
150
+ @_hash['service_name'] = 'ServiceName'
151
+ @_hash['product_id'] = 'ProductId'
152
+ @_hash['signed_in'] = 'SignedIn'
153
+ @_hash['staff_id'] = 'StaffId'
154
+ @_hash['web_signup'] = 'WebSignup'
155
+ @_hash['action'] = 'Action'
156
+ @_hash['cross_regional_booking_performed'] =
157
+ 'CrossRegionalBookingPerformed'
158
+ @_hash['site_id'] = 'SiteId'
159
+ @_hash['waitlist_entry_id'] = 'WaitlistEntryId'
160
+ @_hash
161
+ end
162
+
163
+ # An array for optional fields
164
+ def self.optionals
165
+ %w[
166
+ appointment_id
167
+ appointment_gender_preference
168
+ appointment_status
169
+ class_id
170
+ client_id
171
+ start_date_time
172
+ end_date_time
173
+ id
174
+ last_modified_date_time
175
+ late_cancelled
176
+ location_id
177
+ make_up
178
+ name
179
+ service_id
180
+ service_name
181
+ product_id
182
+ signed_in
183
+ staff_id
184
+ web_signup
185
+ action
186
+ cross_regional_booking_performed
187
+ site_id
188
+ waitlist_entry_id
189
+ ]
190
+ end
191
+
192
+ # An array for nullable fields
193
+ def self.nullables
194
+ []
195
+ end
196
+
197
+ def initialize(appointment_id = SKIP, appointment_gender_preference = SKIP,
198
+ appointment_status = SKIP, class_id = SKIP, client_id = SKIP,
199
+ start_date_time = SKIP, end_date_time = SKIP, id = SKIP,
200
+ last_modified_date_time = SKIP, late_cancelled = SKIP,
201
+ location_id = SKIP, make_up = SKIP, name = SKIP,
202
+ service_id = SKIP, service_name = SKIP, product_id = SKIP,
203
+ signed_in = SKIP, staff_id = SKIP, web_signup = SKIP,
204
+ action = SKIP, cross_regional_booking_performed = SKIP,
205
+ site_id = SKIP, waitlist_entry_id = SKIP)
206
+ @appointment_id = appointment_id unless appointment_id == SKIP
207
+ unless appointment_gender_preference == SKIP
208
+ @appointment_gender_preference =
209
+ appointment_gender_preference
210
+ end
211
+ @appointment_status = appointment_status unless appointment_status == SKIP
212
+ @class_id = class_id unless class_id == SKIP
213
+ @client_id = client_id unless client_id == SKIP
214
+ @start_date_time = start_date_time unless start_date_time == SKIP
215
+ @end_date_time = end_date_time unless end_date_time == SKIP
216
+ @id = id unless id == SKIP
217
+ @last_modified_date_time = last_modified_date_time unless last_modified_date_time == SKIP
218
+ @late_cancelled = late_cancelled unless late_cancelled == SKIP
219
+ @location_id = location_id unless location_id == SKIP
220
+ @make_up = make_up unless make_up == SKIP
221
+ @name = name unless name == SKIP
222
+ @service_id = service_id unless service_id == SKIP
223
+ @service_name = service_name unless service_name == SKIP
224
+ @product_id = product_id unless product_id == SKIP
225
+ @signed_in = signed_in unless signed_in == SKIP
226
+ @staff_id = staff_id unless staff_id == SKIP
227
+ @web_signup = web_signup unless web_signup == SKIP
228
+ @action = action unless action == SKIP
229
+ unless cross_regional_booking_performed == SKIP
230
+ @cross_regional_booking_performed =
231
+ cross_regional_booking_performed
232
+ end
233
+ @site_id = site_id unless site_id == SKIP
234
+ @waitlist_entry_id = waitlist_entry_id unless waitlist_entry_id == SKIP
235
+ end
236
+
237
+ # Creates an instance of the object from a hash.
238
+ def self.from_hash(hash)
239
+ return nil unless hash
240
+
241
+ # Extract variables from the hash.
242
+ appointment_id = hash.key?('AppointmentId') ? hash['AppointmentId'] : SKIP
243
+ appointment_gender_preference =
244
+ hash.key?('AppointmentGenderPreference') ? hash['AppointmentGenderPreference'] : SKIP
245
+ appointment_status =
246
+ hash.key?('AppointmentStatus') ? hash['AppointmentStatus'] : SKIP
247
+ class_id = hash.key?('ClassId') ? hash['ClassId'] : SKIP
248
+ client_id = hash.key?('ClientId') ? hash['ClientId'] : SKIP
249
+ start_date_time = if hash.key?('StartDateTime')
250
+ (DateTimeHelper.from_rfc3339(hash['StartDateTime']) if hash['StartDateTime'])
251
+ else
252
+ SKIP
253
+ end
254
+ end_date_time = if hash.key?('EndDateTime')
255
+ (DateTimeHelper.from_rfc3339(hash['EndDateTime']) if hash['EndDateTime'])
256
+ else
257
+ SKIP
258
+ end
259
+ id = hash.key?('Id') ? hash['Id'] : SKIP
260
+ last_modified_date_time = if hash.key?('LastModifiedDateTime')
261
+ (DateTimeHelper.from_rfc3339(hash['LastModifiedDateTime']) if hash['LastModifiedDateTime'])
262
+ else
263
+ SKIP
264
+ end
265
+ late_cancelled = hash.key?('LateCancelled') ? hash['LateCancelled'] : SKIP
266
+ location_id = hash.key?('LocationId') ? hash['LocationId'] : SKIP
267
+ make_up = hash.key?('MakeUp') ? hash['MakeUp'] : SKIP
268
+ name = hash.key?('Name') ? hash['Name'] : SKIP
269
+ service_id = hash.key?('ServiceId') ? hash['ServiceId'] : SKIP
270
+ service_name = hash.key?('ServiceName') ? hash['ServiceName'] : SKIP
271
+ product_id = hash.key?('ProductId') ? hash['ProductId'] : SKIP
272
+ signed_in = hash.key?('SignedIn') ? hash['SignedIn'] : SKIP
273
+ staff_id = hash.key?('StaffId') ? hash['StaffId'] : SKIP
274
+ web_signup = hash.key?('WebSignup') ? hash['WebSignup'] : SKIP
275
+ action = hash.key?('Action') ? hash['Action'] : SKIP
276
+ cross_regional_booking_performed =
277
+ hash.key?('CrossRegionalBookingPerformed') ? hash['CrossRegionalBookingPerformed'] : SKIP
278
+ site_id = hash.key?('SiteId') ? hash['SiteId'] : SKIP
279
+ waitlist_entry_id =
280
+ hash.key?('WaitlistEntryId') ? hash['WaitlistEntryId'] : SKIP
281
+
282
+ # Create object from extracted values.
283
+ AddClientToClassVisit.new(appointment_id,
284
+ appointment_gender_preference,
285
+ appointment_status,
286
+ class_id,
287
+ client_id,
288
+ start_date_time,
289
+ end_date_time,
290
+ id,
291
+ last_modified_date_time,
292
+ late_cancelled,
293
+ location_id,
294
+ make_up,
295
+ name,
296
+ service_id,
297
+ service_name,
298
+ product_id,
299
+ signed_in,
300
+ staff_id,
301
+ web_signup,
302
+ action,
303
+ cross_regional_booking_performed,
304
+ site_id,
305
+ waitlist_entry_id)
306
+ end
307
+
308
+ def to_custom_start_date_time
309
+ DateTimeHelper.to_rfc3339(start_date_time)
310
+ end
311
+
312
+ def to_custom_end_date_time
313
+ DateTimeHelper.to_rfc3339(end_date_time)
314
+ end
315
+
316
+ def to_custom_last_modified_date_time
317
+ DateTimeHelper.to_rfc3339(last_modified_date_time)
318
+ end
319
+
320
+ # Provides a human-readable string representation of the object.
321
+ def to_s
322
+ class_name = self.class.name.split('::').last
323
+ "<#{class_name} appointment_id: #{@appointment_id}, appointment_gender_preference:"\
324
+ " #{@appointment_gender_preference}, appointment_status: #{@appointment_status}, class_id:"\
325
+ " #{@class_id}, client_id: #{@client_id}, start_date_time: #{@start_date_time},"\
326
+ " end_date_time: #{@end_date_time}, id: #{@id}, last_modified_date_time:"\
327
+ " #{@last_modified_date_time}, late_cancelled: #{@late_cancelled}, location_id:"\
328
+ " #{@location_id}, make_up: #{@make_up}, name: #{@name}, service_id: #{@service_id},"\
329
+ " service_name: #{@service_name}, product_id: #{@product_id}, signed_in: #{@signed_in},"\
330
+ " staff_id: #{@staff_id}, web_signup: #{@web_signup}, action: #{@action},"\
331
+ " cross_regional_booking_performed: #{@cross_regional_booking_performed}, site_id:"\
332
+ " #{@site_id}, waitlist_entry_id: #{@waitlist_entry_id}>"
333
+ end
334
+
335
+ # Provides a debugging-friendly string with detailed object information.
336
+ def inspect
337
+ class_name = self.class.name.split('::').last
338
+ "<#{class_name} appointment_id: #{@appointment_id.inspect}, appointment_gender_preference:"\
339
+ " #{@appointment_gender_preference.inspect}, appointment_status:"\
340
+ " #{@appointment_status.inspect}, class_id: #{@class_id.inspect}, client_id:"\
341
+ " #{@client_id.inspect}, start_date_time: #{@start_date_time.inspect}, end_date_time:"\
342
+ " #{@end_date_time.inspect}, id: #{@id.inspect}, last_modified_date_time:"\
343
+ " #{@last_modified_date_time.inspect}, late_cancelled: #{@late_cancelled.inspect},"\
344
+ " location_id: #{@location_id.inspect}, make_up: #{@make_up.inspect}, name:"\
345
+ " #{@name.inspect}, service_id: #{@service_id.inspect}, service_name:"\
346
+ " #{@service_name.inspect}, product_id: #{@product_id.inspect}, signed_in:"\
347
+ " #{@signed_in.inspect}, staff_id: #{@staff_id.inspect}, web_signup: #{@web_signup.inspect},"\
348
+ " action: #{@action.inspect}, cross_regional_booking_performed:"\
349
+ " #{@cross_regional_booking_performed.inspect}, site_id: #{@site_id.inspect},"\
350
+ " waitlist_entry_id: #{@waitlist_entry_id.inspect}>"
351
+ end
352
+ end
353
+ end