Class: Candid::Payers::V3::Client
- Inherits:
-
Object
- Object
- Candid::Payers::V3::Client
- Defined in:
- lib/candid/payers/v_3/client.rb
Instance Method Summary collapse
- #get(request_options: {}, **params) ⇒ Candid::Payers::V3::Types::Payer
- #get_all(request_options: {}, **params) ⇒ Candid::Payers::V3::Types::PayerPage
- #initialize(client:, base_url: nil, environment: nil) ⇒ void constructor
Constructor Details
#initialize(client:, base_url: nil, environment: nil) ⇒ void
12 13 14 15 16 |
# File 'lib/candid/payers/v_3/client.rb', line 12 def initialize(client:, base_url: nil, environment: nil) @client = client @base_url = base_url @environment = environment end |
Instance Method Details
#get(request_options: {}, **params) ⇒ Candid::Payers::V3::Types::Payer
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/candid/payers/v_3/client.rb', line 28 def get(request_options: {}, **params) params = Candid::Internal::Types::Utils.normalize_keys(params) request = Candid::Internal::JSON::Request.new( base_url: [:base_url] || @base_url || @environment&.dig(:candid_api), method: "GET", path: "/api/payers/v3/#{params[:payer_uuid]}", request_options: ) begin response = @client.send(request) rescue Net::HTTPRequestTimeout raise Candid::Errors::TimeoutError end code = response.code.to_i if code.between?(200, 299) Candid::Payers::V3::Types::Payer.load(response.body) else error_class = Candid::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end end |
#get_all(request_options: {}, **params) ⇒ Candid::Payers::V3::Types::PayerPage
62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/candid/payers/v_3/client.rb', line 62 def get_all(request_options: {}, **params) params = Candid::Internal::Types::Utils.normalize_keys(params) query_param_names = %i[limit search_term page_token] query_params = {} query_params["limit"] = params[:limit] if params.key?(:limit) query_params["search_term"] = params[:search_term] if params.key?(:search_term) query_params["page_token"] = params[:page_token] if params.key?(:page_token) params.except(*query_param_names) request = Candid::Internal::JSON::Request.new( base_url: [:base_url] || @base_url || @environment&.dig(:candid_api), method: "GET", path: "/api/payers/v3", query: query_params, request_options: ) begin response = @client.send(request) rescue Net::HTTPRequestTimeout raise Candid::Errors::TimeoutError end code = response.code.to_i if code.between?(200, 299) Candid::Payers::V3::Types::PayerPage.load(response.body) else error_class = Candid::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end end |