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
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 344fba367e0d43c7a2133681fc82bb6581294f8204b6df9209ae78e29f2b497b
4
- data.tar.gz: e07eb7962d77f6a47e4ce5b9fb0ddc13c0871b7c6f4e2913eea40de454bf75f1
3
+ metadata.gz: 056af038668564ff8d7f1860bcc35e44449e21f4784d91846121c139d4c139d5
4
+ data.tar.gz: 357823902c08c710857fe636e58f92cc223ef2269e1795b888077cea2d79114b
5
5
  SHA512:
6
- metadata.gz: 45b3169c11fa3078aa127a6fc9e72e5a5c0f34a6c7266a39ea5247ff504f56fd127de67be40aa6c27e249895257720c0a0124564013d3a2998513a409fc5e6d1
7
- data.tar.gz: 4f7bbb50d66ff421dc3a5fb367a1a63a837d784047c9f1456e3a28083caeb9ab37d5b7788ed74ea1b443dba6e9d09b89434c3ee07ad5b5fe00cc0a8390fdd58f
6
+ metadata.gz: 86385d14a820fcc51363fad79429b7f543b80329559128f3c609ced4c30cbcb06c4e5bce954b379f628ea34ffe69163e1231bedd7b41c12f3e46162f479694ec
7
+ data.tar.gz: e93cc124da8f72be75e60cf8e7401ad706edcde4efe464579081a684fafb86c28792dc6e46728eb2bf5531b4c02d4eac68e53ecb6204b597e15489013f4ffccd
@@ -0,0 +1,9 @@
1
+ {
2
+ "cliVersion": "3.49.3",
3
+ "generatorName": "fernapi/fern-ruby-sdk",
4
+ "generatorVersion": "1.0.0-rc84",
5
+ "generatorConfig": {
6
+ "enableWireTests": true
7
+ },
8
+ "sdkVersion": "45.0.1.20260122"
9
+ }
data/.fernignore ADDED
@@ -0,0 +1,20 @@
1
+ lib/square_legacy/
2
+ lib/square_legacy.rb
3
+ Rakefile
4
+ .gitignore
5
+ test/square_legacy
6
+ test/custom
7
+ .github/workflows
8
+ README.md
9
+ lib/square/file_param.rb
10
+ Gemfile.custom
11
+ custom.gemspec.rb
12
+
13
+ # Pagination is currently broken for endpoints where the page token is not submitted via a query param
14
+ # Manually fixed pagination bugs in:
15
+ lib/square/inventory/client.rb
16
+ lib/square/transfer_orders/client.rb
17
+
18
+ # Iterator does not handle nil item fields (when API returns nil instead of empty array for no items)
19
+ # Manually added nil checks to avoid calling .shift/.empty? on nil
20
+ lib/square/internal/iterators/item_iterator.rb
data/.rubocop.yml ADDED
@@ -0,0 +1,60 @@
1
+ plugins:
2
+ - rubocop-minitest
3
+
4
+ AllCops:
5
+ TargetRubyVersion: 3.3
6
+ NewCops: enable
7
+
8
+ Style/StringLiterals:
9
+ EnforcedStyle: double_quotes
10
+
11
+ Style/StringLiteralsInInterpolation:
12
+ EnforcedStyle: double_quotes
13
+
14
+ Style/AccessModifierDeclarations:
15
+ Enabled: false
16
+
17
+ Lint/ConstantDefinitionInBlock:
18
+ Enabled: false
19
+
20
+ Metrics/AbcSize:
21
+ Enabled: false
22
+
23
+ Metrics/BlockLength:
24
+ Enabled: false
25
+
26
+ Metrics/ClassLength:
27
+ Enabled: false
28
+
29
+ Metrics/MethodLength:
30
+ Enabled: false
31
+
32
+ Metrics/ParameterLists:
33
+ Enabled: false
34
+
35
+ Metrics/PerceivedComplexity:
36
+ Enabled: false
37
+
38
+ Metrics/CyclomaticComplexity:
39
+ Enabled: false
40
+
41
+ Metrics/ModuleLength:
42
+ Enabled: false
43
+
44
+ Layout/LineLength:
45
+ Enabled: false
46
+
47
+ Naming/VariableNumber:
48
+ EnforcedStyle: snake_case
49
+
50
+ Style/Documentation:
51
+ Enabled: false
52
+
53
+ Style/Lambda:
54
+ EnforcedStyle: literal
55
+
56
+ Minitest/MultipleAssertions:
57
+ Enabled: false
58
+
59
+ Minitest/UselessAssertion:
60
+ Enabled: false
data/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2025 Square.
3
+ Copyright (c) 2026 Square.
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/Rakefile ADDED
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "bundler/gem_tasks"
4
+ require "minitest/test_task"
5
+
6
+ Minitest::TestTask.create
7
+
8
+ require "rubocop/rake_task"
9
+
10
+ RuboCop::RakeTask.new
11
+
12
+ task default: %i[test]
13
+
14
+ task lint: %i[rubocop]
15
+
16
+ # Legacy tests task
17
+ Minitest::TestTask.create(:legacy_test) do |t|
18
+ t.libs << "test"
19
+ t.test_globs = ["test/square_legacy/**/*_test.rb"]
20
+ end
21
+
22
+ # Integration tests
23
+ task :integration_test do
24
+ integration_test_files = Dir.glob("test/custom/integration/**/*.rb").sort
25
+ cmd = "ruby -Ilib:test:. -w -e 'require \"minitest/autorun\"; "
26
+ cmd += integration_test_files.map { |f| "require \"#{f}\"" }.join("; ")
27
+ cmd += "'"
28
+ sh cmd
29
+ end
data/custom.gemspec.rb ADDED
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Custom gemspec configuration file
4
+ # This file is automatically loaded by the main gemspec file. The 'spec' variable is available
5
+ # in this context from the main gemspec file. You can modify this file to add custom metadata,
6
+ # dependencies, or other gemspec configurations. If you do make changes to this file, you will
7
+ # need to add it to the .fernignore file to prevent your changes from being overwritten.
8
+
9
+ def add_custom_gemspec_data(spec)
10
+ spec.authors = ['Square Developer Platform']
11
+ spec.email = ['developers@squareup.com']
12
+ spec.homepage = 'https://squareup.com/developers'
13
+ spec.licenses = ['MIT']
14
+ spec.add_dependency('apimatic_core_interfaces', '~> 0.2.1')
15
+ spec.add_dependency('apimatic_core', '~> 0.3.11')
16
+ spec.add_dependency('apimatic_faraday_client_adapter', '~> 0.1.4')
17
+ spec.add_development_dependency('minitest', '~> 5.20')
18
+ spec.add_development_dependency('minitest-proveit', '~> 1.0')
19
+ end
@@ -3,7 +3,9 @@
3
3
  module Square
4
4
  module ApplePay
5
5
  class Client
6
- # @return [Square::ApplePay::Client]
6
+ # @param client [Square::Internal::Http::RawClient]
7
+ #
8
+ # @return [void]
7
9
  def initialize(client:)
8
10
  @client = client
9
11
  end
@@ -16,32 +18,44 @@ module Square
16
18
  # Apple Pay on the Web with Square for merchants using their platform.
17
19
  #
18
20
  # Note: You will need to host a valid domain verification file on your domain to support Apple Pay. The
19
- # current version of this file is always available at https://app.squareup.com/digital-wallets/apple-pay/apple-developer-merchantid-domain-association,
21
+ # current version of this file is always available at
22
+ # https://app.squareup.com/digital-wallets/apple-pay/apple-developer-merchantid-domain-association,
20
23
  # and should be hosted at `.well_known/apple-developer-merchantid-domain-association` on your
21
24
  # domain. This file is subject to change; we strongly recommend checking for updates regularly and avoiding
22
25
  # long-lived caches that might not keep in sync with the correct file version.
23
26
  #
24
- # To learn more about the Web Payments SDK and how to add Apple Pay, see [Take an Apple Pay Payment](https://developer.squareup.com/docs/web-payments/apple-pay).
27
+ # To learn more about the Web Payments SDK and how to add Apple Pay, see [Take an Apple Pay
28
+ # Payment](https://developer.squareup.com/docs/web-payments/apple-pay).
29
+ #
30
+ # @param request_options [Hash]
31
+ # @param params [Square::ApplePay::Types::RegisterDomainRequest]
32
+ # @option request_options [String] :base_url
33
+ # @option request_options [Hash{String => Object}] :additional_headers
34
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
35
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
36
+ # @option request_options [Integer] :timeout_in_seconds
25
37
  #
26
38
  # @return [Square::Types::RegisterDomainResponse]
27
39
  def register_domain(request_options: {}, **params)
28
- _request = Square::Internal::JSON::Request.new(
29
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
40
+ params = Square::Internal::Types::Utils.normalize_keys(params)
41
+ request = Square::Internal::JSON::Request.new(
42
+ base_url: request_options[:base_url],
30
43
  method: "POST",
31
44
  path: "v2/apple-pay/domains",
32
- body: params
45
+ body: Square::ApplePay::Types::RegisterDomainRequest.new(params).to_h,
46
+ request_options: request_options
33
47
  )
34
48
  begin
35
- _response = @client.send(_request)
49
+ response = @client.send(request)
36
50
  rescue Net::HTTPRequestTimeout
37
51
  raise Square::Errors::TimeoutError
38
52
  end
39
- code = _response.code.to_i
53
+ code = response.code.to_i
40
54
  if code.between?(200, 299)
41
- Square::Types::RegisterDomainResponse.load(_response.body)
55
+ Square::Types::RegisterDomainResponse.load(response.body)
42
56
  else
43
57
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
44
- raise error_class.new(_response.body, code: code)
58
+ raise error_class.new(response.body, code: code)
45
59
  end
46
60
  end
47
61
  end
@@ -3,86 +3,199 @@
3
3
  module Square
4
4
  module BankAccounts
5
5
  class Client
6
- # @return [Square::BankAccounts::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
  # Returns a list of [BankAccount](entity:BankAccount) objects linked to a Square account.
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, nil] :cursor
23
+ # @option params [Integer, nil] :limit
24
+ # @option params [String, nil] :location_id
25
+ # @option params [String, nil] :customer_id
26
+ #
13
27
  # @return [Square::Types::ListBankAccountsResponse]
14
28
  def list(request_options: {}, **params)
15
- _query_param_names = [
16
- %w[cursor limit location_id],
17
- %i[cursor limit location_id]
18
- ].flatten
19
- _query = params.slice(*_query_param_names)
20
- params.except(*_query_param_names)
29
+ params = Square::Internal::Types::Utils.normalize_keys(params)
30
+ query_param_names = %i[cursor limit location_id customer_id]
31
+ query_params = {}
32
+ query_params["cursor"] = params[:cursor] if params.key?(:cursor)
33
+ query_params["limit"] = params[:limit] if params.key?(:limit)
34
+ query_params["location_id"] = params[:location_id] if params.key?(:location_id)
35
+ query_params["customer_id"] = params[:customer_id] if params.key?(:customer_id)
36
+ params.except(*query_param_names)
21
37
 
22
- _request = Square::Internal::JSON::Request.new(
23
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
24
- method: "GET",
38
+ Square::Internal::CursorItemIterator.new(
39
+ cursor_field: :cursor,
40
+ item_field: :bank_accounts,
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/bank-accounts",
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::ListBankAccountsResponse.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
+ # Store a bank account on file for a square account
67
+ #
68
+ # @param request_options [Hash]
69
+ # @param params [Square::BankAccounts::Types::CreateBankAccountRequest]
70
+ # @option request_options [String] :base_url
71
+ # @option request_options [Hash{String => Object}] :additional_headers
72
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
73
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
74
+ # @option request_options [Integer] :timeout_in_seconds
75
+ #
76
+ # @return [Square::Types::CreateBankAccountResponse]
77
+ def create_bank_account(request_options: {}, **params)
78
+ params = Square::Internal::Types::Utils.normalize_keys(params)
79
+ request = Square::Internal::JSON::Request.new(
80
+ base_url: request_options[:base_url],
81
+ method: "POST",
25
82
  path: "v2/bank-accounts",
26
- query: _query
83
+ body: Square::BankAccounts::Types::CreateBankAccountRequest.new(params).to_h,
84
+ request_options: request_options
27
85
  )
28
86
  begin
29
- _response = @client.send(_request)
87
+ response = @client.send(request)
30
88
  rescue Net::HTTPRequestTimeout
31
89
  raise Square::Errors::TimeoutError
32
90
  end
33
- code = _response.code.to_i
91
+ code = response.code.to_i
34
92
  if code.between?(200, 299)
35
- Square::Types::ListBankAccountsResponse.load(_response.body)
93
+ Square::Types::CreateBankAccountResponse.load(response.body)
36
94
  else
37
95
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
38
- raise error_class.new(_response.body, code: code)
96
+ raise error_class.new(response.body, code: code)
39
97
  end
40
98
  end
41
99
 
42
100
  # Returns details of a [BankAccount](entity:BankAccount) identified by V1 bank account ID.
43
101
  #
102
+ # @param request_options [Hash]
103
+ # @param params [Hash]
104
+ # @option request_options [String] :base_url
105
+ # @option request_options [Hash{String => Object}] :additional_headers
106
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
107
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
108
+ # @option request_options [Integer] :timeout_in_seconds
109
+ # @option params [String] :v_1_bank_account_id
110
+ #
44
111
  # @return [Square::Types::GetBankAccountByV1IdResponse]
45
112
  def get_by_v_1_id(request_options: {}, **params)
46
- _request = Square::Internal::JSON::Request.new(
47
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
113
+ params = Square::Internal::Types::Utils.normalize_keys(params)
114
+ request = Square::Internal::JSON::Request.new(
115
+ base_url: request_options[:base_url],
48
116
  method: "GET",
49
- path: "v2/bank-accounts/by-v1-id/#{params[:v1_bank_account_id]}"
117
+ path: "v2/bank-accounts/by-v1-id/#{params[:v_1_bank_account_id]}",
118
+ request_options: request_options
50
119
  )
51
120
  begin
52
- _response = @client.send(_request)
121
+ response = @client.send(request)
53
122
  rescue Net::HTTPRequestTimeout
54
123
  raise Square::Errors::TimeoutError
55
124
  end
56
- code = _response.code.to_i
125
+ code = response.code.to_i
57
126
  if code.between?(200, 299)
58
- Square::Types::GetBankAccountByV1IdResponse.load(_response.body)
127
+ Square::Types::GetBankAccountByV1IdResponse.load(response.body)
59
128
  else
60
129
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
61
- raise error_class.new(_response.body, code: code)
130
+ raise error_class.new(response.body, code: code)
62
131
  end
63
132
  end
64
133
 
65
- # Returns details of a [BankAccount](entity:BankAccount)
66
- # linked to a Square account.
134
+ # Retrieve details of a [BankAccount](entity:BankAccount) bank account linked to a Square account.
135
+ #
136
+ # @param request_options [Hash]
137
+ # @param params [Hash]
138
+ # @option request_options [String] :base_url
139
+ # @option request_options [Hash{String => Object}] :additional_headers
140
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
141
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
142
+ # @option request_options [Integer] :timeout_in_seconds
143
+ # @option params [String] :bank_account_id
67
144
  #
68
145
  # @return [Square::Types::GetBankAccountResponse]
69
146
  def get(request_options: {}, **params)
70
- _request = Square::Internal::JSON::Request.new(
71
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
147
+ params = Square::Internal::Types::Utils.normalize_keys(params)
148
+ request = Square::Internal::JSON::Request.new(
149
+ base_url: request_options[:base_url],
72
150
  method: "GET",
73
- path: "v2/bank-accounts/#{params[:bank_account_id]}"
151
+ path: "v2/bank-accounts/#{params[:bank_account_id]}",
152
+ request_options: request_options
153
+ )
154
+ begin
155
+ response = @client.send(request)
156
+ rescue Net::HTTPRequestTimeout
157
+ raise Square::Errors::TimeoutError
158
+ end
159
+ code = response.code.to_i
160
+ if code.between?(200, 299)
161
+ Square::Types::GetBankAccountResponse.load(response.body)
162
+ else
163
+ error_class = Square::Errors::ResponseError.subclass_for_code(code)
164
+ raise error_class.new(response.body, code: code)
165
+ end
166
+ end
167
+
168
+ # Disable a bank account.
169
+ #
170
+ # @param request_options [Hash]
171
+ # @param params [Hash]
172
+ # @option request_options [String] :base_url
173
+ # @option request_options [Hash{String => Object}] :additional_headers
174
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
175
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
176
+ # @option request_options [Integer] :timeout_in_seconds
177
+ # @option params [String] :bank_account_id
178
+ #
179
+ # @return [Square::Types::DisableBankAccountResponse]
180
+ def disable_bank_account(request_options: {}, **params)
181
+ params = Square::Internal::Types::Utils.normalize_keys(params)
182
+ request = Square::Internal::JSON::Request.new(
183
+ base_url: request_options[:base_url],
184
+ method: "POST",
185
+ path: "v2/bank-accounts/#{params[:bank_account_id]}/disable",
186
+ request_options: request_options
74
187
  )
75
188
  begin
76
- _response = @client.send(_request)
189
+ response = @client.send(request)
77
190
  rescue Net::HTTPRequestTimeout
78
191
  raise Square::Errors::TimeoutError
79
192
  end
80
- code = _response.code.to_i
193
+ code = response.code.to_i
81
194
  if code.between?(200, 299)
82
- Square::Types::GetBankAccountResponse.load(_response.body)
195
+ Square::Types::DisableBankAccountResponse.load(response.body)
83
196
  else
84
197
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
85
- raise error_class.new(_response.body, code: code)
198
+ raise error_class.new(response.body, code: code)
86
199
  end
87
200
  end
88
201
  end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Square
4
+ module BankAccounts
5
+ module Types
6
+ class CreateBankAccountRequest < Internal::Types::Model
7
+ field :idempotency_key, -> { String }, optional: false, nullable: false
8
+ field :source_id, -> { String }, optional: false, nullable: false
9
+ field :customer_id, -> { String }, optional: true, nullable: false
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Square
4
+ module BankAccounts
5
+ module Types
6
+ class DisableBankAccountRequest < Internal::Types::Model
7
+ field :bank_account_id, -> { String }, optional: false, nullable: false
8
+ end
9
+ end
10
+ end
11
+ end
@@ -4,7 +4,7 @@ module Square
4
4
  module BankAccounts
5
5
  module Types
6
6
  class GetByV1IdBankAccountsRequest < Internal::Types::Model
7
- field :v_1_bank_account_id, -> { String }, optional: false, nullable: false
7
+ field :v_1_bank_account_id, -> { String }, optional: false, nullable: false, api_name: "v1_bank_account_id"
8
8
  end
9
9
  end
10
10
  end
@@ -7,6 +7,7 @@ module Square
7
7
  field :cursor, -> { String }, optional: true, nullable: false
8
8
  field :limit, -> { Integer }, optional: true, nullable: false
9
9
  field :location_id, -> { String }, optional: true, nullable: false
10
+ field :customer_id, -> { String }, optional: true, nullable: false
10
11
  end
11
12
  end
12
13
  end