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 Catalog
5
5
  module Object_
6
6
  class Client
7
- # @return [Square::Catalog::Object_::Client]
7
+ # @param client [Square::Internal::Http::RawClient]
8
+ #
9
+ # @return [void]
8
10
  def initialize(client:)
9
11
  @client = client
10
12
  end
@@ -15,25 +17,35 @@ module Square
15
17
  # While one (batch or non-batch) update request is being processed, other (batched and non-batched)
16
18
  # update requests are rejected with the `429` error code.
17
19
  #
20
+ # @param request_options [Hash]
21
+ # @param params [Square::Catalog::Object_::Types::UpsertCatalogObjectRequest]
22
+ # @option request_options [String] :base_url
23
+ # @option request_options [Hash{String => Object}] :additional_headers
24
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
25
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
26
+ # @option request_options [Integer] :timeout_in_seconds
27
+ #
18
28
  # @return [Square::Types::UpsertCatalogObjectResponse]
19
29
  def upsert(request_options: {}, **params)
20
- _request = Square::Internal::JSON::Request.new(
21
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
30
+ params = Square::Internal::Types::Utils.normalize_keys(params)
31
+ request = Square::Internal::JSON::Request.new(
32
+ base_url: request_options[:base_url],
22
33
  method: "POST",
23
34
  path: "v2/catalog/object",
24
- body: params
35
+ body: Square::Catalog::Object_::Types::UpsertCatalogObjectRequest.new(params).to_h,
36
+ request_options: request_options
25
37
  )
26
38
  begin
27
- _response = @client.send(_request)
39
+ response = @client.send(request)
28
40
  rescue Net::HTTPRequestTimeout
29
41
  raise Square::Errors::TimeoutError
30
42
  end
31
- code = _response.code.to_i
43
+ code = response.code.to_i
32
44
  if code.between?(200, 299)
33
- Square::Types::UpsertCatalogObjectResponse.load(_response.body)
45
+ Square::Types::UpsertCatalogObjectResponse.load(response.body)
34
46
  else
35
47
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
36
- raise error_class.new(_response.body, code: code)
48
+ raise error_class.new(response.body, code: code)
37
49
  end
38
50
  end
39
51
 
@@ -45,32 +57,46 @@ module Square
45
57
  # [CatalogModifierList](entity:CatalogModifierList) objects, and the ids of
46
58
  # any [CatalogTax](entity:CatalogTax) objects that apply to it.
47
59
  #
60
+ # @param request_options [Hash]
61
+ # @param params [Hash]
62
+ # @option request_options [String] :base_url
63
+ # @option request_options [Hash{String => Object}] :additional_headers
64
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
65
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
66
+ # @option request_options [Integer] :timeout_in_seconds
67
+ # @option params [String] :object_id_
68
+ # @option params [Boolean, nil] :include_related_objects
69
+ # @option params [Integer, nil] :catalog_version
70
+ # @option params [Boolean, nil] :include_category_path_to_root
71
+ #
48
72
  # @return [Square::Types::GetCatalogObjectResponse]
49
73
  def get(request_options: {}, **params)
50
- _query_param_names = [
51
- %w[include_related_objects catalog_version include_category_path_to_root],
52
- %i[include_related_objects catalog_version include_category_path_to_root]
53
- ].flatten
54
- _query = params.slice(*_query_param_names)
55
- params = params.except(*_query_param_names)
74
+ params = Square::Internal::Types::Utils.normalize_keys(params)
75
+ query_param_names = %i[include_related_objects catalog_version include_category_path_to_root]
76
+ query_params = {}
77
+ query_params["include_related_objects"] = params[:include_related_objects] if params.key?(:include_related_objects)
78
+ query_params["catalog_version"] = params[:catalog_version] if params.key?(:catalog_version)
79
+ query_params["include_category_path_to_root"] = params[:include_category_path_to_root] if params.key?(:include_category_path_to_root)
80
+ params = params.except(*query_param_names)
56
81
 
57
- _request = Square::Internal::JSON::Request.new(
58
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
82
+ request = Square::Internal::JSON::Request.new(
83
+ base_url: request_options[:base_url],
59
84
  method: "GET",
60
- path: "v2/catalog/object/#{params[:object_id]}",
61
- query: _query
85
+ path: "v2/catalog/object/#{params[:object_id_]}",
86
+ query: query_params,
87
+ request_options: request_options
62
88
  )
63
89
  begin
64
- _response = @client.send(_request)
90
+ response = @client.send(request)
65
91
  rescue Net::HTTPRequestTimeout
66
92
  raise Square::Errors::TimeoutError
67
93
  end
68
- code = _response.code.to_i
94
+ code = response.code.to_i
69
95
  if code.between?(200, 299)
70
- Square::Types::GetCatalogObjectResponse.load(_response.body)
96
+ Square::Types::GetCatalogObjectResponse.load(response.body)
71
97
  else
72
98
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
73
- raise error_class.new(_response.body, code: code)
99
+ raise error_class.new(response.body, code: code)
74
100
  end
75
101
  end
76
102
 
@@ -85,24 +111,35 @@ module Square
85
111
  # While one (batch or non-batch) delete request is being processed, other (batched and non-batched)
86
112
  # delete requests are rejected with the `429` error code.
87
113
  #
114
+ # @param request_options [Hash]
115
+ # @param params [Hash]
116
+ # @option request_options [String] :base_url
117
+ # @option request_options [Hash{String => Object}] :additional_headers
118
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
119
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
120
+ # @option request_options [Integer] :timeout_in_seconds
121
+ # @option params [String] :object_id_
122
+ #
88
123
  # @return [Square::Types::DeleteCatalogObjectResponse]
89
124
  def delete(request_options: {}, **params)
90
- _request = Square::Internal::JSON::Request.new(
91
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
125
+ params = Square::Internal::Types::Utils.normalize_keys(params)
126
+ request = Square::Internal::JSON::Request.new(
127
+ base_url: request_options[:base_url],
92
128
  method: "DELETE",
93
- path: "v2/catalog/object/#{params[:object_id]}"
129
+ path: "v2/catalog/object/#{params[:object_id_]}",
130
+ request_options: request_options
94
131
  )
95
132
  begin
96
- _response = @client.send(_request)
133
+ response = @client.send(request)
97
134
  rescue Net::HTTPRequestTimeout
98
135
  raise Square::Errors::TimeoutError
99
136
  end
100
- code = _response.code.to_i
137
+ code = response.code.to_i
101
138
  if code.between?(200, 299)
102
- Square::Types::DeleteCatalogObjectResponse.load(_response.body)
139
+ Square::Types::DeleteCatalogObjectResponse.load(response.body)
103
140
  else
104
141
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
105
- raise error_class.new(_response.body, code: code)
142
+ raise error_class.new(response.body, code: code)
106
143
  end
107
144
  end
108
145
  end
@@ -5,7 +5,7 @@ module Square
5
5
  module Object_
6
6
  module Types
7
7
  class DeleteObjectRequest < Internal::Types::Model
8
- field :object_id_, -> { String }, optional: false, nullable: false
8
+ field :object_id_, -> { String }, optional: false, nullable: false, api_name: "object_id"
9
9
  end
10
10
  end
11
11
  end
@@ -5,7 +5,7 @@ module Square
5
5
  module Object_
6
6
  module Types
7
7
  class GetObjectRequest < Internal::Types::Model
8
- field :object_id_, -> { String }, optional: false, nullable: false
8
+ field :object_id_, -> { String }, optional: false, nullable: false, api_name: "object_id"
9
9
  field :include_related_objects, -> { Internal::Types::Boolean }, optional: true, nullable: false
10
10
  field :catalog_version, -> { Integer }, optional: true, nullable: false
11
11
  field :include_category_path_to_root, -> { Internal::Types::Boolean }, optional: true, nullable: false
@@ -5,9 +5,7 @@ module Square
5
5
  module Types
6
6
  class BatchUpsertCatalogObjectsRequest < Internal::Types::Model
7
7
  field :idempotency_key, -> { String }, optional: false, nullable: false
8
- field :batches, lambda {
9
- Internal::Types::Array[Square::Types::CatalogObjectBatch]
10
- }, optional: false, nullable: false
8
+ field :batches, -> { Internal::Types::Array[Square::Types::CatalogObjectBatch] }, optional: false, nullable: false
11
9
  end
12
10
  end
13
11
  end
@@ -6,19 +6,13 @@ module Square
6
6
  class SearchCatalogItemsRequest < Internal::Types::Model
7
7
  field :text_filter, -> { String }, optional: true, nullable: false
8
8
  field :category_ids, -> { Internal::Types::Array[String] }, optional: true, nullable: false
9
- field :stock_levels, lambda {
10
- Internal::Types::Array[Square::Types::SearchCatalogItemsRequestStockLevel]
11
- }, optional: true, nullable: false
9
+ field :stock_levels, -> { Internal::Types::Array[Square::Types::SearchCatalogItemsRequestStockLevel] }, optional: true, nullable: false
12
10
  field :enabled_location_ids, -> { Internal::Types::Array[String] }, optional: true, nullable: false
13
11
  field :cursor, -> { String }, optional: true, nullable: false
14
12
  field :limit, -> { Integer }, optional: true, nullable: false
15
13
  field :sort_order, -> { Square::Types::SortOrder }, optional: true, nullable: false
16
- field :product_types, lambda {
17
- Internal::Types::Array[Square::Types::CatalogItemProductType]
18
- }, optional: true, nullable: false
19
- field :custom_attribute_filters, lambda {
20
- Internal::Types::Array[Square::Types::CustomAttributeFilter]
21
- }, optional: true, nullable: false
14
+ field :product_types, -> { Internal::Types::Array[Square::Types::CatalogItemProductType] }, optional: true, nullable: false
15
+ field :custom_attribute_filters, -> { Internal::Types::Array[Square::Types::CustomAttributeFilter] }, optional: true, nullable: false
22
16
  field :archived_state, -> { Square::Types::ArchivedState }, optional: true, nullable: false
23
17
  end
24
18
  end
@@ -5,9 +5,7 @@ module Square
5
5
  module Types
6
6
  class SearchCatalogObjectsRequest < Internal::Types::Model
7
7
  field :cursor, -> { String }, optional: true, nullable: false
8
- field :object_types, lambda {
9
- Internal::Types::Array[Square::Types::CatalogObjectType]
10
- }, optional: true, nullable: false
8
+ field :object_types, -> { Internal::Types::Array[Square::Types::CatalogObjectType] }, optional: true, nullable: false
11
9
  field :include_deleted_objects, -> { Internal::Types::Boolean }, optional: true, nullable: false
12
10
  field :include_related_objects, -> { Internal::Types::Boolean }, optional: true, nullable: false
13
11
  field :begin_time, -> { String }, optional: true, nullable: false
@@ -0,0 +1,131 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Square
4
+ module Channels
5
+ class Client
6
+ # @param client [Square::Internal::Http::RawClient]
7
+ #
8
+ # @return [void]
9
+ def initialize(client:)
10
+ @client = client
11
+ end
12
+
13
+ # @param request_options [Hash]
14
+ # @param params [Hash]
15
+ # @option request_options [String] :base_url
16
+ # @option request_options [Hash{String => Object}] :additional_headers
17
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
18
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
19
+ # @option request_options [Integer] :timeout_in_seconds
20
+ # @option params [Square::Types::ReferenceType, nil] :reference_type
21
+ # @option params [String, nil] :reference_id
22
+ # @option params [Square::Types::ChannelStatus, nil] :status
23
+ # @option params [String, nil] :cursor
24
+ # @option params [Integer, nil] :limit
25
+ #
26
+ # @return [Square::Types::ListChannelsResponse]
27
+ def list(request_options: {}, **params)
28
+ params = Square::Internal::Types::Utils.normalize_keys(params)
29
+ query_param_names = %i[reference_type reference_id status cursor limit]
30
+ query_params = {}
31
+ query_params["reference_type"] = params[:reference_type] if params.key?(:reference_type)
32
+ query_params["reference_id"] = params[:reference_id] if params.key?(:reference_id)
33
+ query_params["status"] = params[:status] if params.key?(:status)
34
+ query_params["cursor"] = params[:cursor] if params.key?(:cursor)
35
+ query_params["limit"] = params[:limit] if params.key?(:limit)
36
+ params.except(*query_param_names)
37
+
38
+ Square::Internal::CursorItemIterator.new(
39
+ cursor_field: :cursor,
40
+ item_field: :channels,
41
+ initial_cursor: query_params[:cursor]
42
+ ) do |next_cursor|
43
+ query_params[:cursor] = next_cursor
44
+ request = Square::Internal::JSON::Request.new(
45
+ base_url: request_options[:base_url],
46
+ method: "GET",
47
+ path: "v2/channels",
48
+ query: query_params,
49
+ request_options: request_options
50
+ )
51
+ begin
52
+ response = @client.send(request)
53
+ rescue Net::HTTPRequestTimeout
54
+ raise Square::Errors::TimeoutError
55
+ end
56
+ code = response.code.to_i
57
+ if code.between?(200, 299)
58
+ Square::Types::ListChannelsResponse.load(response.body)
59
+ else
60
+ error_class = Square::Errors::ResponseError.subclass_for_code(code)
61
+ raise error_class.new(response.body, code: code)
62
+ end
63
+ end
64
+ end
65
+
66
+ # @param request_options [Hash]
67
+ # @param params [Square::Channels::Types::BulkRetrieveChannelsRequest]
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
+ #
74
+ # @return [Square::Types::BulkRetrieveChannelsResponse]
75
+ def bulk_retrieve(request_options: {}, **params)
76
+ params = Square::Internal::Types::Utils.normalize_keys(params)
77
+ request = Square::Internal::JSON::Request.new(
78
+ base_url: request_options[:base_url],
79
+ method: "POST",
80
+ path: "v2/channels/bulk-retrieve",
81
+ body: Square::Channels::Types::BulkRetrieveChannelsRequest.new(params).to_h,
82
+ request_options: request_options
83
+ )
84
+ begin
85
+ response = @client.send(request)
86
+ rescue Net::HTTPRequestTimeout
87
+ raise Square::Errors::TimeoutError
88
+ end
89
+ code = response.code.to_i
90
+ if code.between?(200, 299)
91
+ Square::Types::BulkRetrieveChannelsResponse.load(response.body)
92
+ else
93
+ error_class = Square::Errors::ResponseError.subclass_for_code(code)
94
+ raise error_class.new(response.body, code: code)
95
+ end
96
+ end
97
+
98
+ # @param request_options [Hash]
99
+ # @param params [Hash]
100
+ # @option request_options [String] :base_url
101
+ # @option request_options [Hash{String => Object}] :additional_headers
102
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
103
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
104
+ # @option request_options [Integer] :timeout_in_seconds
105
+ # @option params [String] :channel_id
106
+ #
107
+ # @return [Square::Types::RetrieveChannelResponse]
108
+ def get(request_options: {}, **params)
109
+ params = Square::Internal::Types::Utils.normalize_keys(params)
110
+ request = Square::Internal::JSON::Request.new(
111
+ base_url: request_options[:base_url],
112
+ method: "GET",
113
+ path: "v2/channels/#{params[:channel_id]}",
114
+ request_options: request_options
115
+ )
116
+ begin
117
+ response = @client.send(request)
118
+ rescue Net::HTTPRequestTimeout
119
+ raise Square::Errors::TimeoutError
120
+ end
121
+ code = response.code.to_i
122
+ if code.between?(200, 299)
123
+ Square::Types::RetrieveChannelResponse.load(response.body)
124
+ else
125
+ error_class = Square::Errors::ResponseError.subclass_for_code(code)
126
+ raise error_class.new(response.body, code: code)
127
+ end
128
+ end
129
+ end
130
+ end
131
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Square
4
+ module Channels
5
+ module Types
6
+ class BulkRetrieveChannelsRequest < Internal::Types::Model
7
+ field :channel_ids, -> { Internal::Types::Array[String] }, optional: false, nullable: false
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Square
4
+ module Channels
5
+ module Types
6
+ class GetChannelsRequest < Internal::Types::Model
7
+ field :channel_id, -> { String }, optional: false, nullable: false
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Square
4
+ module Channels
5
+ module Types
6
+ class ListChannelsRequest < Internal::Types::Model
7
+ field :reference_type, -> { Square::Types::ReferenceType }, optional: true, nullable: false
8
+ field :reference_id, -> { String }, optional: true, nullable: false
9
+ field :status, -> { Square::Types::ChannelStatus }, optional: true, nullable: false
10
+ field :cursor, -> { String }, optional: true, nullable: false
11
+ field :limit, -> { Integer }, optional: true, nullable: false
12
+ end
13
+ end
14
+ end
15
+ end
@@ -3,104 +3,150 @@
3
3
  module Square
4
4
  module Checkout
5
5
  class Client
6
- # @return [Square::Checkout::Client]
6
+ # @param client [Square::Internal::Http::RawClient]
7
+ #
8
+ # @return [void]
7
9
  def initialize(client:)
8
10
  @client = client
9
11
  end
10
12
 
11
13
  # Retrieves the location-level settings for a Square-hosted checkout page.
12
14
  #
15
+ # @param request_options [Hash]
16
+ # @param params [Hash]
17
+ # @option request_options [String] :base_url
18
+ # @option request_options [Hash{String => Object}] :additional_headers
19
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
20
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
21
+ # @option request_options [Integer] :timeout_in_seconds
22
+ # @option params [String] :location_id
23
+ #
13
24
  # @return [Square::Types::RetrieveLocationSettingsResponse]
14
25
  def retrieve_location_settings(request_options: {}, **params)
15
- _request = Square::Internal::JSON::Request.new(
16
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
26
+ params = Square::Internal::Types::Utils.normalize_keys(params)
27
+ request = Square::Internal::JSON::Request.new(
28
+ base_url: request_options[:base_url],
17
29
  method: "GET",
18
- path: "v2/online-checkout/location-settings/#{params[:location_id]}"
30
+ path: "v2/online-checkout/location-settings/#{params[:location_id]}",
31
+ request_options: request_options
19
32
  )
20
33
  begin
21
- _response = @client.send(_request)
34
+ response = @client.send(request)
22
35
  rescue Net::HTTPRequestTimeout
23
36
  raise Square::Errors::TimeoutError
24
37
  end
25
- code = _response.code.to_i
38
+ code = response.code.to_i
26
39
  if code.between?(200, 299)
27
- Square::Types::RetrieveLocationSettingsResponse.load(_response.body)
40
+ Square::Types::RetrieveLocationSettingsResponse.load(response.body)
28
41
  else
29
42
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
30
- raise error_class.new(_response.body, code: code)
43
+ raise error_class.new(response.body, code: code)
31
44
  end
32
45
  end
33
46
 
34
47
  # Updates the location-level settings for a Square-hosted checkout page.
35
48
  #
49
+ # @param request_options [Hash]
50
+ # @param params [Square::Checkout::Types::UpdateLocationSettingsRequest]
51
+ # @option request_options [String] :base_url
52
+ # @option request_options [Hash{String => Object}] :additional_headers
53
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
54
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
55
+ # @option request_options [Integer] :timeout_in_seconds
56
+ # @option params [String] :location_id
57
+ #
36
58
  # @return [Square::Types::UpdateLocationSettingsResponse]
37
59
  def update_location_settings(request_options: {}, **params)
38
- _path_param_names = ["location_id"]
60
+ params = Square::Internal::Types::Utils.normalize_keys(params)
61
+ request_data = Square::Checkout::Types::UpdateLocationSettingsRequest.new(params).to_h
62
+ non_body_param_names = ["location_id"]
63
+ body = request_data.except(*non_body_param_names)
39
64
 
40
- _request = Square::Internal::JSON::Request.new(
41
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
65
+ request = Square::Internal::JSON::Request.new(
66
+ base_url: request_options[:base_url],
42
67
  method: "PUT",
43
68
  path: "v2/online-checkout/location-settings/#{params[:location_id]}",
44
- body: params.except(*_path_param_names)
69
+ body: body,
70
+ request_options: request_options
45
71
  )
46
72
  begin
47
- _response = @client.send(_request)
73
+ response = @client.send(request)
48
74
  rescue Net::HTTPRequestTimeout
49
75
  raise Square::Errors::TimeoutError
50
76
  end
51
- code = _response.code.to_i
77
+ code = response.code.to_i
52
78
  if code.between?(200, 299)
53
- Square::Types::UpdateLocationSettingsResponse.load(_response.body)
79
+ Square::Types::UpdateLocationSettingsResponse.load(response.body)
54
80
  else
55
81
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
56
- raise error_class.new(_response.body, code: code)
82
+ raise error_class.new(response.body, code: code)
57
83
  end
58
84
  end
59
85
 
60
86
  # Retrieves the merchant-level settings for a Square-hosted checkout page.
61
87
  #
88
+ # @param request_options [Hash]
89
+ # @param params [Hash]
90
+ # @option request_options [String] :base_url
91
+ # @option request_options [Hash{String => Object}] :additional_headers
92
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
93
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
94
+ # @option request_options [Integer] :timeout_in_seconds
95
+ #
62
96
  # @return [Square::Types::RetrieveMerchantSettingsResponse]
63
- def retrieve_merchant_settings(request_options: {}, **_params)
64
- _request = Square::Internal::JSON::Request.new(
65
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
97
+ def retrieve_merchant_settings(request_options: {}, **params)
98
+ Square::Internal::Types::Utils.normalize_keys(params)
99
+ request = Square::Internal::JSON::Request.new(
100
+ base_url: request_options[:base_url],
66
101
  method: "GET",
67
- path: "v2/online-checkout/merchant-settings"
102
+ path: "v2/online-checkout/merchant-settings",
103
+ request_options: request_options
68
104
  )
69
105
  begin
70
- _response = @client.send(_request)
106
+ response = @client.send(request)
71
107
  rescue Net::HTTPRequestTimeout
72
108
  raise Square::Errors::TimeoutError
73
109
  end
74
- code = _response.code.to_i
110
+ code = response.code.to_i
75
111
  if code.between?(200, 299)
76
- Square::Types::RetrieveMerchantSettingsResponse.load(_response.body)
112
+ Square::Types::RetrieveMerchantSettingsResponse.load(response.body)
77
113
  else
78
114
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
79
- raise error_class.new(_response.body, code: code)
115
+ raise error_class.new(response.body, code: code)
80
116
  end
81
117
  end
82
118
 
83
119
  # Updates the merchant-level settings for a Square-hosted checkout page.
84
120
  #
121
+ # @param request_options [Hash]
122
+ # @param params [Square::Checkout::Types::UpdateMerchantSettingsRequest]
123
+ # @option request_options [String] :base_url
124
+ # @option request_options [Hash{String => Object}] :additional_headers
125
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
126
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
127
+ # @option request_options [Integer] :timeout_in_seconds
128
+ #
85
129
  # @return [Square::Types::UpdateMerchantSettingsResponse]
86
130
  def update_merchant_settings(request_options: {}, **params)
87
- _request = Square::Internal::JSON::Request.new(
88
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
131
+ params = Square::Internal::Types::Utils.normalize_keys(params)
132
+ request = Square::Internal::JSON::Request.new(
133
+ base_url: request_options[:base_url],
89
134
  method: "PUT",
90
135
  path: "v2/online-checkout/merchant-settings",
91
- body: params
136
+ body: Square::Checkout::Types::UpdateMerchantSettingsRequest.new(params).to_h,
137
+ request_options: request_options
92
138
  )
93
139
  begin
94
- _response = @client.send(_request)
140
+ response = @client.send(request)
95
141
  rescue Net::HTTPRequestTimeout
96
142
  raise Square::Errors::TimeoutError
97
143
  end
98
- code = _response.code.to_i
144
+ code = response.code.to_i
99
145
  if code.between?(200, 299)
100
- Square::Types::UpdateMerchantSettingsResponse.load(_response.body)
146
+ Square::Types::UpdateMerchantSettingsResponse.load(response.body)
101
147
  else
102
148
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
103
- raise error_class.new(_response.body, code: code)
149
+ raise error_class.new(response.body, code: code)
104
150
  end
105
151
  end
106
152