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,408 @@
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
+ # StaffController
8
+ class StaffController < BaseController
9
+ # Retrieves the available image URLs for a specified staff member, including
10
+ # desktop and mobile versions.
11
+ # <br />
12
+ # The resolution of these images is determined by the Mindbody product at
13
+ # the time the image is uploaded. Staff images are automatically resized
14
+ # within Core (typically around 200×151 pixels), and this endpoint surfaces
15
+ # only the stored versions. The API does not resize or limit the images
16
+ # itself .
17
+ # <br />
18
+ # For more information about how image sizes are managed in Mindbody
19
+ # product, refer to the related support article: [link
20
+ # here](https://support.mindbodyonline.com/s/article/203253783-Staff-profile
21
+ # s-Creating-logins-updating-info-and-enabling-settings?language=en_US).
22
+ # @param [String] version Required parameter: version of the api.
23
+ # @param [String] site_id Required parameter: ID of the site from which to
24
+ # pull data.
25
+ # @param [String] authorization Optional parameter: A staff user
26
+ # authorization token.
27
+ # @param [Integer] request_staff_id Optional parameter: The ID of the staff
28
+ # member whose image URL details you want to retrieve.
29
+ # @return [GetStaffImageURLResponse] Response from the API call.
30
+ def get_staff_image_url(version,
31
+ site_id,
32
+ authorization: nil,
33
+ request_staff_id: nil)
34
+ @api_call
35
+ .request(new_request_builder(HttpMethodEnum::GET,
36
+ '/public/v{version}/staff/imageurl',
37
+ Server::DEFAULT)
38
+ .template_param(new_parameter(version, key: 'version')
39
+ .should_encode(true))
40
+ .header_param(new_parameter(site_id, key: 'siteId'))
41
+ .header_param(new_parameter(authorization, key: 'authorization'))
42
+ .query_param(new_parameter(request_staff_id, key: 'request.staffId'))
43
+ .header_param(new_parameter('application/json', key: 'accept'))
44
+ .auth(Single.new('API-Key')))
45
+ .response(new_response_handler
46
+ .deserializer(APIHelper.method(:custom_type_deserializer))
47
+ .deserialize_into(GetStaffImageURLResponse.method(:from_hash)))
48
+ .execute
49
+ end
50
+
51
+ # This endpoint returns the basic details of the staffs that are marked as
52
+ # sales reps.
53
+ # @param [String] version Required parameter: version of the api.
54
+ # @param [String] site_id Required parameter: ID of the site from which to
55
+ # pull data.
56
+ # @param [String] authorization Optional parameter: A staff user
57
+ # authorization token.
58
+ # @param [TrueClass | FalseClass] request_active_only Optional parameter:
59
+ # When `true`, will return only active reps data. Default : **false**
60
+ # @param [Integer] request_limit Optional parameter: Number of results to
61
+ # include, defaults to 100
62
+ # @param [Integer] request_offset Optional parameter: Page offset, defaults
63
+ # to 0.
64
+ # @param [Array[Integer]] request_sales_rep_numbers Optional parameter: This
65
+ # is the list of the sales rep numbers for which the salesrep data will be
66
+ # fetched.
67
+ # @return [GetSalesRepsResponse] Response from the API call.
68
+ def get_sales_reps(version,
69
+ site_id,
70
+ authorization: nil,
71
+ request_active_only: nil,
72
+ request_limit: nil,
73
+ request_offset: nil,
74
+ request_sales_rep_numbers: nil)
75
+ @api_call
76
+ .request(new_request_builder(HttpMethodEnum::GET,
77
+ '/public/v{version}/staff/salesreps',
78
+ Server::DEFAULT)
79
+ .template_param(new_parameter(version, key: 'version')
80
+ .should_encode(true))
81
+ .header_param(new_parameter(site_id, key: 'siteId'))
82
+ .header_param(new_parameter(authorization, key: 'authorization'))
83
+ .query_param(new_parameter(request_active_only, key: 'request.activeOnly'))
84
+ .query_param(new_parameter(request_limit, key: 'request.limit'))
85
+ .query_param(new_parameter(request_offset, key: 'request.offset'))
86
+ .query_param(new_parameter(request_sales_rep_numbers, key: 'request.salesRepNumbers'))
87
+ .header_param(new_parameter('application/json', key: 'accept'))
88
+ .auth(Single.new('API-Key')))
89
+ .response(new_response_handler
90
+ .deserializer(APIHelper.method(:custom_type_deserializer))
91
+ .deserialize_into(GetSalesRepsResponse.method(:from_hash)))
92
+ .execute
93
+ end
94
+
95
+ # Gets a list of active session types for a specific staff member. A staff
96
+ # user token must be included with staff assigned the ManageStaffPayRates
97
+ # permission.
98
+ # @param [String] version Required parameter: version of the api.
99
+ # @param [Integer] request_staff_id Required parameter: The ID of the staff
100
+ # member whose session types you want to return.
101
+ # @param [String] site_id Required parameter: ID of the site from which to
102
+ # pull data.
103
+ # @param [String] authorization Optional parameter: A staff user
104
+ # authorization token.
105
+ # @param [Integer] request_limit Optional parameter: Number of results to
106
+ # include, defaults to 100
107
+ # @param [Integer] request_offset Optional parameter: Page offset, defaults
108
+ # to 0.
109
+ # @param [TrueClass | FalseClass] request_online_only Optional parameter:
110
+ # When `true`, indicates that only the session types that can be booked
111
+ # online should be returned. Default: **false**
112
+ # @param [Array[Integer]] request_program_ids Optional parameter: Filters
113
+ # results to session types that belong to one of the given program IDs. If
114
+ # omitted, all program IDs return.
115
+ # @return [GetStaffSessionTypesResponse] Response from the API call.
116
+ def get_staff_session_types(version,
117
+ request_staff_id,
118
+ site_id,
119
+ authorization: nil,
120
+ request_limit: nil,
121
+ request_offset: nil,
122
+ request_online_only: nil,
123
+ request_program_ids: nil)
124
+ @api_call
125
+ .request(new_request_builder(HttpMethodEnum::GET,
126
+ '/public/v{version}/staff/sessiontypes',
127
+ Server::DEFAULT)
128
+ .template_param(new_parameter(version, key: 'version')
129
+ .should_encode(true))
130
+ .query_param(new_parameter(request_staff_id, key: 'request.staffId'))
131
+ .header_param(new_parameter(site_id, key: 'siteId'))
132
+ .header_param(new_parameter(authorization, key: 'authorization'))
133
+ .query_param(new_parameter(request_limit, key: 'request.limit'))
134
+ .query_param(new_parameter(request_offset, key: 'request.offset'))
135
+ .query_param(new_parameter(request_online_only, key: 'request.onlineOnly'))
136
+ .query_param(new_parameter(request_program_ids, key: 'request.programIds'))
137
+ .header_param(new_parameter('application/json', key: 'accept'))
138
+ .auth(Single.new('API-Key')))
139
+ .response(new_response_handler
140
+ .deserializer(APIHelper.method(:custom_type_deserializer))
141
+ .deserialize_into(GetStaffSessionTypesResponse.method(:from_hash)))
142
+ .execute
143
+ end
144
+
145
+ # When a user token is not passed with the request or the passed user token
146
+ # has insufficient viewing permissions, only the following staff data is
147
+ # returned in the response:
148
+ #
149
+ # * FirstName
150
+ # * LastName
151
+ # * Id
152
+ # * Bio
153
+ # * DisplayName
154
+ # * ImageUrl
155
+ # * EmpID
156
+ # @param [String] version Required parameter: version of the api.
157
+ # @param [String] site_id Required parameter: ID of the site from which to
158
+ # pull data.
159
+ # @param [String] authorization Optional parameter: A staff user
160
+ # authorization token.
161
+ # @param [Array[String]] request_filters Optional parameter: Filters to
162
+ # apply to the search. Possible values are: * StaffViewable *
163
+ # AppointmentInstructor * ClassInstructor * Male * Female
164
+ # @param [Integer] request_limit Optional parameter: Number of results to
165
+ # include, defaults to 100
166
+ # @param [Integer] request_location_id Optional parameter: Return only staff
167
+ # members that are available at the specified location. You must supply a
168
+ # valid `SessionTypeID` and `StartDateTime` to use this parameter.
169
+ # @param [Integer] request_offset Optional parameter: Page offset, defaults
170
+ # to 0.
171
+ # @param [Integer] request_session_type_id Optional parameter: Return only
172
+ # staff members that are available for the specified session type. You must
173
+ # supply a valid `StartDateTime` and `LocationID` to use this parameter.
174
+ # @param [Array[Integer]] request_staff_ids Optional parameter: A list of
175
+ # the requested staff IDs.
176
+ # @param [DateTime] request_start_date_time Optional parameter: Return only
177
+ # staff members that are available at the specified date and time. You must
178
+ # supply a valid `SessionTypeID` and `LocationID` to use this parameter.
179
+ # @return [GetStaffResponse] Response from the API call.
180
+ def get_staff(version,
181
+ site_id,
182
+ authorization: nil,
183
+ request_filters: nil,
184
+ request_limit: nil,
185
+ request_location_id: nil,
186
+ request_offset: nil,
187
+ request_session_type_id: nil,
188
+ request_staff_ids: nil,
189
+ request_start_date_time: nil)
190
+ @api_call
191
+ .request(new_request_builder(HttpMethodEnum::GET,
192
+ '/public/v{version}/staff/staff',
193
+ Server::DEFAULT)
194
+ .template_param(new_parameter(version, key: 'version')
195
+ .should_encode(true))
196
+ .header_param(new_parameter(site_id, key: 'siteId'))
197
+ .header_param(new_parameter(authorization, key: 'authorization'))
198
+ .query_param(new_parameter(request_filters, key: 'request.filters'))
199
+ .query_param(new_parameter(request_limit, key: 'request.limit'))
200
+ .query_param(new_parameter(request_location_id, key: 'request.locationId'))
201
+ .query_param(new_parameter(request_offset, key: 'request.offset'))
202
+ .query_param(new_parameter(request_session_type_id, key: 'request.sessionTypeId'))
203
+ .query_param(new_parameter(request_staff_ids, key: 'request.staffIds'))
204
+ .query_param(new_parameter(request_start_date_time, key: 'request.startDateTime'))
205
+ .header_param(new_parameter('application/json', key: 'accept'))
206
+ .auth(Single.new('API-Key')))
207
+ .response(new_response_handler
208
+ .deserializer(APIHelper.method(:custom_type_deserializer))
209
+ .deserialize_into(GetStaffResponse.method(:from_hash)))
210
+ .execute
211
+ end
212
+
213
+ # Get configured staff permissions for a staff member.
214
+ # @param [String] version Required parameter: version of the api.
215
+ # @param [Integer] request_staff_id Required parameter: The ID of the staff
216
+ # member whose permissions you want to return.
217
+ # @param [String] site_id Required parameter: ID of the site from which to
218
+ # pull data.
219
+ # @param [String] authorization Optional parameter: A staff user
220
+ # authorization token.
221
+ # @return [GetStaffPermissionsResponse] Response from the API call.
222
+ def get_staff_permissions(version,
223
+ request_staff_id,
224
+ site_id,
225
+ authorization: nil)
226
+ @api_call
227
+ .request(new_request_builder(HttpMethodEnum::GET,
228
+ '/public/v{version}/staff/staffpermissions',
229
+ Server::DEFAULT)
230
+ .template_param(new_parameter(version, key: 'version')
231
+ .should_encode(true))
232
+ .query_param(new_parameter(request_staff_id, key: 'request.staffId'))
233
+ .header_param(new_parameter(site_id, key: 'siteId'))
234
+ .header_param(new_parameter(authorization, key: 'authorization'))
235
+ .header_param(new_parameter('application/json', key: 'accept'))
236
+ .auth(Single.new('API-Key')))
237
+ .response(new_response_handler
238
+ .deserializer(APIHelper.method(:custom_type_deserializer))
239
+ .deserialize_into(GetStaffPermissionsResponse.method(:from_hash)))
240
+ .execute
241
+ end
242
+
243
+ # Creates a new staff member record at the specified business. The
244
+ # `FirstName` and `LastName` parameters are always required for this
245
+ # request.
246
+ # @param [String] version Required parameter: version of the api.
247
+ # @param [AddStaffRequest] request Required parameter: TODO: type
248
+ # description here
249
+ # @param [String] site_id Required parameter: ID of the site from which to
250
+ # pull data.
251
+ # @param [String] authorization Optional parameter: A staff user
252
+ # authorization token.
253
+ # @return [AddStaffResponse] Response from the API call.
254
+ def add_staff(version,
255
+ request,
256
+ site_id,
257
+ authorization: nil)
258
+ @api_call
259
+ .request(new_request_builder(HttpMethodEnum::POST,
260
+ '/public/v{version}/staff/addstaff',
261
+ Server::DEFAULT)
262
+ .template_param(new_parameter(version, key: 'version')
263
+ .should_encode(true))
264
+ .body_param(new_parameter(request))
265
+ .header_param(new_parameter(site_id, key: 'siteId'))
266
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
267
+ .header_param(new_parameter(authorization, key: 'authorization'))
268
+ .header_param(new_parameter('application/json', key: 'accept'))
269
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
270
+ .auth(Single.new('API-Key')))
271
+ .response(new_response_handler
272
+ .deserializer(APIHelper.method(:custom_type_deserializer))
273
+ .deserialize_into(AddStaffResponse.method(:from_hash)))
274
+ .execute
275
+ end
276
+
277
+ # Assigns a staff member to an appointment session type with staff specific
278
+ # properties such as time length and pay rate. A staff user token must be
279
+ # included with staff assigned the ManageStaffPayRates permission.
280
+ # @param [String] version Required parameter: version of the api.
281
+ # @param [AssignStaffSessionTypeRequest] request Required parameter: TODO:
282
+ # type description here
283
+ # @param [String] site_id Required parameter: ID of the site from which to
284
+ # pull data.
285
+ # @param [String] authorization Optional parameter: A staff user
286
+ # authorization token.
287
+ # @return [AssignStaffSessionTypeResponse] Response from the API call.
288
+ def assign_staff_session_type(version,
289
+ request,
290
+ site_id,
291
+ authorization: nil)
292
+ @api_call
293
+ .request(new_request_builder(HttpMethodEnum::POST,
294
+ '/public/v{version}/staff/assignsessiontype',
295
+ Server::DEFAULT)
296
+ .template_param(new_parameter(version, key: 'version')
297
+ .should_encode(true))
298
+ .body_param(new_parameter(request))
299
+ .header_param(new_parameter(site_id, key: 'siteId'))
300
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
301
+ .header_param(new_parameter(authorization, key: 'authorization'))
302
+ .header_param(new_parameter('application/json', key: 'accept'))
303
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
304
+ .auth(Single.new('API-Key')))
305
+ .response(new_response_handler
306
+ .deserializer(APIHelper.method(:custom_type_deserializer))
307
+ .deserialize_into(AssignStaffSessionTypeResponse.method(:from_hash)))
308
+ .execute
309
+ end
310
+
311
+ # Enables to add staff availability or unavailability for a given staff
312
+ # member.
313
+ # @param [String] version Required parameter: version of the api.
314
+ # @param [AddStaffAvailabilityRequest] request Required parameter: TODO:
315
+ # type description here
316
+ # @param [String] site_id Required parameter: ID of the site from which to
317
+ # pull data.
318
+ # @param [String] authorization Optional parameter: A staff user
319
+ # authorization token.
320
+ # @return [void] Response from the API call.
321
+ def add_staff_availability(version,
322
+ request,
323
+ site_id,
324
+ authorization: nil)
325
+ @api_call
326
+ .request(new_request_builder(HttpMethodEnum::POST,
327
+ '/public/v{version}/staff/staffavailability',
328
+ Server::DEFAULT)
329
+ .template_param(new_parameter(version, key: 'version')
330
+ .should_encode(true))
331
+ .body_param(new_parameter(request))
332
+ .header_param(new_parameter(site_id, key: 'siteId'))
333
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
334
+ .header_param(new_parameter(authorization, key: 'authorization'))
335
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
336
+ .auth(Single.new('API-Key')))
337
+ .response(new_response_handler
338
+ .is_response_void(true))
339
+ .execute
340
+ end
341
+
342
+ # Updates an existing staff member record at the specified business. The ID
343
+ # is a required parameters for this request.
344
+ # @param [String] version Required parameter: version of the api.
345
+ # @param [UpdateStaffRequest] request Required parameter: TODO: type
346
+ # description here
347
+ # @param [String] site_id Required parameter: ID of the site from which to
348
+ # pull data.
349
+ # @param [String] authorization Optional parameter: A staff user
350
+ # authorization token.
351
+ # @return [UpdateStaffResponse] Response from the API call.
352
+ def update_staff(version,
353
+ request,
354
+ site_id,
355
+ authorization: nil)
356
+ @api_call
357
+ .request(new_request_builder(HttpMethodEnum::POST,
358
+ '/public/v{version}/staff/updatestaff',
359
+ Server::DEFAULT)
360
+ .template_param(new_parameter(version, key: 'version')
361
+ .should_encode(true))
362
+ .body_param(new_parameter(request))
363
+ .header_param(new_parameter(site_id, key: 'siteId'))
364
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
365
+ .header_param(new_parameter(authorization, key: 'authorization'))
366
+ .header_param(new_parameter('application/json', key: 'accept'))
367
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
368
+ .auth(Single.new('API-Key')))
369
+ .response(new_response_handler
370
+ .deserializer(APIHelper.method(:custom_type_deserializer))
371
+ .deserialize_into(UpdateStaffResponse.method(:from_hash)))
372
+ .execute
373
+ end
374
+
375
+ # Assigns a permission group to a staff member. A staff user token must be
376
+ # included with staff assigned the ManageStaffPayRates permission.
377
+ # @param [String] version Required parameter: version of the api.
378
+ # @param [UpdateStaffPermissionsRequest] request Required parameter: TODO:
379
+ # type description here
380
+ # @param [String] site_id Required parameter: ID of the site from which to
381
+ # pull data.
382
+ # @param [String] authorization Optional parameter: A staff user
383
+ # authorization token.
384
+ # @return [UpdateStaffPermissionsResponse] Response from the API call.
385
+ def update_staff_permissions(version,
386
+ request,
387
+ site_id,
388
+ authorization: nil)
389
+ @api_call
390
+ .request(new_request_builder(HttpMethodEnum::POST,
391
+ '/public/v{version}/staff/updatestaffpermissions',
392
+ Server::DEFAULT)
393
+ .template_param(new_parameter(version, key: 'version')
394
+ .should_encode(true))
395
+ .body_param(new_parameter(request))
396
+ .header_param(new_parameter(site_id, key: 'siteId'))
397
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
398
+ .header_param(new_parameter(authorization, key: 'authorization'))
399
+ .header_param(new_parameter('application/json', key: 'accept'))
400
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
401
+ .auth(Single.new('API-Key')))
402
+ .response(new_response_handler
403
+ .deserializer(APIHelper.method(:custom_type_deserializer))
404
+ .deserialize_into(UpdateStaffPermissionsResponse.method(:from_hash)))
405
+ .execute
406
+ end
407
+ end
408
+ end
@@ -0,0 +1,92 @@
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
+ # UserTokenController
8
+ class UserTokenController < BaseController
9
+ # When users interact with your Public API integration as staff members,
10
+ # they need to get a staff user token for authentication.
11
+ # You can use the issue endpoint to get a staff user token, then pass the
12
+ # token in the headers for all of your requests.
13
+ # @param [String] version Required parameter: version of the api.
14
+ # @param [IssueRequest] request Required parameter: TODO: type description
15
+ # here
16
+ # @param [String] site_id Required parameter: ID of the site from which to
17
+ # pull data.
18
+ # @return [IssueResponse] Response from the API call.
19
+ def issue_token(version,
20
+ request,
21
+ site_id)
22
+ @api_call
23
+ .request(new_request_builder(HttpMethodEnum::POST,
24
+ '/public/v{version}/usertoken/issue',
25
+ Server::DEFAULT)
26
+ .template_param(new_parameter(version, key: 'version')
27
+ .should_encode(true))
28
+ .body_param(new_parameter(request))
29
+ .header_param(new_parameter(site_id, key: 'siteId'))
30
+ .header_param(new_parameter('application/json', key: 'Content-Type'))
31
+ .header_param(new_parameter('application/json', key: 'accept'))
32
+ .body_serializer(proc do |param| param.to_json unless param.nil? end)
33
+ .auth(Single.new('API-Key')))
34
+ .response(new_response_handler
35
+ .deserializer(APIHelper.method(:custom_type_deserializer))
36
+ .deserialize_into(IssueResponse.method(:from_hash)))
37
+ .execute
38
+ end
39
+
40
+ # Renews a token. Can be used to extend the lifetime of a token.
41
+ # Current lifetime expansion: 24hrs from current expiration, up to 7
42
+ # renewals.
43
+ # @param [String] version Required parameter: version of the api.
44
+ # @param [String] site_id Required parameter: ID of the site from which to
45
+ # pull data.
46
+ # @param [String] authorization Optional parameter: A staff user
47
+ # authorization token.
48
+ # @return [Object] Response from the API call.
49
+ def renew_token(version,
50
+ site_id,
51
+ authorization: nil)
52
+ @api_call
53
+ .request(new_request_builder(HttpMethodEnum::POST,
54
+ '/public/v{version}/usertoken/renew',
55
+ Server::DEFAULT)
56
+ .template_param(new_parameter(version, key: 'version')
57
+ .should_encode(true))
58
+ .header_param(new_parameter(site_id, key: 'siteId'))
59
+ .header_param(new_parameter(authorization, key: 'authorization'))
60
+ .header_param(new_parameter('application/json', key: 'accept'))
61
+ .auth(Single.new('API-Key')))
62
+ .response(new_response_handler
63
+ .deserializer(APIHelper.method(:json_deserialize)))
64
+ .execute
65
+ end
66
+
67
+ # Revokes the user token in the Authorization header.
68
+ # @param [String] version Required parameter: version of the api.
69
+ # @param [String] site_id Required parameter: ID of the site from which to
70
+ # pull data.
71
+ # @param [String] authorization Optional parameter: A staff user
72
+ # authorization token.
73
+ # @return [Object] Response from the API call.
74
+ def revoke_token(version,
75
+ site_id,
76
+ authorization: nil)
77
+ @api_call
78
+ .request(new_request_builder(HttpMethodEnum::DELETE,
79
+ '/public/v{version}/usertoken/revoke',
80
+ Server::DEFAULT)
81
+ .template_param(new_parameter(version, key: 'version')
82
+ .should_encode(true))
83
+ .header_param(new_parameter(site_id, key: 'siteId'))
84
+ .header_param(new_parameter(authorization, key: 'authorization'))
85
+ .header_param(new_parameter('application/json', key: 'accept'))
86
+ .auth(Single.new('API-Key')))
87
+ .response(new_response_handler
88
+ .deserializer(APIHelper.method(:json_deserialize)))
89
+ .execute
90
+ end
91
+ end
92
+ end
@@ -0,0 +1,21 @@
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
+ # Class for exceptions when there is a network error, status code error, etc.
8
+ class APIException < CoreLibrary::ApiException
9
+ # Provides a human-readable string representation of the object.
10
+ def to_s
11
+ class_name = self.class.name.split('::').last
12
+ "<#{class_name} status_code: #{@response_code}, reason: #{@reason}>"
13
+ end
14
+
15
+ # Provides a debugging-friendly string with detailed object information.
16
+ def inspect
17
+ class_name = self.class.name.split('::').last
18
+ "<#{class_name} status_code: #{@response_code.inspect}, reason: #{@reason.inspect}>"
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,52 @@
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
+ # Utility class for custom header authorization.
8
+ class CustomHeaderAuthentication < CoreLibrary::HeaderAuth
9
+ # Display error message on occurrence of authentication failure.
10
+ # @returns [String] The oAuth error message.
11
+ def error_message
12
+ 'CustomHeaderAuthentication: api_key is undefined.'
13
+ end
14
+
15
+ # Initialization constructor.
16
+ def initialize(custom_header_authentication_credentials)
17
+ auth_params = {}
18
+ auth_params['API-Key'] = custom_header_authentication_credentials.api_key unless
19
+ custom_header_authentication_credentials.nil? || custom_header_authentication_credentials.api_key.nil?
20
+
21
+ super auth_params
22
+ end
23
+ end
24
+
25
+ # Data class for CustomHeaderAuthenticationCredentials.
26
+ # Data class for CustomHeaderAuthenticationCredentials.
27
+ class CustomHeaderAuthenticationCredentials
28
+ attr_reader :api_key
29
+
30
+ def initialize(api_key:)
31
+ raise ArgumentError, 'api_key cannot be nil' if api_key.nil?
32
+
33
+ @api_key = api_key
34
+ end
35
+
36
+ def self.from_env
37
+ api_key = ENV['API_KEY']
38
+ all_nil = [
39
+ api_key
40
+ ].all?(&:nil?)
41
+ return nil if all_nil
42
+
43
+ new(api_key: api_key)
44
+ end
45
+
46
+ def clone_with(api_key: nil)
47
+ api_key ||= self.api_key
48
+
49
+ CustomHeaderAuthenticationCredentials.new(api_key: api_key)
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,10 @@
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
+ # HttpCallBack allows defining callables for pre and post API calls.
8
+ class HttpCallBack < CoreLibrary::HttpCallback
9
+ end
10
+ end
@@ -0,0 +1,10 @@
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
+ # HTTP Methods Enumeration.
8
+ class HttpMethodEnum < CoreLibrary::HttpMethod
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ # mindbody_public_api
2
+ #
3
+ # This file was automatically generated by APIMATIC
4
+ # v3.0 ( https://www.apimatic.io ).
5
+
6
+ module MindbodyPublicApi
7
+ # Represents a single Http Request.
8
+ class HttpRequest < CoreLibrary::HttpRequest
9
+ end
10
+ end
@@ -0,0 +1,10 @@
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
+ # Http response received.
8
+ class HttpResponse < CoreLibrary::HttpResponse
9
+ end
10
+ end
@@ -0,0 +1,22 @@
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
+ ##
8
+ # ProxySettings encapsulates HTTP proxy configuration for Faraday,
9
+ # including optional basic authentication.
10
+ #
11
+ class ProxySettings < CoreLibrary::ProxySettings
12
+ def self.from_env
13
+ address = ENV['PROXY_ADDRESS']
14
+ port = ENV['PROXY_PORT']
15
+ username = ENV['PROXY_USERNAME']
16
+ password = ENV['PROXY_PASSWORD']
17
+ return nil if address.nil? || address.strip.empty?
18
+
19
+ new(address: address, port: port, username: username, password: password)
20
+ end
21
+ end
22
+ end