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,267 @@
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
+ # Represents a product.
8
+ class Product < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The unique ID associated with product.
13
+ # @return [Integer]
14
+ attr_accessor :product_id
15
+
16
+ # The barcode number of the product. This is the
17
+ # `PurchasedItems[].BarcodeId` returned from GET Sales.
18
+ # @return [String]
19
+ attr_accessor :id
20
+
21
+ # The revenue category ID of the product. Use this ID when calling the GET
22
+ # Categories endpoint.
23
+ # @return [Integer]
24
+ attr_accessor :category_id
25
+
26
+ # The SubCategory ID of the product. Use this ID when calling the GET
27
+ # Categories endpoint.
28
+ # @return [Integer]
29
+ attr_accessor :sub_category_id
30
+
31
+ # The SecondaryCategory ID of the product. Use this ID when calling the GET
32
+ # Categories endpoint.
33
+ # @return [Integer]
34
+ attr_accessor :secondary_category_id
35
+
36
+ # The price of the product.
37
+ # @return [Float]
38
+ attr_accessor :price
39
+
40
+ # If tax inclusive-pricing is enabled, this field shows how much tax was
41
+ # added to the price. To fetch this value `LocationId` must be passed as a
42
+ # query parameter.
43
+ # @return [Float]
44
+ attr_accessor :tax_included
45
+
46
+ # The tax rate that was applied to this purchase. To fetch this value
47
+ # `LocationId` must be passed as a query parameter.
48
+ # @return [Float]
49
+ attr_accessor :tax_rate
50
+
51
+ # The unique ID of the product group.
52
+ # @return [Integer]
53
+ attr_accessor :group_id
54
+
55
+ # The name of the product.
56
+ # @return [String]
57
+ attr_accessor :name
58
+
59
+ # The online price of the product.
60
+ # @return [Float]
61
+ attr_accessor :online_price
62
+
63
+ # A short text description of the product.
64
+ # @return [String]
65
+ attr_accessor :short_description
66
+
67
+ # A long, more detailed text description of the product.
68
+ # @return [String]
69
+ attr_accessor :long_description
70
+
71
+ # The Type group of the product.
72
+ # @return [Integer]
73
+ attr_accessor :type_group
74
+
75
+ # The unique ID of the supplier of product.
76
+ # @return [Integer]
77
+ attr_accessor :supplier_id
78
+
79
+ # The Supplier Name of the product.
80
+ # @return [String]
81
+ attr_accessor :supplier_name
82
+
83
+ # The URL of the image associated with this product.
84
+ # @return [String]
85
+ attr_accessor :image_url
86
+
87
+ # A color used by products.
88
+ # @return [Color]
89
+ attr_accessor :color
90
+
91
+ # A color used by products.
92
+ # @return [Size]
93
+ attr_accessor :size
94
+
95
+ # The ID number attributed to the product by the manufacturer.
96
+ # @return [String]
97
+ attr_accessor :manufacturer_id
98
+
99
+ # A mapping from model property names to API property names.
100
+ def self.names
101
+ @_hash = {} if @_hash.nil?
102
+ @_hash['product_id'] = 'ProductId'
103
+ @_hash['id'] = 'Id'
104
+ @_hash['category_id'] = 'CategoryId'
105
+ @_hash['sub_category_id'] = 'SubCategoryId'
106
+ @_hash['secondary_category_id'] = 'SecondaryCategoryId'
107
+ @_hash['price'] = 'Price'
108
+ @_hash['tax_included'] = 'TaxIncluded'
109
+ @_hash['tax_rate'] = 'TaxRate'
110
+ @_hash['group_id'] = 'GroupId'
111
+ @_hash['name'] = 'Name'
112
+ @_hash['online_price'] = 'OnlinePrice'
113
+ @_hash['short_description'] = 'ShortDescription'
114
+ @_hash['long_description'] = 'LongDescription'
115
+ @_hash['type_group'] = 'TypeGroup'
116
+ @_hash['supplier_id'] = 'SupplierId'
117
+ @_hash['supplier_name'] = 'SupplierName'
118
+ @_hash['image_url'] = 'ImageURL'
119
+ @_hash['color'] = 'Color'
120
+ @_hash['size'] = 'Size'
121
+ @_hash['manufacturer_id'] = 'ManufacturerId'
122
+ @_hash
123
+ end
124
+
125
+ # An array for optional fields
126
+ def self.optionals
127
+ %w[
128
+ product_id
129
+ id
130
+ category_id
131
+ sub_category_id
132
+ secondary_category_id
133
+ price
134
+ tax_included
135
+ tax_rate
136
+ group_id
137
+ name
138
+ online_price
139
+ short_description
140
+ long_description
141
+ type_group
142
+ supplier_id
143
+ supplier_name
144
+ image_url
145
+ color
146
+ size
147
+ manufacturer_id
148
+ ]
149
+ end
150
+
151
+ # An array for nullable fields
152
+ def self.nullables
153
+ []
154
+ end
155
+
156
+ def initialize(product_id = SKIP, id = SKIP, category_id = SKIP,
157
+ sub_category_id = SKIP, secondary_category_id = SKIP,
158
+ price = SKIP, tax_included = SKIP, tax_rate = SKIP,
159
+ group_id = SKIP, name = SKIP, online_price = SKIP,
160
+ short_description = SKIP, long_description = SKIP,
161
+ type_group = SKIP, supplier_id = SKIP, supplier_name = SKIP,
162
+ image_url = SKIP, color = SKIP, size = SKIP,
163
+ manufacturer_id = SKIP)
164
+ @product_id = product_id unless product_id == SKIP
165
+ @id = id unless id == SKIP
166
+ @category_id = category_id unless category_id == SKIP
167
+ @sub_category_id = sub_category_id unless sub_category_id == SKIP
168
+ @secondary_category_id = secondary_category_id unless secondary_category_id == SKIP
169
+ @price = price unless price == SKIP
170
+ @tax_included = tax_included unless tax_included == SKIP
171
+ @tax_rate = tax_rate unless tax_rate == SKIP
172
+ @group_id = group_id unless group_id == SKIP
173
+ @name = name unless name == SKIP
174
+ @online_price = online_price unless online_price == SKIP
175
+ @short_description = short_description unless short_description == SKIP
176
+ @long_description = long_description unless long_description == SKIP
177
+ @type_group = type_group unless type_group == SKIP
178
+ @supplier_id = supplier_id unless supplier_id == SKIP
179
+ @supplier_name = supplier_name unless supplier_name == SKIP
180
+ @image_url = image_url unless image_url == SKIP
181
+ @color = color unless color == SKIP
182
+ @size = size unless size == SKIP
183
+ @manufacturer_id = manufacturer_id unless manufacturer_id == SKIP
184
+ end
185
+
186
+ # Creates an instance of the object from a hash.
187
+ def self.from_hash(hash)
188
+ return nil unless hash
189
+
190
+ # Extract variables from the hash.
191
+ product_id = hash.key?('ProductId') ? hash['ProductId'] : SKIP
192
+ id = hash.key?('Id') ? hash['Id'] : SKIP
193
+ category_id = hash.key?('CategoryId') ? hash['CategoryId'] : SKIP
194
+ sub_category_id =
195
+ hash.key?('SubCategoryId') ? hash['SubCategoryId'] : SKIP
196
+ secondary_category_id =
197
+ hash.key?('SecondaryCategoryId') ? hash['SecondaryCategoryId'] : SKIP
198
+ price = hash.key?('Price') ? hash['Price'] : SKIP
199
+ tax_included = hash.key?('TaxIncluded') ? hash['TaxIncluded'] : SKIP
200
+ tax_rate = hash.key?('TaxRate') ? hash['TaxRate'] : SKIP
201
+ group_id = hash.key?('GroupId') ? hash['GroupId'] : SKIP
202
+ name = hash.key?('Name') ? hash['Name'] : SKIP
203
+ online_price = hash.key?('OnlinePrice') ? hash['OnlinePrice'] : SKIP
204
+ short_description =
205
+ hash.key?('ShortDescription') ? hash['ShortDescription'] : SKIP
206
+ long_description =
207
+ hash.key?('LongDescription') ? hash['LongDescription'] : SKIP
208
+ type_group = hash.key?('TypeGroup') ? hash['TypeGroup'] : SKIP
209
+ supplier_id = hash.key?('SupplierId') ? hash['SupplierId'] : SKIP
210
+ supplier_name = hash.key?('SupplierName') ? hash['SupplierName'] : SKIP
211
+ image_url = hash.key?('ImageURL') ? hash['ImageURL'] : SKIP
212
+ color = Color.from_hash(hash['Color']) if hash['Color']
213
+ size = Size.from_hash(hash['Size']) if hash['Size']
214
+ manufacturer_id =
215
+ hash.key?('ManufacturerId') ? hash['ManufacturerId'] : SKIP
216
+
217
+ # Create object from extracted values.
218
+ Product.new(product_id,
219
+ id,
220
+ category_id,
221
+ sub_category_id,
222
+ secondary_category_id,
223
+ price,
224
+ tax_included,
225
+ tax_rate,
226
+ group_id,
227
+ name,
228
+ online_price,
229
+ short_description,
230
+ long_description,
231
+ type_group,
232
+ supplier_id,
233
+ supplier_name,
234
+ image_url,
235
+ color,
236
+ size,
237
+ manufacturer_id)
238
+ end
239
+
240
+ # Provides a human-readable string representation of the object.
241
+ def to_s
242
+ class_name = self.class.name.split('::').last
243
+ "<#{class_name} product_id: #{@product_id}, id: #{@id}, category_id: #{@category_id},"\
244
+ " sub_category_id: #{@sub_category_id}, secondary_category_id: #{@secondary_category_id},"\
245
+ " price: #{@price}, tax_included: #{@tax_included}, tax_rate: #{@tax_rate}, group_id:"\
246
+ " #{@group_id}, name: #{@name}, online_price: #{@online_price}, short_description:"\
247
+ " #{@short_description}, long_description: #{@long_description}, type_group: #{@type_group},"\
248
+ " supplier_id: #{@supplier_id}, supplier_name: #{@supplier_name}, image_url: #{@image_url},"\
249
+ " color: #{@color}, size: #{@size}, manufacturer_id: #{@manufacturer_id}>"
250
+ end
251
+
252
+ # Provides a debugging-friendly string with detailed object information.
253
+ def inspect
254
+ class_name = self.class.name.split('::').last
255
+ "<#{class_name} product_id: #{@product_id.inspect}, id: #{@id.inspect}, category_id:"\
256
+ " #{@category_id.inspect}, sub_category_id: #{@sub_category_id.inspect},"\
257
+ " secondary_category_id: #{@secondary_category_id.inspect}, price: #{@price.inspect},"\
258
+ " tax_included: #{@tax_included.inspect}, tax_rate: #{@tax_rate.inspect}, group_id:"\
259
+ " #{@group_id.inspect}, name: #{@name.inspect}, online_price: #{@online_price.inspect},"\
260
+ " short_description: #{@short_description.inspect}, long_description:"\
261
+ " #{@long_description.inspect}, type_group: #{@type_group.inspect}, supplier_id:"\
262
+ " #{@supplier_id.inspect}, supplier_name: #{@supplier_name.inspect}, image_url:"\
263
+ " #{@image_url.inspect}, color: #{@color.inspect}, size: #{@size.inspect}, manufacturer_id:"\
264
+ " #{@manufacturer_id.inspect}>"
265
+ end
266
+ end
267
+ end
@@ -0,0 +1,173 @@
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
+ # ProductsInventory Model.
9
+ class ProductsInventory < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # A ProductId of the product.
14
+ # @return [Integer]
15
+ attr_accessor :product_id
16
+
17
+ # The Id is barcode Id of the product.
18
+ # @return [String]
19
+ attr_accessor :barcode_id
20
+
21
+ # The LocationId of the product.
22
+ # @return [Integer]
23
+ attr_accessor :location_id
24
+
25
+ # UnitsLogged of the product.
26
+ # @return [Integer]
27
+ attr_accessor :units_logged
28
+
29
+ # UnitsSold of the product.
30
+ # @return [Integer]
31
+ attr_accessor :units_sold
32
+
33
+ # The units in stock of the product
34
+ # @return [Integer]
35
+ attr_accessor :units_in_stock
36
+
37
+ # ReorderLevel of the product.
38
+ # @return [Integer]
39
+ attr_accessor :reorder_level
40
+
41
+ # MaxLevel of the product.
42
+ # @return [Integer]
43
+ attr_accessor :max_level
44
+
45
+ # CreatedDateTimeUTC of the product.
46
+ # @return [DateTime]
47
+ attr_accessor :created_date_time_utc
48
+
49
+ # ModifiedDateTimeUTC of the product.
50
+ # @return [DateTime]
51
+ attr_accessor :modified_date_time_utc
52
+
53
+ # A mapping from model property names to API property names.
54
+ def self.names
55
+ @_hash = {} if @_hash.nil?
56
+ @_hash['product_id'] = 'ProductId'
57
+ @_hash['barcode_id'] = 'BarcodeId'
58
+ @_hash['location_id'] = 'LocationId'
59
+ @_hash['units_logged'] = 'UnitsLogged'
60
+ @_hash['units_sold'] = 'UnitsSold'
61
+ @_hash['units_in_stock'] = 'UnitsInStock'
62
+ @_hash['reorder_level'] = 'ReorderLevel'
63
+ @_hash['max_level'] = 'MaxLevel'
64
+ @_hash['created_date_time_utc'] = 'CreatedDateTimeUTC'
65
+ @_hash['modified_date_time_utc'] = 'ModifiedDateTimeUTC'
66
+ @_hash
67
+ end
68
+
69
+ # An array for optional fields
70
+ def self.optionals
71
+ %w[
72
+ product_id
73
+ barcode_id
74
+ location_id
75
+ units_logged
76
+ units_sold
77
+ units_in_stock
78
+ reorder_level
79
+ max_level
80
+ created_date_time_utc
81
+ modified_date_time_utc
82
+ ]
83
+ end
84
+
85
+ # An array for nullable fields
86
+ def self.nullables
87
+ []
88
+ end
89
+
90
+ def initialize(product_id = SKIP, barcode_id = SKIP, location_id = SKIP,
91
+ units_logged = SKIP, units_sold = SKIP,
92
+ units_in_stock = SKIP, reorder_level = SKIP,
93
+ max_level = SKIP, created_date_time_utc = SKIP,
94
+ modified_date_time_utc = SKIP)
95
+ @product_id = product_id unless product_id == SKIP
96
+ @barcode_id = barcode_id unless barcode_id == SKIP
97
+ @location_id = location_id unless location_id == SKIP
98
+ @units_logged = units_logged unless units_logged == SKIP
99
+ @units_sold = units_sold unless units_sold == SKIP
100
+ @units_in_stock = units_in_stock unless units_in_stock == SKIP
101
+ @reorder_level = reorder_level unless reorder_level == SKIP
102
+ @max_level = max_level unless max_level == SKIP
103
+ @created_date_time_utc = created_date_time_utc unless created_date_time_utc == SKIP
104
+ @modified_date_time_utc = modified_date_time_utc unless modified_date_time_utc == SKIP
105
+ end
106
+
107
+ # Creates an instance of the object from a hash.
108
+ def self.from_hash(hash)
109
+ return nil unless hash
110
+
111
+ # Extract variables from the hash.
112
+ product_id = hash.key?('ProductId') ? hash['ProductId'] : SKIP
113
+ barcode_id = hash.key?('BarcodeId') ? hash['BarcodeId'] : SKIP
114
+ location_id = hash.key?('LocationId') ? hash['LocationId'] : SKIP
115
+ units_logged = hash.key?('UnitsLogged') ? hash['UnitsLogged'] : SKIP
116
+ units_sold = hash.key?('UnitsSold') ? hash['UnitsSold'] : SKIP
117
+ units_in_stock = hash.key?('UnitsInStock') ? hash['UnitsInStock'] : SKIP
118
+ reorder_level = hash.key?('ReorderLevel') ? hash['ReorderLevel'] : SKIP
119
+ max_level = hash.key?('MaxLevel') ? hash['MaxLevel'] : SKIP
120
+ created_date_time_utc = if hash.key?('CreatedDateTimeUTC')
121
+ (DateTimeHelper.from_rfc3339(hash['CreatedDateTimeUTC']) if hash['CreatedDateTimeUTC'])
122
+ else
123
+ SKIP
124
+ end
125
+ modified_date_time_utc = if hash.key?('ModifiedDateTimeUTC')
126
+ (DateTimeHelper.from_rfc3339(hash['ModifiedDateTimeUTC']) if hash['ModifiedDateTimeUTC'])
127
+ else
128
+ SKIP
129
+ end
130
+
131
+ # Create object from extracted values.
132
+ ProductsInventory.new(product_id,
133
+ barcode_id,
134
+ location_id,
135
+ units_logged,
136
+ units_sold,
137
+ units_in_stock,
138
+ reorder_level,
139
+ max_level,
140
+ created_date_time_utc,
141
+ modified_date_time_utc)
142
+ end
143
+
144
+ def to_custom_created_date_time_utc
145
+ DateTimeHelper.to_rfc3339(created_date_time_utc)
146
+ end
147
+
148
+ def to_custom_modified_date_time_utc
149
+ DateTimeHelper.to_rfc3339(modified_date_time_utc)
150
+ end
151
+
152
+ # Provides a human-readable string representation of the object.
153
+ def to_s
154
+ class_name = self.class.name.split('::').last
155
+ "<#{class_name} product_id: #{@product_id}, barcode_id: #{@barcode_id}, location_id:"\
156
+ " #{@location_id}, units_logged: #{@units_logged}, units_sold: #{@units_sold},"\
157
+ " units_in_stock: #{@units_in_stock}, reorder_level: #{@reorder_level}, max_level:"\
158
+ " #{@max_level}, created_date_time_utc: #{@created_date_time_utc}, modified_date_time_utc:"\
159
+ " #{@modified_date_time_utc}>"
160
+ end
161
+
162
+ # Provides a debugging-friendly string with detailed object information.
163
+ def inspect
164
+ class_name = self.class.name.split('::').last
165
+ "<#{class_name} product_id: #{@product_id.inspect}, barcode_id: #{@barcode_id.inspect},"\
166
+ " location_id: #{@location_id.inspect}, units_logged: #{@units_logged.inspect}, units_sold:"\
167
+ " #{@units_sold.inspect}, units_in_stock: #{@units_in_stock.inspect}, reorder_level:"\
168
+ " #{@reorder_level.inspect}, max_level: #{@max_level.inspect}, created_date_time_utc:"\
169
+ " #{@created_date_time_utc.inspect}, modified_date_time_utc:"\
170
+ " #{@modified_date_time_utc.inspect}>"
171
+ end
172
+ end
173
+ end
@@ -0,0 +1,129 @@
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
+ # Program Model.
8
+ class Program < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The service category’s ID.
13
+ # @return [Integer]
14
+ attr_accessor :id
15
+
16
+ # The name of this service category.
17
+ # @return [String]
18
+ attr_accessor :name
19
+
20
+ # The service category’s schedule type. Possible values are:
21
+ # * All
22
+ # * Class
23
+ # * Enrollment
24
+ # * Appointment
25
+ # * Resource
26
+ # * Arrival
27
+ # @return [ScheduleTypeEnum]
28
+ attr_accessor :schedule_type
29
+
30
+ # The offset to use for the service category.
31
+ # @return [Integer]
32
+ attr_accessor :cancel_offset
33
+
34
+ # The content delivery platform(s) used by the service category. Possible
35
+ # values are:
36
+ # * InPerson
37
+ # * Livestream:Mindbody
38
+ # * Livestream:Other
39
+ # @return [Array[String]]
40
+ attr_accessor :content_formats
41
+
42
+ # The content delivery platform(s) used by the service category. Possible
43
+ # values are:
44
+ # * InPerson
45
+ # * Livestream:Mindbody
46
+ # * Livestream:Other
47
+ # @return [PricingRelationships]
48
+ attr_accessor :pricing_relationships
49
+
50
+ # A mapping from model property names to API property names.
51
+ def self.names
52
+ @_hash = {} if @_hash.nil?
53
+ @_hash['id'] = 'Id'
54
+ @_hash['name'] = 'Name'
55
+ @_hash['schedule_type'] = 'ScheduleType'
56
+ @_hash['cancel_offset'] = 'CancelOffset'
57
+ @_hash['content_formats'] = 'ContentFormats'
58
+ @_hash['pricing_relationships'] = 'PricingRelationships'
59
+ @_hash
60
+ end
61
+
62
+ # An array for optional fields
63
+ def self.optionals
64
+ %w[
65
+ id
66
+ name
67
+ schedule_type
68
+ cancel_offset
69
+ content_formats
70
+ pricing_relationships
71
+ ]
72
+ end
73
+
74
+ # An array for nullable fields
75
+ def self.nullables
76
+ []
77
+ end
78
+
79
+ def initialize(id = SKIP, name = SKIP, schedule_type = SKIP,
80
+ cancel_offset = SKIP, content_formats = SKIP,
81
+ pricing_relationships = SKIP)
82
+ @id = id unless id == SKIP
83
+ @name = name unless name == SKIP
84
+ @schedule_type = schedule_type unless schedule_type == SKIP
85
+ @cancel_offset = cancel_offset unless cancel_offset == SKIP
86
+ @content_formats = content_formats unless content_formats == SKIP
87
+ @pricing_relationships = pricing_relationships unless pricing_relationships == SKIP
88
+ end
89
+
90
+ # Creates an instance of the object from a hash.
91
+ def self.from_hash(hash)
92
+ return nil unless hash
93
+
94
+ # Extract variables from the hash.
95
+ id = hash.key?('Id') ? hash['Id'] : SKIP
96
+ name = hash.key?('Name') ? hash['Name'] : SKIP
97
+ schedule_type = hash.key?('ScheduleType') ? hash['ScheduleType'] : SKIP
98
+ cancel_offset = hash.key?('CancelOffset') ? hash['CancelOffset'] : SKIP
99
+ content_formats =
100
+ hash.key?('ContentFormats') ? hash['ContentFormats'] : SKIP
101
+ pricing_relationships = PricingRelationships.from_hash(hash['PricingRelationships']) if
102
+ hash['PricingRelationships']
103
+
104
+ # Create object from extracted values.
105
+ Program.new(id,
106
+ name,
107
+ schedule_type,
108
+ cancel_offset,
109
+ content_formats,
110
+ pricing_relationships)
111
+ end
112
+
113
+ # Provides a human-readable string representation of the object.
114
+ def to_s
115
+ class_name = self.class.name.split('::').last
116
+ "<#{class_name} id: #{@id}, name: #{@name}, schedule_type: #{@schedule_type},"\
117
+ " cancel_offset: #{@cancel_offset}, content_formats: #{@content_formats},"\
118
+ " pricing_relationships: #{@pricing_relationships}>"
119
+ end
120
+
121
+ # Provides a debugging-friendly string with detailed object information.
122
+ def inspect
123
+ class_name = self.class.name.split('::').last
124
+ "<#{class_name} id: #{@id.inspect}, name: #{@name.inspect}, schedule_type:"\
125
+ " #{@schedule_type.inspect}, cancel_offset: #{@cancel_offset.inspect}, content_formats:"\
126
+ " #{@content_formats.inspect}, pricing_relationships: #{@pricing_relationships.inspect}>"
127
+ end
128
+ end
129
+ end