class BaremetricsAPI::Endpoint::Customers

Constants

PATH

Public Class Methods

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

Public Instance Methods

create_customer(source_id:, customer_params:) click to toggle source
# File lib/baremetrics_api/endpoint/customers.rb, line 26
def create_customer(source_id:, customer_params:)
  JSON.parse(create_customer_request(source_id, customer_params).body).with_indifferent_access
end
delete_customer(oid:, source_id:) click to toggle source
# File lib/baremetrics_api/endpoint/customers.rb, line 30
def delete_customer(oid:, source_id:)
  JSON.parse(delete_customer_request(oid, source_id).body).with_indifferent_access
end
list_customer_events(source_id:, oid:, page: nil) click to toggle source
# File lib/baremetrics_api/endpoint/customers.rb, line 18
def list_customer_events(source_id:, oid:, page: nil)
  JSON.parse(list_customer_events_request(source_id, oid, page).body).with_indifferent_access
end
list_customers(source_id: nil, search: nil, page: nil) click to toggle source
# File lib/baremetrics_api/endpoint/customers.rb, line 10
def list_customers(source_id: nil, search: nil, page: nil)
  JSON.parse(list_customers_request(source_id, search, page).body).with_indifferent_access
end
show_customer(source_id:, oid:) click to toggle source
# File lib/baremetrics_api/endpoint/customers.rb, line 14
def show_customer(source_id:, oid:)
  JSON.parse(show_customer_request(source_id, oid).body).with_indifferent_access
end
update_customer(customer_oid:, source_id:, customer_params:) click to toggle source
# File lib/baremetrics_api/endpoint/customers.rb, line 22
def update_customer(customer_oid:, source_id:, customer_params:)
  JSON.parse(update_customer_request(customer_oid, source_id, customer_params).body).with_indifferent_access
end

Private Instance Methods

create_customer_request(source_id, customer_params) click to toggle source
# File lib/baremetrics_api/endpoint/customers.rb, line 76
def create_customer_request(source_id, customer_params)
  @client.connection.post do |req|
    req.url "#{source_id}/#{PATH}"
    req.body = customer_params
  end
end
delete_customer_request(oid, source_id) click to toggle source
# File lib/baremetrics_api/endpoint/customers.rb, line 83
def delete_customer_request(oid, source_id)
  @client.connection.delete "#{source_id}/#{PATH}/#{oid}"
end
list_customer_events_request(source_id, oid, page) click to toggle source
# File lib/baremetrics_api/endpoint/customers.rb, line 56
def list_customer_events_request(source_id, oid, page)
  query_params = {
    per_page: @client.configuration.response_limit
  }

  query_params[:page] = page unless page.nil?

  @client.connection.get do |req|
    req.url "#{source_id}/#{PATH}/#{oid}/events"
    req.params = query_params
  end
end
list_customers_request(source_id, search, page) click to toggle source
# File lib/baremetrics_api/endpoint/customers.rb, line 36
def list_customers_request(source_id, search, page)
  query_params = {
    per_page: @client.configuration.response_limit
  }

  query_params[:search] = search unless search.nil?
  query_params[:page] = page unless page.nil?

  @client.connection.get do |req|
    req.url source_id.nil? ? PATH : "#{source_id}/#{PATH}"
    req.params = query_params
  end
end
show_customer_request(source_id, oid) click to toggle source
# File lib/baremetrics_api/endpoint/customers.rb, line 50
def show_customer_request(source_id, oid)
  @client.connection.get do |req|
    req.url "#{source_id}/#{PATH}/#{oid}"
  end
end
update_customer_request(customer_oid, source_id, customer_params) click to toggle source
# File lib/baremetrics_api/endpoint/customers.rb, line 69
def update_customer_request(customer_oid, source_id, customer_params)
  @client.connection.put do |req|
    req.url "#{source_id}/#{PATH}/#{customer_oid}"
    req.body = customer_params
  end
end