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,319 @@
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 add a new appointment, including details such as
9
+ # client information, appointment timing, location, and additional
10
+ # preferences.
11
+ class AddAppointmentRequest < BaseModel
12
+ SKIP = Object.new
13
+ private_constant :SKIP
14
+
15
+ # When `true`, indicates that a payment should be applied to the
16
+ # appointment.
17
+ # <br />Default: **true**
18
+ # @return [TrueClass | FalseClass]
19
+ attr_accessor :apply_payment
20
+
21
+ # The RRSID of the client for whom the new appointment is being made.
22
+ # @return [String]
23
+ attr_accessor :client_id
24
+
25
+ # The duration of the appointment. This parameter is used to change the
26
+ # default duration of an appointment.
27
+ # @return [Integer]
28
+ attr_accessor :duration
29
+
30
+ # The action taken to add this appointment. Possible values are: confirm,
31
+ # unconfirm, arrive, unarrive, cancel, latecancel, complete.
32
+ # @return [String]
33
+ attr_accessor :execute
34
+
35
+ # The end date and time of the new appointment. <br />
36
+ # Default: **StartDateTime**, offset by the staff member’s default
37
+ # appointment duration.
38
+ # @return [DateTime]
39
+ attr_accessor :end_date_time
40
+
41
+ # The client’s service provider gender preference.
42
+ # @return [String]
43
+ attr_accessor :gender_preference
44
+
45
+ # The ID of the location where the new appointment is to take place.
46
+ # @return [Integer]
47
+ attr_accessor :location_id
48
+
49
+ # Any general notes about this appointment.
50
+ # @return [String]
51
+ attr_accessor :notes
52
+
53
+ # If a user has Complementary and Alternative Medicine features enabled,
54
+ # this parameter assigns a provider ID to the appointment.
55
+ # @return [String]
56
+ attr_accessor :provider_id
57
+
58
+ # A list of resource IDs to associate with the new appointment.
59
+ # @return [Array[Integer]]
60
+ attr_accessor :resource_ids
61
+
62
+ # Whether to send client an email for cancellations. An email is sent only
63
+ # if the client has an email address and automatic emails have been set up.
64
+ # <br />Default: **false**
65
+ # @return [TrueClass | FalseClass]
66
+ attr_accessor :send_email
67
+
68
+ # The session type associated with the new appointment.
69
+ # @return [Integer]
70
+ attr_accessor :session_type_id
71
+
72
+ # The ID of the staff member who is adding the new appointment.
73
+ # @return [Integer]
74
+ attr_accessor :staff_id
75
+
76
+ # When `true`, indicates that the staff member was requested specifically by
77
+ # the client.
78
+ # @return [TrueClass | FalseClass]
79
+ attr_accessor :staff_requested
80
+
81
+ # The start date and time of the new appointment.
82
+ # @return [DateTime]
83
+ attr_accessor :start_date_time
84
+
85
+ # When true, indicates that the method is to be validated, but no new
86
+ # appointment data is added.
87
+ # <br />Default: **false**
88
+ # @return [TrueClass | FalseClass]
89
+ attr_accessor :test
90
+
91
+ # When `true`, indicates that the client should be added to a specific
92
+ # appointment waiting list.
93
+ # When `false`, the client should not be added to the waiting list.
94
+ # Default: **false**
95
+ # @return [TrueClass | FalseClass]
96
+ attr_accessor :is_waitlist
97
+
98
+ # Indicates whether to add an appointment request for review.
99
+ # If `true`, the appointment will be added as a request, bypassing the
100
+ # `IsWaitlist` parameter and two validations:
101
+ # 1. If a consumer is adding the appointment for another person.
102
+ # 2. If a staff member without permission to add appointments for other
103
+ # staff members is adding the appointment for another staff member.
104
+ # This also allows anonymous calls (without an authentication token) to this
105
+ # endpoint.
106
+ # The `AllowClientsToBookAppointments` option must be disabled. If it is
107
+ # enabled and the `IsRequest` parameter is `true`, it will return an error.
108
+ # For the appointment to be created as a request, one of the following
109
+ # conditions must also be met:
110
+ # - The call is anonymous (no authentication token provided).
111
+ # - The call is authenticated with a consumer token.
112
+ # - The authenticated user lacks permission to book appointments for other
113
+ # staff (`BookAppointmentsForAllStaff`) and is attempting to book for a
114
+ # different staff member.
115
+ # - In this last case, if the `IsRequest` parameter is `true` and the
116
+ # authenticated user has the `BookAppointmentsForAllStaff` permission or is
117
+ # attempting to book the appointment for themselves,
118
+ # the appointment will be created, but not as an appointment request.
119
+ # If `false`, the appointment will follow the standard creation process,
120
+ # respecting the `IsWaitlist` parameter.
121
+ # Default: `false`
122
+ # @return [TrueClass | FalseClass]
123
+ attr_accessor :is_request
124
+
125
+ # Optional external key for api partners.
126
+ # @return [String]
127
+ attr_accessor :partner_external_id
128
+
129
+ # A unique identifier for tracking the AddAppointmentRequest. This ID is not
130
+ # stored and is used to match each request with its corresponding response.
131
+ # The request object will also be returned in the response, with the same ID
132
+ # value.
133
+ # - For single requests, this value will be ignored.
134
+ # - For multiple requests, if no value is provided, the system will generate
135
+ # an identifier ranging from 0 to (number of requests - 1).
136
+ # @return [Integer]
137
+ attr_accessor :add_appointment_request_id
138
+
139
+ # A mapping from model property names to API property names.
140
+ def self.names
141
+ @_hash = {} if @_hash.nil?
142
+ @_hash['apply_payment'] = 'ApplyPayment'
143
+ @_hash['client_id'] = 'ClientId'
144
+ @_hash['duration'] = 'Duration'
145
+ @_hash['execute'] = 'Execute'
146
+ @_hash['end_date_time'] = 'EndDateTime'
147
+ @_hash['gender_preference'] = 'GenderPreference'
148
+ @_hash['location_id'] = 'LocationId'
149
+ @_hash['notes'] = 'Notes'
150
+ @_hash['provider_id'] = 'ProviderId'
151
+ @_hash['resource_ids'] = 'ResourceIds'
152
+ @_hash['send_email'] = 'SendEmail'
153
+ @_hash['session_type_id'] = 'SessionTypeId'
154
+ @_hash['staff_id'] = 'StaffId'
155
+ @_hash['staff_requested'] = 'StaffRequested'
156
+ @_hash['start_date_time'] = 'StartDateTime'
157
+ @_hash['test'] = 'Test'
158
+ @_hash['is_waitlist'] = 'IsWaitlist'
159
+ @_hash['is_request'] = 'IsRequest'
160
+ @_hash['partner_external_id'] = 'PartnerExternalId'
161
+ @_hash['add_appointment_request_id'] = 'AddAppointmentRequestId'
162
+ @_hash
163
+ end
164
+
165
+ # An array for optional fields
166
+ def self.optionals
167
+ %w[
168
+ apply_payment
169
+ duration
170
+ execute
171
+ end_date_time
172
+ gender_preference
173
+ notes
174
+ provider_id
175
+ resource_ids
176
+ send_email
177
+ staff_requested
178
+ test
179
+ is_waitlist
180
+ is_request
181
+ partner_external_id
182
+ add_appointment_request_id
183
+ ]
184
+ end
185
+
186
+ # An array for nullable fields
187
+ def self.nullables
188
+ []
189
+ end
190
+
191
+ def initialize(client_id = nil, location_id = nil, session_type_id = nil,
192
+ staff_id = nil, start_date_time = nil, apply_payment = SKIP,
193
+ duration = SKIP, execute = SKIP, end_date_time = SKIP,
194
+ gender_preference = SKIP, notes = SKIP, provider_id = SKIP,
195
+ resource_ids = SKIP, send_email = SKIP,
196
+ staff_requested = SKIP, test = SKIP, is_waitlist = SKIP,
197
+ is_request = SKIP, partner_external_id = SKIP,
198
+ add_appointment_request_id = SKIP)
199
+ @apply_payment = apply_payment unless apply_payment == SKIP
200
+ @client_id = client_id
201
+ @duration = duration unless duration == SKIP
202
+ @execute = execute unless execute == SKIP
203
+ @end_date_time = end_date_time unless end_date_time == SKIP
204
+ @gender_preference = gender_preference unless gender_preference == SKIP
205
+ @location_id = location_id
206
+ @notes = notes unless notes == SKIP
207
+ @provider_id = provider_id unless provider_id == SKIP
208
+ @resource_ids = resource_ids unless resource_ids == SKIP
209
+ @send_email = send_email unless send_email == SKIP
210
+ @session_type_id = session_type_id
211
+ @staff_id = staff_id
212
+ @staff_requested = staff_requested unless staff_requested == SKIP
213
+ @start_date_time = start_date_time
214
+ @test = test unless test == SKIP
215
+ @is_waitlist = is_waitlist unless is_waitlist == SKIP
216
+ @is_request = is_request unless is_request == SKIP
217
+ @partner_external_id = partner_external_id unless partner_external_id == SKIP
218
+ unless add_appointment_request_id == SKIP
219
+ @add_appointment_request_id =
220
+ add_appointment_request_id
221
+ end
222
+ end
223
+
224
+ # Creates an instance of the object from a hash.
225
+ def self.from_hash(hash)
226
+ return nil unless hash
227
+
228
+ # Extract variables from the hash.
229
+ client_id = hash.key?('ClientId') ? hash['ClientId'] : nil
230
+ location_id = hash.key?('LocationId') ? hash['LocationId'] : nil
231
+ session_type_id = hash.key?('SessionTypeId') ? hash['SessionTypeId'] : nil
232
+ staff_id = hash.key?('StaffId') ? hash['StaffId'] : nil
233
+ start_date_time = if hash.key?('StartDateTime')
234
+ (DateTimeHelper.from_rfc3339(hash['StartDateTime']) if hash['StartDateTime'])
235
+ end
236
+ apply_payment = hash.key?('ApplyPayment') ? hash['ApplyPayment'] : SKIP
237
+ duration = hash.key?('Duration') ? hash['Duration'] : SKIP
238
+ execute = hash.key?('Execute') ? hash['Execute'] : SKIP
239
+ end_date_time = if hash.key?('EndDateTime')
240
+ (DateTimeHelper.from_rfc3339(hash['EndDateTime']) if hash['EndDateTime'])
241
+ else
242
+ SKIP
243
+ end
244
+ gender_preference =
245
+ hash.key?('GenderPreference') ? hash['GenderPreference'] : SKIP
246
+ notes = hash.key?('Notes') ? hash['Notes'] : SKIP
247
+ provider_id = hash.key?('ProviderId') ? hash['ProviderId'] : SKIP
248
+ resource_ids = hash.key?('ResourceIds') ? hash['ResourceIds'] : SKIP
249
+ send_email = hash.key?('SendEmail') ? hash['SendEmail'] : SKIP
250
+ staff_requested =
251
+ hash.key?('StaffRequested') ? hash['StaffRequested'] : SKIP
252
+ test = hash.key?('Test') ? hash['Test'] : SKIP
253
+ is_waitlist = hash.key?('IsWaitlist') ? hash['IsWaitlist'] : SKIP
254
+ is_request = hash.key?('IsRequest') ? hash['IsRequest'] : SKIP
255
+ partner_external_id =
256
+ hash.key?('PartnerExternalId') ? hash['PartnerExternalId'] : SKIP
257
+ add_appointment_request_id =
258
+ hash.key?('AddAppointmentRequestId') ? hash['AddAppointmentRequestId'] : SKIP
259
+
260
+ # Create object from extracted values.
261
+ AddAppointmentRequest.new(client_id,
262
+ location_id,
263
+ session_type_id,
264
+ staff_id,
265
+ start_date_time,
266
+ apply_payment,
267
+ duration,
268
+ execute,
269
+ end_date_time,
270
+ gender_preference,
271
+ notes,
272
+ provider_id,
273
+ resource_ids,
274
+ send_email,
275
+ staff_requested,
276
+ test,
277
+ is_waitlist,
278
+ is_request,
279
+ partner_external_id,
280
+ add_appointment_request_id)
281
+ end
282
+
283
+ def to_custom_end_date_time
284
+ DateTimeHelper.to_rfc3339(end_date_time)
285
+ end
286
+
287
+ def to_custom_start_date_time
288
+ DateTimeHelper.to_rfc3339(start_date_time)
289
+ end
290
+
291
+ # Provides a human-readable string representation of the object.
292
+ def to_s
293
+ class_name = self.class.name.split('::').last
294
+ "<#{class_name} apply_payment: #{@apply_payment}, client_id: #{@client_id}, duration:"\
295
+ " #{@duration}, execute: #{@execute}, end_date_time: #{@end_date_time}, gender_preference:"\
296
+ " #{@gender_preference}, location_id: #{@location_id}, notes: #{@notes}, provider_id:"\
297
+ " #{@provider_id}, resource_ids: #{@resource_ids}, send_email: #{@send_email},"\
298
+ " session_type_id: #{@session_type_id}, staff_id: #{@staff_id}, staff_requested:"\
299
+ " #{@staff_requested}, start_date_time: #{@start_date_time}, test: #{@test}, is_waitlist:"\
300
+ " #{@is_waitlist}, is_request: #{@is_request}, partner_external_id: #{@partner_external_id},"\
301
+ " add_appointment_request_id: #{@add_appointment_request_id}>"
302
+ end
303
+
304
+ # Provides a debugging-friendly string with detailed object information.
305
+ def inspect
306
+ class_name = self.class.name.split('::').last
307
+ "<#{class_name} apply_payment: #{@apply_payment.inspect}, client_id: #{@client_id.inspect},"\
308
+ " duration: #{@duration.inspect}, execute: #{@execute.inspect}, end_date_time:"\
309
+ " #{@end_date_time.inspect}, gender_preference: #{@gender_preference.inspect}, location_id:"\
310
+ " #{@location_id.inspect}, notes: #{@notes.inspect}, provider_id: #{@provider_id.inspect},"\
311
+ " resource_ids: #{@resource_ids.inspect}, send_email: #{@send_email.inspect},"\
312
+ " session_type_id: #{@session_type_id.inspect}, staff_id: #{@staff_id.inspect},"\
313
+ " staff_requested: #{@staff_requested.inspect}, start_date_time:"\
314
+ " #{@start_date_time.inspect}, test: #{@test.inspect}, is_waitlist: #{@is_waitlist.inspect},"\
315
+ " is_request: #{@is_request.inspect}, partner_external_id: #{@partner_external_id.inspect},"\
316
+ " add_appointment_request_id: #{@add_appointment_request_id.inspect}>"
317
+ end
318
+ end
319
+ end
@@ -0,0 +1,62 @@
1
+ # mindbody_public_api
2
+ #
3
+ # This file was automatically generated by APIMATIC
4
+ # v3.0 ( https://www.apimatic.io ).
5
+
6
+ module MindbodyPublicApi
7
+ # AddAppointmentResponse Model.
8
+ class AddAppointmentResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Contains information about an appointment.
13
+ # @return [Appointment]
14
+ attr_accessor :appointment
15
+
16
+ # A mapping from model property names to API property names.
17
+ def self.names
18
+ @_hash = {} if @_hash.nil?
19
+ @_hash['appointment'] = 'Appointment'
20
+ @_hash
21
+ end
22
+
23
+ # An array for optional fields
24
+ def self.optionals
25
+ %w[
26
+ appointment
27
+ ]
28
+ end
29
+
30
+ # An array for nullable fields
31
+ def self.nullables
32
+ []
33
+ end
34
+
35
+ def initialize(appointment = SKIP)
36
+ @appointment = appointment unless appointment == SKIP
37
+ end
38
+
39
+ # Creates an instance of the object from a hash.
40
+ def self.from_hash(hash)
41
+ return nil unless hash
42
+
43
+ # Extract variables from the hash.
44
+ appointment = Appointment.from_hash(hash['Appointment']) if hash['Appointment']
45
+
46
+ # Create object from extracted values.
47
+ AddAppointmentResponse.new(appointment)
48
+ end
49
+
50
+ # Provides a human-readable string representation of the object.
51
+ def to_s
52
+ class_name = self.class.name.split('::').last
53
+ "<#{class_name} appointment: #{@appointment}>"
54
+ end
55
+
56
+ # Provides a debugging-friendly string with detailed object information.
57
+ def inspect
58
+ class_name = self.class.name.split('::').last
59
+ "<#{class_name} appointment: #{@appointment.inspect}>"
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,113 @@
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
+ # AddArrivalRequest Model.
8
+ class AddArrivalRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The ID of the requested client.
13
+ # @return [String]
14
+ attr_accessor :client_id
15
+
16
+ # The ID of the location for the requested arrival.
17
+ # @return [Integer]
18
+ attr_accessor :location_id
19
+
20
+ # The ID of the arrival program (service category) under which this arrival
21
+ # is to be logged. If this is not provided, the program ID of the first
22
+ # arrival pricing option found will be used.
23
+ # OPTIONAL: will take first payment found if not provided
24
+ # Default: **null**
25
+ # @return [Integer]
26
+ attr_accessor :arrival_type_id
27
+
28
+ # The ID of the Lead Channel ID from lead management. If this is supplied
29
+ # then it will map lead channel on the lead management.
30
+ # If this is not supplied then it wont save anything.
31
+ # This parameters required to track the lead channel if new client added
32
+ # while adding arrival of client on non home location.
33
+ # @return [Integer]
34
+ attr_accessor :lead_channel_id
35
+
36
+ # When `true`, indicates that the arrival log is to be validated, but no new
37
+ # arrival data is added. When `false`, the arrival is logged and the
38
+ # database is affected.
39
+ # Default: **false**
40
+ # @return [TrueClass | FalseClass]
41
+ attr_accessor :test
42
+
43
+ # A mapping from model property names to API property names.
44
+ def self.names
45
+ @_hash = {} if @_hash.nil?
46
+ @_hash['client_id'] = 'ClientId'
47
+ @_hash['location_id'] = 'LocationId'
48
+ @_hash['arrival_type_id'] = 'ArrivalTypeId'
49
+ @_hash['lead_channel_id'] = 'LeadChannelId'
50
+ @_hash['test'] = 'Test'
51
+ @_hash
52
+ end
53
+
54
+ # An array for optional fields
55
+ def self.optionals
56
+ %w[
57
+ arrival_type_id
58
+ lead_channel_id
59
+ test
60
+ ]
61
+ end
62
+
63
+ # An array for nullable fields
64
+ def self.nullables
65
+ []
66
+ end
67
+
68
+ def initialize(client_id = nil, location_id = nil, arrival_type_id = SKIP,
69
+ lead_channel_id = SKIP, test = SKIP)
70
+ @client_id = client_id
71
+ @location_id = location_id
72
+ @arrival_type_id = arrival_type_id unless arrival_type_id == SKIP
73
+ @lead_channel_id = lead_channel_id unless lead_channel_id == SKIP
74
+ @test = test unless test == SKIP
75
+ end
76
+
77
+ # Creates an instance of the object from a hash.
78
+ def self.from_hash(hash)
79
+ return nil unless hash
80
+
81
+ # Extract variables from the hash.
82
+ client_id = hash.key?('ClientId') ? hash['ClientId'] : nil
83
+ location_id = hash.key?('LocationId') ? hash['LocationId'] : nil
84
+ arrival_type_id =
85
+ hash.key?('ArrivalTypeId') ? hash['ArrivalTypeId'] : SKIP
86
+ lead_channel_id =
87
+ hash.key?('LeadChannelId') ? hash['LeadChannelId'] : SKIP
88
+ test = hash.key?('Test') ? hash['Test'] : SKIP
89
+
90
+ # Create object from extracted values.
91
+ AddArrivalRequest.new(client_id,
92
+ location_id,
93
+ arrival_type_id,
94
+ lead_channel_id,
95
+ test)
96
+ end
97
+
98
+ # Provides a human-readable string representation of the object.
99
+ def to_s
100
+ class_name = self.class.name.split('::').last
101
+ "<#{class_name} client_id: #{@client_id}, location_id: #{@location_id}, arrival_type_id:"\
102
+ " #{@arrival_type_id}, lead_channel_id: #{@lead_channel_id}, test: #{@test}>"
103
+ end
104
+
105
+ # Provides a debugging-friendly string with detailed object information.
106
+ def inspect
107
+ class_name = self.class.name.split('::').last
108
+ "<#{class_name} client_id: #{@client_id.inspect}, location_id: #{@location_id.inspect},"\
109
+ " arrival_type_id: #{@arrival_type_id.inspect}, lead_channel_id:"\
110
+ " #{@lead_channel_id.inspect}, test: #{@test.inspect}>"
111
+ end
112
+ end
113
+ end
@@ -0,0 +1,72 @@
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
+ # AddArrivalResponse Model.
8
+ class AddArrivalResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # When `true`, indicates that the arrival was added to the database.
13
+ # @return [TrueClass | FalseClass]
14
+ attr_accessor :arrival_added
15
+
16
+ # A service that is on a client's account.
17
+ # @return [ClientService]
18
+ attr_accessor :client_service
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['arrival_added'] = 'ArrivalAdded'
24
+ @_hash['client_service'] = 'ClientService'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ %w[
31
+ arrival_added
32
+ client_service
33
+ ]
34
+ end
35
+
36
+ # An array for nullable fields
37
+ def self.nullables
38
+ []
39
+ end
40
+
41
+ def initialize(arrival_added = SKIP, client_service = SKIP)
42
+ @arrival_added = arrival_added unless arrival_added == SKIP
43
+ @client_service = client_service unless client_service == 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
+ arrival_added = hash.key?('ArrivalAdded') ? hash['ArrivalAdded'] : SKIP
52
+ client_service = ClientService.from_hash(hash['ClientService']) if hash['ClientService']
53
+
54
+ # Create object from extracted values.
55
+ AddArrivalResponse.new(arrival_added,
56
+ client_service)
57
+ end
58
+
59
+ # Provides a human-readable string representation of the object.
60
+ def to_s
61
+ class_name = self.class.name.split('::').last
62
+ "<#{class_name} arrival_added: #{@arrival_added}, client_service: #{@client_service}>"
63
+ end
64
+
65
+ # Provides a debugging-friendly string with detailed object information.
66
+ def inspect
67
+ class_name = self.class.name.split('::').last
68
+ "<#{class_name} arrival_added: #{@arrival_added.inspect}, client_service:"\
69
+ " #{@client_service.inspect}>"
70
+ end
71
+ end
72
+ end