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,102 +4,147 @@ module Square
4
4
  module Terminal
5
5
  module Actions
6
6
  class Client
7
- # @return [Square::Terminal::Actions::Client]
7
+ # @param client [Square::Internal::Http::RawClient]
8
+ #
9
+ # @return [void]
8
10
  def initialize(client:)
9
11
  @client = client
10
12
  end
11
13
 
12
14
  # Creates a Terminal action request and sends it to the specified device.
13
15
  #
16
+ # @param request_options [Hash]
17
+ # @param params [Square::Terminal::Actions::Types::CreateTerminalActionRequest]
18
+ # @option request_options [String] :base_url
19
+ # @option request_options [Hash{String => Object}] :additional_headers
20
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
21
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
22
+ # @option request_options [Integer] :timeout_in_seconds
23
+ #
14
24
  # @return [Square::Types::CreateTerminalActionResponse]
15
25
  def create(request_options: {}, **params)
16
- _request = Square::Internal::JSON::Request.new(
17
- 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],
18
29
  method: "POST",
19
30
  path: "v2/terminals/actions",
20
- body: params
31
+ body: Square::Terminal::Actions::Types::CreateTerminalActionRequest.new(params).to_h,
32
+ request_options: request_options
21
33
  )
22
34
  begin
23
- _response = @client.send(_request)
35
+ response = @client.send(request)
24
36
  rescue Net::HTTPRequestTimeout
25
37
  raise Square::Errors::TimeoutError
26
38
  end
27
- code = _response.code.to_i
39
+ code = response.code.to_i
28
40
  if code.between?(200, 299)
29
- Square::Types::CreateTerminalActionResponse.load(_response.body)
41
+ Square::Types::CreateTerminalActionResponse.load(response.body)
30
42
  else
31
43
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
32
- raise error_class.new(_response.body, code: code)
44
+ raise error_class.new(response.body, code: code)
33
45
  end
34
46
  end
35
47
 
36
- # Retrieves a filtered list of Terminal action requests created by the account making the request. Terminal action requests are available for 30 days.
48
+ # Retrieves a filtered list of Terminal action requests created by the account making the request. Terminal
49
+ # action requests are available for 30 days.
50
+ #
51
+ # @param request_options [Hash]
52
+ # @param params [Square::Terminal::Actions::Types::SearchTerminalActionsRequest]
53
+ # @option request_options [String] :base_url
54
+ # @option request_options [Hash{String => Object}] :additional_headers
55
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
56
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
57
+ # @option request_options [Integer] :timeout_in_seconds
37
58
  #
38
59
  # @return [Square::Types::SearchTerminalActionsResponse]
39
60
  def search(request_options: {}, **params)
40
- _request = Square::Internal::JSON::Request.new(
41
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
61
+ params = Square::Internal::Types::Utils.normalize_keys(params)
62
+ request = Square::Internal::JSON::Request.new(
63
+ base_url: request_options[:base_url],
42
64
  method: "POST",
43
65
  path: "v2/terminals/actions/search",
44
- body: params
66
+ body: Square::Terminal::Actions::Types::SearchTerminalActionsRequest.new(params).to_h,
67
+ request_options: request_options
45
68
  )
46
69
  begin
47
- _response = @client.send(_request)
70
+ response = @client.send(request)
48
71
  rescue Net::HTTPRequestTimeout
49
72
  raise Square::Errors::TimeoutError
50
73
  end
51
- code = _response.code.to_i
74
+ code = response.code.to_i
52
75
  if code.between?(200, 299)
53
- Square::Types::SearchTerminalActionsResponse.load(_response.body)
76
+ Square::Types::SearchTerminalActionsResponse.load(response.body)
54
77
  else
55
78
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
56
- raise error_class.new(_response.body, code: code)
79
+ raise error_class.new(response.body, code: code)
57
80
  end
58
81
  end
59
82
 
60
83
  # Retrieves a Terminal action request by `action_id`. Terminal action requests are available for 30 days.
61
84
  #
85
+ # @param request_options [Hash]
86
+ # @param params [Hash]
87
+ # @option request_options [String] :base_url
88
+ # @option request_options [Hash{String => Object}] :additional_headers
89
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
90
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
91
+ # @option request_options [Integer] :timeout_in_seconds
92
+ # @option params [String] :action_id
93
+ #
62
94
  # @return [Square::Types::GetTerminalActionResponse]
63
95
  def get(request_options: {}, **params)
64
- _request = Square::Internal::JSON::Request.new(
65
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
96
+ params = Square::Internal::Types::Utils.normalize_keys(params)
97
+ request = Square::Internal::JSON::Request.new(
98
+ base_url: request_options[:base_url],
66
99
  method: "GET",
67
- path: "v2/terminals/actions/#{params[:action_id]}"
100
+ path: "v2/terminals/actions/#{params[:action_id]}",
101
+ request_options: request_options
68
102
  )
69
103
  begin
70
- _response = @client.send(_request)
104
+ response = @client.send(request)
71
105
  rescue Net::HTTPRequestTimeout
72
106
  raise Square::Errors::TimeoutError
73
107
  end
74
- code = _response.code.to_i
108
+ code = response.code.to_i
75
109
  if code.between?(200, 299)
76
- Square::Types::GetTerminalActionResponse.load(_response.body)
110
+ Square::Types::GetTerminalActionResponse.load(response.body)
77
111
  else
78
112
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
79
- raise error_class.new(_response.body, code: code)
113
+ raise error_class.new(response.body, code: code)
80
114
  end
81
115
  end
82
116
 
83
117
  # Cancels a Terminal action request if the status of the request permits it.
84
118
  #
119
+ # @param request_options [Hash]
120
+ # @param params [Hash]
121
+ # @option request_options [String] :base_url
122
+ # @option request_options [Hash{String => Object}] :additional_headers
123
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
124
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
125
+ # @option request_options [Integer] :timeout_in_seconds
126
+ # @option params [String] :action_id
127
+ #
85
128
  # @return [Square::Types::CancelTerminalActionResponse]
86
129
  def cancel(request_options: {}, **params)
87
- _request = Square::Internal::JSON::Request.new(
88
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
130
+ params = Square::Internal::Types::Utils.normalize_keys(params)
131
+ request = Square::Internal::JSON::Request.new(
132
+ base_url: request_options[:base_url],
89
133
  method: "POST",
90
- path: "v2/terminals/actions/#{params[:action_id]}/cancel"
134
+ path: "v2/terminals/actions/#{params[:action_id]}/cancel",
135
+ request_options: request_options
91
136
  )
92
137
  begin
93
- _response = @client.send(_request)
138
+ response = @client.send(request)
94
139
  rescue Net::HTTPRequestTimeout
95
140
  raise Square::Errors::TimeoutError
96
141
  end
97
- code = _response.code.to_i
142
+ code = response.code.to_i
98
143
  if code.between?(200, 299)
99
- Square::Types::CancelTerminalActionResponse.load(_response.body)
144
+ Square::Types::CancelTerminalActionResponse.load(response.body)
100
145
  else
101
146
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
102
- raise error_class.new(_response.body, code: code)
147
+ raise error_class.new(response.body, code: code)
103
148
  end
104
149
  end
105
150
  end
@@ -4,7 +4,9 @@ module Square
4
4
  module Terminal
5
5
  module Checkouts
6
6
  class Client
7
- # @return [Square::Terminal::Checkouts::Client]
7
+ # @param client [Square::Internal::Http::RawClient]
8
+ #
9
+ # @return [void]
8
10
  def initialize(client:)
9
11
  @client = client
10
12
  end
@@ -12,95 +14,139 @@ module Square
12
14
  # Creates a Terminal checkout request and sends it to the specified device to take a payment
13
15
  # for the requested amount.
14
16
  #
17
+ # @param request_options [Hash]
18
+ # @param params [Square::Terminal::Checkouts::Types::CreateTerminalCheckoutRequest]
19
+ # @option request_options [String] :base_url
20
+ # @option request_options [Hash{String => Object}] :additional_headers
21
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
22
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
23
+ # @option request_options [Integer] :timeout_in_seconds
24
+ #
15
25
  # @return [Square::Types::CreateTerminalCheckoutResponse]
16
26
  def create(request_options: {}, **params)
17
- _request = Square::Internal::JSON::Request.new(
18
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
27
+ params = Square::Internal::Types::Utils.normalize_keys(params)
28
+ request = Square::Internal::JSON::Request.new(
29
+ base_url: request_options[:base_url],
19
30
  method: "POST",
20
31
  path: "v2/terminals/checkouts",
21
- body: params
32
+ body: Square::Terminal::Checkouts::Types::CreateTerminalCheckoutRequest.new(params).to_h,
33
+ request_options: request_options
22
34
  )
23
35
  begin
24
- _response = @client.send(_request)
36
+ response = @client.send(request)
25
37
  rescue Net::HTTPRequestTimeout
26
38
  raise Square::Errors::TimeoutError
27
39
  end
28
- code = _response.code.to_i
40
+ code = response.code.to_i
29
41
  if code.between?(200, 299)
30
- Square::Types::CreateTerminalCheckoutResponse.load(_response.body)
42
+ Square::Types::CreateTerminalCheckoutResponse.load(response.body)
31
43
  else
32
44
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
33
- raise error_class.new(_response.body, code: code)
45
+ raise error_class.new(response.body, code: code)
34
46
  end
35
47
  end
36
48
 
37
- # Returns a filtered list of Terminal checkout requests created by the application making the request. Only Terminal checkout requests created for the merchant scoped to the OAuth token are returned. Terminal checkout requests are available for 30 days.
49
+ # Returns a filtered list of Terminal checkout requests created by the application making the request. Only
50
+ # Terminal checkout requests created for the merchant scoped to the OAuth token are returned. Terminal checkout
51
+ # requests are available for 30 days.
52
+ #
53
+ # @param request_options [Hash]
54
+ # @param params [Square::Terminal::Checkouts::Types::SearchTerminalCheckoutsRequest]
55
+ # @option request_options [String] :base_url
56
+ # @option request_options [Hash{String => Object}] :additional_headers
57
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
58
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
59
+ # @option request_options [Integer] :timeout_in_seconds
38
60
  #
39
61
  # @return [Square::Types::SearchTerminalCheckoutsResponse]
40
62
  def search(request_options: {}, **params)
41
- _request = Square::Internal::JSON::Request.new(
42
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
63
+ params = Square::Internal::Types::Utils.normalize_keys(params)
64
+ request = Square::Internal::JSON::Request.new(
65
+ base_url: request_options[:base_url],
43
66
  method: "POST",
44
67
  path: "v2/terminals/checkouts/search",
45
- body: params
68
+ body: Square::Terminal::Checkouts::Types::SearchTerminalCheckoutsRequest.new(params).to_h,
69
+ request_options: request_options
46
70
  )
47
71
  begin
48
- _response = @client.send(_request)
72
+ response = @client.send(request)
49
73
  rescue Net::HTTPRequestTimeout
50
74
  raise Square::Errors::TimeoutError
51
75
  end
52
- code = _response.code.to_i
76
+ code = response.code.to_i
53
77
  if code.between?(200, 299)
54
- Square::Types::SearchTerminalCheckoutsResponse.load(_response.body)
78
+ Square::Types::SearchTerminalCheckoutsResponse.load(response.body)
55
79
  else
56
80
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
57
- raise error_class.new(_response.body, code: code)
81
+ raise error_class.new(response.body, code: code)
58
82
  end
59
83
  end
60
84
 
61
85
  # Retrieves a Terminal checkout request by `checkout_id`. Terminal checkout requests are available for 30 days.
62
86
  #
87
+ # @param request_options [Hash]
88
+ # @param params [Hash]
89
+ # @option request_options [String] :base_url
90
+ # @option request_options [Hash{String => Object}] :additional_headers
91
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
92
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
93
+ # @option request_options [Integer] :timeout_in_seconds
94
+ # @option params [String] :checkout_id
95
+ #
63
96
  # @return [Square::Types::GetTerminalCheckoutResponse]
64
97
  def get(request_options: {}, **params)
65
- _request = Square::Internal::JSON::Request.new(
66
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
98
+ params = Square::Internal::Types::Utils.normalize_keys(params)
99
+ request = Square::Internal::JSON::Request.new(
100
+ base_url: request_options[:base_url],
67
101
  method: "GET",
68
- path: "v2/terminals/checkouts/#{params[:checkout_id]}"
102
+ path: "v2/terminals/checkouts/#{params[:checkout_id]}",
103
+ request_options: request_options
69
104
  )
70
105
  begin
71
- _response = @client.send(_request)
106
+ response = @client.send(request)
72
107
  rescue Net::HTTPRequestTimeout
73
108
  raise Square::Errors::TimeoutError
74
109
  end
75
- code = _response.code.to_i
110
+ code = response.code.to_i
76
111
  if code.between?(200, 299)
77
- Square::Types::GetTerminalCheckoutResponse.load(_response.body)
112
+ Square::Types::GetTerminalCheckoutResponse.load(response.body)
78
113
  else
79
114
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
80
- raise error_class.new(_response.body, code: code)
115
+ raise error_class.new(response.body, code: code)
81
116
  end
82
117
  end
83
118
 
84
119
  # Cancels a Terminal checkout request if the status of the request permits it.
85
120
  #
121
+ # @param request_options [Hash]
122
+ # @param params [Hash]
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
+ # @option params [String] :checkout_id
129
+ #
86
130
  # @return [Square::Types::CancelTerminalCheckoutResponse]
87
131
  def cancel(request_options: {}, **params)
88
- _request = Square::Internal::JSON::Request.new(
89
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
132
+ params = Square::Internal::Types::Utils.normalize_keys(params)
133
+ request = Square::Internal::JSON::Request.new(
134
+ base_url: request_options[:base_url],
90
135
  method: "POST",
91
- path: "v2/terminals/checkouts/#{params[:checkout_id]}/cancel"
136
+ path: "v2/terminals/checkouts/#{params[:checkout_id]}/cancel",
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::CancelTerminalCheckoutResponse.load(_response.body)
146
+ Square::Types::CancelTerminalCheckoutResponse.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
  end
@@ -3,79 +3,116 @@
3
3
  module Square
4
4
  module Terminal
5
5
  class Client
6
- # @return [Square::Terminal::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
  # Dismisses a Terminal action request if the status and type of the request permits it.
12
14
  #
13
- # See [Link and Dismiss Actions](https://developer.squareup.com/docs/terminal-api/advanced-features/custom-workflows/link-and-dismiss-actions) for more details.
15
+ # See [Link and Dismiss
16
+ # Actions](https://developer.squareup.com/docs/terminal-api/advanced-features/custom-workflows/link-and-dismiss-actions)
17
+ # for more details.
18
+ #
19
+ # @param request_options [Hash]
20
+ # @param params [Hash]
21
+ # @option request_options [String] :base_url
22
+ # @option request_options [Hash{String => Object}] :additional_headers
23
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
24
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
25
+ # @option request_options [Integer] :timeout_in_seconds
26
+ # @option params [String] :action_id
14
27
  #
15
28
  # @return [Square::Types::DismissTerminalActionResponse]
16
29
  def dismiss_terminal_action(request_options: {}, **params)
17
- _request = Square::Internal::JSON::Request.new(
18
- 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],
19
33
  method: "POST",
20
- path: "v2/terminals/actions/#{params[:action_id]}/dismiss"
34
+ path: "v2/terminals/actions/#{params[:action_id]}/dismiss",
35
+ request_options: request_options
21
36
  )
22
37
  begin
23
- _response = @client.send(_request)
38
+ response = @client.send(request)
24
39
  rescue Net::HTTPRequestTimeout
25
40
  raise Square::Errors::TimeoutError
26
41
  end
27
- code = _response.code.to_i
42
+ code = response.code.to_i
28
43
  if code.between?(200, 299)
29
- Square::Types::DismissTerminalActionResponse.load(_response.body)
44
+ Square::Types::DismissTerminalActionResponse.load(response.body)
30
45
  else
31
46
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
32
- raise error_class.new(_response.body, code: code)
47
+ raise error_class.new(response.body, code: code)
33
48
  end
34
49
  end
35
50
 
36
51
  # Dismisses a Terminal checkout request if the status and type of the request permits it.
37
52
  #
53
+ # @param request_options [Hash]
54
+ # @param params [Hash]
55
+ # @option request_options [String] :base_url
56
+ # @option request_options [Hash{String => Object}] :additional_headers
57
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
58
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
59
+ # @option request_options [Integer] :timeout_in_seconds
60
+ # @option params [String] :checkout_id
61
+ #
38
62
  # @return [Square::Types::DismissTerminalCheckoutResponse]
39
63
  def dismiss_terminal_checkout(request_options: {}, **params)
40
- _request = Square::Internal::JSON::Request.new(
41
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
64
+ params = Square::Internal::Types::Utils.normalize_keys(params)
65
+ request = Square::Internal::JSON::Request.new(
66
+ base_url: request_options[:base_url],
42
67
  method: "POST",
43
- path: "v2/terminals/checkouts/#{params[:checkout_id]}/dismiss"
68
+ path: "v2/terminals/checkouts/#{params[:checkout_id]}/dismiss",
69
+ request_options: request_options
44
70
  )
45
71
  begin
46
- _response = @client.send(_request)
72
+ response = @client.send(request)
47
73
  rescue Net::HTTPRequestTimeout
48
74
  raise Square::Errors::TimeoutError
49
75
  end
50
- code = _response.code.to_i
76
+ code = response.code.to_i
51
77
  if code.between?(200, 299)
52
- Square::Types::DismissTerminalCheckoutResponse.load(_response.body)
78
+ Square::Types::DismissTerminalCheckoutResponse.load(response.body)
53
79
  else
54
80
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
55
- raise error_class.new(_response.body, code: code)
81
+ raise error_class.new(response.body, code: code)
56
82
  end
57
83
  end
58
84
 
59
85
  # Dismisses a Terminal refund request if the status and type of the request permits it.
60
86
  #
87
+ # @param request_options [Hash]
88
+ # @param params [Hash]
89
+ # @option request_options [String] :base_url
90
+ # @option request_options [Hash{String => Object}] :additional_headers
91
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
92
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
93
+ # @option request_options [Integer] :timeout_in_seconds
94
+ # @option params [String] :terminal_refund_id
95
+ #
61
96
  # @return [Square::Types::DismissTerminalRefundResponse]
62
97
  def dismiss_terminal_refund(request_options: {}, **params)
63
- _request = Square::Internal::JSON::Request.new(
64
- base_url: request_options[:base_url] || Square::Environment::PRODUCTION,
98
+ params = Square::Internal::Types::Utils.normalize_keys(params)
99
+ request = Square::Internal::JSON::Request.new(
100
+ base_url: request_options[:base_url],
65
101
  method: "POST",
66
- path: "v2/terminals/refunds/#{params[:terminal_refund_id]}/dismiss"
102
+ path: "v2/terminals/refunds/#{params[:terminal_refund_id]}/dismiss",
103
+ request_options: request_options
67
104
  )
68
105
  begin
69
- _response = @client.send(_request)
106
+ response = @client.send(request)
70
107
  rescue Net::HTTPRequestTimeout
71
108
  raise Square::Errors::TimeoutError
72
109
  end
73
- code = _response.code.to_i
110
+ code = response.code.to_i
74
111
  if code.between?(200, 299)
75
- Square::Types::DismissTerminalRefundResponse.load(_response.body)
112
+ Square::Types::DismissTerminalRefundResponse.load(response.body)
76
113
  else
77
114
  error_class = Square::Errors::ResponseError.subclass_for_code(code)
78
- raise error_class.new(_response.body, code: code)
115
+ raise error_class.new(response.body, code: code)
79
116
  end
80
117
  end
81
118