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,588 @@
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
+ # Staff1 Model.
9
+ class Staff1 < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # The ID assigned to the staff member.
14
+ # @return [Integer]
15
+ attr_accessor :id
16
+
17
+ # The staff member’s first name.
18
+ # @return [String]
19
+ attr_accessor :first_name
20
+
21
+ # The staff member’s last name.
22
+ # @return [String]
23
+ attr_accessor :last_name
24
+
25
+ # The display name of the staff member.
26
+ # @return [String]
27
+ attr_accessor :display_name
28
+
29
+ # The staff member’s email address.
30
+ # @return [String]
31
+ attr_accessor :email
32
+
33
+ # The staff member’s biography. This string contains HTML.
34
+ # @return [String]
35
+ attr_accessor :bio
36
+
37
+ # The address of the staff member who is teaching the class.
38
+ # @return [String]
39
+ attr_accessor :address
40
+
41
+ # The address2 of the staff member who is teaching the class.
42
+ # @return [String]
43
+ attr_accessor :address2
44
+
45
+ # The staff member’s city.
46
+ # @return [String]
47
+ attr_accessor :city
48
+
49
+ # The staff member’s state.
50
+ # @return [String]
51
+ attr_accessor :state
52
+
53
+ # The staff member’s postal code.
54
+ # @return [String]
55
+ attr_accessor :postal_code
56
+
57
+ # The staff member’s Foreign Zip code.
58
+ # @return [String]
59
+ attr_accessor :foreign_zip
60
+
61
+ # The staff member’s country.
62
+ # @return [String]
63
+ attr_accessor :country
64
+
65
+ # The staff member’s work phone number.
66
+ # @return [String]
67
+ attr_accessor :work_phone
68
+
69
+ # The staff member’s home phone number.
70
+ # @return [String]
71
+ attr_accessor :home_phone
72
+
73
+ # The staff member’s mobile phone number.
74
+ # @return [String]
75
+ attr_accessor :cell_phone
76
+
77
+ # When `true`, indicates that the staff member is Active.
78
+ # When `false`, indicates that the staff member is not Active.
79
+ # @return [TrueClass | FalseClass]
80
+ attr_accessor :active
81
+
82
+ # When `true`, indicates that the staff member is a system .
83
+ # When `false`, indicates that the staff member is not system.
84
+ # @return [TrueClass | FalseClass]
85
+ attr_accessor :is_system
86
+
87
+ # The Staff's Smode Id
88
+ # @return [Integer]
89
+ attr_accessor :smode_id
90
+
91
+ # When `true`, indicates that the staff member offers appointments.
92
+ # When `false`, indicates that the staff member does not offer appointments.
93
+ # @return [TrueClass | FalseClass]
94
+ attr_accessor :appointment_trn
95
+
96
+ # When `true`, indicates that the staff member can be scheduled for
97
+ # overlapping services.
98
+ # When `false`, indicates that the staff can only be scheduled for one
99
+ # service at a time in any given time-frame.
100
+ # @return [TrueClass | FalseClass]
101
+ attr_accessor :always_allow_double_booking
102
+
103
+ # When `true`, indicates that the staff member is an independent contractor.
104
+ # When `false`, indicates that the staff member is not an independent
105
+ # contractor.
106
+ # @return [TrueClass | FalseClass]
107
+ attr_accessor :independent_contractor
108
+
109
+ # The URL of the staff member’s image, if one has been uploaded.
110
+ # @return [String]
111
+ attr_accessor :image_url
112
+
113
+ # When `true`, indicates that the staff member is male.
114
+ # When `false`, indicates that the staff member is female.
115
+ # @return [TrueClass | FalseClass]
116
+ attr_accessor :is_male
117
+
118
+ # When `true`, indicates that the staff member offers Reservation.
119
+ # When `false`, indicates that the staff member does not offer Reservation.
120
+ # @return [TrueClass | FalseClass]
121
+ attr_accessor :reservation_trn
122
+
123
+ # If configured by the business owner, this field determines a staff
124
+ # member’s weight when sorting. Use this field to sort staff members on your
125
+ # interface.
126
+ # @return [Integer]
127
+ attr_accessor :sort_order
128
+
129
+ # When `true`, indicates that the staff member has Multi Location
130
+ # Permission.
131
+ # When `false`, indicates that the staff member does not has Multi Location
132
+ # Permission.
133
+ # @return [TrueClass | FalseClass]
134
+ attr_accessor :multi_location_permission
135
+
136
+ # The staff member’s name.
137
+ # @return [String]
138
+ attr_accessor :name
139
+
140
+ # A list of ProviderIds for the staff.
141
+ # @return [Array[String]]
142
+ attr_accessor :provider_i_ds
143
+
144
+ # contains the information about the staff settings.
145
+ # @return [StaffSetting]
146
+ attr_accessor :staff_settings
147
+
148
+ # When `true`, indicates that the staff is sales Rep 1 else `false`.
149
+ # @return [TrueClass | FalseClass]
150
+ attr_accessor :rep
151
+
152
+ # When `true`, indicates that the staff is sales Rep 2 else `false`.
153
+ # @return [TrueClass | FalseClass]
154
+ attr_accessor :rep2
155
+
156
+ # When `true`, indicates that the staff is sales Rep 3 else `false`.
157
+ # @return [TrueClass | FalseClass]
158
+ attr_accessor :rep3
159
+
160
+ # When `true`, indicates that the staff is sales Rep 4 else `false`.
161
+ # @return [TrueClass | FalseClass]
162
+ attr_accessor :rep4
163
+
164
+ # When `true`, indicates that the staff is sales Rep 5 else `false`.
165
+ # @return [TrueClass | FalseClass]
166
+ attr_accessor :rep5
167
+
168
+ # When `true`, indicates that the staff is sales Rep 6 else `false`.
169
+ # @return [TrueClass | FalseClass]
170
+ attr_accessor :rep6
171
+
172
+ # When `true`, indicates that the staff is assistant.
173
+ # When `false`, indicates that the staff is not assistant.
174
+ # @return [TrueClass | FalseClass]
175
+ attr_accessor :assistant
176
+
177
+ # When `true`, indicates that the staff is assistant2.
178
+ # When `false`, indicates that the staff is not assistant2.
179
+ # @return [TrueClass | FalseClass]
180
+ attr_accessor :assistant2
181
+
182
+ # The start date of employment.
183
+ # @return [DateTime]
184
+ attr_accessor :employment_start
185
+
186
+ # The end date of employment.
187
+ # @return [DateTime]
188
+ attr_accessor :employment_end
189
+
190
+ # The custom staff ID assigned to the staff member.
191
+ # @return [String]
192
+ attr_accessor :emp_id
193
+
194
+ # A list of appointments for the staff.
195
+ # @return [Array[Appointment1]]
196
+ attr_accessor :appointments
197
+
198
+ # A list of unavailabilities for the staff.
199
+ # @return [Array[Unavailability1]]
200
+ attr_accessor :unavailabilities
201
+
202
+ # A list of availabilities for the staff.
203
+ # @return [Array[Availability1]]
204
+ attr_accessor :availabilities
205
+
206
+ # A list of LoginLocations for the staff
207
+ # @return [Array[Location1]]
208
+ attr_accessor :login_locations
209
+
210
+ # A mapping from model property names to API property names.
211
+ def self.names
212
+ @_hash = {} if @_hash.nil?
213
+ @_hash['id'] = 'Id'
214
+ @_hash['first_name'] = 'FirstName'
215
+ @_hash['last_name'] = 'LastName'
216
+ @_hash['display_name'] = 'DisplayName'
217
+ @_hash['email'] = 'Email'
218
+ @_hash['bio'] = 'Bio'
219
+ @_hash['address'] = 'Address'
220
+ @_hash['address2'] = 'Address2'
221
+ @_hash['city'] = 'City'
222
+ @_hash['state'] = 'State'
223
+ @_hash['postal_code'] = 'PostalCode'
224
+ @_hash['foreign_zip'] = 'ForeignZip'
225
+ @_hash['country'] = 'Country'
226
+ @_hash['work_phone'] = 'WorkPhone'
227
+ @_hash['home_phone'] = 'HomePhone'
228
+ @_hash['cell_phone'] = 'CellPhone'
229
+ @_hash['active'] = 'Active'
230
+ @_hash['is_system'] = 'IsSystem'
231
+ @_hash['smode_id'] = 'SmodeId'
232
+ @_hash['appointment_trn'] = 'AppointmentTrn'
233
+ @_hash['always_allow_double_booking'] = 'AlwaysAllowDoubleBooking'
234
+ @_hash['independent_contractor'] = 'IndependentContractor'
235
+ @_hash['image_url'] = 'ImageUrl'
236
+ @_hash['is_male'] = 'IsMale'
237
+ @_hash['reservation_trn'] = 'ReservationTrn'
238
+ @_hash['sort_order'] = 'SortOrder'
239
+ @_hash['multi_location_permission'] = 'MultiLocationPermission'
240
+ @_hash['name'] = 'Name'
241
+ @_hash['provider_i_ds'] = 'ProviderIDs'
242
+ @_hash['staff_settings'] = 'StaffSettings'
243
+ @_hash['rep'] = 'Rep'
244
+ @_hash['rep2'] = 'Rep2'
245
+ @_hash['rep3'] = 'Rep3'
246
+ @_hash['rep4'] = 'Rep4'
247
+ @_hash['rep5'] = 'Rep5'
248
+ @_hash['rep6'] = 'Rep6'
249
+ @_hash['assistant'] = 'Assistant'
250
+ @_hash['assistant2'] = 'Assistant2'
251
+ @_hash['employment_start'] = 'EmploymentStart'
252
+ @_hash['employment_end'] = 'EmploymentEnd'
253
+ @_hash['emp_id'] = 'EmpID'
254
+ @_hash['appointments'] = 'Appointments'
255
+ @_hash['unavailabilities'] = 'Unavailabilities'
256
+ @_hash['availabilities'] = 'Availabilities'
257
+ @_hash['login_locations'] = 'LoginLocations'
258
+ @_hash
259
+ end
260
+
261
+ # An array for optional fields
262
+ def self.optionals
263
+ %w[
264
+ id
265
+ first_name
266
+ last_name
267
+ display_name
268
+ email
269
+ bio
270
+ address
271
+ address2
272
+ city
273
+ state
274
+ postal_code
275
+ foreign_zip
276
+ country
277
+ work_phone
278
+ home_phone
279
+ cell_phone
280
+ active
281
+ is_system
282
+ smode_id
283
+ appointment_trn
284
+ always_allow_double_booking
285
+ independent_contractor
286
+ image_url
287
+ is_male
288
+ reservation_trn
289
+ sort_order
290
+ multi_location_permission
291
+ name
292
+ provider_i_ds
293
+ staff_settings
294
+ rep
295
+ rep2
296
+ rep3
297
+ rep4
298
+ rep5
299
+ rep6
300
+ assistant
301
+ assistant2
302
+ employment_start
303
+ employment_end
304
+ emp_id
305
+ appointments
306
+ unavailabilities
307
+ availabilities
308
+ login_locations
309
+ ]
310
+ end
311
+
312
+ # An array for nullable fields
313
+ def self.nullables
314
+ []
315
+ end
316
+
317
+ def initialize(id = SKIP, first_name = SKIP, last_name = SKIP,
318
+ display_name = SKIP, email = SKIP, bio = SKIP,
319
+ address = SKIP, address2 = SKIP, city = SKIP, state = SKIP,
320
+ postal_code = SKIP, foreign_zip = SKIP, country = SKIP,
321
+ work_phone = SKIP, home_phone = SKIP, cell_phone = SKIP,
322
+ active = SKIP, is_system = SKIP, smode_id = SKIP,
323
+ appointment_trn = SKIP, always_allow_double_booking = SKIP,
324
+ independent_contractor = SKIP, image_url = SKIP,
325
+ is_male = SKIP, reservation_trn = SKIP, sort_order = SKIP,
326
+ multi_location_permission = SKIP, name = SKIP,
327
+ provider_i_ds = SKIP, staff_settings = SKIP, rep = SKIP,
328
+ rep2 = SKIP, rep3 = SKIP, rep4 = SKIP, rep5 = SKIP,
329
+ rep6 = SKIP, assistant = SKIP, assistant2 = SKIP,
330
+ employment_start = SKIP, employment_end = SKIP,
331
+ emp_id = SKIP, appointments = SKIP, unavailabilities = SKIP,
332
+ availabilities = SKIP, login_locations = SKIP)
333
+ @id = id unless id == SKIP
334
+ @first_name = first_name unless first_name == SKIP
335
+ @last_name = last_name unless last_name == SKIP
336
+ @display_name = display_name unless display_name == SKIP
337
+ @email = email unless email == SKIP
338
+ @bio = bio unless bio == SKIP
339
+ @address = address unless address == SKIP
340
+ @address2 = address2 unless address2 == SKIP
341
+ @city = city unless city == SKIP
342
+ @state = state unless state == SKIP
343
+ @postal_code = postal_code unless postal_code == SKIP
344
+ @foreign_zip = foreign_zip unless foreign_zip == SKIP
345
+ @country = country unless country == SKIP
346
+ @work_phone = work_phone unless work_phone == SKIP
347
+ @home_phone = home_phone unless home_phone == SKIP
348
+ @cell_phone = cell_phone unless cell_phone == SKIP
349
+ @active = active unless active == SKIP
350
+ @is_system = is_system unless is_system == SKIP
351
+ @smode_id = smode_id unless smode_id == SKIP
352
+ @appointment_trn = appointment_trn unless appointment_trn == SKIP
353
+ unless always_allow_double_booking == SKIP
354
+ @always_allow_double_booking =
355
+ always_allow_double_booking
356
+ end
357
+ @independent_contractor = independent_contractor unless independent_contractor == SKIP
358
+ @image_url = image_url unless image_url == SKIP
359
+ @is_male = is_male unless is_male == SKIP
360
+ @reservation_trn = reservation_trn unless reservation_trn == SKIP
361
+ @sort_order = sort_order unless sort_order == SKIP
362
+ unless multi_location_permission == SKIP
363
+ @multi_location_permission =
364
+ multi_location_permission
365
+ end
366
+ @name = name unless name == SKIP
367
+ @provider_i_ds = provider_i_ds unless provider_i_ds == SKIP
368
+ @staff_settings = staff_settings unless staff_settings == SKIP
369
+ @rep = rep unless rep == SKIP
370
+ @rep2 = rep2 unless rep2 == SKIP
371
+ @rep3 = rep3 unless rep3 == SKIP
372
+ @rep4 = rep4 unless rep4 == SKIP
373
+ @rep5 = rep5 unless rep5 == SKIP
374
+ @rep6 = rep6 unless rep6 == SKIP
375
+ @assistant = assistant unless assistant == SKIP
376
+ @assistant2 = assistant2 unless assistant2 == SKIP
377
+ @employment_start = employment_start unless employment_start == SKIP
378
+ @employment_end = employment_end unless employment_end == SKIP
379
+ @emp_id = emp_id unless emp_id == SKIP
380
+ @appointments = appointments unless appointments == SKIP
381
+ @unavailabilities = unavailabilities unless unavailabilities == SKIP
382
+ @availabilities = availabilities unless availabilities == SKIP
383
+ @login_locations = login_locations unless login_locations == SKIP
384
+ end
385
+
386
+ # Creates an instance of the object from a hash.
387
+ def self.from_hash(hash)
388
+ return nil unless hash
389
+
390
+ # Extract variables from the hash.
391
+ id = hash.key?('Id') ? hash['Id'] : SKIP
392
+ first_name = hash.key?('FirstName') ? hash['FirstName'] : SKIP
393
+ last_name = hash.key?('LastName') ? hash['LastName'] : SKIP
394
+ display_name = hash.key?('DisplayName') ? hash['DisplayName'] : SKIP
395
+ email = hash.key?('Email') ? hash['Email'] : SKIP
396
+ bio = hash.key?('Bio') ? hash['Bio'] : SKIP
397
+ address = hash.key?('Address') ? hash['Address'] : SKIP
398
+ address2 = hash.key?('Address2') ? hash['Address2'] : SKIP
399
+ city = hash.key?('City') ? hash['City'] : SKIP
400
+ state = hash.key?('State') ? hash['State'] : SKIP
401
+ postal_code = hash.key?('PostalCode') ? hash['PostalCode'] : SKIP
402
+ foreign_zip = hash.key?('ForeignZip') ? hash['ForeignZip'] : SKIP
403
+ country = hash.key?('Country') ? hash['Country'] : SKIP
404
+ work_phone = hash.key?('WorkPhone') ? hash['WorkPhone'] : SKIP
405
+ home_phone = hash.key?('HomePhone') ? hash['HomePhone'] : SKIP
406
+ cell_phone = hash.key?('CellPhone') ? hash['CellPhone'] : SKIP
407
+ active = hash.key?('Active') ? hash['Active'] : SKIP
408
+ is_system = hash.key?('IsSystem') ? hash['IsSystem'] : SKIP
409
+ smode_id = hash.key?('SmodeId') ? hash['SmodeId'] : SKIP
410
+ appointment_trn =
411
+ hash.key?('AppointmentTrn') ? hash['AppointmentTrn'] : SKIP
412
+ always_allow_double_booking =
413
+ hash.key?('AlwaysAllowDoubleBooking') ? hash['AlwaysAllowDoubleBooking'] : SKIP
414
+ independent_contractor =
415
+ hash.key?('IndependentContractor') ? hash['IndependentContractor'] : SKIP
416
+ image_url = hash.key?('ImageUrl') ? hash['ImageUrl'] : SKIP
417
+ is_male = hash.key?('IsMale') ? hash['IsMale'] : SKIP
418
+ reservation_trn =
419
+ hash.key?('ReservationTrn') ? hash['ReservationTrn'] : SKIP
420
+ sort_order = hash.key?('SortOrder') ? hash['SortOrder'] : SKIP
421
+ multi_location_permission =
422
+ hash.key?('MultiLocationPermission') ? hash['MultiLocationPermission'] : SKIP
423
+ name = hash.key?('Name') ? hash['Name'] : SKIP
424
+ provider_i_ds = hash.key?('ProviderIDs') ? hash['ProviderIDs'] : SKIP
425
+ staff_settings = StaffSetting.from_hash(hash['StaffSettings']) if hash['StaffSettings']
426
+ rep = hash.key?('Rep') ? hash['Rep'] : SKIP
427
+ rep2 = hash.key?('Rep2') ? hash['Rep2'] : SKIP
428
+ rep3 = hash.key?('Rep3') ? hash['Rep3'] : SKIP
429
+ rep4 = hash.key?('Rep4') ? hash['Rep4'] : SKIP
430
+ rep5 = hash.key?('Rep5') ? hash['Rep5'] : SKIP
431
+ rep6 = hash.key?('Rep6') ? hash['Rep6'] : SKIP
432
+ assistant = hash.key?('Assistant') ? hash['Assistant'] : SKIP
433
+ assistant2 = hash.key?('Assistant2') ? hash['Assistant2'] : SKIP
434
+ employment_start = if hash.key?('EmploymentStart')
435
+ (DateTimeHelper.from_rfc3339(hash['EmploymentStart']) if hash['EmploymentStart'])
436
+ else
437
+ SKIP
438
+ end
439
+ employment_end = if hash.key?('EmploymentEnd')
440
+ (DateTimeHelper.from_rfc3339(hash['EmploymentEnd']) if hash['EmploymentEnd'])
441
+ else
442
+ SKIP
443
+ end
444
+ emp_id = hash.key?('EmpID') ? hash['EmpID'] : SKIP
445
+ # Parameter is an array, so we need to iterate through it
446
+ appointments = nil
447
+ unless hash['Appointments'].nil?
448
+ appointments = []
449
+ hash['Appointments'].each do |structure|
450
+ appointments << (Appointment1.from_hash(structure) if structure)
451
+ end
452
+ end
453
+
454
+ appointments = SKIP unless hash.key?('Appointments')
455
+ # Parameter is an array, so we need to iterate through it
456
+ unavailabilities = nil
457
+ unless hash['Unavailabilities'].nil?
458
+ unavailabilities = []
459
+ hash['Unavailabilities'].each do |structure|
460
+ unavailabilities << (Unavailability1.from_hash(structure) if structure)
461
+ end
462
+ end
463
+
464
+ unavailabilities = SKIP unless hash.key?('Unavailabilities')
465
+ # Parameter is an array, so we need to iterate through it
466
+ availabilities = nil
467
+ unless hash['Availabilities'].nil?
468
+ availabilities = []
469
+ hash['Availabilities'].each do |structure|
470
+ availabilities << (Availability1.from_hash(structure) if structure)
471
+ end
472
+ end
473
+
474
+ availabilities = SKIP unless hash.key?('Availabilities')
475
+ # Parameter is an array, so we need to iterate through it
476
+ login_locations = nil
477
+ unless hash['LoginLocations'].nil?
478
+ login_locations = []
479
+ hash['LoginLocations'].each do |structure|
480
+ login_locations << (Location1.from_hash(structure) if structure)
481
+ end
482
+ end
483
+
484
+ login_locations = SKIP unless hash.key?('LoginLocations')
485
+
486
+ # Create object from extracted values.
487
+ Staff1.new(id,
488
+ first_name,
489
+ last_name,
490
+ display_name,
491
+ email,
492
+ bio,
493
+ address,
494
+ address2,
495
+ city,
496
+ state,
497
+ postal_code,
498
+ foreign_zip,
499
+ country,
500
+ work_phone,
501
+ home_phone,
502
+ cell_phone,
503
+ active,
504
+ is_system,
505
+ smode_id,
506
+ appointment_trn,
507
+ always_allow_double_booking,
508
+ independent_contractor,
509
+ image_url,
510
+ is_male,
511
+ reservation_trn,
512
+ sort_order,
513
+ multi_location_permission,
514
+ name,
515
+ provider_i_ds,
516
+ staff_settings,
517
+ rep,
518
+ rep2,
519
+ rep3,
520
+ rep4,
521
+ rep5,
522
+ rep6,
523
+ assistant,
524
+ assistant2,
525
+ employment_start,
526
+ employment_end,
527
+ emp_id,
528
+ appointments,
529
+ unavailabilities,
530
+ availabilities,
531
+ login_locations)
532
+ end
533
+
534
+ def to_custom_employment_start
535
+ DateTimeHelper.to_rfc3339(employment_start)
536
+ end
537
+
538
+ def to_custom_employment_end
539
+ DateTimeHelper.to_rfc3339(employment_end)
540
+ end
541
+
542
+ # Provides a human-readable string representation of the object.
543
+ def to_s
544
+ class_name = self.class.name.split('::').last
545
+ "<#{class_name} id: #{@id}, first_name: #{@first_name}, last_name: #{@last_name},"\
546
+ " display_name: #{@display_name}, email: #{@email}, bio: #{@bio}, address: #{@address},"\
547
+ " address2: #{@address2}, city: #{@city}, state: #{@state}, postal_code: #{@postal_code},"\
548
+ " foreign_zip: #{@foreign_zip}, country: #{@country}, work_phone: #{@work_phone},"\
549
+ " home_phone: #{@home_phone}, cell_phone: #{@cell_phone}, active: #{@active}, is_system:"\
550
+ " #{@is_system}, smode_id: #{@smode_id}, appointment_trn: #{@appointment_trn},"\
551
+ " always_allow_double_booking: #{@always_allow_double_booking}, independent_contractor:"\
552
+ " #{@independent_contractor}, image_url: #{@image_url}, is_male: #{@is_male},"\
553
+ " reservation_trn: #{@reservation_trn}, sort_order: #{@sort_order},"\
554
+ " multi_location_permission: #{@multi_location_permission}, name: #{@name}, provider_i_ds:"\
555
+ " #{@provider_i_ds}, staff_settings: #{@staff_settings}, rep: #{@rep}, rep2: #{@rep2}, rep3:"\
556
+ " #{@rep3}, rep4: #{@rep4}, rep5: #{@rep5}, rep6: #{@rep6}, assistant: #{@assistant},"\
557
+ " assistant2: #{@assistant2}, employment_start: #{@employment_start}, employment_end:"\
558
+ " #{@employment_end}, emp_id: #{@emp_id}, appointments: #{@appointments}, unavailabilities:"\
559
+ " #{@unavailabilities}, availabilities: #{@availabilities}, login_locations:"\
560
+ " #{@login_locations}>"
561
+ end
562
+
563
+ # Provides a debugging-friendly string with detailed object information.
564
+ def inspect
565
+ class_name = self.class.name.split('::').last
566
+ "<#{class_name} id: #{@id.inspect}, first_name: #{@first_name.inspect}, last_name:"\
567
+ " #{@last_name.inspect}, display_name: #{@display_name.inspect}, email: #{@email.inspect},"\
568
+ " bio: #{@bio.inspect}, address: #{@address.inspect}, address2: #{@address2.inspect}, city:"\
569
+ " #{@city.inspect}, state: #{@state.inspect}, postal_code: #{@postal_code.inspect},"\
570
+ " foreign_zip: #{@foreign_zip.inspect}, country: #{@country.inspect}, work_phone:"\
571
+ " #{@work_phone.inspect}, home_phone: #{@home_phone.inspect}, cell_phone:"\
572
+ " #{@cell_phone.inspect}, active: #{@active.inspect}, is_system: #{@is_system.inspect},"\
573
+ " smode_id: #{@smode_id.inspect}, appointment_trn: #{@appointment_trn.inspect},"\
574
+ " always_allow_double_booking: #{@always_allow_double_booking.inspect},"\
575
+ " independent_contractor: #{@independent_contractor.inspect}, image_url:"\
576
+ " #{@image_url.inspect}, is_male: #{@is_male.inspect}, reservation_trn:"\
577
+ " #{@reservation_trn.inspect}, sort_order: #{@sort_order.inspect},"\
578
+ " multi_location_permission: #{@multi_location_permission.inspect}, name: #{@name.inspect},"\
579
+ " provider_i_ds: #{@provider_i_ds.inspect}, staff_settings: #{@staff_settings.inspect}, rep:"\
580
+ " #{@rep.inspect}, rep2: #{@rep2.inspect}, rep3: #{@rep3.inspect}, rep4: #{@rep4.inspect},"\
581
+ " rep5: #{@rep5.inspect}, rep6: #{@rep6.inspect}, assistant: #{@assistant.inspect},"\
582
+ " assistant2: #{@assistant2.inspect}, employment_start: #{@employment_start.inspect},"\
583
+ " employment_end: #{@employment_end.inspect}, emp_id: #{@emp_id.inspect}, appointments:"\
584
+ " #{@appointments.inspect}, unavailabilities: #{@unavailabilities.inspect}, availabilities:"\
585
+ " #{@availabilities.inspect}, login_locations: #{@login_locations.inspect}>"
586
+ end
587
+ end
588
+ end
@@ -0,0 +1,105 @@
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
+ # StaffPermissionGroup Model.
8
+ class StaffPermissionGroup < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The name of the permission group.
13
+ # @return [String]
14
+ attr_accessor :permission_group_name
15
+
16
+ # When `true`, the staff member’s permissions are restricted to specific IP
17
+ # addresses.<br />
18
+ # When `false`, the staff member’s permissions are not restricted to
19
+ # specific IP addresses.
20
+ # @return [TrueClass | FalseClass]
21
+ attr_accessor :ip_restricted
22
+
23
+ # A list of the permissions allowed to the staff member. See [Permission
24
+ # Values](https://developers.mindbodyonline.com/PublicDocumentation/V6#eperm
25
+ # ission-values) for descriptions of the possible permissions.
26
+ # @return [Array[AllowedPermissionEnum]]
27
+ attr_accessor :allowed_permissions
28
+
29
+ # A list of the permissions that the staff member is not allowed to
30
+ # exercise. See [Permission
31
+ # Values](https://developers.mindbodyonline.com/PublicDocumentation/V6#eperm
32
+ # ission-values) for descriptions of the possible permissions.
33
+ # @return [Array[DeniedPermissionEnum]]
34
+ attr_accessor :denied_permissions
35
+
36
+ # A mapping from model property names to API property names.
37
+ def self.names
38
+ @_hash = {} if @_hash.nil?
39
+ @_hash['permission_group_name'] = 'PermissionGroupName'
40
+ @_hash['ip_restricted'] = 'IpRestricted'
41
+ @_hash['allowed_permissions'] = 'AllowedPermissions'
42
+ @_hash['denied_permissions'] = 'DeniedPermissions'
43
+ @_hash
44
+ end
45
+
46
+ # An array for optional fields
47
+ def self.optionals
48
+ %w[
49
+ permission_group_name
50
+ ip_restricted
51
+ allowed_permissions
52
+ denied_permissions
53
+ ]
54
+ end
55
+
56
+ # An array for nullable fields
57
+ def self.nullables
58
+ []
59
+ end
60
+
61
+ def initialize(permission_group_name = SKIP, ip_restricted = SKIP,
62
+ allowed_permissions = SKIP, denied_permissions = SKIP)
63
+ @permission_group_name = permission_group_name unless permission_group_name == SKIP
64
+ @ip_restricted = ip_restricted unless ip_restricted == SKIP
65
+ @allowed_permissions = allowed_permissions unless allowed_permissions == SKIP
66
+ @denied_permissions = denied_permissions unless denied_permissions == SKIP
67
+ end
68
+
69
+ # Creates an instance of the object from a hash.
70
+ def self.from_hash(hash)
71
+ return nil unless hash
72
+
73
+ # Extract variables from the hash.
74
+ permission_group_name =
75
+ hash.key?('PermissionGroupName') ? hash['PermissionGroupName'] : SKIP
76
+ ip_restricted = hash.key?('IpRestricted') ? hash['IpRestricted'] : SKIP
77
+ allowed_permissions =
78
+ hash.key?('AllowedPermissions') ? hash['AllowedPermissions'] : SKIP
79
+ denied_permissions =
80
+ hash.key?('DeniedPermissions') ? hash['DeniedPermissions'] : SKIP
81
+
82
+ # Create object from extracted values.
83
+ StaffPermissionGroup.new(permission_group_name,
84
+ ip_restricted,
85
+ allowed_permissions,
86
+ denied_permissions)
87
+ end
88
+
89
+ # Provides a human-readable string representation of the object.
90
+ def to_s
91
+ class_name = self.class.name.split('::').last
92
+ "<#{class_name} permission_group_name: #{@permission_group_name}, ip_restricted:"\
93
+ " #{@ip_restricted}, allowed_permissions: #{@allowed_permissions}, denied_permissions:"\
94
+ " #{@denied_permissions}>"
95
+ end
96
+
97
+ # Provides a debugging-friendly string with detailed object information.
98
+ def inspect
99
+ class_name = self.class.name.split('::').last
100
+ "<#{class_name} permission_group_name: #{@permission_group_name.inspect}, ip_restricted:"\
101
+ " #{@ip_restricted.inspect}, allowed_permissions: #{@allowed_permissions.inspect},"\
102
+ " denied_permissions: #{@denied_permissions.inspect}>"
103
+ end
104
+ end
105
+ end