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,265 @@
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
+ # The API Request model for Initiate Checkout Shopping Cart API.
8
+ class InitiateCheckoutShoppingCartUsingAlternativePaymentsRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The unique ID of the shopping cart to be processed. You can use this value
13
+ # to maintain a persistent cart. If you do not specify a cart ID, the
14
+ # MINDBODY software generates one.
15
+ # @return [String]
16
+ attr_accessor :cart_id
17
+
18
+ # The RSSID of the client making the purchase. A cart can be validated
19
+ # without a client ID, but a client ID must be specified to complete a sale.
20
+ # @return [String]
21
+ attr_accessor :client_id
22
+
23
+ # The RSSID of the client paying for the purchase. This client needs to have
24
+ # a relationship of type "Pays for" with the client specified in the
25
+ # "ClientId" field.
26
+ # @return [String]
27
+ attr_accessor :payer_client_id
28
+
29
+ # When `true`, indicates that the contents of the cart are validated, but
30
+ # the transaction does not take place. You should use this parameter during
31
+ # testing and when checking the calculated totals of the items in the
32
+ # cart.<br />
33
+ # When `false`, the transaction takes place and the database is affected.<br
34
+ # />
35
+ # Default: **false**
36
+ # @return [TrueClass | FalseClass]
37
+ attr_accessor :test
38
+
39
+ # A list of the items in the cart.
40
+ # @return [Array[CheckoutItemWrapper]]
41
+ attr_accessor :items
42
+
43
+ # When `true`, indicates that the cart is to be completed by a staff member
44
+ # and is to take place at one of the business’ physical locations.<br />
45
+ # When `false`, indicates that the cart is to be completed by a client from
46
+ # the business’ online store.<br />
47
+ # Default: **false**
48
+ # @return [TrueClass | FalseClass]
49
+ attr_accessor :in_store
50
+
51
+ # When `true`, indicates that the tax should be calculated.
52
+ # When `false`, indicates that the tax should not be calculated.
53
+ # Default: **true**
54
+ # @return [TrueClass | FalseClass]
55
+ attr_accessor :calculate_tax
56
+
57
+ # Promotion code to be applied to the cart.
58
+ # @return [String]
59
+ attr_accessor :promotion_code
60
+
61
+ # A list of payment information objects to be applied to payment against the
62
+ # items in the cart.
63
+ # @return [Array[CheckoutAlternativePaymentInfo]]
64
+ attr_accessor :payments
65
+
66
+ # When `true`, sends a purchase receipt email to the client. Note that all
67
+ # appropriate permissions and settings must be enabled for the client to
68
+ # receive an email.<br />
69
+ # Default: **false**
70
+ # @return [TrueClass | FalseClass]
71
+ attr_accessor :send_email
72
+
73
+ # The location ID to be used for pulling business mode prices and taxes. If
74
+ # no location ID is supplied, it defaults to the online store, represented
75
+ # by a null value.
76
+ # Default: **null** (the online store)
77
+ # @return [Integer]
78
+ attr_accessor :location_id
79
+
80
+ # The URL consumer is redirected to after the payment.
81
+ # @return [String]
82
+ attr_accessor :payment_authentication_callback_url
83
+
84
+ # The list of TransactionIds provided with initial response containing SCA
85
+ # Challenge URLs for ConsumerPresent transactions
86
+ # @return [Array[Integer]]
87
+ attr_accessor :transaction_ids
88
+
89
+ # the flag to check billing post code is required or not.
90
+ # @return [TrueClass | FalseClass]
91
+ attr_accessor :is_billing_postal_code_required
92
+
93
+ # When `true`, enforces "sell at" location restrictions on the cart items.
94
+ # When `false`, "sell at" location restrictions are not enforced.
95
+ # Default: **false**
96
+ # @return [TrueClass | FalseClass]
97
+ attr_accessor :enforce_location_restrictions
98
+
99
+ # A mapping from model property names to API property names.
100
+ def self.names
101
+ @_hash = {} if @_hash.nil?
102
+ @_hash['cart_id'] = 'CartId'
103
+ @_hash['client_id'] = 'ClientId'
104
+ @_hash['payer_client_id'] = 'PayerClientId'
105
+ @_hash['test'] = 'Test'
106
+ @_hash['items'] = 'Items'
107
+ @_hash['in_store'] = 'InStore'
108
+ @_hash['calculate_tax'] = 'CalculateTax'
109
+ @_hash['promotion_code'] = 'PromotionCode'
110
+ @_hash['payments'] = 'Payments'
111
+ @_hash['send_email'] = 'SendEmail'
112
+ @_hash['location_id'] = 'LocationId'
113
+ @_hash['payment_authentication_callback_url'] =
114
+ 'PaymentAuthenticationCallbackUrl'
115
+ @_hash['transaction_ids'] = 'TransactionIds'
116
+ @_hash['is_billing_postal_code_required'] =
117
+ 'IsBillingPostalCodeRequired'
118
+ @_hash['enforce_location_restrictions'] = 'EnforceLocationRestrictions'
119
+ @_hash
120
+ end
121
+
122
+ # An array for optional fields
123
+ def self.optionals
124
+ %w[
125
+ cart_id
126
+ payer_client_id
127
+ test
128
+ in_store
129
+ calculate_tax
130
+ promotion_code
131
+ send_email
132
+ location_id
133
+ transaction_ids
134
+ is_billing_postal_code_required
135
+ enforce_location_restrictions
136
+ ]
137
+ end
138
+
139
+ # An array for nullable fields
140
+ def self.nullables
141
+ []
142
+ end
143
+
144
+ def initialize(client_id = nil, items = nil, payments = nil,
145
+ payment_authentication_callback_url = nil, cart_id = SKIP,
146
+ payer_client_id = SKIP, test = SKIP, in_store = SKIP,
147
+ calculate_tax = SKIP, promotion_code = SKIP,
148
+ send_email = SKIP, location_id = SKIP,
149
+ transaction_ids = SKIP,
150
+ is_billing_postal_code_required = SKIP,
151
+ enforce_location_restrictions = SKIP)
152
+ @cart_id = cart_id unless cart_id == SKIP
153
+ @client_id = client_id
154
+ @payer_client_id = payer_client_id unless payer_client_id == SKIP
155
+ @test = test unless test == SKIP
156
+ @items = items
157
+ @in_store = in_store unless in_store == SKIP
158
+ @calculate_tax = calculate_tax unless calculate_tax == SKIP
159
+ @promotion_code = promotion_code unless promotion_code == SKIP
160
+ @payments = payments
161
+ @send_email = send_email unless send_email == SKIP
162
+ @location_id = location_id unless location_id == SKIP
163
+ @payment_authentication_callback_url = payment_authentication_callback_url
164
+ @transaction_ids = transaction_ids unless transaction_ids == SKIP
165
+ unless is_billing_postal_code_required == SKIP
166
+ @is_billing_postal_code_required =
167
+ is_billing_postal_code_required
168
+ end
169
+ unless enforce_location_restrictions == SKIP
170
+ @enforce_location_restrictions =
171
+ enforce_location_restrictions
172
+ end
173
+ end
174
+
175
+ # Creates an instance of the object from a hash.
176
+ def self.from_hash(hash)
177
+ return nil unless hash
178
+
179
+ # Extract variables from the hash.
180
+ client_id = hash.key?('ClientId') ? hash['ClientId'] : nil
181
+ # Parameter is an array, so we need to iterate through it
182
+ items = nil
183
+ unless hash['Items'].nil?
184
+ items = []
185
+ hash['Items'].each do |structure|
186
+ items << (CheckoutItemWrapper.from_hash(structure) if structure)
187
+ end
188
+ end
189
+
190
+ items = nil unless hash.key?('Items')
191
+ # Parameter is an array, so we need to iterate through it
192
+ payments = nil
193
+ unless hash['Payments'].nil?
194
+ payments = []
195
+ hash['Payments'].each do |structure|
196
+ payments << (CheckoutAlternativePaymentInfo.from_hash(structure) if structure)
197
+ end
198
+ end
199
+
200
+ payments = nil unless hash.key?('Payments')
201
+ payment_authentication_callback_url =
202
+ hash.key?('PaymentAuthenticationCallbackUrl') ? hash['PaymentAuthenticationCallbackUrl'] : nil
203
+ cart_id = hash.key?('CartId') ? hash['CartId'] : SKIP
204
+ payer_client_id =
205
+ hash.key?('PayerClientId') ? hash['PayerClientId'] : SKIP
206
+ test = hash.key?('Test') ? hash['Test'] : SKIP
207
+ in_store = hash.key?('InStore') ? hash['InStore'] : SKIP
208
+ calculate_tax = hash.key?('CalculateTax') ? hash['CalculateTax'] : SKIP
209
+ promotion_code = hash.key?('PromotionCode') ? hash['PromotionCode'] : SKIP
210
+ send_email = hash.key?('SendEmail') ? hash['SendEmail'] : SKIP
211
+ location_id = hash.key?('LocationId') ? hash['LocationId'] : SKIP
212
+ transaction_ids =
213
+ hash.key?('TransactionIds') ? hash['TransactionIds'] : SKIP
214
+ is_billing_postal_code_required =
215
+ hash.key?('IsBillingPostalCodeRequired') ? hash['IsBillingPostalCodeRequired'] : SKIP
216
+ enforce_location_restrictions =
217
+ hash.key?('EnforceLocationRestrictions') ? hash['EnforceLocationRestrictions'] : SKIP
218
+
219
+ # Create object from extracted values.
220
+ InitiateCheckoutShoppingCartUsingAlternativePaymentsRequest.new(client_id,
221
+ items,
222
+ payments,
223
+ payment_authentication_callback_url,
224
+ cart_id,
225
+ payer_client_id,
226
+ test,
227
+ in_store,
228
+ calculate_tax,
229
+ promotion_code,
230
+ send_email,
231
+ location_id,
232
+ transaction_ids,
233
+ is_billing_postal_code_required,
234
+ enforce_location_restrictions)
235
+ end
236
+
237
+ # Provides a human-readable string representation of the object.
238
+ def to_s
239
+ class_name = self.class.name.split('::').last
240
+ "<#{class_name} cart_id: #{@cart_id}, client_id: #{@client_id}, payer_client_id:"\
241
+ " #{@payer_client_id}, test: #{@test}, items: #{@items}, in_store: #{@in_store},"\
242
+ " calculate_tax: #{@calculate_tax}, promotion_code: #{@promotion_code}, payments:"\
243
+ " #{@payments}, send_email: #{@send_email}, location_id: #{@location_id},"\
244
+ " payment_authentication_callback_url: #{@payment_authentication_callback_url},"\
245
+ " transaction_ids: #{@transaction_ids}, is_billing_postal_code_required:"\
246
+ " #{@is_billing_postal_code_required}, enforce_location_restrictions:"\
247
+ " #{@enforce_location_restrictions}>"
248
+ end
249
+
250
+ # Provides a debugging-friendly string with detailed object information.
251
+ def inspect
252
+ class_name = self.class.name.split('::').last
253
+ "<#{class_name} cart_id: #{@cart_id.inspect}, client_id: #{@client_id.inspect},"\
254
+ " payer_client_id: #{@payer_client_id.inspect}, test: #{@test.inspect}, items:"\
255
+ " #{@items.inspect}, in_store: #{@in_store.inspect}, calculate_tax:"\
256
+ " #{@calculate_tax.inspect}, promotion_code: #{@promotion_code.inspect}, payments:"\
257
+ " #{@payments.inspect}, send_email: #{@send_email.inspect}, location_id:"\
258
+ " #{@location_id.inspect}, payment_authentication_callback_url:"\
259
+ " #{@payment_authentication_callback_url.inspect}, transaction_ids:"\
260
+ " #{@transaction_ids.inspect}, is_billing_postal_code_required:"\
261
+ " #{@is_billing_postal_code_required.inspect}, enforce_location_restrictions:"\
262
+ " #{@enforce_location_restrictions.inspect}>"
263
+ end
264
+ end
265
+ end
@@ -0,0 +1,184 @@
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
+ # Request to initiate a purchase contract.
8
+ class InitiatePurchaseContractRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # When `true`, the Public API validates input information, but does not
13
+ # commit it, so no client data is affected.<br />
14
+ # When `false` or omitted, the transaction is committed, and client data is
15
+ # affected.<br />
16
+ # This endpoint DOES NOT support the `Test` parameter.<br />
17
+ # Default: **false**
18
+ # @return [TrueClass | FalseClass]
19
+ attr_accessor :test
20
+
21
+ # The ID of the location where the client is purchasing the contract; used
22
+ # for AutoPays. If no location ID is supplied, it defaults to the online
23
+ # store, represented by a null value.
24
+ # Default: **null** (Online store location)
25
+ # @return [Integer]
26
+ attr_accessor :location_id
27
+
28
+ # The ID of the client. Note that this is not the same as the client’s
29
+ # unique ID.
30
+ # @return [String]
31
+ attr_accessor :client_id
32
+
33
+ # The ID of the contract being purchased.
34
+ # @return [Integer]
35
+ attr_accessor :contract_id
36
+
37
+ # A promotion code, if one applies. Promotion codes are applied to items
38
+ # that are both marked as pay now in a contract and are discounted by the
39
+ # promotion code. If a pay now item is an autopay item, its autopay price is
40
+ # the price at the time of checkout, so, if a promotion code was applied,
41
+ # all autopays are scheduled using that discounted price.
42
+ # @return [String]
43
+ attr_accessor :promotion_code
44
+
45
+ # Promotion codes, if they apply. Promotion codes are applied to items that
46
+ # are both marked as pay now in a contract and are discounted by the
47
+ # promotion code. If a pay now item is an autopay item, its autopay price is
48
+ # the price at the time of checkout, so, if a promotion code was applied,
49
+ # all autopays are scheduled using that discounted price.
50
+ # @return [Array[String]]
51
+ attr_accessor :promotion_codes
52
+
53
+ # When `true`, indicates that email and SMS notifications should be sent to
54
+ # the client after purchase.<br />
55
+ # Default: **true**
56
+ # @return [TrueClass | FalseClass]
57
+ attr_accessor :send_notifications
58
+
59
+ # The ID of the staff member to be marked as the sales rep for this contract
60
+ # sale.
61
+ # @return [Integer]
62
+ attr_accessor :sales_rep_id
63
+
64
+ # The URL consumer is redirected to after the payment.
65
+ # @return [String]
66
+ attr_accessor :payment_authentication_callback_url
67
+
68
+ # The type of alternative payment. Possible values are:
69
+ # * 997 - Indicates that the payment method is iDEAL.
70
+ # * 801 - Indicates that the payment method is Apple Pay.
71
+ # @return [Integer]
72
+ attr_accessor :payment_method_id
73
+
74
+ # A mapping from model property names to API property names.
75
+ def self.names
76
+ @_hash = {} if @_hash.nil?
77
+ @_hash['test'] = 'Test'
78
+ @_hash['location_id'] = 'LocationId'
79
+ @_hash['client_id'] = 'ClientId'
80
+ @_hash['contract_id'] = 'ContractId'
81
+ @_hash['promotion_code'] = 'PromotionCode'
82
+ @_hash['promotion_codes'] = 'PromotionCodes'
83
+ @_hash['send_notifications'] = 'SendNotifications'
84
+ @_hash['sales_rep_id'] = 'SalesRepId'
85
+ @_hash['payment_authentication_callback_url'] =
86
+ 'PaymentAuthenticationCallbackUrl'
87
+ @_hash['payment_method_id'] = 'PaymentMethodId'
88
+ @_hash
89
+ end
90
+
91
+ # An array for optional fields
92
+ def self.optionals
93
+ %w[
94
+ test
95
+ location_id
96
+ promotion_code
97
+ promotion_codes
98
+ send_notifications
99
+ sales_rep_id
100
+ payment_authentication_callback_url
101
+ ]
102
+ end
103
+
104
+ # An array for nullable fields
105
+ def self.nullables
106
+ []
107
+ end
108
+
109
+ def initialize(client_id = nil, contract_id = nil, payment_method_id = nil,
110
+ test = SKIP, location_id = SKIP, promotion_code = SKIP,
111
+ promotion_codes = SKIP, send_notifications = SKIP,
112
+ sales_rep_id = SKIP,
113
+ payment_authentication_callback_url = SKIP)
114
+ @test = test unless test == SKIP
115
+ @location_id = location_id unless location_id == SKIP
116
+ @client_id = client_id
117
+ @contract_id = contract_id
118
+ @promotion_code = promotion_code unless promotion_code == SKIP
119
+ @promotion_codes = promotion_codes unless promotion_codes == SKIP
120
+ @send_notifications = send_notifications unless send_notifications == SKIP
121
+ @sales_rep_id = sales_rep_id unless sales_rep_id == SKIP
122
+ unless payment_authentication_callback_url == SKIP
123
+ @payment_authentication_callback_url =
124
+ payment_authentication_callback_url
125
+ end
126
+ @payment_method_id = payment_method_id
127
+ end
128
+
129
+ # Creates an instance of the object from a hash.
130
+ def self.from_hash(hash)
131
+ return nil unless hash
132
+
133
+ # Extract variables from the hash.
134
+ client_id = hash.key?('ClientId') ? hash['ClientId'] : nil
135
+ contract_id = hash.key?('ContractId') ? hash['ContractId'] : nil
136
+ payment_method_id =
137
+ hash.key?('PaymentMethodId') ? hash['PaymentMethodId'] : nil
138
+ test = hash.key?('Test') ? hash['Test'] : SKIP
139
+ location_id = hash.key?('LocationId') ? hash['LocationId'] : SKIP
140
+ promotion_code = hash.key?('PromotionCode') ? hash['PromotionCode'] : SKIP
141
+ promotion_codes =
142
+ hash.key?('PromotionCodes') ? hash['PromotionCodes'] : SKIP
143
+ send_notifications =
144
+ hash.key?('SendNotifications') ? hash['SendNotifications'] : SKIP
145
+ sales_rep_id = hash.key?('SalesRepId') ? hash['SalesRepId'] : SKIP
146
+ payment_authentication_callback_url =
147
+ hash.key?('PaymentAuthenticationCallbackUrl') ? hash['PaymentAuthenticationCallbackUrl'] : SKIP
148
+
149
+ # Create object from extracted values.
150
+ InitiatePurchaseContractRequest.new(client_id,
151
+ contract_id,
152
+ payment_method_id,
153
+ test,
154
+ location_id,
155
+ promotion_code,
156
+ promotion_codes,
157
+ send_notifications,
158
+ sales_rep_id,
159
+ payment_authentication_callback_url)
160
+ end
161
+
162
+ # Provides a human-readable string representation of the object.
163
+ def to_s
164
+ class_name = self.class.name.split('::').last
165
+ "<#{class_name} test: #{@test}, location_id: #{@location_id}, client_id: #{@client_id},"\
166
+ " contract_id: #{@contract_id}, promotion_code: #{@promotion_code}, promotion_codes:"\
167
+ " #{@promotion_codes}, send_notifications: #{@send_notifications}, sales_rep_id:"\
168
+ " #{@sales_rep_id}, payment_authentication_callback_url:"\
169
+ " #{@payment_authentication_callback_url}, payment_method_id: #{@payment_method_id}>"
170
+ end
171
+
172
+ # Provides a debugging-friendly string with detailed object information.
173
+ def inspect
174
+ class_name = self.class.name.split('::').last
175
+ "<#{class_name} test: #{@test.inspect}, location_id: #{@location_id.inspect}, client_id:"\
176
+ " #{@client_id.inspect}, contract_id: #{@contract_id.inspect}, promotion_code:"\
177
+ " #{@promotion_code.inspect}, promotion_codes: #{@promotion_codes.inspect},"\
178
+ " send_notifications: #{@send_notifications.inspect}, sales_rep_id:"\
179
+ " #{@sales_rep_id.inspect}, payment_authentication_callback_url:"\
180
+ " #{@payment_authentication_callback_url.inspect}, payment_method_id:"\
181
+ " #{@payment_method_id.inspect}>"
182
+ end
183
+ end
184
+ end
@@ -0,0 +1,71 @@
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
+ # POST UserToken/Issue request
8
+ class IssueRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The staff member’s username.
13
+ # @return [String]
14
+ attr_accessor :username
15
+
16
+ # The staff member’s password.
17
+ # @return [String]
18
+ attr_accessor :password
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['username'] = 'Username'
24
+ @_hash['password'] = 'Password'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ %w[
31
+ username
32
+ password
33
+ ]
34
+ end
35
+
36
+ # An array for nullable fields
37
+ def self.nullables
38
+ []
39
+ end
40
+
41
+ def initialize(username = SKIP, password = SKIP)
42
+ @username = username unless username == SKIP
43
+ @password = password unless password == 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
+ username = hash.key?('Username') ? hash['Username'] : SKIP
52
+ password = hash.key?('Password') ? hash['Password'] : SKIP
53
+
54
+ # Create object from extracted values.
55
+ IssueRequest.new(username,
56
+ password)
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} username: #{@username}, password: #{@password}>"
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} username: #{@username.inspect}, password: #{@password.inspect}>"
69
+ end
70
+ end
71
+ end
@@ -0,0 +1,101 @@
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
+ # POST UserToken/Issue successful response
9
+ class IssueResponse < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # TODO: Write general description for this method
14
+ # @return [String]
15
+ attr_accessor :token_type
16
+
17
+ # The authentication token value.
18
+ # @return [String]
19
+ attr_accessor :access_token
20
+
21
+ # Token expiration in UTC.
22
+ # @return [DateTime]
23
+ attr_accessor :expires
24
+
25
+ # Token expiration in UTC.
26
+ # @return [User]
27
+ attr_accessor :user
28
+
29
+ # A mapping from model property names to API property names.
30
+ def self.names
31
+ @_hash = {} if @_hash.nil?
32
+ @_hash['token_type'] = 'TokenType'
33
+ @_hash['access_token'] = 'AccessToken'
34
+ @_hash['expires'] = 'Expires'
35
+ @_hash['user'] = 'User'
36
+ @_hash
37
+ end
38
+
39
+ # An array for optional fields
40
+ def self.optionals
41
+ %w[
42
+ token_type
43
+ access_token
44
+ expires
45
+ user
46
+ ]
47
+ end
48
+
49
+ # An array for nullable fields
50
+ def self.nullables
51
+ []
52
+ end
53
+
54
+ def initialize(token_type = SKIP, access_token = SKIP, expires = SKIP,
55
+ user = SKIP)
56
+ @token_type = token_type unless token_type == SKIP
57
+ @access_token = access_token unless access_token == SKIP
58
+ @expires = expires unless expires == SKIP
59
+ @user = user unless user == SKIP
60
+ end
61
+
62
+ # Creates an instance of the object from a hash.
63
+ def self.from_hash(hash)
64
+ return nil unless hash
65
+
66
+ # Extract variables from the hash.
67
+ token_type = hash.key?('TokenType') ? hash['TokenType'] : SKIP
68
+ access_token = hash.key?('AccessToken') ? hash['AccessToken'] : SKIP
69
+ expires = if hash.key?('Expires')
70
+ (DateTimeHelper.from_rfc3339(hash['Expires']) if hash['Expires'])
71
+ else
72
+ SKIP
73
+ end
74
+ user = User.from_hash(hash['User']) if hash['User']
75
+
76
+ # Create object from extracted values.
77
+ IssueResponse.new(token_type,
78
+ access_token,
79
+ expires,
80
+ user)
81
+ end
82
+
83
+ def to_custom_expires
84
+ DateTimeHelper.to_rfc3339(expires)
85
+ end
86
+
87
+ # Provides a human-readable string representation of the object.
88
+ def to_s
89
+ class_name = self.class.name.split('::').last
90
+ "<#{class_name} token_type: #{@token_type}, access_token: #{@access_token}, expires:"\
91
+ " #{@expires}, user: #{@user}>"
92
+ end
93
+
94
+ # Provides a debugging-friendly string with detailed object information.
95
+ def inspect
96
+ class_name = self.class.name.split('::').last
97
+ "<#{class_name} token_type: #{@token_type.inspect}, access_token: #{@access_token.inspect},"\
98
+ " expires: #{@expires.inspect}, user: #{@user.inspect}>"
99
+ end
100
+ end
101
+ end