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,175 @@
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
+ # UpdateSiteClientIndexResponse Model.
8
+ class UpdateSiteClientIndexResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # ID of the client index.
13
+ # @return [Integer]
14
+ attr_accessor :client_index_id
15
+
16
+ # The name of the client index.
17
+ # @return [String]
18
+ attr_accessor :client_index_name
19
+
20
+ # Indicates if Client Index is Active
21
+ # @return [TrueClass | FalseClass]
22
+ attr_accessor :active
23
+
24
+ # Indicates if Client Index is shown on a new client profile
25
+ # @return [TrueClass | FalseClass]
26
+ attr_accessor :show_on_new_client
27
+
28
+ # Indicates if Client Index is shown on Enrollement Roster
29
+ # @return [TrueClass | FalseClass]
30
+ attr_accessor :show_on_enrollment_roster
31
+
32
+ # Indicates if Client Index can be edited on Enrollement Roster
33
+ # @return [TrueClass | FalseClass]
34
+ attr_accessor :edit_on_enrollment_roster
35
+
36
+ # Indicates sort order
37
+ # @return [Integer]
38
+ attr_accessor :sort_order
39
+
40
+ # Indicates if Client Index is shown in consumer mode.
41
+ # @return [TrueClass | FalseClass]
42
+ attr_accessor :show_in_consumer_mode
43
+
44
+ # Indicates if the index is required when creating profiles in consumer
45
+ # mode.
46
+ # @return [TrueClass | FalseClass]
47
+ attr_accessor :required_consumer_mode
48
+
49
+ # Indicates if the index is required when creating profiles in business
50
+ # mode.
51
+ # @return [TrueClass | FalseClass]
52
+ attr_accessor :required_biz_mode
53
+
54
+ # A mapping from model property names to API property names.
55
+ def self.names
56
+ @_hash = {} if @_hash.nil?
57
+ @_hash['client_index_id'] = 'ClientIndexID'
58
+ @_hash['client_index_name'] = 'ClientIndexName'
59
+ @_hash['active'] = 'Active'
60
+ @_hash['show_on_new_client'] = 'ShowOnNewClient'
61
+ @_hash['show_on_enrollment_roster'] = 'ShowOnEnrollmentRoster'
62
+ @_hash['edit_on_enrollment_roster'] = 'EditOnEnrollmentRoster'
63
+ @_hash['sort_order'] = 'SortOrder'
64
+ @_hash['show_in_consumer_mode'] = 'ShowInConsumerMode'
65
+ @_hash['required_consumer_mode'] = 'RequiredConsumerMode'
66
+ @_hash['required_biz_mode'] = 'RequiredBizMode'
67
+ @_hash
68
+ end
69
+
70
+ # An array for optional fields
71
+ def self.optionals
72
+ %w[
73
+ client_index_id
74
+ client_index_name
75
+ active
76
+ show_on_new_client
77
+ show_on_enrollment_roster
78
+ edit_on_enrollment_roster
79
+ sort_order
80
+ show_in_consumer_mode
81
+ required_consumer_mode
82
+ required_biz_mode
83
+ ]
84
+ end
85
+
86
+ # An array for nullable fields
87
+ def self.nullables
88
+ []
89
+ end
90
+
91
+ def initialize(client_index_id = SKIP, client_index_name = SKIP,
92
+ active = SKIP, show_on_new_client = SKIP,
93
+ show_on_enrollment_roster = SKIP,
94
+ edit_on_enrollment_roster = SKIP, sort_order = SKIP,
95
+ show_in_consumer_mode = SKIP, required_consumer_mode = SKIP,
96
+ required_biz_mode = SKIP)
97
+ @client_index_id = client_index_id unless client_index_id == SKIP
98
+ @client_index_name = client_index_name unless client_index_name == SKIP
99
+ @active = active unless active == SKIP
100
+ @show_on_new_client = show_on_new_client unless show_on_new_client == SKIP
101
+ unless show_on_enrollment_roster == SKIP
102
+ @show_on_enrollment_roster =
103
+ show_on_enrollment_roster
104
+ end
105
+ unless edit_on_enrollment_roster == SKIP
106
+ @edit_on_enrollment_roster =
107
+ edit_on_enrollment_roster
108
+ end
109
+ @sort_order = sort_order unless sort_order == SKIP
110
+ @show_in_consumer_mode = show_in_consumer_mode unless show_in_consumer_mode == SKIP
111
+ @required_consumer_mode = required_consumer_mode unless required_consumer_mode == SKIP
112
+ @required_biz_mode = required_biz_mode unless required_biz_mode == SKIP
113
+ end
114
+
115
+ # Creates an instance of the object from a hash.
116
+ def self.from_hash(hash)
117
+ return nil unless hash
118
+
119
+ # Extract variables from the hash.
120
+ client_index_id =
121
+ hash.key?('ClientIndexID') ? hash['ClientIndexID'] : SKIP
122
+ client_index_name =
123
+ hash.key?('ClientIndexName') ? hash['ClientIndexName'] : SKIP
124
+ active = hash.key?('Active') ? hash['Active'] : SKIP
125
+ show_on_new_client =
126
+ hash.key?('ShowOnNewClient') ? hash['ShowOnNewClient'] : SKIP
127
+ show_on_enrollment_roster =
128
+ hash.key?('ShowOnEnrollmentRoster') ? hash['ShowOnEnrollmentRoster'] : SKIP
129
+ edit_on_enrollment_roster =
130
+ hash.key?('EditOnEnrollmentRoster') ? hash['EditOnEnrollmentRoster'] : SKIP
131
+ sort_order = hash.key?('SortOrder') ? hash['SortOrder'] : SKIP
132
+ show_in_consumer_mode =
133
+ hash.key?('ShowInConsumerMode') ? hash['ShowInConsumerMode'] : SKIP
134
+ required_consumer_mode =
135
+ hash.key?('RequiredConsumerMode') ? hash['RequiredConsumerMode'] : SKIP
136
+ required_biz_mode =
137
+ hash.key?('RequiredBizMode') ? hash['RequiredBizMode'] : SKIP
138
+
139
+ # Create object from extracted values.
140
+ UpdateSiteClientIndexResponse.new(client_index_id,
141
+ client_index_name,
142
+ active,
143
+ show_on_new_client,
144
+ show_on_enrollment_roster,
145
+ edit_on_enrollment_roster,
146
+ sort_order,
147
+ show_in_consumer_mode,
148
+ required_consumer_mode,
149
+ required_biz_mode)
150
+ end
151
+
152
+ # Provides a human-readable string representation of the object.
153
+ def to_s
154
+ class_name = self.class.name.split('::').last
155
+ "<#{class_name} client_index_id: #{@client_index_id}, client_index_name:"\
156
+ " #{@client_index_name}, active: #{@active}, show_on_new_client: #{@show_on_new_client},"\
157
+ " show_on_enrollment_roster: #{@show_on_enrollment_roster}, edit_on_enrollment_roster:"\
158
+ " #{@edit_on_enrollment_roster}, sort_order: #{@sort_order}, show_in_consumer_mode:"\
159
+ " #{@show_in_consumer_mode}, required_consumer_mode: #{@required_consumer_mode},"\
160
+ " required_biz_mode: #{@required_biz_mode}>"
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} client_index_id: #{@client_index_id.inspect}, client_index_name:"\
167
+ " #{@client_index_name.inspect}, active: #{@active.inspect}, show_on_new_client:"\
168
+ " #{@show_on_new_client.inspect}, show_on_enrollment_roster:"\
169
+ " #{@show_on_enrollment_roster.inspect}, edit_on_enrollment_roster:"\
170
+ " #{@edit_on_enrollment_roster.inspect}, sort_order: #{@sort_order.inspect},"\
171
+ " show_in_consumer_mode: #{@show_in_consumer_mode.inspect}, required_consumer_mode:"\
172
+ " #{@required_consumer_mode.inspect}, required_biz_mode: #{@required_biz_mode.inspect}>"
173
+ end
174
+ end
175
+ end
@@ -0,0 +1,71 @@
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
+ # UpdateStaffPermissionsRequest Model.
8
+ class UpdateStaffPermissionsRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The ID of the staff member whose permission you want to change. Staff
13
+ # member must have a login.
14
+ # @return [Integer]
15
+ attr_accessor :staff_id
16
+
17
+ # The name of the permission group.
18
+ # @return [String]
19
+ attr_accessor :permission_group_name
20
+
21
+ # A mapping from model property names to API property names.
22
+ def self.names
23
+ @_hash = {} if @_hash.nil?
24
+ @_hash['staff_id'] = 'StaffId'
25
+ @_hash['permission_group_name'] = 'PermissionGroupName'
26
+ @_hash
27
+ end
28
+
29
+ # An array for optional fields
30
+ def self.optionals
31
+ []
32
+ end
33
+
34
+ # An array for nullable fields
35
+ def self.nullables
36
+ []
37
+ end
38
+
39
+ def initialize(staff_id = nil, permission_group_name = nil)
40
+ @staff_id = staff_id
41
+ @permission_group_name = permission_group_name
42
+ end
43
+
44
+ # Creates an instance of the object from a hash.
45
+ def self.from_hash(hash)
46
+ return nil unless hash
47
+
48
+ # Extract variables from the hash.
49
+ staff_id = hash.key?('StaffId') ? hash['StaffId'] : nil
50
+ permission_group_name =
51
+ hash.key?('PermissionGroupName') ? hash['PermissionGroupName'] : nil
52
+
53
+ # Create object from extracted values.
54
+ UpdateStaffPermissionsRequest.new(staff_id,
55
+ permission_group_name)
56
+ end
57
+
58
+ # Provides a human-readable string representation of the object.
59
+ def to_s
60
+ class_name = self.class.name.split('::').last
61
+ "<#{class_name} staff_id: #{@staff_id}, permission_group_name: #{@permission_group_name}>"
62
+ end
63
+
64
+ # Provides a debugging-friendly string with detailed object information.
65
+ def inspect
66
+ class_name = self.class.name.split('::').last
67
+ "<#{class_name} staff_id: #{@staff_id.inspect}, permission_group_name:"\
68
+ " #{@permission_group_name.inspect}>"
69
+ end
70
+ end
71
+ 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
+ # UpdateStaffPermissionsResponse Model.
8
+ class UpdateStaffPermissionsResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [StaffPermissionGroup]
14
+ attr_accessor :user_group
15
+
16
+ # A mapping from model property names to API property names.
17
+ def self.names
18
+ @_hash = {} if @_hash.nil?
19
+ @_hash['user_group'] = 'UserGroup'
20
+ @_hash
21
+ end
22
+
23
+ # An array for optional fields
24
+ def self.optionals
25
+ %w[
26
+ user_group
27
+ ]
28
+ end
29
+
30
+ # An array for nullable fields
31
+ def self.nullables
32
+ []
33
+ end
34
+
35
+ def initialize(user_group = SKIP)
36
+ @user_group = user_group unless user_group == 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
+ user_group = StaffPermissionGroup.from_hash(hash['UserGroup']) if hash['UserGroup']
45
+
46
+ # Create object from extracted values.
47
+ UpdateStaffPermissionsResponse.new(user_group)
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} user_group: #{@user_group}>"
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} user_group: #{@user_group.inspect}>"
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,378 @@
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
+ # UpdateStaffRequest Model.
9
+ class UpdateStaffRequest < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # The unique ID of the staff member.
14
+ # @return [Integer]
15
+ attr_accessor :id
16
+
17
+ # The staff member first name. You must specify a first name when you add a
18
+ # staff member.
19
+ # @return [String]
20
+ attr_accessor :first_name
21
+
22
+ # The staff member last name. You must specify a last name when you add a
23
+ # staff member.
24
+ # @return [String]
25
+ attr_accessor :last_name
26
+
27
+ # The staff member’s email address.
28
+ # @return [String]
29
+ attr_accessor :email
30
+
31
+ # When `true`, indicates that the staff member is male.
32
+ # When `false`, indicates that the staff member is female.
33
+ # @return [TrueClass | FalseClass]
34
+ attr_accessor :is_male
35
+
36
+ # The staff member’s home phone number.
37
+ # @return [String]
38
+ attr_accessor :home_phone
39
+
40
+ # The staff member’s work phone number.
41
+ # @return [String]
42
+ attr_accessor :work_phone
43
+
44
+ # The staff member’s mobile phone number.
45
+ # @return [String]
46
+ attr_accessor :mobile_phone
47
+
48
+ # The staff member’s biography. This string contains HTML.
49
+ # @return [String]
50
+ attr_accessor :bio
51
+
52
+ # The first line of the staff member street address
53
+ # @return [String]
54
+ attr_accessor :address
55
+
56
+ # The second line of the staff member street address, if needed.
57
+ # @return [String]
58
+ attr_accessor :address2
59
+
60
+ # The staff member’s city.
61
+ # @return [String]
62
+ attr_accessor :city
63
+
64
+ # The staff member’s state.
65
+ # @return [String]
66
+ attr_accessor :state
67
+
68
+ # The staff member’s country.
69
+ # @return [String]
70
+ attr_accessor :country
71
+
72
+ # The staff member’s postal code.
73
+ # @return [String]
74
+ attr_accessor :postal_code
75
+
76
+ # When `true`, indicates that the staff member can be a class assistant.
77
+ # @return [TrueClass | FalseClass]
78
+ attr_accessor :class_assistant
79
+
80
+ # When `true`, indicates that the staff member can be a class assistant.
81
+ # @return [TrueClass | FalseClass]
82
+ attr_accessor :class_assistant2
83
+
84
+ # When `true`, indicates that the staff member is an independent contractor.
85
+ # When `false`, indicates that the staff member is not an independent
86
+ # contractor.
87
+ # @return [TrueClass | FalseClass]
88
+ attr_accessor :independent_contractor
89
+
90
+ # When `true`, indicates that the staff member offers appointments.<br />
91
+ # When `false`, indicates that the staff member does not offer appointments.
92
+ # @return [TrueClass | FalseClass]
93
+ attr_accessor :appointment_instructor
94
+
95
+ # When `true`, indicates that the staff member can be scheduled for
96
+ # overlapping services.<br />
97
+ # When `false`, indicates that the staff member does not offer appointments.
98
+ # @return [TrueClass | FalseClass]
99
+ attr_accessor :always_allow_double_booking
100
+
101
+ # When `true`, indicates that the staff member can teach classes.
102
+ # When `false`, indicates that the staff member cannot teach classes.
103
+ # @return [TrueClass | FalseClass]
104
+ attr_accessor :class_teacher
105
+
106
+ # The start date of employment
107
+ # @return [DateTime]
108
+ attr_accessor :employment_start
109
+
110
+ # The end date of employment
111
+ # @return [DateTime]
112
+ attr_accessor :employment_end
113
+
114
+ # If configured by the business owner, this field determines a staff
115
+ # member’s weight when sorting. Use this field to sort staff members on your
116
+ # interface.
117
+ # @return [Integer]
118
+ attr_accessor :sort_order
119
+
120
+ # A list of providerIDs for the staff. In the US it is one per staff and is
121
+ # numeric, otherwise it can be a list and is alpha-numeric
122
+ # for more information see <a href="
123
+ # https://support.mindbodyonline.com/s/article/204075743-Provider-IDs?langua
124
+ # ge=en_US" target="blank">Provider IDs</a>
125
+ # @return [Array[String]]
126
+ attr_accessor :provider_i_ds
127
+
128
+ # Indicates if the staff member is active. Staff member cannot be
129
+ # deactivated if they have future classes or appointments.
130
+ # @return [TrueClass | FalseClass]
131
+ attr_accessor :active
132
+
133
+ # Staff Member Private Notes
134
+ # @return [String]
135
+ attr_accessor :notes
136
+
137
+ # The custom staff ID assigned to the staff member.
138
+ # @return [String]
139
+ attr_accessor :emp_id
140
+
141
+ # A mapping from model property names to API property names.
142
+ def self.names
143
+ @_hash = {} if @_hash.nil?
144
+ @_hash['id'] = 'ID'
145
+ @_hash['first_name'] = 'FirstName'
146
+ @_hash['last_name'] = 'LastName'
147
+ @_hash['email'] = 'Email'
148
+ @_hash['is_male'] = 'IsMale'
149
+ @_hash['home_phone'] = 'HomePhone'
150
+ @_hash['work_phone'] = 'WorkPhone'
151
+ @_hash['mobile_phone'] = 'MobilePhone'
152
+ @_hash['bio'] = 'Bio'
153
+ @_hash['address'] = 'Address'
154
+ @_hash['address2'] = 'Address2'
155
+ @_hash['city'] = 'City'
156
+ @_hash['state'] = 'State'
157
+ @_hash['country'] = 'Country'
158
+ @_hash['postal_code'] = 'PostalCode'
159
+ @_hash['class_assistant'] = 'ClassAssistant'
160
+ @_hash['class_assistant2'] = 'ClassAssistant2'
161
+ @_hash['independent_contractor'] = 'IndependentContractor'
162
+ @_hash['appointment_instructor'] = 'AppointmentInstructor'
163
+ @_hash['always_allow_double_booking'] = 'AlwaysAllowDoubleBooking'
164
+ @_hash['class_teacher'] = 'ClassTeacher'
165
+ @_hash['employment_start'] = 'EmploymentStart'
166
+ @_hash['employment_end'] = 'EmploymentEnd'
167
+ @_hash['sort_order'] = 'SortOrder'
168
+ @_hash['provider_i_ds'] = 'ProviderIDs'
169
+ @_hash['active'] = 'Active'
170
+ @_hash['notes'] = 'Notes'
171
+ @_hash['emp_id'] = 'EmpID'
172
+ @_hash
173
+ end
174
+
175
+ # An array for optional fields
176
+ def self.optionals
177
+ %w[
178
+ first_name
179
+ last_name
180
+ email
181
+ is_male
182
+ home_phone
183
+ work_phone
184
+ mobile_phone
185
+ bio
186
+ address
187
+ address2
188
+ city
189
+ state
190
+ country
191
+ postal_code
192
+ class_assistant
193
+ class_assistant2
194
+ independent_contractor
195
+ appointment_instructor
196
+ always_allow_double_booking
197
+ class_teacher
198
+ employment_start
199
+ employment_end
200
+ sort_order
201
+ provider_i_ds
202
+ active
203
+ notes
204
+ emp_id
205
+ ]
206
+ end
207
+
208
+ # An array for nullable fields
209
+ def self.nullables
210
+ []
211
+ end
212
+
213
+ def initialize(id = nil, first_name = SKIP, last_name = SKIP, email = SKIP,
214
+ is_male = SKIP, home_phone = SKIP, work_phone = SKIP,
215
+ mobile_phone = SKIP, bio = SKIP, address = SKIP,
216
+ address2 = SKIP, city = SKIP, state = SKIP, country = SKIP,
217
+ postal_code = SKIP, class_assistant = SKIP,
218
+ class_assistant2 = SKIP, independent_contractor = SKIP,
219
+ appointment_instructor = SKIP,
220
+ always_allow_double_booking = SKIP, class_teacher = SKIP,
221
+ employment_start = SKIP, employment_end = SKIP,
222
+ sort_order = SKIP, provider_i_ds = SKIP, active = SKIP,
223
+ notes = SKIP, emp_id = SKIP)
224
+ @id = id
225
+ @first_name = first_name unless first_name == SKIP
226
+ @last_name = last_name unless last_name == SKIP
227
+ @email = email unless email == SKIP
228
+ @is_male = is_male unless is_male == SKIP
229
+ @home_phone = home_phone unless home_phone == SKIP
230
+ @work_phone = work_phone unless work_phone == SKIP
231
+ @mobile_phone = mobile_phone unless mobile_phone == SKIP
232
+ @bio = bio unless bio == SKIP
233
+ @address = address unless address == SKIP
234
+ @address2 = address2 unless address2 == SKIP
235
+ @city = city unless city == SKIP
236
+ @state = state unless state == SKIP
237
+ @country = country unless country == SKIP
238
+ @postal_code = postal_code unless postal_code == SKIP
239
+ @class_assistant = class_assistant unless class_assistant == SKIP
240
+ @class_assistant2 = class_assistant2 unless class_assistant2 == SKIP
241
+ @independent_contractor = independent_contractor unless independent_contractor == SKIP
242
+ @appointment_instructor = appointment_instructor unless appointment_instructor == SKIP
243
+ unless always_allow_double_booking == SKIP
244
+ @always_allow_double_booking =
245
+ always_allow_double_booking
246
+ end
247
+ @class_teacher = class_teacher unless class_teacher == SKIP
248
+ @employment_start = employment_start unless employment_start == SKIP
249
+ @employment_end = employment_end unless employment_end == SKIP
250
+ @sort_order = sort_order unless sort_order == SKIP
251
+ @provider_i_ds = provider_i_ds unless provider_i_ds == SKIP
252
+ @active = active unless active == SKIP
253
+ @notes = notes unless notes == SKIP
254
+ @emp_id = emp_id unless emp_id == SKIP
255
+ end
256
+
257
+ # Creates an instance of the object from a hash.
258
+ def self.from_hash(hash)
259
+ return nil unless hash
260
+
261
+ # Extract variables from the hash.
262
+ id = hash.key?('ID') ? hash['ID'] : nil
263
+ first_name = hash.key?('FirstName') ? hash['FirstName'] : SKIP
264
+ last_name = hash.key?('LastName') ? hash['LastName'] : SKIP
265
+ email = hash.key?('Email') ? hash['Email'] : SKIP
266
+ is_male = hash.key?('IsMale') ? hash['IsMale'] : SKIP
267
+ home_phone = hash.key?('HomePhone') ? hash['HomePhone'] : SKIP
268
+ work_phone = hash.key?('WorkPhone') ? hash['WorkPhone'] : SKIP
269
+ mobile_phone = hash.key?('MobilePhone') ? hash['MobilePhone'] : SKIP
270
+ bio = hash.key?('Bio') ? hash['Bio'] : SKIP
271
+ address = hash.key?('Address') ? hash['Address'] : SKIP
272
+ address2 = hash.key?('Address2') ? hash['Address2'] : SKIP
273
+ city = hash.key?('City') ? hash['City'] : SKIP
274
+ state = hash.key?('State') ? hash['State'] : SKIP
275
+ country = hash.key?('Country') ? hash['Country'] : SKIP
276
+ postal_code = hash.key?('PostalCode') ? hash['PostalCode'] : SKIP
277
+ class_assistant =
278
+ hash.key?('ClassAssistant') ? hash['ClassAssistant'] : SKIP
279
+ class_assistant2 =
280
+ hash.key?('ClassAssistant2') ? hash['ClassAssistant2'] : SKIP
281
+ independent_contractor =
282
+ hash.key?('IndependentContractor') ? hash['IndependentContractor'] : SKIP
283
+ appointment_instructor =
284
+ hash.key?('AppointmentInstructor') ? hash['AppointmentInstructor'] : SKIP
285
+ always_allow_double_booking =
286
+ hash.key?('AlwaysAllowDoubleBooking') ? hash['AlwaysAllowDoubleBooking'] : SKIP
287
+ class_teacher = hash.key?('ClassTeacher') ? hash['ClassTeacher'] : SKIP
288
+ employment_start = if hash.key?('EmploymentStart')
289
+ (DateTimeHelper.from_rfc3339(hash['EmploymentStart']) if hash['EmploymentStart'])
290
+ else
291
+ SKIP
292
+ end
293
+ employment_end = if hash.key?('EmploymentEnd')
294
+ (DateTimeHelper.from_rfc3339(hash['EmploymentEnd']) if hash['EmploymentEnd'])
295
+ else
296
+ SKIP
297
+ end
298
+ sort_order = hash.key?('SortOrder') ? hash['SortOrder'] : SKIP
299
+ provider_i_ds = hash.key?('ProviderIDs') ? hash['ProviderIDs'] : SKIP
300
+ active = hash.key?('Active') ? hash['Active'] : SKIP
301
+ notes = hash.key?('Notes') ? hash['Notes'] : SKIP
302
+ emp_id = hash.key?('EmpID') ? hash['EmpID'] : SKIP
303
+
304
+ # Create object from extracted values.
305
+ UpdateStaffRequest.new(id,
306
+ first_name,
307
+ last_name,
308
+ email,
309
+ is_male,
310
+ home_phone,
311
+ work_phone,
312
+ mobile_phone,
313
+ bio,
314
+ address,
315
+ address2,
316
+ city,
317
+ state,
318
+ country,
319
+ postal_code,
320
+ class_assistant,
321
+ class_assistant2,
322
+ independent_contractor,
323
+ appointment_instructor,
324
+ always_allow_double_booking,
325
+ class_teacher,
326
+ employment_start,
327
+ employment_end,
328
+ sort_order,
329
+ provider_i_ds,
330
+ active,
331
+ notes,
332
+ emp_id)
333
+ end
334
+
335
+ def to_custom_employment_start
336
+ DateTimeHelper.to_rfc3339(employment_start)
337
+ end
338
+
339
+ def to_custom_employment_end
340
+ DateTimeHelper.to_rfc3339(employment_end)
341
+ end
342
+
343
+ # Provides a human-readable string representation of the object.
344
+ def to_s
345
+ class_name = self.class.name.split('::').last
346
+ "<#{class_name} id: #{@id}, first_name: #{@first_name}, last_name: #{@last_name}, email:"\
347
+ " #{@email}, is_male: #{@is_male}, home_phone: #{@home_phone}, work_phone: #{@work_phone},"\
348
+ " mobile_phone: #{@mobile_phone}, bio: #{@bio}, address: #{@address}, address2:"\
349
+ " #{@address2}, city: #{@city}, state: #{@state}, country: #{@country}, postal_code:"\
350
+ " #{@postal_code}, class_assistant: #{@class_assistant}, class_assistant2:"\
351
+ " #{@class_assistant2}, independent_contractor: #{@independent_contractor},"\
352
+ " appointment_instructor: #{@appointment_instructor}, always_allow_double_booking:"\
353
+ " #{@always_allow_double_booking}, class_teacher: #{@class_teacher}, employment_start:"\
354
+ " #{@employment_start}, employment_end: #{@employment_end}, sort_order: #{@sort_order},"\
355
+ " provider_i_ds: #{@provider_i_ds}, active: #{@active}, notes: #{@notes}, emp_id:"\
356
+ " #{@emp_id}>"
357
+ end
358
+
359
+ # Provides a debugging-friendly string with detailed object information.
360
+ def inspect
361
+ class_name = self.class.name.split('::').last
362
+ "<#{class_name} id: #{@id.inspect}, first_name: #{@first_name.inspect}, last_name:"\
363
+ " #{@last_name.inspect}, email: #{@email.inspect}, is_male: #{@is_male.inspect}, home_phone:"\
364
+ " #{@home_phone.inspect}, work_phone: #{@work_phone.inspect}, mobile_phone:"\
365
+ " #{@mobile_phone.inspect}, bio: #{@bio.inspect}, address: #{@address.inspect}, address2:"\
366
+ " #{@address2.inspect}, city: #{@city.inspect}, state: #{@state.inspect}, country:"\
367
+ " #{@country.inspect}, postal_code: #{@postal_code.inspect}, class_assistant:"\
368
+ " #{@class_assistant.inspect}, class_assistant2: #{@class_assistant2.inspect},"\
369
+ " independent_contractor: #{@independent_contractor.inspect}, appointment_instructor:"\
370
+ " #{@appointment_instructor.inspect}, always_allow_double_booking:"\
371
+ " #{@always_allow_double_booking.inspect}, class_teacher: #{@class_teacher.inspect},"\
372
+ " employment_start: #{@employment_start.inspect}, employment_end:"\
373
+ " #{@employment_end.inspect}, sort_order: #{@sort_order.inspect}, provider_i_ds:"\
374
+ " #{@provider_i_ds.inspect}, active: #{@active.inspect}, notes: #{@notes.inspect}, emp_id:"\
375
+ " #{@emp_id.inspect}>"
376
+ end
377
+ end
378
+ end