Class: Square::Devices::Codes::Client
- Inherits:
-
Object
- Object
- Square::Devices::Codes::Client
- Defined in:
- lib/square/devices/codes/client.rb
Instance Method Summary collapse
-
#create(request_options: {}, **params) ⇒ Square::Types::CreateDeviceCodeResponse
Creates a DeviceCode that can be used to login to a Square Terminal device to enter the connected terminal mode.
-
#get(request_options: {}, **params) ⇒ Square::Types::GetDeviceCodeResponse
Retrieves DeviceCode with the associated ID.
- #initialize(client:) ⇒ void constructor
-
#list(request_options: {}, **params) ⇒ Square::Types::ListDeviceCodesResponse
Lists all DeviceCodes associated with the merchant.
Constructor Details
#initialize(client:) ⇒ void
10 11 12 |
# File 'lib/square/devices/codes/client.rb', line 10 def initialize(client:) @client = client end |
Instance Method Details
#create(request_options: {}, **params) ⇒ Square::Types::CreateDeviceCodeResponse
Creates a DeviceCode that can be used to login to a Square Terminal device to enter the connected terminal mode.
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 |
# File 'lib/square/devices/codes/client.rb', line 79 def create(request_options: {}, **params) params = Square::Internal::Types::Utils.normalize_keys(params) request = Square::Internal::JSON::Request.new( base_url: [:base_url], method: "POST", path: "v2/devices/codes", body: Square::Devices::Codes::Types::CreateDeviceCodeRequest.new(params).to_h, request_options: ) begin response = @client.send(request) rescue Net::HTTPRequestTimeout raise Square::Errors::TimeoutError end code = response.code.to_i if code.between?(200, 299) Square::Types::CreateDeviceCodeResponse.load(response.body) else error_class = Square::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end end |
#get(request_options: {}, **params) ⇒ Square::Types::GetDeviceCodeResponse
Retrieves DeviceCode with the associated ID.
114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 |
# File 'lib/square/devices/codes/client.rb', line 114 def get(request_options: {}, **params) params = Square::Internal::Types::Utils.normalize_keys(params) request = Square::Internal::JSON::Request.new( base_url: [:base_url], method: "GET", path: "v2/devices/codes/#{params[:id]}", request_options: ) begin response = @client.send(request) rescue Net::HTTPRequestTimeout raise Square::Errors::TimeoutError end code = response.code.to_i if code.between?(200, 299) Square::Types::GetDeviceCodeResponse.load(response.body) else error_class = Square::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end end |
#list(request_options: {}, **params) ⇒ Square::Types::ListDeviceCodesResponse
Lists all DeviceCodes associated with the merchant.
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/square/devices/codes/client.rb', line 29 def list(request_options: {}, **params) params = Square::Internal::Types::Utils.normalize_keys(params) query_param_names = %i[cursor location_id product_type status] query_params = {} query_params["cursor"] = params[:cursor] if params.key?(:cursor) query_params["location_id"] = params[:location_id] if params.key?(:location_id) query_params["product_type"] = params[:product_type] if params.key?(:product_type) query_params["status"] = params[:status] if params.key?(:status) params.except(*query_param_names) Square::Internal::CursorItemIterator.new( cursor_field: :cursor, item_field: :device_codes, initial_cursor: query_params[:cursor] ) do |next_cursor| query_params[:cursor] = next_cursor request = Square::Internal::JSON::Request.new( base_url: [:base_url], method: "GET", path: "v2/devices/codes", query: query_params, request_options: ) begin response = @client.send(request) rescue Net::HTTPRequestTimeout raise Square::Errors::TimeoutError end code = response.code.to_i if code.between?(200, 299) Square::Types::ListDeviceCodesResponse.load(response.body) else error_class = Square::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end end end |