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,356 @@
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
+ # Represents a request to retrieve client services with various filtering
9
+ # options. Note: if you want to request for a single client, use
10
+ # UniqueClientId or ClientId. For multiple clients, use UniqueClientIds or
11
+ # ClientIds.
12
+ class GetClientServicesRequest < BaseModel
13
+ SKIP = Object.new
14
+ private_constant :SKIP
15
+
16
+ # The ID of the client to query. The results are a list of pricing options
17
+ # that the client has purchased. Note that “service” and “pricing option”
18
+ # are synonymous in this section of the documentation.
19
+ # @return [String]
20
+ attr_accessor :client_id
21
+
22
+ # The unique ID of the client to query. Note that UniqueClientId takes
23
+ # precedence over ClientId.
24
+ # @return [Integer]
25
+ attr_accessor :unique_client_id
26
+
27
+ # The IDs of the clients to query. The results are a list of pricing options
28
+ # that the clients have purchased.
29
+ # ClientId parameter takes priority over ClientIds due to backward
30
+ # compatibility.
31
+ # So if you want to use ClientIds, then ClientId needs to be empty.
32
+ # Either of ClientId or ClientIds need to be specified
33
+ # @return [Array[String]]
34
+ attr_accessor :client_ids
35
+
36
+ # The Unique IDs of the clients to query. Note that UniqueClientIds
37
+ # collection takes precedence over ClientIds collection.
38
+ # @return [Array[Integer]]
39
+ attr_accessor :unique_client_ids
40
+
41
+ # Filters results to only those pricing options that can be used to pay for
42
+ # this class.
43
+ # @return [Integer]
44
+ attr_accessor :class_id
45
+
46
+ # Filters results to pricing options that belong to one of the given program
47
+ # IDs.
48
+ # @return [Array[Integer]]
49
+ attr_accessor :program_ids
50
+
51
+ # Filters results to pricing options that will pay for the given session
52
+ # type ID. Use this to find pricing options that will pay for a specific
53
+ # appointment type.
54
+ # @return [Integer]
55
+ attr_accessor :session_type_id
56
+
57
+ # Filters results to pricing options that can be used at the listed location
58
+ # IDs.
59
+ # @return [Array[Integer]]
60
+ attr_accessor :location_ids
61
+
62
+ # A filter on the minimum number of visits a service can pay for.
63
+ # @return [Integer]
64
+ attr_accessor :visit_count
65
+
66
+ # Filters results to pricing options that are purchased on or after this
67
+ # date.
68
+ # Default: **today’s date**
69
+ # @return [DateTime]
70
+ attr_accessor :start_date
71
+
72
+ # Filters results to pricing options that are purchased on or before this
73
+ # date.
74
+ # Default: **today’s date**
75
+ # @return [DateTime]
76
+ attr_accessor :end_date
77
+
78
+ # When `true`, includes active services only.
79
+ # Default: **false**
80
+ # @return [TrueClass | FalseClass]
81
+ attr_accessor :show_active_only
82
+
83
+ # Used to retrieve a client’s pricing options from multiple sites within an
84
+ # organization. When included and set to `true`, it searches a maximum of
85
+ # ten sites with which this client is associated. When a client is
86
+ # associated with more than ten sites, use `ClientAssociatedSitesOffset` as
87
+ # many times as needed to search the additional sites with which the client
88
+ # is associated. You can use the `CrossRegionalClientAssociations` value
89
+ # from `GET CrossRegionalClientAssociations` to determine how many sites the
90
+ # client is associated with. Note that a `SiteID` is returned and populated
91
+ # in the `ClientServices` response when `CrossRegionalLookup` is set to
92
+ # `true`.
93
+ # Default: **false**
94
+ # @return [TrueClass | FalseClass]
95
+ attr_accessor :cross_regional_lookup
96
+
97
+ # Used to specify if the number of cross regional sites used to search for
98
+ # client’s pricing options should be ignored.
99
+ # Default: **false**
100
+ # @return [TrueClass | FalseClass]
101
+ attr_accessor :ignore_cross_regional_site_limit
102
+
103
+ # Used to retrieve a client’s pricing options from multiple sites within an
104
+ # organization when the client is associated with more than ten sites. To
105
+ # change which ten sites are searched, change this offset value. A value of
106
+ # 0 means that no sites are skipped and the first ten sites are returned.
107
+ # You can use the `CrossRegionalClientAssociations` value from `GET
108
+ # CrossRegionalClientAssociations` to determine how many sites the client is
109
+ # associated with. Note that you must always have `CrossRegionalLookup` set
110
+ # to `true` to use this parameter.<br />
111
+ # Default: **0**
112
+ # For example, if a client is associated with 25 sites, you need to call
113
+ # `GetClientServices` three times, as follows:
114
+ # * Use `GET CrossRegionalClientAssociations` to determine how many sites a
115
+ # client is associated with, which tells you how many additional calls you
116
+ # need to make.
117
+ # * Either omit `ClientAssociatedSitesOffset` or set it to 0 to return the
118
+ # client’s services (pricing options) from sites 1-10.
119
+ # * Set `ClientAssociatedSitesOffset` to 10 to return the client pricing
120
+ # options from sites 11-20
121
+ # * Set `ClientAssociatedSitesOffset` to 20 to return the client pricing
122
+ # options from sites 21-25
123
+ # @return [Integer]
124
+ attr_accessor :client_associated_sites_offset
125
+
126
+ # When this flag is set to `true`, will exclude inactive sites from the
127
+ # response.
128
+ # Default: **false**
129
+ # @return [TrueClass | FalseClass]
130
+ attr_accessor :exclude_inactive_sites
131
+
132
+ # When this flag is set to `true`, the date filtering will use activate date
133
+ # to filter the pricing options.
134
+ # When this flag is set to `false`, the date filtering will use purchase
135
+ # date to filter the pricing options.
136
+ # Default: **false**
137
+ # @return [TrueClass | FalseClass]
138
+ attr_accessor :use_activate_date
139
+
140
+ # Filters results to pricing options which are associated with one of the
141
+ # ClassScheduleIDs
142
+ # @return [Array[Integer]]
143
+ attr_accessor :class_schedule_id
144
+
145
+ # Number of results to include, defaults to 100
146
+ # @return [Integer]
147
+ attr_accessor :limit
148
+
149
+ # Page offset, defaults to 0.
150
+ # @return [Integer]
151
+ attr_accessor :offset
152
+
153
+ # A mapping from model property names to API property names.
154
+ def self.names
155
+ @_hash = {} if @_hash.nil?
156
+ @_hash['client_id'] = 'ClientId'
157
+ @_hash['unique_client_id'] = 'UniqueClientId'
158
+ @_hash['client_ids'] = 'ClientIds'
159
+ @_hash['unique_client_ids'] = 'UniqueClientIds'
160
+ @_hash['class_id'] = 'ClassId'
161
+ @_hash['program_ids'] = 'ProgramIds'
162
+ @_hash['session_type_id'] = 'SessionTypeId'
163
+ @_hash['location_ids'] = 'LocationIds'
164
+ @_hash['visit_count'] = 'VisitCount'
165
+ @_hash['start_date'] = 'StartDate'
166
+ @_hash['end_date'] = 'EndDate'
167
+ @_hash['show_active_only'] = 'ShowActiveOnly'
168
+ @_hash['cross_regional_lookup'] = 'CrossRegionalLookup'
169
+ @_hash['ignore_cross_regional_site_limit'] =
170
+ 'IgnoreCrossRegionalSiteLimit'
171
+ @_hash['client_associated_sites_offset'] = 'ClientAssociatedSitesOffset'
172
+ @_hash['exclude_inactive_sites'] = 'ExcludeInactiveSites'
173
+ @_hash['use_activate_date'] = 'UseActivateDate'
174
+ @_hash['class_schedule_id'] = 'ClassScheduleID'
175
+ @_hash['limit'] = 'Limit'
176
+ @_hash['offset'] = 'Offset'
177
+ @_hash
178
+ end
179
+
180
+ # An array for optional fields
181
+ def self.optionals
182
+ %w[
183
+ client_id
184
+ unique_client_id
185
+ client_ids
186
+ unique_client_ids
187
+ class_id
188
+ program_ids
189
+ session_type_id
190
+ location_ids
191
+ visit_count
192
+ start_date
193
+ end_date
194
+ show_active_only
195
+ cross_regional_lookup
196
+ ignore_cross_regional_site_limit
197
+ client_associated_sites_offset
198
+ exclude_inactive_sites
199
+ use_activate_date
200
+ class_schedule_id
201
+ limit
202
+ offset
203
+ ]
204
+ end
205
+
206
+ # An array for nullable fields
207
+ def self.nullables
208
+ []
209
+ end
210
+
211
+ def initialize(client_id = SKIP, unique_client_id = SKIP, client_ids = SKIP,
212
+ unique_client_ids = SKIP, class_id = SKIP,
213
+ program_ids = SKIP, session_type_id = SKIP,
214
+ location_ids = SKIP, visit_count = SKIP, start_date = SKIP,
215
+ end_date = SKIP, show_active_only = SKIP,
216
+ cross_regional_lookup = SKIP,
217
+ ignore_cross_regional_site_limit = SKIP,
218
+ client_associated_sites_offset = SKIP,
219
+ exclude_inactive_sites = SKIP, use_activate_date = SKIP,
220
+ class_schedule_id = SKIP, limit = SKIP, offset = SKIP)
221
+ @client_id = client_id unless client_id == SKIP
222
+ @unique_client_id = unique_client_id unless unique_client_id == SKIP
223
+ @client_ids = client_ids unless client_ids == SKIP
224
+ @unique_client_ids = unique_client_ids unless unique_client_ids == SKIP
225
+ @class_id = class_id unless class_id == SKIP
226
+ @program_ids = program_ids unless program_ids == SKIP
227
+ @session_type_id = session_type_id unless session_type_id == SKIP
228
+ @location_ids = location_ids unless location_ids == SKIP
229
+ @visit_count = visit_count unless visit_count == SKIP
230
+ @start_date = start_date unless start_date == SKIP
231
+ @end_date = end_date unless end_date == SKIP
232
+ @show_active_only = show_active_only unless show_active_only == SKIP
233
+ @cross_regional_lookup = cross_regional_lookup unless cross_regional_lookup == SKIP
234
+ unless ignore_cross_regional_site_limit == SKIP
235
+ @ignore_cross_regional_site_limit =
236
+ ignore_cross_regional_site_limit
237
+ end
238
+ unless client_associated_sites_offset == SKIP
239
+ @client_associated_sites_offset =
240
+ client_associated_sites_offset
241
+ end
242
+ @exclude_inactive_sites = exclude_inactive_sites unless exclude_inactive_sites == SKIP
243
+ @use_activate_date = use_activate_date unless use_activate_date == SKIP
244
+ @class_schedule_id = class_schedule_id unless class_schedule_id == SKIP
245
+ @limit = limit unless limit == SKIP
246
+ @offset = offset unless offset == SKIP
247
+ end
248
+
249
+ # Creates an instance of the object from a hash.
250
+ def self.from_hash(hash)
251
+ return nil unless hash
252
+
253
+ # Extract variables from the hash.
254
+ client_id = hash.key?('ClientId') ? hash['ClientId'] : SKIP
255
+ unique_client_id =
256
+ hash.key?('UniqueClientId') ? hash['UniqueClientId'] : SKIP
257
+ client_ids = hash.key?('ClientIds') ? hash['ClientIds'] : SKIP
258
+ unique_client_ids =
259
+ hash.key?('UniqueClientIds') ? hash['UniqueClientIds'] : SKIP
260
+ class_id = hash.key?('ClassId') ? hash['ClassId'] : SKIP
261
+ program_ids = hash.key?('ProgramIds') ? hash['ProgramIds'] : SKIP
262
+ session_type_id =
263
+ hash.key?('SessionTypeId') ? hash['SessionTypeId'] : SKIP
264
+ location_ids = hash.key?('LocationIds') ? hash['LocationIds'] : SKIP
265
+ visit_count = hash.key?('VisitCount') ? hash['VisitCount'] : SKIP
266
+ start_date = if hash.key?('StartDate')
267
+ (DateTimeHelper.from_rfc3339(hash['StartDate']) if hash['StartDate'])
268
+ else
269
+ SKIP
270
+ end
271
+ end_date = if hash.key?('EndDate')
272
+ (DateTimeHelper.from_rfc3339(hash['EndDate']) if hash['EndDate'])
273
+ else
274
+ SKIP
275
+ end
276
+ show_active_only =
277
+ hash.key?('ShowActiveOnly') ? hash['ShowActiveOnly'] : SKIP
278
+ cross_regional_lookup =
279
+ hash.key?('CrossRegionalLookup') ? hash['CrossRegionalLookup'] : SKIP
280
+ ignore_cross_regional_site_limit =
281
+ hash.key?('IgnoreCrossRegionalSiteLimit') ? hash['IgnoreCrossRegionalSiteLimit'] : SKIP
282
+ client_associated_sites_offset =
283
+ hash.key?('ClientAssociatedSitesOffset') ? hash['ClientAssociatedSitesOffset'] : SKIP
284
+ exclude_inactive_sites =
285
+ hash.key?('ExcludeInactiveSites') ? hash['ExcludeInactiveSites'] : SKIP
286
+ use_activate_date =
287
+ hash.key?('UseActivateDate') ? hash['UseActivateDate'] : SKIP
288
+ class_schedule_id =
289
+ hash.key?('ClassScheduleID') ? hash['ClassScheduleID'] : SKIP
290
+ limit = hash.key?('Limit') ? hash['Limit'] : SKIP
291
+ offset = hash.key?('Offset') ? hash['Offset'] : SKIP
292
+
293
+ # Create object from extracted values.
294
+ GetClientServicesRequest.new(client_id,
295
+ unique_client_id,
296
+ client_ids,
297
+ unique_client_ids,
298
+ class_id,
299
+ program_ids,
300
+ session_type_id,
301
+ location_ids,
302
+ visit_count,
303
+ start_date,
304
+ end_date,
305
+ show_active_only,
306
+ cross_regional_lookup,
307
+ ignore_cross_regional_site_limit,
308
+ client_associated_sites_offset,
309
+ exclude_inactive_sites,
310
+ use_activate_date,
311
+ class_schedule_id,
312
+ limit,
313
+ offset)
314
+ end
315
+
316
+ def to_custom_start_date
317
+ DateTimeHelper.to_rfc3339(start_date)
318
+ end
319
+
320
+ def to_custom_end_date
321
+ DateTimeHelper.to_rfc3339(end_date)
322
+ end
323
+
324
+ # Provides a human-readable string representation of the object.
325
+ def to_s
326
+ class_name = self.class.name.split('::').last
327
+ "<#{class_name} client_id: #{@client_id}, unique_client_id: #{@unique_client_id},"\
328
+ " client_ids: #{@client_ids}, unique_client_ids: #{@unique_client_ids}, class_id:"\
329
+ " #{@class_id}, program_ids: #{@program_ids}, session_type_id: #{@session_type_id},"\
330
+ " location_ids: #{@location_ids}, visit_count: #{@visit_count}, start_date: #{@start_date},"\
331
+ " end_date: #{@end_date}, show_active_only: #{@show_active_only}, cross_regional_lookup:"\
332
+ " #{@cross_regional_lookup}, ignore_cross_regional_site_limit:"\
333
+ " #{@ignore_cross_regional_site_limit}, client_associated_sites_offset:"\
334
+ " #{@client_associated_sites_offset}, exclude_inactive_sites: #{@exclude_inactive_sites},"\
335
+ " use_activate_date: #{@use_activate_date}, class_schedule_id: #{@class_schedule_id}, limit:"\
336
+ " #{@limit}, offset: #{@offset}>"
337
+ end
338
+
339
+ # Provides a debugging-friendly string with detailed object information.
340
+ def inspect
341
+ class_name = self.class.name.split('::').last
342
+ "<#{class_name} client_id: #{@client_id.inspect}, unique_client_id:"\
343
+ " #{@unique_client_id.inspect}, client_ids: #{@client_ids.inspect}, unique_client_ids:"\
344
+ " #{@unique_client_ids.inspect}, class_id: #{@class_id.inspect}, program_ids:"\
345
+ " #{@program_ids.inspect}, session_type_id: #{@session_type_id.inspect}, location_ids:"\
346
+ " #{@location_ids.inspect}, visit_count: #{@visit_count.inspect}, start_date:"\
347
+ " #{@start_date.inspect}, end_date: #{@end_date.inspect}, show_active_only:"\
348
+ " #{@show_active_only.inspect}, cross_regional_lookup: #{@cross_regional_lookup.inspect},"\
349
+ " ignore_cross_regional_site_limit: #{@ignore_cross_regional_site_limit.inspect},"\
350
+ " client_associated_sites_offset: #{@client_associated_sites_offset.inspect},"\
351
+ " exclude_inactive_sites: #{@exclude_inactive_sites.inspect}, use_activate_date:"\
352
+ " #{@use_activate_date.inspect}, class_schedule_id: #{@class_schedule_id.inspect}, limit:"\
353
+ " #{@limit.inspect}, offset: #{@offset.inspect}>"
354
+ end
355
+ end
356
+ 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
+ # GetClientServicesResponse Model.
8
+ class GetClientServicesResponse < 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 client pricing options.
17
+ # @return [Array[ClientService]]
18
+ attr_accessor :client_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['client_services'] = 'ClientServices'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ %w[
31
+ pagination_response
32
+ client_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, client_services = SKIP)
42
+ @pagination_response = pagination_response unless pagination_response == SKIP
43
+ @client_services = client_services unless client_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
+ client_services = nil
55
+ unless hash['ClientServices'].nil?
56
+ client_services = []
57
+ hash['ClientServices'].each do |structure|
58
+ client_services << (ClientService.from_hash(structure) if structure)
59
+ end
60
+ end
61
+
62
+ client_services = SKIP unless hash.key?('ClientServices')
63
+
64
+ # Create object from extracted values.
65
+ GetClientServicesResponse.new(pagination_response,
66
+ client_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}, client_services:"\
73
+ " #{@client_services}>"
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}, client_services:"\
80
+ " #{@client_services.inspect}>"
81
+ end
82
+ end
83
+ end
@@ -0,0 +1,180 @@
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
+ # GetClientVisitsRequest Model.
9
+ class GetClientVisitsRequest < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # The ID of the requested client.
14
+ # @return [String]
15
+ attr_accessor :client_id
16
+
17
+ # The unique ID of the requested client.
18
+ # Note: you need to provide the 'UniqueClientId' OR the 'ClientId'. If both
19
+ # are provided, the 'UniqueClientId' takes precedence.
20
+ # @return [Integer]
21
+ attr_accessor :unique_client_id
22
+
23
+ # The number of sites to skip when returning the site associated with a
24
+ # client.
25
+ # @return [Integer]
26
+ attr_accessor :client_associated_sites_offset
27
+
28
+ # When `true`, indicates that past and scheduled client visits across all
29
+ # sites in the region are returned.<br />
30
+ # When `false`, indicates that only visits at the current site are returned.
31
+ # @return [TrueClass | FalseClass]
32
+ attr_accessor :cross_regional_lookup
33
+
34
+ # The date past which class visits are not returned.
35
+ # Default: **today's date**
36
+ # @return [DateTime]
37
+ attr_accessor :end_date
38
+
39
+ # The date before which class visits are not returned.
40
+ # Default: **the end date**
41
+ # @return [DateTime]
42
+ attr_accessor :start_date
43
+
44
+ # When `true`, indicates that only visits that have not been paid for are
45
+ # returned.<br />
46
+ # When `false`, indicates that all visits are returned, regardless of
47
+ # whether they have been paid for.<br />
48
+ # Default: **false**
49
+ # @return [TrueClass | FalseClass]
50
+ attr_accessor :unpaids_only
51
+
52
+ # Number of results to include, defaults to 100
53
+ # @return [Integer]
54
+ attr_accessor :limit
55
+
56
+ # Page offset, defaults to 0.
57
+ # @return [Integer]
58
+ attr_accessor :offset
59
+
60
+ # A mapping from model property names to API property names.
61
+ def self.names
62
+ @_hash = {} if @_hash.nil?
63
+ @_hash['client_id'] = 'ClientId'
64
+ @_hash['unique_client_id'] = 'UniqueClientId'
65
+ @_hash['client_associated_sites_offset'] = 'ClientAssociatedSitesOffset'
66
+ @_hash['cross_regional_lookup'] = 'CrossRegionalLookup'
67
+ @_hash['end_date'] = 'EndDate'
68
+ @_hash['start_date'] = 'StartDate'
69
+ @_hash['unpaids_only'] = 'UnpaidsOnly'
70
+ @_hash['limit'] = 'Limit'
71
+ @_hash['offset'] = 'Offset'
72
+ @_hash
73
+ end
74
+
75
+ # An array for optional fields
76
+ def self.optionals
77
+ %w[
78
+ client_id
79
+ unique_client_id
80
+ client_associated_sites_offset
81
+ cross_regional_lookup
82
+ end_date
83
+ start_date
84
+ unpaids_only
85
+ limit
86
+ offset
87
+ ]
88
+ end
89
+
90
+ # An array for nullable fields
91
+ def self.nullables
92
+ []
93
+ end
94
+
95
+ def initialize(client_id = SKIP, unique_client_id = SKIP,
96
+ client_associated_sites_offset = SKIP,
97
+ cross_regional_lookup = SKIP, end_date = SKIP,
98
+ start_date = SKIP, unpaids_only = SKIP, limit = SKIP,
99
+ offset = SKIP)
100
+ @client_id = client_id unless client_id == SKIP
101
+ @unique_client_id = unique_client_id unless unique_client_id == SKIP
102
+ unless client_associated_sites_offset == SKIP
103
+ @client_associated_sites_offset =
104
+ client_associated_sites_offset
105
+ end
106
+ @cross_regional_lookup = cross_regional_lookup unless cross_regional_lookup == SKIP
107
+ @end_date = end_date unless end_date == SKIP
108
+ @start_date = start_date unless start_date == SKIP
109
+ @unpaids_only = unpaids_only unless unpaids_only == SKIP
110
+ @limit = limit unless limit == SKIP
111
+ @offset = offset unless offset == SKIP
112
+ end
113
+
114
+ # Creates an instance of the object from a hash.
115
+ def self.from_hash(hash)
116
+ return nil unless hash
117
+
118
+ # Extract variables from the hash.
119
+ client_id = hash.key?('ClientId') ? hash['ClientId'] : SKIP
120
+ unique_client_id =
121
+ hash.key?('UniqueClientId') ? hash['UniqueClientId'] : SKIP
122
+ client_associated_sites_offset =
123
+ hash.key?('ClientAssociatedSitesOffset') ? hash['ClientAssociatedSitesOffset'] : SKIP
124
+ cross_regional_lookup =
125
+ hash.key?('CrossRegionalLookup') ? hash['CrossRegionalLookup'] : SKIP
126
+ end_date = if hash.key?('EndDate')
127
+ (DateTimeHelper.from_rfc3339(hash['EndDate']) if hash['EndDate'])
128
+ else
129
+ SKIP
130
+ end
131
+ start_date = if hash.key?('StartDate')
132
+ (DateTimeHelper.from_rfc3339(hash['StartDate']) if hash['StartDate'])
133
+ else
134
+ SKIP
135
+ end
136
+ unpaids_only = hash.key?('UnpaidsOnly') ? hash['UnpaidsOnly'] : SKIP
137
+ limit = hash.key?('Limit') ? hash['Limit'] : SKIP
138
+ offset = hash.key?('Offset') ? hash['Offset'] : SKIP
139
+
140
+ # Create object from extracted values.
141
+ GetClientVisitsRequest.new(client_id,
142
+ unique_client_id,
143
+ client_associated_sites_offset,
144
+ cross_regional_lookup,
145
+ end_date,
146
+ start_date,
147
+ unpaids_only,
148
+ limit,
149
+ offset)
150
+ end
151
+
152
+ def to_custom_end_date
153
+ DateTimeHelper.to_rfc3339(end_date)
154
+ end
155
+
156
+ def to_custom_start_date
157
+ DateTimeHelper.to_rfc3339(start_date)
158
+ end
159
+
160
+ # Provides a human-readable string representation of the object.
161
+ def to_s
162
+ class_name = self.class.name.split('::').last
163
+ "<#{class_name} client_id: #{@client_id}, unique_client_id: #{@unique_client_id},"\
164
+ " client_associated_sites_offset: #{@client_associated_sites_offset}, cross_regional_lookup:"\
165
+ " #{@cross_regional_lookup}, end_date: #{@end_date}, start_date: #{@start_date},"\
166
+ " unpaids_only: #{@unpaids_only}, limit: #{@limit}, offset: #{@offset}>"
167
+ end
168
+
169
+ # Provides a debugging-friendly string with detailed object information.
170
+ def inspect
171
+ class_name = self.class.name.split('::').last
172
+ "<#{class_name} client_id: #{@client_id.inspect}, unique_client_id:"\
173
+ " #{@unique_client_id.inspect}, client_associated_sites_offset:"\
174
+ " #{@client_associated_sites_offset.inspect}, cross_regional_lookup:"\
175
+ " #{@cross_regional_lookup.inspect}, end_date: #{@end_date.inspect}, start_date:"\
176
+ " #{@start_date.inspect}, unpaids_only: #{@unpaids_only.inspect}, limit: #{@limit.inspect},"\
177
+ " offset: #{@offset.inspect}>"
178
+ end
179
+ end
180
+ end