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,87 @@
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
+ # GetScheduledServiceEarningsResponse Model.
8
+ class GetScheduledServiceEarningsResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Contains information about the pagination to use.
13
+ # @return [PaginationResponse]
14
+ attr_accessor :pagination_response
15
+
16
+ # Contains the class payroll events.
17
+ # @return [Array[ScheduledServiceEarningsEvent]]
18
+ attr_accessor :scheduled_service_earnings
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['pagination_response'] = 'PaginationResponse'
24
+ @_hash['scheduled_service_earnings'] = 'ScheduledServiceEarnings'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ %w[
31
+ pagination_response
32
+ scheduled_service_earnings
33
+ ]
34
+ end
35
+
36
+ # An array for nullable fields
37
+ def self.nullables
38
+ []
39
+ end
40
+
41
+ def initialize(pagination_response = SKIP,
42
+ scheduled_service_earnings = SKIP)
43
+ @pagination_response = pagination_response unless pagination_response == SKIP
44
+ unless scheduled_service_earnings == SKIP
45
+ @scheduled_service_earnings =
46
+ scheduled_service_earnings
47
+ end
48
+ end
49
+
50
+ # Creates an instance of the object from a hash.
51
+ def self.from_hash(hash)
52
+ return nil unless hash
53
+
54
+ # Extract variables from the hash.
55
+ pagination_response = PaginationResponse.from_hash(hash['PaginationResponse']) if
56
+ hash['PaginationResponse']
57
+ # Parameter is an array, so we need to iterate through it
58
+ scheduled_service_earnings = nil
59
+ unless hash['ScheduledServiceEarnings'].nil?
60
+ scheduled_service_earnings = []
61
+ hash['ScheduledServiceEarnings'].each do |structure|
62
+ scheduled_service_earnings << (ScheduledServiceEarningsEvent.from_hash(structure) if structure)
63
+ end
64
+ end
65
+
66
+ scheduled_service_earnings = SKIP unless hash.key?('ScheduledServiceEarnings')
67
+
68
+ # Create object from extracted values.
69
+ GetScheduledServiceEarningsResponse.new(pagination_response,
70
+ scheduled_service_earnings)
71
+ end
72
+
73
+ # Provides a human-readable string representation of the object.
74
+ def to_s
75
+ class_name = self.class.name.split('::').last
76
+ "<#{class_name} pagination_response: #{@pagination_response}, scheduled_service_earnings:"\
77
+ " #{@scheduled_service_earnings}>"
78
+ end
79
+
80
+ # Provides a debugging-friendly string with detailed object information.
81
+ def inspect
82
+ class_name = self.class.name.split('::').last
83
+ "<#{class_name} pagination_response: #{@pagination_response.inspect},"\
84
+ " scheduled_service_earnings: #{@scheduled_service_earnings.inspect}>"
85
+ end
86
+ end
87
+ end
@@ -0,0 +1,132 @@
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
+ # Get Semesters Request Model
9
+ class GetSemestersRequest < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # The requested semester IDs.
14
+ # @return [Array[Integer]]
15
+ attr_accessor :semester_i_ds
16
+
17
+ # The start date for the range. All semesters that are on or after this day.
18
+ # Default: **today’s date**
19
+ # @return [DateTime]
20
+ attr_accessor :start_date
21
+
22
+ # The end date for the range. All semesters that are on or before this day.
23
+ # Default: **StartDate**
24
+ # @return [DateTime]
25
+ attr_accessor :end_date
26
+
27
+ # When true, the response only contains semesters which are activated. When
28
+ # false, only deactivated semesters are returned.
29
+ # Default: **All semesters**
30
+ # @return [TrueClass | FalseClass]
31
+ attr_accessor :active
32
+
33
+ # Number of results to include, defaults to 100
34
+ # @return [Integer]
35
+ attr_accessor :limit
36
+
37
+ # Page offset, defaults to 0.
38
+ # @return [Integer]
39
+ attr_accessor :offset
40
+
41
+ # A mapping from model property names to API property names.
42
+ def self.names
43
+ @_hash = {} if @_hash.nil?
44
+ @_hash['semester_i_ds'] = 'SemesterIDs'
45
+ @_hash['start_date'] = 'StartDate'
46
+ @_hash['end_date'] = 'EndDate'
47
+ @_hash['active'] = 'Active'
48
+ @_hash['limit'] = 'Limit'
49
+ @_hash['offset'] = 'Offset'
50
+ @_hash
51
+ end
52
+
53
+ # An array for optional fields
54
+ def self.optionals
55
+ %w[
56
+ semester_i_ds
57
+ start_date
58
+ end_date
59
+ active
60
+ limit
61
+ offset
62
+ ]
63
+ end
64
+
65
+ # An array for nullable fields
66
+ def self.nullables
67
+ []
68
+ end
69
+
70
+ def initialize(semester_i_ds = SKIP, start_date = SKIP, end_date = SKIP,
71
+ active = SKIP, limit = SKIP, offset = SKIP)
72
+ @semester_i_ds = semester_i_ds unless semester_i_ds == SKIP
73
+ @start_date = start_date unless start_date == SKIP
74
+ @end_date = end_date unless end_date == SKIP
75
+ @active = active unless active == SKIP
76
+ @limit = limit unless limit == SKIP
77
+ @offset = offset unless offset == SKIP
78
+ end
79
+
80
+ # Creates an instance of the object from a hash.
81
+ def self.from_hash(hash)
82
+ return nil unless hash
83
+
84
+ # Extract variables from the hash.
85
+ semester_i_ds = hash.key?('SemesterIDs') ? hash['SemesterIDs'] : SKIP
86
+ start_date = if hash.key?('StartDate')
87
+ (DateTimeHelper.from_rfc3339(hash['StartDate']) if hash['StartDate'])
88
+ else
89
+ SKIP
90
+ end
91
+ end_date = if hash.key?('EndDate')
92
+ (DateTimeHelper.from_rfc3339(hash['EndDate']) if hash['EndDate'])
93
+ else
94
+ SKIP
95
+ end
96
+ active = hash.key?('Active') ? hash['Active'] : SKIP
97
+ limit = hash.key?('Limit') ? hash['Limit'] : SKIP
98
+ offset = hash.key?('Offset') ? hash['Offset'] : SKIP
99
+
100
+ # Create object from extracted values.
101
+ GetSemestersRequest.new(semester_i_ds,
102
+ start_date,
103
+ end_date,
104
+ active,
105
+ limit,
106
+ offset)
107
+ end
108
+
109
+ def to_custom_start_date
110
+ DateTimeHelper.to_rfc3339(start_date)
111
+ end
112
+
113
+ def to_custom_end_date
114
+ DateTimeHelper.to_rfc3339(end_date)
115
+ end
116
+
117
+ # Provides a human-readable string representation of the object.
118
+ def to_s
119
+ class_name = self.class.name.split('::').last
120
+ "<#{class_name} semester_i_ds: #{@semester_i_ds}, start_date: #{@start_date}, end_date:"\
121
+ " #{@end_date}, active: #{@active}, limit: #{@limit}, offset: #{@offset}>"
122
+ end
123
+
124
+ # Provides a debugging-friendly string with detailed object information.
125
+ def inspect
126
+ class_name = self.class.name.split('::').last
127
+ "<#{class_name} semester_i_ds: #{@semester_i_ds.inspect}, start_date:"\
128
+ " #{@start_date.inspect}, end_date: #{@end_date.inspect}, active: #{@active.inspect}, limit:"\
129
+ " #{@limit.inspect}, offset: #{@offset.inspect}>"
130
+ end
131
+ end
132
+ end
@@ -0,0 +1,83 @@
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
+ # Get Semesters Response Model
8
+ class GetSemestersResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Contains information about the pagination to use.
13
+ # @return [PaginationResponse]
14
+ attr_accessor :pagination_response
15
+
16
+ # Contains the Semester objects, each of which describes the semesters for a
17
+ # site.
18
+ # @return [Array[Semester]]
19
+ attr_accessor :semesters
20
+
21
+ # A mapping from model property names to API property names.
22
+ def self.names
23
+ @_hash = {} if @_hash.nil?
24
+ @_hash['pagination_response'] = 'PaginationResponse'
25
+ @_hash['semesters'] = 'Semesters'
26
+ @_hash
27
+ end
28
+
29
+ # An array for optional fields
30
+ def self.optionals
31
+ %w[
32
+ pagination_response
33
+ semesters
34
+ ]
35
+ end
36
+
37
+ # An array for nullable fields
38
+ def self.nullables
39
+ []
40
+ end
41
+
42
+ def initialize(pagination_response = SKIP, semesters = SKIP)
43
+ @pagination_response = pagination_response unless pagination_response == SKIP
44
+ @semesters = semesters unless semesters == SKIP
45
+ end
46
+
47
+ # Creates an instance of the object from a hash.
48
+ def self.from_hash(hash)
49
+ return nil unless hash
50
+
51
+ # Extract variables from the hash.
52
+ pagination_response = PaginationResponse.from_hash(hash['PaginationResponse']) if
53
+ hash['PaginationResponse']
54
+ # Parameter is an array, so we need to iterate through it
55
+ semesters = nil
56
+ unless hash['Semesters'].nil?
57
+ semesters = []
58
+ hash['Semesters'].each do |structure|
59
+ semesters << (Semester.from_hash(structure) if structure)
60
+ end
61
+ end
62
+
63
+ semesters = SKIP unless hash.key?('Semesters')
64
+
65
+ # Create object from extracted values.
66
+ GetSemestersResponse.new(pagination_response,
67
+ semesters)
68
+ end
69
+
70
+ # Provides a human-readable string representation of the object.
71
+ def to_s
72
+ class_name = self.class.name.split('::').last
73
+ "<#{class_name} pagination_response: #{@pagination_response}, semesters: #{@semesters}>"
74
+ end
75
+
76
+ # Provides a debugging-friendly string with detailed object information.
77
+ def inspect
78
+ class_name = self.class.name.split('::').last
79
+ "<#{class_name} pagination_response: #{@pagination_response.inspect}, semesters:"\
80
+ " #{@semesters.inspect}>"
81
+ end
82
+ end
83
+ end
@@ -0,0 +1,221 @@
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
+ # GetServicesRequest Model.
8
+ class GetServicesRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Filters to pricing options with the specified program IDs.
13
+ # @return [Array[Integer]]
14
+ attr_accessor :program_ids
15
+
16
+ # Filters to the pricing options with the specified session types IDs.
17
+ # @return [Array[Integer]]
18
+ attr_accessor :session_type_ids
19
+
20
+ # Filters to the pricing options with the specified IDs. In this context,
21
+ # service and pricing option are used interchangeably. These are the
22
+ # `PurchasedItems[].Id` returned from GET Sales.
23
+ # @return [Array[String]]
24
+ attr_accessor :service_ids
25
+
26
+ # Filters to the pricing options for the specified class ID.
27
+ # @return [Integer]
28
+ attr_accessor :class_id
29
+
30
+ # Filters to the pricing options for the specified class schedule ID.
31
+ # @return [Integer]
32
+ attr_accessor :class_schedule_id
33
+
34
+ # When `true`, filters the pricing options to display only those available
35
+ # for online purchase.
36
+ # This parameter is only applicable in Business Mode (when a staff
37
+ # authentication header is included) and ignored in Consumer Mode (when no
38
+ # authentication header is passed).
39
+ # <br />Default: `false` (for staff users)
40
+ # <br />Business Mode: This parameter controls the filtering behavior. Staff
41
+ # users can set this to `true`
42
+ # to show only pricing options that can be sold online, or `false` to show
43
+ # all available pricing options.
44
+ # <br />Consumer Mode: This value is automatically set to `true` and cannot
45
+ # be overridden,
46
+ # ensuring consumers only see pricing options available for online purchase.
47
+ # @return [TrueClass | FalseClass]
48
+ attr_accessor :sell_online
49
+
50
+ # When specified, for each returned pricing option, `TaxRate` and
51
+ # `TaxIncluded` are calculated according to the specified location. Note
52
+ # that this does not filter results to only services provided at the given
53
+ # location, and for locations where Value-Added Tax (VAT) rules apply, the
54
+ # `TaxRate` is set to zero.
55
+ # @return [Integer]
56
+ attr_accessor :location_id
57
+
58
+ # When `true`, indicates that pricing options of related programs are
59
+ # omitted from the response.<br />
60
+ # Default: **false**
61
+ # @return [TrueClass | FalseClass]
62
+ attr_accessor :hide_related_programs
63
+
64
+ # Sets `Price` and `OnlinePrice` to the particular pricing of a specific
65
+ # staff member, if allowed by the business.
66
+ # @return [Integer]
67
+ attr_accessor :staff_id
68
+
69
+ # When `true`, indicates that the filtered pricing option list includes
70
+ # discontinued pricing options.<br />
71
+ # Default: **false**
72
+ # @return [TrueClass | FalseClass]
73
+ attr_accessor :include_discontinued
74
+
75
+ # When `true`, indicates that the filtered pricing option list includes sale
76
+ # in contract only pricing options.<br />
77
+ # Default: **false**
78
+ # @return [TrueClass | FalseClass]
79
+ attr_accessor :include_sale_in_contract_only
80
+
81
+ # Number of results to include, defaults to 100
82
+ # @return [Integer]
83
+ attr_accessor :limit
84
+
85
+ # Page offset, defaults to 0.
86
+ # @return [Integer]
87
+ attr_accessor :offset
88
+
89
+ # A mapping from model property names to API property names.
90
+ def self.names
91
+ @_hash = {} if @_hash.nil?
92
+ @_hash['program_ids'] = 'ProgramIds'
93
+ @_hash['session_type_ids'] = 'SessionTypeIds'
94
+ @_hash['service_ids'] = 'ServiceIds'
95
+ @_hash['class_id'] = 'ClassId'
96
+ @_hash['class_schedule_id'] = 'ClassScheduleId'
97
+ @_hash['sell_online'] = 'SellOnline'
98
+ @_hash['location_id'] = 'LocationId'
99
+ @_hash['hide_related_programs'] = 'HideRelatedPrograms'
100
+ @_hash['staff_id'] = 'StaffId'
101
+ @_hash['include_discontinued'] = 'IncludeDiscontinued'
102
+ @_hash['include_sale_in_contract_only'] = 'IncludeSaleInContractOnly'
103
+ @_hash['limit'] = 'Limit'
104
+ @_hash['offset'] = 'Offset'
105
+ @_hash
106
+ end
107
+
108
+ # An array for optional fields
109
+ def self.optionals
110
+ %w[
111
+ program_ids
112
+ session_type_ids
113
+ service_ids
114
+ class_id
115
+ class_schedule_id
116
+ sell_online
117
+ location_id
118
+ hide_related_programs
119
+ staff_id
120
+ include_discontinued
121
+ include_sale_in_contract_only
122
+ limit
123
+ offset
124
+ ]
125
+ end
126
+
127
+ # An array for nullable fields
128
+ def self.nullables
129
+ []
130
+ end
131
+
132
+ def initialize(program_ids = SKIP, session_type_ids = SKIP,
133
+ service_ids = SKIP, class_id = SKIP,
134
+ class_schedule_id = SKIP, sell_online = SKIP,
135
+ location_id = SKIP, hide_related_programs = SKIP,
136
+ staff_id = SKIP, include_discontinued = SKIP,
137
+ include_sale_in_contract_only = SKIP, limit = SKIP,
138
+ offset = SKIP)
139
+ @program_ids = program_ids unless program_ids == SKIP
140
+ @session_type_ids = session_type_ids unless session_type_ids == SKIP
141
+ @service_ids = service_ids unless service_ids == SKIP
142
+ @class_id = class_id unless class_id == SKIP
143
+ @class_schedule_id = class_schedule_id unless class_schedule_id == SKIP
144
+ @sell_online = sell_online unless sell_online == SKIP
145
+ @location_id = location_id unless location_id == SKIP
146
+ @hide_related_programs = hide_related_programs unless hide_related_programs == SKIP
147
+ @staff_id = staff_id unless staff_id == SKIP
148
+ @include_discontinued = include_discontinued unless include_discontinued == SKIP
149
+ unless include_sale_in_contract_only == SKIP
150
+ @include_sale_in_contract_only =
151
+ include_sale_in_contract_only
152
+ end
153
+ @limit = limit unless limit == SKIP
154
+ @offset = offset unless offset == SKIP
155
+ end
156
+
157
+ # Creates an instance of the object from a hash.
158
+ def self.from_hash(hash)
159
+ return nil unless hash
160
+
161
+ # Extract variables from the hash.
162
+ program_ids = hash.key?('ProgramIds') ? hash['ProgramIds'] : SKIP
163
+ session_type_ids =
164
+ hash.key?('SessionTypeIds') ? hash['SessionTypeIds'] : SKIP
165
+ service_ids = hash.key?('ServiceIds') ? hash['ServiceIds'] : SKIP
166
+ class_id = hash.key?('ClassId') ? hash['ClassId'] : SKIP
167
+ class_schedule_id =
168
+ hash.key?('ClassScheduleId') ? hash['ClassScheduleId'] : SKIP
169
+ sell_online = hash.key?('SellOnline') ? hash['SellOnline'] : SKIP
170
+ location_id = hash.key?('LocationId') ? hash['LocationId'] : SKIP
171
+ hide_related_programs =
172
+ hash.key?('HideRelatedPrograms') ? hash['HideRelatedPrograms'] : SKIP
173
+ staff_id = hash.key?('StaffId') ? hash['StaffId'] : SKIP
174
+ include_discontinued =
175
+ hash.key?('IncludeDiscontinued') ? hash['IncludeDiscontinued'] : SKIP
176
+ include_sale_in_contract_only =
177
+ hash.key?('IncludeSaleInContractOnly') ? hash['IncludeSaleInContractOnly'] : SKIP
178
+ limit = hash.key?('Limit') ? hash['Limit'] : SKIP
179
+ offset = hash.key?('Offset') ? hash['Offset'] : SKIP
180
+
181
+ # Create object from extracted values.
182
+ GetServicesRequest.new(program_ids,
183
+ session_type_ids,
184
+ service_ids,
185
+ class_id,
186
+ class_schedule_id,
187
+ sell_online,
188
+ location_id,
189
+ hide_related_programs,
190
+ staff_id,
191
+ include_discontinued,
192
+ include_sale_in_contract_only,
193
+ limit,
194
+ offset)
195
+ end
196
+
197
+ # Provides a human-readable string representation of the object.
198
+ def to_s
199
+ class_name = self.class.name.split('::').last
200
+ "<#{class_name} program_ids: #{@program_ids}, session_type_ids: #{@session_type_ids},"\
201
+ " service_ids: #{@service_ids}, class_id: #{@class_id}, class_schedule_id:"\
202
+ " #{@class_schedule_id}, sell_online: #{@sell_online}, location_id: #{@location_id},"\
203
+ " hide_related_programs: #{@hide_related_programs}, staff_id: #{@staff_id},"\
204
+ " include_discontinued: #{@include_discontinued}, include_sale_in_contract_only:"\
205
+ " #{@include_sale_in_contract_only}, limit: #{@limit}, offset: #{@offset}>"
206
+ end
207
+
208
+ # Provides a debugging-friendly string with detailed object information.
209
+ def inspect
210
+ class_name = self.class.name.split('::').last
211
+ "<#{class_name} program_ids: #{@program_ids.inspect}, session_type_ids:"\
212
+ " #{@session_type_ids.inspect}, service_ids: #{@service_ids.inspect}, class_id:"\
213
+ " #{@class_id.inspect}, class_schedule_id: #{@class_schedule_id.inspect}, sell_online:"\
214
+ " #{@sell_online.inspect}, location_id: #{@location_id.inspect}, hide_related_programs:"\
215
+ " #{@hide_related_programs.inspect}, staff_id: #{@staff_id.inspect}, include_discontinued:"\
216
+ " #{@include_discontinued.inspect}, include_sale_in_contract_only:"\
217
+ " #{@include_sale_in_contract_only.inspect}, limit: #{@limit.inspect}, offset:"\
218
+ " #{@offset.inspect}>"
219
+ end
220
+ end
221
+ end
@@ -0,0 +1,82 @@
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
+ # GetServicesResponse Model.
8
+ class GetServicesResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Contains information about the pagination to use.
13
+ # @return [PaginationResponse]
14
+ attr_accessor :pagination_response
15
+
16
+ # Contains information about the services.
17
+ # @return [Array[Service]]
18
+ attr_accessor :services
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['pagination_response'] = 'PaginationResponse'
24
+ @_hash['services'] = 'Services'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ %w[
31
+ pagination_response
32
+ services
33
+ ]
34
+ end
35
+
36
+ # An array for nullable fields
37
+ def self.nullables
38
+ []
39
+ end
40
+
41
+ def initialize(pagination_response = SKIP, services = SKIP)
42
+ @pagination_response = pagination_response unless pagination_response == SKIP
43
+ @services = services unless services == SKIP
44
+ end
45
+
46
+ # Creates an instance of the object from a hash.
47
+ def self.from_hash(hash)
48
+ return nil unless hash
49
+
50
+ # Extract variables from the hash.
51
+ pagination_response = PaginationResponse.from_hash(hash['PaginationResponse']) if
52
+ hash['PaginationResponse']
53
+ # Parameter is an array, so we need to iterate through it
54
+ services = nil
55
+ unless hash['Services'].nil?
56
+ services = []
57
+ hash['Services'].each do |structure|
58
+ services << (Service.from_hash(structure) if structure)
59
+ end
60
+ end
61
+
62
+ services = SKIP unless hash.key?('Services')
63
+
64
+ # Create object from extracted values.
65
+ GetServicesResponse.new(pagination_response,
66
+ services)
67
+ end
68
+
69
+ # Provides a human-readable string representation of the object.
70
+ def to_s
71
+ class_name = self.class.name.split('::').last
72
+ "<#{class_name} pagination_response: #{@pagination_response}, services: #{@services}>"
73
+ end
74
+
75
+ # Provides a debugging-friendly string with detailed object information.
76
+ def inspect
77
+ class_name = self.class.name.split('::').last
78
+ "<#{class_name} pagination_response: #{@pagination_response.inspect}, services:"\
79
+ " #{@services.inspect}>"
80
+ end
81
+ end
82
+ end
@@ -0,0 +1,95 @@
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
+ # GetSessionTypesRequest Model.
8
+ class GetSessionTypesRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Filters results to session types that belong to one of the given program
13
+ # IDs. If omitted, all program IDs return.
14
+ # @return [Array[Integer]]
15
+ attr_accessor :program_i_ds
16
+
17
+ # When `true`, indicates that only the session types that can be booked
18
+ # online should be returned.<br />
19
+ # Default: **false**
20
+ # @return [TrueClass | FalseClass]
21
+ attr_accessor :online_only
22
+
23
+ # Number of results to include, defaults to 100
24
+ # @return [Integer]
25
+ attr_accessor :limit
26
+
27
+ # Page offset, defaults to 0.
28
+ # @return [Integer]
29
+ attr_accessor :offset
30
+
31
+ # A mapping from model property names to API property names.
32
+ def self.names
33
+ @_hash = {} if @_hash.nil?
34
+ @_hash['program_i_ds'] = 'ProgramIDs'
35
+ @_hash['online_only'] = 'OnlineOnly'
36
+ @_hash['limit'] = 'Limit'
37
+ @_hash['offset'] = 'Offset'
38
+ @_hash
39
+ end
40
+
41
+ # An array for optional fields
42
+ def self.optionals
43
+ %w[
44
+ program_i_ds
45
+ online_only
46
+ limit
47
+ offset
48
+ ]
49
+ end
50
+
51
+ # An array for nullable fields
52
+ def self.nullables
53
+ []
54
+ end
55
+
56
+ def initialize(program_i_ds = SKIP, online_only = SKIP, limit = SKIP,
57
+ offset = SKIP)
58
+ @program_i_ds = program_i_ds unless program_i_ds == SKIP
59
+ @online_only = online_only unless online_only == SKIP
60
+ @limit = limit unless limit == SKIP
61
+ @offset = offset unless offset == SKIP
62
+ end
63
+
64
+ # Creates an instance of the object from a hash.
65
+ def self.from_hash(hash)
66
+ return nil unless hash
67
+
68
+ # Extract variables from the hash.
69
+ program_i_ds = hash.key?('ProgramIDs') ? hash['ProgramIDs'] : SKIP
70
+ online_only = hash.key?('OnlineOnly') ? hash['OnlineOnly'] : SKIP
71
+ limit = hash.key?('Limit') ? hash['Limit'] : SKIP
72
+ offset = hash.key?('Offset') ? hash['Offset'] : SKIP
73
+
74
+ # Create object from extracted values.
75
+ GetSessionTypesRequest.new(program_i_ds,
76
+ online_only,
77
+ limit,
78
+ offset)
79
+ end
80
+
81
+ # Provides a human-readable string representation of the object.
82
+ def to_s
83
+ class_name = self.class.name.split('::').last
84
+ "<#{class_name} program_i_ds: #{@program_i_ds}, online_only: #{@online_only}, limit:"\
85
+ " #{@limit}, offset: #{@offset}>"
86
+ end
87
+
88
+ # Provides a debugging-friendly string with detailed object information.
89
+ def inspect
90
+ class_name = self.class.name.split('::').last
91
+ "<#{class_name} program_i_ds: #{@program_i_ds.inspect}, online_only:"\
92
+ " #{@online_only.inspect}, limit: #{@limit.inspect}, offset: #{@offset.inspect}>"
93
+ end
94
+ end
95
+ end