Sha256: 0a663a1bde15e348b0c70e4c83d931012e5b8e839d704881c370d9529a0db611
Contents?: true
Size: 1.59 KB
Versions: 1
Compression:
Stored size: 1.59 KB
Contents
module ChartMogul class Customer < APIResource set_resource_name 'Customer' set_resource_path '/v1/customers' readonly_attr :uuid writeable_attr :external_id writeable_attr :name writeable_attr :email writeable_attr :company writeable_attr :country writeable_attr :state writeable_attr :city writeable_attr :zip writeable_attr :data_source_uuid writeable_attr :lead_created_at, type: :time writeable_attr :free_trial_started_at, type: :time include API::Actions::Create include API::Actions::Destroy def self.all(options = {}) Customers.all(options) end def self.search(email) Customers.search(email) end def self.find_by_external_id(external_id) all(external_id: external_id).first end def subscriptions(options = {}) @subscriptions ||= ChartMogul::Subscription.all(uuid, options) end def invoices(options = {}) @invoices ||= ChartMogul::CustomerInvoices.all(uuid, options) end def invoices=(invoices_array) @invoices = ChartMogul::CustomerInvoices.new(customer_uuid: uuid, invoices: invoices_array) end class Customers < APIResource set_resource_name 'Customers' set_resource_path '/v1/customers' include Concerns::Entries include API::Actions::Custom include Concerns::Pageable include Concerns::Pageable2 set_entry_class Customer def self.search(email) path = ChartMogul::ResourcePath.new('/v1/customers/search') custom!(:get, path.apply_with_get_params(email: email)) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
chartmogul-ruby-1.0.1 | lib/chartmogul/customer.rb |