square.rb 44.1.0.20250924 → 45.0.1.20260122

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 (541) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +9 -0
  3. data/.fernignore +20 -0
  4. data/.rubocop.yml +60 -0
  5. data/LICENSE +1 -1
  6. data/Rakefile +29 -0
  7. data/custom.gemspec.rb +19 -0
  8. data/lib/square/apple_pay/client.rb +24 -10
  9. data/lib/square/bank_accounts/client.rb +144 -31
  10. data/lib/square/bank_accounts/types/create_bank_account_request.rb +13 -0
  11. data/lib/square/bank_accounts/types/disable_bank_account_request.rb +11 -0
  12. data/lib/square/bank_accounts/types/get_by_v_1_id_bank_accounts_request.rb +1 -1
  13. data/lib/square/bank_accounts/types/list_bank_accounts_request.rb +1 -0
  14. data/lib/square/bookings/client.rb +238 -100
  15. data/lib/square/bookings/custom_attribute_definitions/client.rb +139 -67
  16. data/lib/square/bookings/custom_attribute_definitions/types/create_booking_custom_attribute_definition_request.rb +1 -3
  17. data/lib/square/bookings/custom_attribute_definitions/types/update_booking_custom_attribute_definition_request.rb +1 -3
  18. data/lib/square/bookings/custom_attributes/client.rb +168 -76
  19. data/lib/square/bookings/custom_attributes/types/bulk_delete_booking_custom_attributes_request.rb +1 -3
  20. data/lib/square/bookings/custom_attributes/types/bulk_upsert_booking_custom_attributes_request.rb +1 -3
  21. data/lib/square/bookings/location_profiles/client.rb +44 -24
  22. data/lib/square/bookings/team_member_profiles/client.rb +66 -31
  23. data/lib/square/cards/client.rb +103 -45
  24. data/lib/square/cash_drawers/client.rb +3 -1
  25. data/lib/square/cash_drawers/shifts/client.rb +121 -61
  26. data/lib/square/catalog/client.rb +203 -91
  27. data/lib/square/catalog/images/client.rb +50 -20
  28. data/lib/square/catalog/object/client.rb +66 -29
  29. data/lib/square/catalog/object/types/delete_object_request.rb +1 -1
  30. data/lib/square/catalog/object/types/get_object_request.rb +1 -1
  31. data/lib/square/catalog/types/batch_upsert_catalog_objects_request.rb +1 -3
  32. data/lib/square/catalog/types/search_catalog_items_request.rb +3 -9
  33. data/lib/square/catalog/types/search_catalog_objects_request.rb +1 -3
  34. data/lib/square/channels/client.rb +131 -0
  35. data/lib/square/channels/types/bulk_retrieve_channels_request.rb +11 -0
  36. data/lib/square/channels/types/get_channels_request.rb +11 -0
  37. data/lib/square/channels/types/list_channels_request.rb +15 -0
  38. data/lib/square/checkout/client.rb +77 -31
  39. data/lib/square/checkout/payment_links/client.rb +120 -54
  40. data/lib/square/client.rb +18 -10
  41. data/lib/square/customers/cards/client.rb +43 -16
  42. data/lib/square/customers/client.rb +220 -97
  43. data/lib/square/customers/custom_attribute_definitions/client.rb +157 -74
  44. data/lib/square/customers/custom_attribute_definitions/types/batch_upsert_customer_custom_attributes_request.rb +1 -3
  45. data/lib/square/customers/custom_attribute_definitions/types/create_customer_custom_attribute_definition_request.rb +1 -3
  46. data/lib/square/customers/custom_attribute_definitions/types/update_customer_custom_attribute_definition_request.rb +1 -3
  47. data/lib/square/customers/custom_attributes/client.rb +117 -53
  48. data/lib/square/customers/groups/client.rb +156 -67
  49. data/lib/square/customers/segments/client.rb +62 -31
  50. data/lib/square/customers/types/bulk_create_customers_request.rb +1 -3
  51. data/lib/square/customers/types/bulk_update_customers_request.rb +1 -3
  52. data/lib/square/devices/client.rb +66 -31
  53. data/lib/square/devices/codes/client.rb +83 -38
  54. data/lib/square/disputes/client.rb +140 -60
  55. data/lib/square/disputes/evidence/client.rb +83 -39
  56. data/lib/square/employees/client.rb +66 -31
  57. data/lib/square/events/client.rb +80 -38
  58. data/lib/square/file_param.rb +77 -77
  59. data/lib/square/gift_cards/activities/client.rb +73 -31
  60. data/lib/square/gift_cards/client.rb +163 -69
  61. data/lib/square/internal/http/base_request.rb +6 -0
  62. data/lib/square/internal/http/raw_client.rb +111 -20
  63. data/lib/square/internal/iterators/cursor_item_iterator.rb +28 -0
  64. data/lib/square/internal/iterators/cursor_page_iterator.rb +51 -0
  65. data/lib/square/internal/iterators/item_iterator.rb +65 -0
  66. data/lib/square/internal/iterators/offset_item_iterator.rb +30 -0
  67. data/lib/square/internal/iterators/offset_page_iterator.rb +83 -0
  68. data/lib/square/internal/json/request.rb +2 -1
  69. data/lib/square/internal/multipart/multipart_request.rb +2 -1
  70. data/lib/square/internal/types/enum.rb +8 -0
  71. data/lib/square/internal/types/model/field.rb +11 -1
  72. data/lib/square/internal/types/model.rb +14 -4
  73. data/lib/square/internal/types/union.rb +88 -7
  74. data/lib/square/internal/types/utils.rb +20 -4
  75. data/lib/square/inventory/client.rb +100 -76
  76. data/lib/square/invoices/client.rb +228 -99
  77. data/lib/square/labor/break_types/client.rb +120 -53
  78. data/lib/square/labor/client.rb +205 -81
  79. data/lib/square/labor/employee_wages/client.rb +64 -31
  80. data/lib/square/labor/shifts/client.rb +94 -37
  81. data/lib/square/labor/team_member_wages/client.rb +64 -31
  82. data/lib/square/labor/types/bulk_publish_scheduled_shifts_request.rb +2 -6
  83. data/lib/square/labor/types/publish_scheduled_shift_request.rb +1 -3
  84. data/lib/square/labor/workweek_configs/client.rb +65 -32
  85. data/lib/square/locations/client.rb +102 -41
  86. data/lib/square/locations/custom_attribute_definitions/client.rb +135 -64
  87. data/lib/square/locations/custom_attribute_definitions/types/create_location_custom_attribute_definition_request.rb +1 -3
  88. data/lib/square/locations/custom_attribute_definitions/types/update_location_custom_attribute_definition_request.rb +1 -3
  89. data/lib/square/locations/custom_attributes/client.rb +156 -68
  90. data/lib/square/locations/custom_attributes/types/bulk_delete_location_custom_attributes_request.rb +1 -3
  91. data/lib/square/locations/custom_attributes/types/bulk_upsert_location_custom_attributes_request.rb +1 -3
  92. data/lib/square/locations/transactions/client.rb +93 -37
  93. data/lib/square/locations/types/create_checkout_request.rb +1 -3
  94. data/lib/square/loyalty/accounts/client.rb +109 -44
  95. data/lib/square/loyalty/accounts/types/search_loyalty_accounts_request.rb +1 -3
  96. data/lib/square/loyalty/client.rb +20 -8
  97. data/lib/square/loyalty/programs/client.rb +72 -29
  98. data/lib/square/loyalty/programs/promotions/client.rb +106 -46
  99. data/lib/square/loyalty/programs/promotions/types/cancel_promotions_request.rb +1 -1
  100. data/lib/square/loyalty/programs/promotions/types/get_promotions_request.rb +1 -1
  101. data/lib/square/loyalty/rewards/client.rb +96 -38
  102. data/lib/square/loyalty/rewards/types/search_loyalty_rewards_request.rb +1 -3
  103. data/lib/square/merchants/client.rb +60 -31
  104. data/lib/square/merchants/custom_attribute_definitions/client.rb +137 -65
  105. data/lib/square/merchants/custom_attribute_definitions/types/create_merchant_custom_attribute_definition_request.rb +1 -3
  106. data/lib/square/merchants/custom_attribute_definitions/types/update_merchant_custom_attribute_definition_request.rb +1 -3
  107. data/lib/square/merchants/custom_attributes/client.rb +156 -68
  108. data/lib/square/merchants/custom_attributes/types/bulk_delete_merchant_custom_attributes_request.rb +1 -3
  109. data/lib/square/merchants/custom_attributes/types/bulk_upsert_merchant_custom_attributes_request.rb +1 -3
  110. data/lib/square/o_auth/client.rb +76 -31
  111. data/lib/square/o_auth/types/obtain_token_request.rb +1 -0
  112. data/lib/square/orders/client.rb +156 -63
  113. data/lib/square/orders/custom_attribute_definitions/client.rb +137 -65
  114. data/lib/square/orders/custom_attribute_definitions/types/create_order_custom_attribute_definition_request.rb +1 -3
  115. data/lib/square/orders/custom_attribute_definitions/types/update_order_custom_attribute_definition_request.rb +1 -3
  116. data/lib/square/orders/custom_attributes/client.rb +159 -69
  117. data/lib/square/orders/custom_attributes/types/bulk_delete_order_custom_attributes_request.rb +1 -3
  118. data/lib/square/orders/custom_attributes/types/bulk_upsert_order_custom_attributes_request.rb +1 -3
  119. data/lib/square/orders/types/calculate_order_request.rb +1 -3
  120. data/lib/square/payments/client.rb +182 -70
  121. data/lib/square/payouts/client.rb +116 -54
  122. data/lib/square/refunds/client.rb +97 -40
  123. data/lib/square/refunds/types/refund_payment_request.rb +1 -3
  124. data/lib/square/sites/client.rb +26 -11
  125. data/lib/square/snippets/client.rb +73 -28
  126. data/lib/square/subscriptions/client.rb +271 -117
  127. data/lib/square/team/client.rb +81 -36
  128. data/lib/square/team_members/client.rb +119 -49
  129. data/lib/square/team_members/types/batch_create_team_members_request.rb +1 -3
  130. data/lib/square/team_members/types/batch_update_team_members_request.rb +1 -3
  131. data/lib/square/team_members/wage_setting/client.rb +48 -19
  132. data/lib/square/terminal/actions/client.rb +75 -30
  133. data/lib/square/terminal/checkouts/client.rb +76 -30
  134. data/lib/square/terminal/client.rb +60 -23
  135. data/lib/square/terminal/refunds/client.rb +78 -31
  136. data/lib/square/transfer_orders/client.rb +292 -0
  137. data/lib/square/transfer_orders/types/cancel_transfer_order_request.rb +13 -0
  138. data/lib/square/transfer_orders/types/create_transfer_order_request.rb +12 -0
  139. data/lib/square/transfer_orders/types/delete_transfer_orders_request.rb +12 -0
  140. data/lib/square/transfer_orders/types/get_transfer_orders_request.rb +11 -0
  141. data/lib/square/transfer_orders/types/receive_transfer_order_request.rb +14 -0
  142. data/lib/square/transfer_orders/types/search_transfer_orders_request.rb +13 -0
  143. data/lib/square/transfer_orders/types/start_transfer_order_request.rb +13 -0
  144. data/lib/square/transfer_orders/types/update_transfer_order_request.rb +14 -0
  145. data/lib/square/types/address.rb +2 -1
  146. data/lib/square/types/application_details.rb +1 -3
  147. data/lib/square/types/application_type.rb +23 -0
  148. data/lib/square/types/availability.rb +3 -4
  149. data/lib/square/types/bank_account.rb +1 -0
  150. data/lib/square/types/batch_create_team_members_response.rb +1 -3
  151. data/lib/square/types/batch_create_vendors_response.rb +1 -3
  152. data/lib/square/types/batch_get_catalog_objects_response.rb +1 -3
  153. data/lib/square/types/batch_get_vendors_response.rb +1 -3
  154. data/lib/square/types/batch_update_team_members_response.rb +1 -3
  155. data/lib/square/types/batch_update_vendors_response.rb +1 -3
  156. data/lib/square/types/batch_upsert_catalog_objects_response.rb +1 -3
  157. data/lib/square/types/batch_upsert_customer_custom_attributes_request_customer_custom_attribute_upsert_request.rb +2 -1
  158. data/lib/square/types/batch_upsert_customer_custom_attributes_response.rb +4 -4
  159. data/lib/square/types/batch_upsert_customer_custom_attributes_response_customer_custom_attribute_upsert_response.rb +3 -1
  160. data/lib/square/types/booking.rb +2 -6
  161. data/lib/square/types/booking_created_event.rb +2 -1
  162. data/lib/square/types/booking_custom_attribute_definition_visible_created_event.rb +2 -1
  163. data/lib/square/types/booking_custom_attribute_definition_visible_deleted_event.rb +2 -1
  164. data/lib/square/types/booking_custom_attribute_definition_visible_updated_event.rb +2 -1
  165. data/lib/square/types/booking_custom_attribute_delete_request.rb +4 -2
  166. data/lib/square/types/booking_custom_attribute_delete_response.rb +3 -1
  167. data/lib/square/types/booking_custom_attribute_upsert_request.rb +2 -1
  168. data/lib/square/types/booking_custom_attribute_upsert_response.rb +3 -1
  169. data/lib/square/types/booking_updated_event.rb +2 -1
  170. data/lib/square/types/bulk_create_customers_response.rb +1 -3
  171. data/lib/square/types/bulk_delete_booking_custom_attributes_response.rb +4 -4
  172. data/lib/square/types/bulk_delete_customers_response.rb +1 -3
  173. data/lib/square/types/bulk_delete_location_custom_attributes_request_location_custom_attribute_delete_request.rb +2 -1
  174. data/lib/square/types/bulk_delete_location_custom_attributes_response.rb +4 -4
  175. data/lib/square/types/bulk_delete_location_custom_attributes_response_location_custom_attribute_delete_response.rb +2 -1
  176. data/lib/square/types/bulk_delete_merchant_custom_attributes_request_merchant_custom_attribute_delete_request.rb +2 -1
  177. data/lib/square/types/bulk_delete_merchant_custom_attributes_response.rb +4 -4
  178. data/lib/square/types/bulk_delete_merchant_custom_attributes_response_merchant_custom_attribute_delete_response.rb +2 -1
  179. data/lib/square/types/bulk_delete_order_custom_attributes_response.rb +1 -3
  180. data/lib/square/types/bulk_publish_scheduled_shifts_response.rb +1 -3
  181. data/lib/square/types/bulk_retrieve_bookings_response.rb +1 -3
  182. data/lib/square/types/bulk_retrieve_channels_request_constants.rb +23 -0
  183. data/lib/square/types/bulk_retrieve_channels_response.rb +12 -0
  184. data/lib/square/types/bulk_retrieve_customers_response.rb +1 -3
  185. data/lib/square/types/bulk_retrieve_team_member_booking_profiles_response.rb +3 -4
  186. data/lib/square/types/bulk_update_customers_response.rb +1 -3
  187. data/lib/square/types/bulk_upsert_booking_custom_attributes_response.rb +4 -4
  188. data/lib/square/types/bulk_upsert_location_custom_attributes_request_location_custom_attribute_upsert_request.rb +2 -1
  189. data/lib/square/types/bulk_upsert_location_custom_attributes_response.rb +4 -4
  190. data/lib/square/types/bulk_upsert_location_custom_attributes_response_location_custom_attribute_upsert_response.rb +3 -1
  191. data/lib/square/types/bulk_upsert_merchant_custom_attributes_request_merchant_custom_attribute_upsert_request.rb +2 -1
  192. data/lib/square/types/bulk_upsert_merchant_custom_attributes_response.rb +4 -4
  193. data/lib/square/types/bulk_upsert_merchant_custom_attributes_response_merchant_custom_attribute_upsert_response.rb +3 -1
  194. data/lib/square/types/bulk_upsert_order_custom_attributes_response.rb +1 -3
  195. data/lib/square/types/business_appointment_settings.rb +4 -12
  196. data/lib/square/types/business_booking_profile.rb +2 -6
  197. data/lib/square/types/buy_now_pay_later_details.rb +1 -0
  198. data/lib/square/types/cancel_transfer_order_response.rb +11 -0
  199. data/lib/square/types/card.rb +2 -0
  200. data/lib/square/types/card_issuer_alert.rb +23 -0
  201. data/lib/square/types/catalog_category.rb +1 -3
  202. data/lib/square/types/catalog_custom_attribute_definition.rb +6 -18
  203. data/lib/square/types/catalog_custom_attribute_definition_selection_config.rb +1 -3
  204. data/lib/square/types/catalog_id_mapping.rb +1 -1
  205. data/lib/square/types/catalog_info_response.rb +1 -3
  206. data/lib/square/types/catalog_item.rb +6 -12
  207. data/lib/square/types/catalog_item_food_and_beverage_details.rb +2 -6
  208. data/lib/square/types/catalog_item_food_and_beverage_details_dietary_preference.rb +2 -6
  209. data/lib/square/types/catalog_item_food_and_beverage_details_ingredient.rb +2 -6
  210. data/lib/square/types/catalog_item_modifier_list_info.rb +6 -9
  211. data/lib/square/types/catalog_item_variation.rb +17 -13
  212. data/lib/square/types/catalog_modifier.rb +4 -4
  213. data/lib/square/types/catalog_modifier_list.rb +4 -2
  214. data/lib/square/types/catalog_modifier_override.rb +2 -2
  215. data/lib/square/types/catalog_modifier_toggle_override_type.rb +13 -0
  216. data/lib/square/types/catalog_object.rb +7 -3
  217. data/lib/square/types/catalog_object_base.rb +2 -4
  218. data/lib/square/types/catalog_object_category.rb +3 -4
  219. data/lib/square/types/catalog_object_custom_attribute_definition.rb +1 -3
  220. data/lib/square/types/catalog_object_quick_amounts_settings.rb +1 -3
  221. data/lib/square/types/catalog_object_reference.rb +1 -1
  222. data/lib/square/types/catalog_object_subscription_plan_variation.rb +1 -3
  223. data/lib/square/types/catalog_query.rb +11 -13
  224. data/lib/square/types/catalog_query_prefix.rb +2 -1
  225. data/lib/square/types/catalog_query_text.rb +2 -1
  226. data/lib/square/types/catalog_subscription_plan.rb +5 -5
  227. data/lib/square/types/catalog_subscription_plan_variation.rb +4 -2
  228. data/lib/square/types/catalog_v_1_id.rb +1 -1
  229. data/lib/square/types/catalog_version_updated_event_object.rb +1 -3
  230. data/lib/square/types/channel.rb +16 -0
  231. data/lib/square/types/channel_status.rb +12 -0
  232. data/lib/square/types/checkout.rb +1 -3
  233. data/lib/square/types/checkout_location_settings.rb +1 -3
  234. data/lib/square/types/checkout_location_settings_branding.rb +2 -6
  235. data/lib/square/types/checkout_merchant_settings.rb +1 -3
  236. data/lib/square/types/checkout_merchant_settings_payment_methods.rb +4 -12
  237. data/lib/square/types/checkout_merchant_settings_payment_methods_afterpay_clearpay.rb +2 -6
  238. data/lib/square/types/component.rb +4 -12
  239. data/lib/square/types/create_bank_account_response.rb +11 -0
  240. data/lib/square/types/create_booking_custom_attribute_definition_response.rb +4 -4
  241. data/lib/square/types/create_catalog_image_request.rb +1 -1
  242. data/lib/square/types/create_customer_custom_attribute_definition_response.rb +4 -4
  243. data/lib/square/types/create_location_custom_attribute_definition_response.rb +4 -4
  244. data/lib/square/types/create_merchant_custom_attribute_definition_response.rb +4 -4
  245. data/lib/square/types/create_order_custom_attribute_definition_response.rb +1 -3
  246. data/lib/square/types/create_transfer_order_data.rb +19 -0
  247. data/lib/square/types/create_transfer_order_line_data.rb +12 -0
  248. data/lib/square/types/create_transfer_order_response.rb +11 -0
  249. data/lib/square/types/create_webhook_subscription_response.rb +2 -1
  250. data/lib/square/types/custom_attribute.rb +1 -1
  251. data/lib/square/types/custom_attribute_definition.rb +1 -3
  252. data/lib/square/types/custom_attribute_definition_event_data_object.rb +1 -3
  253. data/lib/square/types/custom_field.rb +2 -1
  254. data/lib/square/types/customer_address_filter.rb +2 -1
  255. data/lib/square/types/customer_created_event.rb +4 -2
  256. data/lib/square/types/customer_created_event_event_context_merge.rb +2 -1
  257. data/lib/square/types/customer_creation_source_filter.rb +1 -3
  258. data/lib/square/types/customer_custom_attribute_filter.rb +2 -1
  259. data/lib/square/types/customer_custom_attribute_filter_value.rb +2 -1
  260. data/lib/square/types/customer_custom_attribute_filters.rb +7 -6
  261. data/lib/square/types/customer_custom_attribute_visible_updated_event.rb +6 -3
  262. data/lib/square/types/customer_deleted_event.rb +4 -2
  263. data/lib/square/types/customer_deleted_event_event_context_merge.rb +2 -1
  264. data/lib/square/types/customer_tax_ids.rb +4 -2
  265. data/lib/square/types/customer_updated_event.rb +4 -2
  266. data/lib/square/types/delete_booking_custom_attribute_definition_response.rb +5 -2
  267. data/lib/square/types/delete_booking_custom_attribute_response.rb +2 -1
  268. data/lib/square/types/delete_customer_custom_attribute_response.rb +2 -1
  269. data/lib/square/types/delete_location_custom_attribute_response.rb +2 -1
  270. data/lib/square/types/delete_merchant_custom_attribute_response.rb +2 -1
  271. data/lib/square/types/delete_subscription_action_response.rb +2 -1
  272. data/lib/square/types/delete_transfer_order_response.rb +10 -0
  273. data/lib/square/types/delete_webhook_subscription_response.rb +2 -1
  274. data/lib/square/types/destination_details.rb +1 -3
  275. data/lib/square/types/device_checkout_options.rb +1 -0
  276. data/lib/square/types/device_component_details_ethernet_details.rb +1 -1
  277. data/lib/square/types/device_component_details_wi_fi_details.rb +1 -1
  278. data/lib/square/types/digital_wallet_details.rb +1 -0
  279. data/lib/square/types/disable_bank_account_response.rb +11 -0
  280. data/lib/square/types/dispute.rb +2 -1
  281. data/lib/square/types/dispute_evidence_added_event.rb +2 -1
  282. data/lib/square/types/dispute_evidence_created_event.rb +2 -1
  283. data/lib/square/types/employee_wage.rb +2 -1
  284. data/lib/square/types/error_code.rb +2 -0
  285. data/lib/square/types/event_data.rb +1 -3
  286. data/lib/square/types/fulfillment.rb +4 -7
  287. data/lib/square/types/fulfillment_delivery_details.rb +1 -3
  288. data/lib/square/types/fulfillment_pickup_details.rb +1 -3
  289. data/lib/square/types/get_bank_account_response.rb +1 -1
  290. data/lib/square/types/get_booking_request.rb +23 -0
  291. data/lib/square/types/get_business_booking_profile_request.rb +23 -0
  292. data/lib/square/types/get_card_request.rb +23 -0
  293. data/lib/square/types/get_catalog_object_response.rb +1 -3
  294. data/lib/square/types/get_customer_custom_attribute_definition_response.rb +4 -4
  295. data/lib/square/types/get_customer_custom_attribute_response.rb +2 -1
  296. data/lib/square/types/get_customer_group_request.rb +23 -0
  297. data/lib/square/types/get_customer_request.rb +23 -0
  298. data/lib/square/types/get_customer_segment_request.rb +23 -0
  299. data/lib/square/types/get_dispute_evidence_request.rb +23 -0
  300. data/lib/square/types/get_dispute_request.rb +23 -0
  301. data/lib/square/types/get_employee_request.rb +23 -0
  302. data/lib/square/types/get_gift_card_request.rb +23 -0
  303. data/lib/square/types/get_inventory_adjustment_request.rb +23 -0
  304. data/lib/square/types/get_inventory_physical_count_request.rb +23 -0
  305. data/lib/square/types/get_inventory_transfer_request.rb +23 -0
  306. data/lib/square/types/get_location_request.rb +23 -0
  307. data/lib/square/types/get_loyalty_account_request.rb +23 -0
  308. data/lib/square/types/get_loyalty_program_request.rb +23 -0
  309. data/lib/square/types/get_loyalty_promotion_request.rb +23 -0
  310. data/lib/square/types/get_loyalty_reward_request.rb +23 -0
  311. data/lib/square/types/get_merchant_request.rb +23 -0
  312. data/lib/square/types/get_order_request.rb +23 -0
  313. data/lib/square/types/get_payment_link_request.rb +23 -0
  314. data/lib/square/types/get_snippet_request.rb +23 -0
  315. data/lib/square/types/get_team_member_booking_profile_request.rb +23 -0
  316. data/lib/square/types/get_team_member_booking_profile_response.rb +1 -3
  317. data/lib/square/types/get_team_member_request.rb +23 -0
  318. data/lib/square/types/get_transaction_request.rb +23 -0
  319. data/lib/square/types/get_vendor_request.rb +23 -0
  320. data/lib/square/types/get_wage_setting_request.rb +23 -0
  321. data/lib/square/types/get_webhook_subscription_request.rb +23 -0
  322. data/lib/square/types/get_webhook_subscription_response.rb +2 -1
  323. data/lib/square/types/gift_card_activity.rb +8 -24
  324. data/lib/square/types/gift_card_activity_block_reason.rb +23 -0
  325. data/lib/square/types/gift_card_activity_unblock_reason.rb +23 -0
  326. data/lib/square/types/gift_card_activity_updated_event.rb +2 -1
  327. data/lib/square/types/inventory_count_updated_event_object.rb +1 -3
  328. data/lib/square/types/invoice.rb +6 -13
  329. data/lib/square/types/invoice_accepted_payment_methods.rb +2 -1
  330. data/lib/square/types/invoice_attachment.rb +1 -1
  331. data/lib/square/types/invoice_custom_field.rb +2 -1
  332. data/lib/square/types/invoice_payment_made_event.rb +2 -1
  333. data/lib/square/types/invoice_payment_request.rb +6 -8
  334. data/lib/square/types/invoice_refunded_event.rb +2 -1
  335. data/lib/square/types/invoice_sort_field.rb +23 -0
  336. data/lib/square/types/labor_scheduled_shift_created_event_object.rb +1 -1
  337. data/lib/square/types/labor_scheduled_shift_published_event_object.rb +1 -1
  338. data/lib/square/types/labor_scheduled_shift_updated_event_object.rb +1 -1
  339. data/lib/square/types/list_bank_accounts_response.rb +1 -1
  340. data/lib/square/types/list_booking_custom_attribute_definitions_response.rb +4 -4
  341. data/lib/square/types/list_booking_custom_attributes_response.rb +3 -4
  342. data/lib/square/types/list_cash_drawer_shift_events_response.rb +1 -3
  343. data/lib/square/types/list_cash_drawer_shifts_response.rb +1 -3
  344. data/lib/square/types/list_channels_request_constants.rb +23 -0
  345. data/lib/square/types/list_channels_response.rb +11 -0
  346. data/lib/square/types/list_customer_custom_attribute_definitions_response.rb +4 -4
  347. data/lib/square/types/list_customer_custom_attributes_response.rb +3 -4
  348. data/lib/square/types/list_gift_card_activities_response.rb +1 -3
  349. data/lib/square/types/list_location_booking_profiles_response.rb +1 -3
  350. data/lib/square/types/list_location_custom_attribute_definitions_response.rb +4 -4
  351. data/lib/square/types/list_location_custom_attributes_response.rb +3 -4
  352. data/lib/square/types/list_loyalty_promotions_response.rb +1 -3
  353. data/lib/square/types/list_merchant_custom_attribute_definitions_response.rb +4 -4
  354. data/lib/square/types/list_merchant_custom_attributes_response.rb +3 -4
  355. data/lib/square/types/list_order_custom_attribute_definitions_response.rb +1 -3
  356. data/lib/square/types/list_order_custom_attributes_response.rb +1 -3
  357. data/lib/square/types/list_subscription_events_response.rb +1 -3
  358. data/lib/square/types/list_team_member_booking_profiles_response.rb +1 -3
  359. data/lib/square/types/list_team_member_wages_response.rb +1 -3
  360. data/lib/square/types/list_webhook_subscriptions_response.rb +1 -3
  361. data/lib/square/types/list_workweek_configs_response.rb +1 -3
  362. data/lib/square/types/location.rb +1 -3
  363. data/lib/square/types/location_booking_profile.rb +2 -1
  364. data/lib/square/types/location_custom_attribute_visible_updated_event.rb +6 -3
  365. data/lib/square/types/loyalty_account.rb +1 -3
  366. data/lib/square/types/loyalty_account_mapping_type.rb +23 -0
  367. data/lib/square/types/loyalty_event.rb +3 -4
  368. data/lib/square/types/loyalty_event_filter.rb +1 -3
  369. data/lib/square/types/loyalty_program.rb +4 -7
  370. data/lib/square/types/loyalty_program_accrual_rule.rb +3 -4
  371. data/lib/square/types/loyalty_program_reward_tier.rb +3 -1
  372. data/lib/square/types/loyalty_promotion_incentive.rb +2 -6
  373. data/lib/square/types/loyalty_promotion_incentive_points_addition_data.rb +2 -1
  374. data/lib/square/types/loyalty_promotion_incentive_points_multiplier_data.rb +2 -1
  375. data/lib/square/types/loyalty_promotion_trigger_limit.rb +2 -1
  376. data/lib/square/types/loyalty_reward.rb +4 -2
  377. data/lib/square/types/measurement_unit_generic.rb +23 -0
  378. data/lib/square/types/oauth_authorization_revoked_event_object.rb +1 -3
  379. data/lib/square/types/oauth_authorization_revoked_event_revocation_object.rb +1 -3
  380. data/lib/square/types/order.rb +2 -6
  381. data/lib/square/types/order_card_surcharge_treatment_type.rb +12 -0
  382. data/lib/square/types/order_custom_attribute_definition_owned_created_event.rb +2 -1
  383. data/lib/square/types/order_custom_attribute_definition_owned_deleted_event.rb +2 -1
  384. data/lib/square/types/order_custom_attribute_definition_owned_updated_event.rb +2 -1
  385. data/lib/square/types/order_custom_attribute_definition_visible_created_event.rb +2 -1
  386. data/lib/square/types/order_custom_attribute_definition_visible_deleted_event.rb +2 -1
  387. data/lib/square/types/order_custom_attribute_definition_visible_updated_event.rb +2 -1
  388. data/lib/square/types/order_custom_attribute_owned_deleted_event.rb +2 -1
  389. data/lib/square/types/order_custom_attribute_owned_updated_event.rb +2 -1
  390. data/lib/square/types/order_custom_attribute_visible_deleted_event.rb +2 -1
  391. data/lib/square/types/order_custom_attribute_visible_updated_event.rb +2 -1
  392. data/lib/square/types/order_fulfillment_updated.rb +1 -3
  393. data/lib/square/types/order_line_item.rb +4 -12
  394. data/lib/square/types/order_line_item_applied_tax.rb +1 -0
  395. data/lib/square/types/order_line_item_pricing_blocklists.rb +3 -6
  396. data/lib/square/types/order_line_item_pricing_blocklists_blocked_service_charge.rb +14 -0
  397. data/lib/square/types/order_return.rb +3 -9
  398. data/lib/square/types/order_return_line_item.rb +4 -12
  399. data/lib/square/types/order_return_service_charge.rb +3 -6
  400. data/lib/square/types/order_service_charge.rb +2 -6
  401. data/lib/square/types/payment.rb +1 -3
  402. data/lib/square/types/payment_link_related_resources.rb +1 -3
  403. data/lib/square/types/payment_refund.rb +1 -3
  404. data/lib/square/types/payout_entry.rb +24 -72
  405. data/lib/square/types/pre_populated_data.rb +2 -1
  406. data/lib/square/types/product_type.rb +23 -0
  407. data/lib/square/types/receive_transfer_order_response.rb +11 -0
  408. data/lib/square/types/reference.rb +10 -0
  409. data/lib/square/types/reference_type.rb +25 -0
  410. data/lib/square/types/refund.rb +1 -3
  411. data/lib/square/types/retrieve_booking_custom_attribute_definition_response.rb +4 -4
  412. data/lib/square/types/retrieve_booking_custom_attribute_response.rb +2 -1
  413. data/lib/square/types/retrieve_channel_response.rb +10 -0
  414. data/lib/square/types/retrieve_location_custom_attribute_definition_response.rb +4 -4
  415. data/lib/square/types/retrieve_location_custom_attribute_response.rb +2 -1
  416. data/lib/square/types/retrieve_merchant_custom_attribute_definition_response.rb +4 -4
  417. data/lib/square/types/retrieve_merchant_custom_attribute_response.rb +2 -1
  418. data/lib/square/types/retrieve_order_custom_attribute_definition_response.rb +1 -3
  419. data/lib/square/types/retrieve_transfer_order_response.rb +11 -0
  420. data/lib/square/types/scheduled_shift_filter.rb +3 -7
  421. data/lib/square/types/scheduled_shift_workday.rb +1 -3
  422. data/lib/square/types/search_availability_filter.rb +1 -3
  423. data/lib/square/types/search_catalog_items_response.rb +2 -1
  424. data/lib/square/types/search_catalog_objects_response.rb +1 -3
  425. data/lib/square/types/search_events_sort_field.rb +23 -0
  426. data/lib/square/types/search_loyalty_accounts_request_loyalty_account_query.rb +1 -3
  427. data/lib/square/types/search_loyalty_accounts_response.rb +1 -3
  428. data/lib/square/types/search_orders_date_time_filter.rb +2 -1
  429. data/lib/square/types/search_orders_fulfillment_filter.rb +2 -6
  430. data/lib/square/types/search_orders_source_filter.rb +2 -0
  431. data/lib/square/types/search_scheduled_shifts_response.rb +1 -3
  432. data/lib/square/types/search_transfer_orders_response.rb +12 -0
  433. data/lib/square/types/shift_filter.rb +3 -2
  434. data/lib/square/types/shift_query.rb +2 -1
  435. data/lib/square/types/shift_sort.rb +2 -1
  436. data/lib/square/types/shift_wage.rb +2 -1
  437. data/lib/square/types/shift_workday.rb +2 -1
  438. data/lib/square/types/snippet.rb +2 -1
  439. data/lib/square/types/standard_unit_description_group.rb +1 -3
  440. data/lib/square/types/start_transfer_order_response.rb +11 -0
  441. data/lib/square/types/subscription_event.rb +1 -3
  442. data/lib/square/types/subscription_phase.rb +2 -1
  443. data/lib/square/types/subscription_test_result.rb +5 -3
  444. data/lib/square/types/team_member_assigned_locations.rb +1 -3
  445. data/lib/square/types/team_member_booking_profile.rb +2 -1
  446. data/lib/square/types/tender.rb +2 -6
  447. data/lib/square/types/tender_buy_now_pay_later_details.rb +1 -3
  448. data/lib/square/types/terminal_refund.rb +2 -1
  449. data/lib/square/types/test_webhook_subscription_response.rb +5 -5
  450. data/lib/square/types/timecard_filter.rb +1 -1
  451. data/lib/square/types/transfer_order.rb +35 -0
  452. data/lib/square/types/transfer_order_created_event.rb +14 -0
  453. data/lib/square/types/transfer_order_created_event_data.rb +11 -0
  454. data/lib/square/types/transfer_order_created_event_object.rb +9 -0
  455. data/lib/square/types/transfer_order_deleted_event.rb +14 -0
  456. data/lib/square/types/transfer_order_deleted_event_data.rb +11 -0
  457. data/lib/square/types/transfer_order_filter.rb +12 -0
  458. data/lib/square/types/transfer_order_goods_receipt.rb +27 -0
  459. data/lib/square/types/transfer_order_goods_receipt_line_item.rb +13 -0
  460. data/lib/square/types/transfer_order_line.rb +18 -0
  461. data/lib/square/types/transfer_order_query.rb +11 -0
  462. data/lib/square/types/transfer_order_sort.rb +11 -0
  463. data/lib/square/types/transfer_order_sort_field.rb +12 -0
  464. data/lib/square/types/transfer_order_status.rb +15 -0
  465. data/lib/square/types/transfer_order_updated_event.rb +14 -0
  466. data/lib/square/types/transfer_order_updated_event_data.rb +11 -0
  467. data/lib/square/types/transfer_order_updated_event_object.rb +9 -0
  468. data/lib/square/types/update_booking_custom_attribute_definition_response.rb +4 -4
  469. data/lib/square/types/update_customer_custom_attribute_definition_response.rb +4 -4
  470. data/lib/square/types/update_location_custom_attribute_definition_response.rb +4 -4
  471. data/lib/square/types/update_merchant_custom_attribute_definition_response.rb +4 -4
  472. data/lib/square/types/update_order_custom_attribute_definition_response.rb +1 -3
  473. data/lib/square/types/update_transfer_order_data.rb +15 -0
  474. data/lib/square/types/update_transfer_order_line_data.rb +13 -0
  475. data/lib/square/types/update_transfer_order_response.rb +11 -0
  476. data/lib/square/types/update_webhook_subscription_response.rb +2 -1
  477. data/lib/square/types/update_webhook_subscription_signature_key_response.rb +3 -1
  478. data/lib/square/types/upsert_booking_custom_attribute_response.rb +2 -1
  479. data/lib/square/types/upsert_catalog_object_response.rb +1 -3
  480. data/lib/square/types/upsert_customer_custom_attribute_response.rb +2 -1
  481. data/lib/square/types/upsert_location_custom_attribute_response.rb +2 -1
  482. data/lib/square/types/upsert_merchant_custom_attribute_response.rb +2 -1
  483. data/lib/square/types/v_1_get_payment_request.rb +23 -0
  484. data/lib/square/types/v_1_get_settlement_request.rb +23 -0
  485. data/lib/square/types/v_1_order.rb +1 -3
  486. data/lib/square/types/vendor_created_event_object_operation.rb +23 -0
  487. data/lib/square/types/vendor_updated_event_object_operation.rb +23 -0
  488. data/lib/square/types/wage_setting.rb +1 -3
  489. data/lib/square/v_1_transactions/client.rb +72 -29
  490. data/lib/square/vendors/client.rb +126 -51
  491. data/lib/square/vendors/types/batch_update_vendors_request.rb +1 -3
  492. data/lib/square/version.rb +1 -1
  493. data/lib/square/webhooks/client.rb +3 -1
  494. data/lib/square/webhooks/event_types/client.rb +25 -14
  495. data/lib/square/webhooks/subscriptions/client.rb +164 -69
  496. data/lib/square.rb +106 -5
  497. data/lib/square_legacy/utilities/webhooks_helper.rb +1 -1
  498. data/reference.md +29588 -0
  499. data/wiremock/docker-compose.test.yml +14 -0
  500. data/wiremock/wiremock-mappings.json +1 -0
  501. metadata +118 -45
  502. data/lib/square/mobile/client.rb +0 -50
  503. data/lib/square/mobile/types/create_mobile_authorization_code_request.rb +0 -11
  504. data/lib/square/types/create_mobile_authorization_code_response.rb +0 -13
  505. data/test/square/integration/client_tests/test_cash_drawers.rb +0 -27
  506. data/test/square/integration/client_tests/test_catalog.rb +0 -704
  507. data/test/square/integration/client_tests/test_customers.rb +0 -65
  508. data/test/square/integration/client_tests/test_customers_groups.rb +0 -144
  509. data/test/square/integration/client_tests/test_customers_segments.rb +0 -36
  510. data/test/square/integration/client_tests/test_devices.rb +0 -67
  511. data/test/square/integration/client_tests/test_inventory.rb +0 -28
  512. data/test/square/integration/client_tests/test_locations.rb +0 -18
  513. data/test/square/integration/client_tests/test_merchants.rb +0 -40
  514. data/test/square/integration/client_tests/test_mobile.rb +0 -21
  515. data/test/square/integration/client_tests/test_orders.rb +0 -177
  516. data/test/square/integration/client_tests/test_payments.rb +0 -167
  517. data/test/square/integration/client_tests/test_refunds.rb +0 -133
  518. data/test/square/integration/client_tests/test_team_members.rb +0 -97
  519. data/test/square/integration/client_tests/test_terminal.rb +0 -107
  520. data/test/square/integration/integration_test_base.rb +0 -16
  521. data/test/square/integration/testdata/image.jpeg +0 -0
  522. data/test/square/internal/multipart/test_form_data.rb +0 -311
  523. data/test/square/internal/types/test_array.rb +0 -37
  524. data/test/square/internal/types/test_boolean.rb +0 -35
  525. data/test/square/internal/types/test_enum.rb +0 -42
  526. data/test/square/internal/types/test_hash.rb +0 -50
  527. data/test/square/internal/types/test_model.rb +0 -105
  528. data/test/square/internal/types/test_union.rb +0 -52
  529. data/test/square/internal/types/test_utils.rb +0 -216
  530. data/test/square_legacy/api/api_test_base.rb +0 -27
  531. data/test/square_legacy/api/test_catalog_api.rb +0 -57
  532. data/test/square_legacy/api/test_customers_api.rb +0 -43
  533. data/test/square_legacy/api/test_employees_api.rb +0 -34
  534. data/test/square_legacy/api/test_labor_api.rb +0 -82
  535. data/test/square_legacy/api/test_locations_api.rb +0 -22
  536. data/test/square_legacy/api/test_merchants_api.rb +0 -38
  537. data/test/square_legacy/api/test_payments_api.rb +0 -40
  538. data/test/square_legacy/api/test_refunds_api.rb +0 -42
  539. data/test/square_legacy/http_response_catcher.rb +0 -14
  540. data/test/square_legacy/webhooks/test_webhooks_helper.rb +0 -153
  541. data/test/test_helper.rb +0 -123
@@ -4,7 +4,9 @@ module Square
4
4
  module Bookings
5
5
  module CustomAttributes
6
6
  class Client
7
- # @return [Square::Bookings::CustomAttributes::Client]
7
+ # @param client [Square::Internal::Http::RawClient]
8
+ #
9
+ # @return [void]
8
10
  def initialize(client:)
9
11
  @client = client
10
12
  end
@@ -12,189 +14,279 @@ module Square
12
14
  # Bulk deletes bookings custom attributes.
13
15
  #
14
16
  # To call this endpoint with buyer-level permissions, set `APPOINTMENTS_WRITE` for the OAuth scope.
15
- # To call this endpoint with seller-level permissions, set `APPOINTMENTS_ALL_WRITE` and `APPOINTMENTS_WRITE` for the OAuth scope.
17
+ # To call this endpoint with seller-level permissions, set `APPOINTMENTS_ALL_WRITE` and `APPOINTMENTS_WRITE` for
18
+ # the OAuth scope.
16
19
  #
17
- # For calls to this endpoint with seller-level permissions to succeed, the seller must have subscribed to *Appointments Plus*
20
+ # For calls to this endpoint with seller-level permissions to succeed, the seller must have subscribed to
21
+ # *Appointments Plus*
18
22
  # or *Appointments Premium*.
19
23
  #
24
+ # @param request_options [Hash]
25
+ # @param params [Square::Bookings::CustomAttributes::Types::BulkDeleteBookingCustomAttributesRequest]
26
+ # @option request_options [String] :base_url
27
+ # @option request_options [Hash{String => Object}] :additional_headers
28
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
29
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
30
+ # @option request_options [Integer] :timeout_in_seconds
31
+ #
20
32
  # @return [Square::Types::BulkDeleteBookingCustomAttributesResponse]
21
33
  def batch_delete(request_options: {}, **params)
22
- _request = Square::Internal::JSON::Request.new(
23
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
34
+ params = Square::Internal::Types::Utils.normalize_keys(params)
35
+ request = Square::Internal::JSON::Request.new(
36
+ base_url: request_options[:base_url],
24
37
  method: "POST",
25
38
  path: "v2/bookings/custom-attributes/bulk-delete",
26
- body: params
39
+ body: Square::Bookings::CustomAttributes::Types::BulkDeleteBookingCustomAttributesRequest.new(params).to_h,
40
+ request_options: request_options
27
41
  )
28
42
  begin
29
- _response = @client.send(_request)
43
+ response = @client.send(request)
30
44
  rescue Net::HTTPRequestTimeout
31
45
  raise Square::Errors::TimeoutError
32
46
  end
33
- code = _response.code.to_i
47
+ code = response.code.to_i
34
48
  if code.between?(200, 299)
35
- Square::Types::BulkDeleteBookingCustomAttributesResponse.load(_response.body)
49
+ Square::Types::BulkDeleteBookingCustomAttributesResponse.load(response.body)
36
50
  else
37
51
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
38
- raise error_class.new(_response.body, code: code)
52
+ raise error_class.new(response.body, code: code)
39
53
  end
40
54
  end
41
55
 
42
56
  # Bulk upserts bookings custom attributes.
43
57
  #
44
58
  # To call this endpoint with buyer-level permissions, set `APPOINTMENTS_WRITE` for the OAuth scope.
45
- # To call this endpoint with seller-level permissions, set `APPOINTMENTS_ALL_WRITE` and `APPOINTMENTS_WRITE` for the OAuth scope.
59
+ # To call this endpoint with seller-level permissions, set `APPOINTMENTS_ALL_WRITE` and `APPOINTMENTS_WRITE` for
60
+ # the OAuth scope.
46
61
  #
47
- # For calls to this endpoint with seller-level permissions to succeed, the seller must have subscribed to *Appointments Plus*
62
+ # For calls to this endpoint with seller-level permissions to succeed, the seller must have subscribed to
63
+ # *Appointments Plus*
48
64
  # or *Appointments Premium*.
49
65
  #
66
+ # @param request_options [Hash]
67
+ # @param params [Square::Bookings::CustomAttributes::Types::BulkUpsertBookingCustomAttributesRequest]
68
+ # @option request_options [String] :base_url
69
+ # @option request_options [Hash{String => Object}] :additional_headers
70
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
71
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
72
+ # @option request_options [Integer] :timeout_in_seconds
73
+ #
50
74
  # @return [Square::Types::BulkUpsertBookingCustomAttributesResponse]
51
75
  def batch_upsert(request_options: {}, **params)
52
- _request = Square::Internal::JSON::Request.new(
53
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
76
+ params = Square::Internal::Types::Utils.normalize_keys(params)
77
+ request = Square::Internal::JSON::Request.new(
78
+ base_url: request_options[:base_url],
54
79
  method: "POST",
55
80
  path: "v2/bookings/custom-attributes/bulk-upsert",
56
- body: params
81
+ body: Square::Bookings::CustomAttributes::Types::BulkUpsertBookingCustomAttributesRequest.new(params).to_h,
82
+ request_options: request_options
57
83
  )
58
84
  begin
59
- _response = @client.send(_request)
85
+ response = @client.send(request)
60
86
  rescue Net::HTTPRequestTimeout
61
87
  raise Square::Errors::TimeoutError
62
88
  end
63
- code = _response.code.to_i
89
+ code = response.code.to_i
64
90
  if code.between?(200, 299)
65
- Square::Types::BulkUpsertBookingCustomAttributesResponse.load(_response.body)
91
+ Square::Types::BulkUpsertBookingCustomAttributesResponse.load(response.body)
66
92
  else
67
93
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
68
- raise error_class.new(_response.body, code: code)
94
+ raise error_class.new(response.body, code: code)
69
95
  end
70
96
  end
71
97
 
72
98
  # Lists a booking's custom attributes.
73
99
  #
74
100
  # To call this endpoint with buyer-level permissions, set `APPOINTMENTS_READ` for the OAuth scope.
75
- # To call this endpoint with seller-level permissions, set `APPOINTMENTS_ALL_READ` and `APPOINTMENTS_READ` for the OAuth scope.
101
+ # To call this endpoint with seller-level permissions, set `APPOINTMENTS_ALL_READ` and `APPOINTMENTS_READ` for
102
+ # the OAuth scope.
103
+ #
104
+ # @param request_options [Hash]
105
+ # @param params [Hash]
106
+ # @option request_options [String] :base_url
107
+ # @option request_options [Hash{String => Object}] :additional_headers
108
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
109
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
110
+ # @option request_options [Integer] :timeout_in_seconds
111
+ # @option params [String] :booking_id
112
+ # @option params [Integer, nil] :limit
113
+ # @option params [String, nil] :cursor
114
+ # @option params [Boolean, nil] :with_definitions
76
115
  #
77
116
  # @return [Square::Types::ListBookingCustomAttributesResponse]
78
117
  def list(request_options: {}, **params)
79
- _query_param_names = [
80
- %w[limit cursor with_definitions],
81
- %i[limit cursor with_definitions]
82
- ].flatten
83
- _query = params.slice(*_query_param_names)
84
- params = params.except(*_query_param_names)
118
+ params = Square::Internal::Types::Utils.normalize_keys(params)
119
+ query_param_names = %i[limit cursor with_definitions]
120
+ query_params = {}
121
+ query_params["limit"] = params[:limit] if params.key?(:limit)
122
+ query_params["cursor"] = params[:cursor] if params.key?(:cursor)
123
+ query_params["with_definitions"] = params[:with_definitions] if params.key?(:with_definitions)
124
+ params = params.except(*query_param_names)
85
125
 
86
- _request = Square::Internal::JSON::Request.new(
87
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
88
- method: "GET",
89
- path: "v2/bookings/#{params[:booking_id]}/custom-attributes",
90
- query: _query
91
- )
92
- begin
93
- _response = @client.send(_request)
94
- rescue Net::HTTPRequestTimeout
95
- raise Square::Errors::TimeoutError
96
- end
97
- code = _response.code.to_i
98
- if code.between?(200, 299)
99
- Square::Types::ListBookingCustomAttributesResponse.load(_response.body)
100
- else
101
- error_class = Square::Errors::ResponseError.subclass_for_code(code)
102
- raise error_class.new(_response.body, code: code)
126
+ Square::Internal::CursorItemIterator.new(
127
+ cursor_field: :cursor,
128
+ item_field: :custom_attributes,
129
+ initial_cursor: query_params[:cursor]
130
+ ) do |next_cursor|
131
+ query_params[:cursor] = next_cursor
132
+ request = Square::Internal::JSON::Request.new(
133
+ base_url: request_options[:base_url],
134
+ method: "GET",
135
+ path: "v2/bookings/#{params[:booking_id]}/custom-attributes",
136
+ query: query_params,
137
+ request_options: request_options
138
+ )
139
+ begin
140
+ response = @client.send(request)
141
+ rescue Net::HTTPRequestTimeout
142
+ raise Square::Errors::TimeoutError
143
+ end
144
+ code = response.code.to_i
145
+ if code.between?(200, 299)
146
+ Square::Types::ListBookingCustomAttributesResponse.load(response.body)
147
+ else
148
+ error_class = Square::Errors::ResponseError.subclass_for_code(code)
149
+ raise error_class.new(response.body, code: code)
150
+ end
103
151
  end
104
152
  end
105
153
 
106
154
  # Retrieves a bookings custom attribute.
107
155
  #
108
156
  # To call this endpoint with buyer-level permissions, set `APPOINTMENTS_READ` for the OAuth scope.
109
- # To call this endpoint with seller-level permissions, set `APPOINTMENTS_ALL_READ` and `APPOINTMENTS_READ` for the OAuth scope.
157
+ # To call this endpoint with seller-level permissions, set `APPOINTMENTS_ALL_READ` and `APPOINTMENTS_READ` for
158
+ # the OAuth scope.
159
+ #
160
+ # @param request_options [Hash]
161
+ # @param params [Hash]
162
+ # @option request_options [String] :base_url
163
+ # @option request_options [Hash{String => Object}] :additional_headers
164
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
165
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
166
+ # @option request_options [Integer] :timeout_in_seconds
167
+ # @option params [String] :booking_id
168
+ # @option params [String] :key
169
+ # @option params [Boolean, nil] :with_definition
170
+ # @option params [Integer, nil] :version
110
171
  #
111
172
  # @return [Square::Types::RetrieveBookingCustomAttributeResponse]
112
173
  def get(request_options: {}, **params)
113
- _query_param_names = [
114
- %w[with_definition version],
115
- %i[with_definition version]
116
- ].flatten
117
- _query = params.slice(*_query_param_names)
118
- params = params.except(*_query_param_names)
174
+ params = Square::Internal::Types::Utils.normalize_keys(params)
175
+ query_param_names = %i[with_definition version]
176
+ query_params = {}
177
+ query_params["with_definition"] = params[:with_definition] if params.key?(:with_definition)
178
+ query_params["version"] = params[:version] if params.key?(:version)
179
+ params = params.except(*query_param_names)
119
180
 
120
- _request = Square::Internal::JSON::Request.new(
121
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
181
+ request = Square::Internal::JSON::Request.new(
182
+ base_url: request_options[:base_url],
122
183
  method: "GET",
123
184
  path: "v2/bookings/#{params[:booking_id]}/custom-attributes/#{params[:key]}",
124
- query: _query
185
+ query: query_params,
186
+ request_options: request_options
125
187
  )
126
188
  begin
127
- _response = @client.send(_request)
189
+ response = @client.send(request)
128
190
  rescue Net::HTTPRequestTimeout
129
191
  raise Square::Errors::TimeoutError
130
192
  end
131
- code = _response.code.to_i
193
+ code = response.code.to_i
132
194
  if code.between?(200, 299)
133
- Square::Types::RetrieveBookingCustomAttributeResponse.load(_response.body)
195
+ Square::Types::RetrieveBookingCustomAttributeResponse.load(response.body)
134
196
  else
135
197
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
136
- raise error_class.new(_response.body, code: code)
198
+ raise error_class.new(response.body, code: code)
137
199
  end
138
200
  end
139
201
 
140
202
  # Upserts a bookings custom attribute.
141
203
  #
142
204
  # To call this endpoint with buyer-level permissions, set `APPOINTMENTS_WRITE` for the OAuth scope.
143
- # To call this endpoint with seller-level permissions, set `APPOINTMENTS_ALL_WRITE` and `APPOINTMENTS_WRITE` for the OAuth scope.
205
+ # To call this endpoint with seller-level permissions, set `APPOINTMENTS_ALL_WRITE` and `APPOINTMENTS_WRITE` for
206
+ # the OAuth scope.
144
207
  #
145
- # For calls to this endpoint with seller-level permissions to succeed, the seller must have subscribed to *Appointments Plus*
208
+ # For calls to this endpoint with seller-level permissions to succeed, the seller must have subscribed to
209
+ # *Appointments Plus*
146
210
  # or *Appointments Premium*.
147
211
  #
212
+ # @param request_options [Hash]
213
+ # @param params [Square::Bookings::CustomAttributes::Types::UpsertBookingCustomAttributeRequest]
214
+ # @option request_options [String] :base_url
215
+ # @option request_options [Hash{String => Object}] :additional_headers
216
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
217
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
218
+ # @option request_options [Integer] :timeout_in_seconds
219
+ # @option params [String] :booking_id
220
+ # @option params [String] :key
221
+ #
148
222
  # @return [Square::Types::UpsertBookingCustomAttributeResponse]
149
223
  def upsert(request_options: {}, **params)
150
- _path_param_names = %w[booking_id key]
224
+ params = Square::Internal::Types::Utils.normalize_keys(params)
225
+ request_data = Square::Bookings::CustomAttributes::Types::UpsertBookingCustomAttributeRequest.new(params).to_h
226
+ non_body_param_names = %w[booking_id key]
227
+ body = request_data.except(*non_body_param_names)
151
228
 
152
- _request = Square::Internal::JSON::Request.new(
153
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
229
+ request = Square::Internal::JSON::Request.new(
230
+ base_url: request_options[:base_url],
154
231
  method: "PUT",
155
232
  path: "v2/bookings/#{params[:booking_id]}/custom-attributes/#{params[:key]}",
156
- body: params.except(*_path_param_names)
233
+ body: body,
234
+ request_options: request_options
157
235
  )
158
236
  begin
159
- _response = @client.send(_request)
237
+ response = @client.send(request)
160
238
  rescue Net::HTTPRequestTimeout
161
239
  raise Square::Errors::TimeoutError
162
240
  end
163
- code = _response.code.to_i
241
+ code = response.code.to_i
164
242
  if code.between?(200, 299)
165
- Square::Types::UpsertBookingCustomAttributeResponse.load(_response.body)
243
+ Square::Types::UpsertBookingCustomAttributeResponse.load(response.body)
166
244
  else
167
245
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
168
- raise error_class.new(_response.body, code: code)
246
+ raise error_class.new(response.body, code: code)
169
247
  end
170
248
  end
171
249
 
172
250
  # Deletes a bookings custom attribute.
173
251
  #
174
252
  # To call this endpoint with buyer-level permissions, set `APPOINTMENTS_WRITE` for the OAuth scope.
175
- # To call this endpoint with seller-level permissions, set `APPOINTMENTS_ALL_WRITE` and `APPOINTMENTS_WRITE` for the OAuth scope.
253
+ # To call this endpoint with seller-level permissions, set `APPOINTMENTS_ALL_WRITE` and `APPOINTMENTS_WRITE` for
254
+ # the OAuth scope.
176
255
  #
177
- # For calls to this endpoint with seller-level permissions to succeed, the seller must have subscribed to *Appointments Plus*
256
+ # For calls to this endpoint with seller-level permissions to succeed, the seller must have subscribed to
257
+ # *Appointments Plus*
178
258
  # or *Appointments Premium*.
179
259
  #
260
+ # @param request_options [Hash]
261
+ # @param params [Hash]
262
+ # @option request_options [String] :base_url
263
+ # @option request_options [Hash{String => Object}] :additional_headers
264
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
265
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
266
+ # @option request_options [Integer] :timeout_in_seconds
267
+ # @option params [String] :booking_id
268
+ # @option params [String] :key
269
+ #
180
270
  # @return [Square::Types::DeleteBookingCustomAttributeResponse]
181
271
  def delete(request_options: {}, **params)
182
- _request = Square::Internal::JSON::Request.new(
183
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
272
+ params = Square::Internal::Types::Utils.normalize_keys(params)
273
+ request = Square::Internal::JSON::Request.new(
274
+ base_url: request_options[:base_url],
184
275
  method: "DELETE",
185
- path: "v2/bookings/#{params[:booking_id]}/custom-attributes/#{params[:key]}"
276
+ path: "v2/bookings/#{params[:booking_id]}/custom-attributes/#{params[:key]}",
277
+ request_options: request_options
186
278
  )
187
279
  begin
188
- _response = @client.send(_request)
280
+ response = @client.send(request)
189
281
  rescue Net::HTTPRequestTimeout
190
282
  raise Square::Errors::TimeoutError
191
283
  end
192
- code = _response.code.to_i
284
+ code = response.code.to_i
193
285
  if code.between?(200, 299)
194
- Square::Types::DeleteBookingCustomAttributeResponse.load(_response.body)
286
+ Square::Types::DeleteBookingCustomAttributeResponse.load(response.body)
195
287
  else
196
288
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
197
- raise error_class.new(_response.body, code: code)
289
+ raise error_class.new(response.body, code: code)
198
290
  end
199
291
  end
200
292
  end
@@ -5,9 +5,7 @@ module Square
5
5
  module CustomAttributes
6
6
  module Types
7
7
  class BulkDeleteBookingCustomAttributesRequest < Internal::Types::Model
8
- field :values, lambda {
9
- Internal::Types::Hash[String, Square::Types::BookingCustomAttributeDeleteRequest]
10
- }, optional: false, nullable: false
8
+ field :values, -> { Internal::Types::Hash[String, Square::Types::BookingCustomAttributeDeleteRequest] }, optional: false, nullable: false
11
9
  end
12
10
  end
13
11
  end
@@ -5,9 +5,7 @@ module Square
5
5
  module CustomAttributes
6
6
  module Types
7
7
  class BulkUpsertBookingCustomAttributesRequest < Internal::Types::Model
8
- field :values, lambda {
9
- Internal::Types::Hash[String, Square::Types::BookingCustomAttributeUpsertRequest]
10
- }, optional: false, nullable: false
8
+ field :values, -> { Internal::Types::Hash[String, Square::Types::BookingCustomAttributeUpsertRequest] }, optional: false, nullable: false
11
9
  end
12
10
  end
13
11
  end
@@ -4,39 +4,59 @@ module Square
4
4
  module Bookings
5
5
  module LocationProfiles
6
6
  class Client
7
- # @return [Square::Bookings::LocationProfiles::Client]
7
+ # @param client [Square::Internal::Http::RawClient]
8
+ #
9
+ # @return [void]
8
10
  def initialize(client:)
9
11
  @client = client
10
12
  end
11
13
 
12
14
  # Lists location booking profiles of a seller.
13
15
  #
16
+ # @param request_options [Hash]
17
+ # @param params [Hash]
18
+ # @option request_options [String] :base_url
19
+ # @option request_options [Hash{String => Object}] :additional_headers
20
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
21
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
22
+ # @option request_options [Integer] :timeout_in_seconds
23
+ # @option params [Integer, nil] :limit
24
+ # @option params [String, nil] :cursor
25
+ #
14
26
  # @return [Square::Types::ListLocationBookingProfilesResponse]
15
27
  def list(request_options: {}, **params)
16
- _query_param_names = [
17
- %w[limit cursor],
18
- %i[limit cursor]
19
- ].flatten
20
- _query = params.slice(*_query_param_names)
21
- params.except(*_query_param_names)
28
+ params = Square::Internal::Types::Utils.normalize_keys(params)
29
+ query_param_names = %i[limit cursor]
30
+ query_params = {}
31
+ query_params["limit"] = params[:limit] if params.key?(:limit)
32
+ query_params["cursor"] = params[:cursor] if params.key?(:cursor)
33
+ params.except(*query_param_names)
22
34
 
23
- _request = Square::Internal::JSON::Request.new(
24
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
25
- method: "GET",
26
- path: "v2/bookings/location-booking-profiles",
27
- query: _query
28
- )
29
- begin
30
- _response = @client.send(_request)
31
- rescue Net::HTTPRequestTimeout
32
- raise Square::Errors::TimeoutError
33
- end
34
- code = _response.code.to_i
35
- if code.between?(200, 299)
36
- Square::Types::ListLocationBookingProfilesResponse.load(_response.body)
37
- else
38
- error_class = Square::Errors::ResponseError.subclass_for_code(code)
39
- raise error_class.new(_response.body, code: code)
35
+ Square::Internal::CursorItemIterator.new(
36
+ cursor_field: :cursor,
37
+ item_field: :location_booking_profiles,
38
+ initial_cursor: query_params[:cursor]
39
+ ) do |next_cursor|
40
+ query_params[:cursor] = next_cursor
41
+ request = Square::Internal::JSON::Request.new(
42
+ base_url: request_options[:base_url],
43
+ method: "GET",
44
+ path: "v2/bookings/location-booking-profiles",
45
+ query: query_params,
46
+ request_options: request_options
47
+ )
48
+ begin
49
+ response = @client.send(request)
50
+ rescue Net::HTTPRequestTimeout
51
+ raise Square::Errors::TimeoutError
52
+ end
53
+ code = response.code.to_i
54
+ if code.between?(200, 299)
55
+ Square::Types::ListLocationBookingProfilesResponse.load(response.body)
56
+ else
57
+ error_class = Square::Errors::ResponseError.subclass_for_code(code)
58
+ raise error_class.new(response.body, code: code)
59
+ end
40
60
  end
41
61
  end
42
62
  end
@@ -4,62 +4,97 @@ module Square
4
4
  module Bookings
5
5
  module TeamMemberProfiles
6
6
  class Client
7
- # @return [Square::Bookings::TeamMemberProfiles::Client]
7
+ # @param client [Square::Internal::Http::RawClient]
8
+ #
9
+ # @return [void]
8
10
  def initialize(client:)
9
11
  @client = client
10
12
  end
11
13
 
12
14
  # Lists booking profiles for team members.
13
15
  #
16
+ # @param request_options [Hash]
17
+ # @param params [Hash]
18
+ # @option request_options [String] :base_url
19
+ # @option request_options [Hash{String => Object}] :additional_headers
20
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
21
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
22
+ # @option request_options [Integer] :timeout_in_seconds
23
+ # @option params [Boolean, nil] :bookable_only
24
+ # @option params [Integer, nil] :limit
25
+ # @option params [String, nil] :cursor
26
+ # @option params [String, nil] :location_id
27
+ #
14
28
  # @return [Square::Types::ListTeamMemberBookingProfilesResponse]
15
29
  def list(request_options: {}, **params)
16
- _query_param_names = [
17
- %w[bookable_only limit cursor location_id],
18
- %i[bookable_only limit cursor location_id]
19
- ].flatten
20
- _query = params.slice(*_query_param_names)
21
- params.except(*_query_param_names)
30
+ params = Square::Internal::Types::Utils.normalize_keys(params)
31
+ query_param_names = %i[bookable_only limit cursor location_id]
32
+ query_params = {}
33
+ query_params["bookable_only"] = params[:bookable_only] if params.key?(:bookable_only)
34
+ query_params["limit"] = params[:limit] if params.key?(:limit)
35
+ query_params["cursor"] = params[:cursor] if params.key?(:cursor)
36
+ query_params["location_id"] = params[:location_id] if params.key?(:location_id)
37
+ params.except(*query_param_names)
22
38
 
23
- _request = Square::Internal::JSON::Request.new(
24
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
25
- method: "GET",
26
- path: "v2/bookings/team-member-booking-profiles",
27
- query: _query
28
- )
29
- begin
30
- _response = @client.send(_request)
31
- rescue Net::HTTPRequestTimeout
32
- raise Square::Errors::TimeoutError
33
- end
34
- code = _response.code.to_i
35
- if code.between?(200, 299)
36
- Square::Types::ListTeamMemberBookingProfilesResponse.load(_response.body)
37
- else
38
- error_class = Square::Errors::ResponseError.subclass_for_code(code)
39
- raise error_class.new(_response.body, code: code)
39
+ Square::Internal::CursorItemIterator.new(
40
+ cursor_field: :cursor,
41
+ item_field: :team_member_booking_profiles,
42
+ initial_cursor: query_params[:cursor]
43
+ ) do |next_cursor|
44
+ query_params[:cursor] = next_cursor
45
+ request = Square::Internal::JSON::Request.new(
46
+ base_url: request_options[:base_url],
47
+ method: "GET",
48
+ path: "v2/bookings/team-member-booking-profiles",
49
+ query: query_params,
50
+ request_options: request_options
51
+ )
52
+ begin
53
+ response = @client.send(request)
54
+ rescue Net::HTTPRequestTimeout
55
+ raise Square::Errors::TimeoutError
56
+ end
57
+ code = response.code.to_i
58
+ if code.between?(200, 299)
59
+ Square::Types::ListTeamMemberBookingProfilesResponse.load(response.body)
60
+ else
61
+ error_class = Square::Errors::ResponseError.subclass_for_code(code)
62
+ raise error_class.new(response.body, code: code)
63
+ end
40
64
  end
41
65
  end
42
66
 
43
67
  # Retrieves a team member's booking profile.
44
68
  #
69
+ # @param request_options [Hash]
70
+ # @param params [Hash]
71
+ # @option request_options [String] :base_url
72
+ # @option request_options [Hash{String => Object}] :additional_headers
73
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
74
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
75
+ # @option request_options [Integer] :timeout_in_seconds
76
+ # @option params [String] :team_member_id
77
+ #
45
78
  # @return [Square::Types::GetTeamMemberBookingProfileResponse]
46
79
  def get(request_options: {}, **params)
47
- _request = Square::Internal::JSON::Request.new(
48
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
80
+ params = Square::Internal::Types::Utils.normalize_keys(params)
81
+ request = Square::Internal::JSON::Request.new(
82
+ base_url: request_options[:base_url],
49
83
  method: "GET",
50
- path: "v2/bookings/team-member-booking-profiles/#{params[:team_member_id]}"
84
+ path: "v2/bookings/team-member-booking-profiles/#{params[:team_member_id]}",
85
+ request_options: request_options
51
86
  )
52
87
  begin
53
- _response = @client.send(_request)
88
+ response = @client.send(request)
54
89
  rescue Net::HTTPRequestTimeout
55
90
  raise Square::Errors::TimeoutError
56
91
  end
57
- code = _response.code.to_i
92
+ code = response.code.to_i
58
93
  if code.between?(200, 299)
59
- Square::Types::GetTeamMemberBookingProfileResponse.load(_response.body)
94
+ Square::Types::GetTeamMemberBookingProfileResponse.load(response.body)
60
95
  else
61
96
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
62
- raise error_class.new(_response.body, code: code)
97
+ raise error_class.new(response.body, code: code)
63
98
  end
64
99
  end
65
100
  end