class BaremetricsAPI::Endpoint::Charges

Constants

PATH

Public Class Methods

new(client) click to toggle source
# File lib/baremetrics_api/endpoint/charges.rb, line 6
def initialize(client)
  @client = client
end

Public Instance Methods

create_charge(source_id:, charge_params:) click to toggle source
# File lib/baremetrics_api/endpoint/charges.rb, line 22
def create_charge(source_id:, charge_params:)
  JSON.parse(create_charge_request(source_id, charge_params).body).with_indifferent_access
end
delete_charge(source_id:, oid:) click to toggle source
# File lib/baremetrics_api/endpoint/charges.rb, line 10
def delete_charge(source_id:, oid:)
  JSON.parse(delete_charge_request(source_id, oid).body).with_indifferent_access
end
list_charges(source_id:, search_params: {}, page: nil) click to toggle source
# File lib/baremetrics_api/endpoint/charges.rb, line 14
def list_charges(source_id:, search_params: {}, page: nil)
  JSON.parse(list_charges_request(source_id, search_params, page).body).with_indifferent_access
end
show_charge(source_id:, oid:) click to toggle source
# File lib/baremetrics_api/endpoint/charges.rb, line 18
def show_charge(source_id:, oid:)
  JSON.parse(show_charge_request(source_id, oid).body).with_indifferent_access
end

Private Instance Methods

create_charge_request(source_id, charge_params) click to toggle source
# File lib/baremetrics_api/endpoint/charges.rb, line 54
def create_charge_request(source_id, charge_params)
  @client.connection.post do |req|
    req.url "#{source_id}/#{PATH}"
    req.body = charge_params
  end
end
delete_charge_request(source_id, oid) click to toggle source
# File lib/baremetrics_api/endpoint/charges.rb, line 28
def delete_charge_request(source_id, oid)
  @client.connection.delete do |req|
    req.url "#{source_id}/#{PATH}/#{oid}"
  end
end
list_charges_request(source_id, search_params, page) click to toggle source
# File lib/baremetrics_api/endpoint/charges.rb, line 34
def list_charges_request(source_id, search_params, page)
  query_params = {
    per_page: @client.configuration.response_limit
  }

  query_params = query_params.merge(search_params)
  query_params[:page] = page unless page.nil?

  @client.connection.get do |req|
    req.url "#{source_id}/#{PATH}"
    req.params = query_params
  end
end
show_charge_request(source_id, oid) click to toggle source
# File lib/baremetrics_api/endpoint/charges.rb, line 48
def show_charge_request(source_id, oid)
  @client.connection.get do |req|
    req.url "#{source_id}/#{PATH}/#{oid}"
  end
end