Class: Square::Client
- Inherits:
-
Object
- Object
- Square::Client
- Defined in:
- lib/square/client.rb
Overview
square client class.
Instance Attribute Summary collapse
-
#auth_managers ⇒ Object
readonly
Returns the value of attribute auth_managers.
-
#config ⇒ Object
readonly
Returns the value of attribute config.
Instance Method Summary collapse
-
#apple_pay ⇒ ApplePayApi
Access to apple_pay controller.
-
#bank_accounts ⇒ BankAccountsApi
Access to bank_accounts controller.
-
#booking_custom_attributes ⇒ BookingCustomAttributesApi
Access to booking_custom_attributes controller.
-
#bookings ⇒ BookingsApi
Access to bookings controller.
-
#cards ⇒ CardsApi
Access to cards controller.
-
#cash_drawers ⇒ CashDrawersApi
Access to cash_drawers controller.
-
#catalog ⇒ CatalogApi
Access to catalog controller.
-
#checkout ⇒ CheckoutApi
Access to checkout controller.
-
#customer_custom_attributes ⇒ CustomerCustomAttributesApi
Access to customer_custom_attributes controller.
-
#customer_groups ⇒ CustomerGroupsApi
Access to customer_groups controller.
-
#customer_segments ⇒ CustomerSegmentsApi
Access to customer_segments controller.
-
#customers ⇒ CustomersApi
Access to customers controller.
-
#devices ⇒ DevicesApi
Access to devices controller.
-
#disputes ⇒ DisputesApi
Access to disputes controller.
-
#employees ⇒ EmployeesApi
Access to employees controller.
-
#gift_card_activities ⇒ GiftCardActivitiesApi
Access to gift_card_activities controller.
-
#gift_cards ⇒ GiftCardsApi
Access to gift_cards controller.
-
#initialize(connection: nil, adapter: :net_http_persistent, timeout: 60, max_retries: 0, retry_interval: 1, backoff_factor: 2, retry_statuses: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524], retry_methods: %i[get put], http_callback: nil, environment: 'production', custom_url: 'https://connect.squareup.com', access_token: '', square_version: '2024-01-18', user_agent_detail: '', additional_headers: {}, config: nil) ⇒ Client
constructor
A new instance of Client.
-
#initialize_auth_managers(global_config) ⇒ Object
Initializes the auth managers hash used for authenticating API calls.
-
#inventory ⇒ InventoryApi
Access to inventory controller.
-
#invoices ⇒ InvoicesApi
Access to invoices controller.
-
#labor ⇒ LaborApi
Access to labor controller.
-
#location_custom_attributes ⇒ LocationCustomAttributesApi
Access to location_custom_attributes controller.
-
#locations ⇒ LocationsApi
Access to locations controller.
-
#loyalty ⇒ LoyaltyApi
Access to loyalty controller.
-
#merchant_custom_attributes ⇒ MerchantCustomAttributesApi
Access to merchant_custom_attributes controller.
-
#merchants ⇒ MerchantsApi
Access to merchants controller.
-
#mobile_authorization ⇒ MobileAuthorizationApi
Access to mobile_authorization controller.
-
#o_auth ⇒ OAuthApi
Access to o_auth controller.
-
#order_custom_attributes ⇒ OrderCustomAttributesApi
Access to order_custom_attributes controller.
-
#orders ⇒ OrdersApi
Access to orders controller.
-
#payments ⇒ PaymentsApi
Access to payments controller.
-
#payouts ⇒ PayoutsApi
Access to payouts controller.
-
#refunds ⇒ RefundsApi
Access to refunds controller.
- #sdk_version ⇒ Object
-
#sites ⇒ SitesApi
Access to sites controller.
-
#snippets ⇒ SnippetsApi
Access to snippets controller.
- #square_version ⇒ Object
-
#subscriptions ⇒ SubscriptionsApi
Access to subscriptions controller.
-
#team ⇒ TeamApi
Access to team controller.
-
#terminal ⇒ TerminalApi
Access to terminal controller.
-
#transactions ⇒ TransactionsApi
Access to transactions controller.
- #user_agent_detail ⇒ Object
-
#v1_transactions ⇒ V1TransactionsApi
Access to v1_transactions controller.
-
#vendors ⇒ VendorsApi
Access to vendors controller.
-
#webhook_subscriptions ⇒ WebhookSubscriptionsApi
Access to webhook_subscriptions controller.
Constructor Details
#initialize(connection: nil, adapter: :net_http_persistent, timeout: 60, max_retries: 0, retry_interval: 1, backoff_factor: 2, retry_statuses: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524], retry_methods: %i[get put], http_callback: nil, environment: 'production', custom_url: 'https://connect.squareup.com', access_token: '', square_version: '2024-01-18', user_agent_detail: '', additional_headers: {}, config: nil) ⇒ Client
Returns a new instance of Client.
264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 |
# File 'lib/square/client.rb', line 264 def initialize(connection: nil, adapter: :net_http_persistent, timeout: 60, max_retries: 0, retry_interval: 1, backoff_factor: 2, retry_statuses: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524], retry_methods: %i[get put], http_callback: nil, environment: 'production', custom_url: 'https://connect.squareup.com', access_token: '', square_version: '2024-01-18', user_agent_detail: '', additional_headers: {}, config: nil) @config = if config.nil? Configuration.new(connection: connection, adapter: adapter, timeout: timeout, max_retries: max_retries, retry_interval: retry_interval, backoff_factor: backoff_factor, retry_statuses: retry_statuses, retry_methods: retry_methods, http_callback: http_callback, environment: environment, custom_url: custom_url, access_token: access_token, square_version: square_version, user_agent_detail: user_agent_detail, additional_headers: additional_headers) else config end custom_user_agent_parameters = { '{api-version}' => { 'value': @config.square_version, 'encode': false }, '{detail}' => { 'value': @config.user_agent_detail, 'encode': true } } user_agent_params = BaseApi.user_agent_parameters.merge!(custom_user_agent_parameters) @global_configuration = GlobalConfiguration.new(client_configuration: @config) .base_uri_executor(@config.method(:get_base_uri)) .user_agent(BaseApi.user_agent, agent_parameters: user_agent_params) .additional_headers(@config.additional_headers) .global_header('Square-Version', @config.square_version) .symbolize_hash(true) initialize_auth_managers(@global_configuration) @global_configuration = @global_configuration.auth_managers(@auth_managers) end |
Instance Attribute Details
#auth_managers ⇒ Object (readonly)
Returns the value of attribute auth_managers.
4 5 6 |
# File 'lib/square/client.rb', line 4 def auth_managers @auth_managers end |
#config ⇒ Object (readonly)
Returns the value of attribute config.
4 5 6 |
# File 'lib/square/client.rb', line 4 def config @config end |
Instance Method Details
#apple_pay ⇒ ApplePayApi
Access to apple_pay controller.
38 39 40 |
# File 'lib/square/client.rb', line 38 def apple_pay @apple_pay ||= ApplePayApi.new @global_configuration end |
#bank_accounts ⇒ BankAccountsApi
Access to bank_accounts controller.
44 45 46 |
# File 'lib/square/client.rb', line 44 def bank_accounts @bank_accounts ||= BankAccountsApi.new @global_configuration end |
#booking_custom_attributes ⇒ BookingCustomAttributesApi
Access to booking_custom_attributes controller.
56 57 58 |
# File 'lib/square/client.rb', line 56 def booking_custom_attributes @booking_custom_attributes ||= BookingCustomAttributesApi.new @global_configuration end |
#bookings ⇒ BookingsApi
Access to bookings controller.
50 51 52 |
# File 'lib/square/client.rb', line 50 def bookings @bookings ||= BookingsApi.new @global_configuration end |
#cards ⇒ CardsApi
Access to cards controller.
62 63 64 |
# File 'lib/square/client.rb', line 62 def cards @cards ||= CardsApi.new @global_configuration end |
#cash_drawers ⇒ CashDrawersApi
Access to cash_drawers controller.
68 69 70 |
# File 'lib/square/client.rb', line 68 def cash_drawers @cash_drawers ||= CashDrawersApi.new @global_configuration end |
#catalog ⇒ CatalogApi
Access to catalog controller.
74 75 76 |
# File 'lib/square/client.rb', line 74 def catalog @catalog ||= CatalogApi.new @global_configuration end |
#checkout ⇒ CheckoutApi
Access to checkout controller.
164 165 166 |
# File 'lib/square/client.rb', line 164 def checkout @checkout ||= CheckoutApi.new @global_configuration end |
#customer_custom_attributes ⇒ CustomerCustomAttributesApi
Access to customer_custom_attributes controller.
86 87 88 |
# File 'lib/square/client.rb', line 86 def customer_custom_attributes @customer_custom_attributes ||= CustomerCustomAttributesApi.new @global_configuration end |
#customer_groups ⇒ CustomerGroupsApi
Access to customer_groups controller.
92 93 94 |
# File 'lib/square/client.rb', line 92 def customer_groups @customer_groups ||= CustomerGroupsApi.new @global_configuration end |
#customer_segments ⇒ CustomerSegmentsApi
Access to customer_segments controller.
98 99 100 |
# File 'lib/square/client.rb', line 98 def customer_segments @customer_segments ||= CustomerSegmentsApi.new @global_configuration end |
#customers ⇒ CustomersApi
Access to customers controller.
80 81 82 |
# File 'lib/square/client.rb', line 80 def customers @customers ||= CustomersApi.new @global_configuration end |
#devices ⇒ DevicesApi
Access to devices controller.
104 105 106 |
# File 'lib/square/client.rb', line 104 def devices @devices ||= DevicesApi.new @global_configuration end |
#disputes ⇒ DisputesApi
Access to disputes controller.
110 111 112 |
# File 'lib/square/client.rb', line 110 def disputes @disputes ||= DisputesApi.new @global_configuration end |
#employees ⇒ EmployeesApi
Access to employees controller.
116 117 118 |
# File 'lib/square/client.rb', line 116 def employees @employees ||= EmployeesApi.new @global_configuration end |
#gift_card_activities ⇒ GiftCardActivitiesApi
Access to gift_card_activities controller.
128 129 130 |
# File 'lib/square/client.rb', line 128 def gift_card_activities @gift_card_activities ||= GiftCardActivitiesApi.new @global_configuration end |
#gift_cards ⇒ GiftCardsApi
Access to gift_cards controller.
122 123 124 |
# File 'lib/square/client.rb', line 122 def gift_cards @gift_cards ||= GiftCardsApi.new @global_configuration end |
#initialize_auth_managers(global_config) ⇒ Object
Initializes the auth managers hash used for authenticating API calls.
311 312 313 314 315 316 |
# File 'lib/square/client.rb', line 311 def initialize_auth_managers(global_config) @auth_managers = {} http_client_config = global_config.client_configuration ['global'].each { |auth| @auth_managers[auth] = nil } @auth_managers['global'] = OAuth2.new(http_client_config.access_token) end |
#inventory ⇒ InventoryApi
Access to inventory controller.
134 135 136 |
# File 'lib/square/client.rb', line 134 def inventory @inventory ||= InventoryApi.new @global_configuration end |
#invoices ⇒ InvoicesApi
Access to invoices controller.
140 141 142 |
# File 'lib/square/client.rb', line 140 def invoices @invoices ||= InvoicesApi.new @global_configuration end |
#labor ⇒ LaborApi
Access to labor controller.
146 147 148 |
# File 'lib/square/client.rb', line 146 def labor @labor ||= LaborApi.new @global_configuration end |
#location_custom_attributes ⇒ LocationCustomAttributesApi
Access to location_custom_attributes controller.
158 159 160 |
# File 'lib/square/client.rb', line 158 def location_custom_attributes @location_custom_attributes ||= LocationCustomAttributesApi.new @global_configuration end |
#locations ⇒ LocationsApi
Access to locations controller.
152 153 154 |
# File 'lib/square/client.rb', line 152 def locations @locations ||= LocationsApi.new @global_configuration end |
#loyalty ⇒ LoyaltyApi
Access to loyalty controller.
176 177 178 |
# File 'lib/square/client.rb', line 176 def loyalty @loyalty ||= LoyaltyApi.new @global_configuration end |
#merchant_custom_attributes ⇒ MerchantCustomAttributesApi
Access to merchant_custom_attributes controller.
188 189 190 |
# File 'lib/square/client.rb', line 188 def merchant_custom_attributes @merchant_custom_attributes ||= MerchantCustomAttributesApi.new @global_configuration end |
#merchants ⇒ MerchantsApi
Access to merchants controller.
182 183 184 |
# File 'lib/square/client.rb', line 182 def merchants @merchants ||= MerchantsApi.new @global_configuration end |
#mobile_authorization ⇒ MobileAuthorizationApi
Access to mobile_authorization controller.
20 21 22 |
# File 'lib/square/client.rb', line 20 def @mobile_authorization ||= MobileAuthorizationApi.new @global_configuration end |
#o_auth ⇒ OAuthApi
Access to o_auth controller.
26 27 28 |
# File 'lib/square/client.rb', line 26 def o_auth @o_auth ||= OAuthApi.new @global_configuration end |
#order_custom_attributes ⇒ OrderCustomAttributesApi
Access to order_custom_attributes controller.
200 201 202 |
# File 'lib/square/client.rb', line 200 def order_custom_attributes @order_custom_attributes ||= OrderCustomAttributesApi.new @global_configuration end |
#orders ⇒ OrdersApi
Access to orders controller.
194 195 196 |
# File 'lib/square/client.rb', line 194 def orders @orders ||= OrdersApi.new @global_configuration end |
#payments ⇒ PaymentsApi
Access to payments controller.
206 207 208 |
# File 'lib/square/client.rb', line 206 def payments @payments ||= PaymentsApi.new @global_configuration end |
#payouts ⇒ PayoutsApi
Access to payouts controller.
212 213 214 |
# File 'lib/square/client.rb', line 212 def payouts @payouts ||= PayoutsApi.new @global_configuration end |
#refunds ⇒ RefundsApi
Access to refunds controller.
218 219 220 |
# File 'lib/square/client.rb', line 218 def refunds @refunds ||= RefundsApi.new @global_configuration end |
#sdk_version ⇒ Object
6 7 8 |
# File 'lib/square/client.rb', line 6 def sdk_version '35.0.1.20240118' end |
#sites ⇒ SitesApi
Access to sites controller.
224 225 226 |
# File 'lib/square/client.rb', line 224 def sites @sites ||= SitesApi.new @global_configuration end |
#snippets ⇒ SnippetsApi
Access to snippets controller.
230 231 232 |
# File 'lib/square/client.rb', line 230 def snippets @snippets ||= SnippetsApi.new @global_configuration end |
#square_version ⇒ Object
10 11 12 |
# File 'lib/square/client.rb', line 10 def square_version config.square_version end |
#subscriptions ⇒ SubscriptionsApi
Access to subscriptions controller.
236 237 238 |
# File 'lib/square/client.rb', line 236 def subscriptions @subscriptions ||= SubscriptionsApi.new @global_configuration end |
#team ⇒ TeamApi
Access to team controller.
242 243 244 |
# File 'lib/square/client.rb', line 242 def team @team ||= TeamApi.new @global_configuration end |
#terminal ⇒ TerminalApi
Access to terminal controller.
248 249 250 |
# File 'lib/square/client.rb', line 248 def terminal @terminal ||= TerminalApi.new @global_configuration end |
#transactions ⇒ TransactionsApi
Access to transactions controller.
170 171 172 |
# File 'lib/square/client.rb', line 170 def transactions @transactions ||= TransactionsApi.new @global_configuration end |
#user_agent_detail ⇒ Object
14 15 16 |
# File 'lib/square/client.rb', line 14 def user_agent_detail config.user_agent_detail end |
#v1_transactions ⇒ V1TransactionsApi
Access to v1_transactions controller.
32 33 34 |
# File 'lib/square/client.rb', line 32 def v1_transactions @v1_transactions ||= V1TransactionsApi.new @global_configuration end |
#vendors ⇒ VendorsApi
Access to vendors controller.
254 255 256 |
# File 'lib/square/client.rb', line 254 def vendors @vendors ||= VendorsApi.new @global_configuration end |
#webhook_subscriptions ⇒ WebhookSubscriptionsApi
Access to webhook_subscriptions controller.
260 261 262 |
# File 'lib/square/client.rb', line 260 def webhook_subscriptions @webhook_subscriptions ||= WebhookSubscriptionsApi.new @global_configuration end |