Sha256: f37d0277d371cdd3e909325890d4a751901291ed26b74c23a5d16202dda3c82e

Contents?: true

Size: 1.32 KB

Versions: 4

Compression:

Stored size: 1.32 KB

Contents

# frozen_string_literal: true

module ChartMogul
  module Metrics
    module Customers
      class Subscription < ChartMogul::Object
        readonly_attr :id
        readonly_attr :uuid
        readonly_attr :external_id
        readonly_attr :plan
        readonly_attr :quantity
        readonly_attr :mrr
        readonly_attr :arr
        readonly_attr :status
        readonly_attr :billing_cycle
        readonly_attr :billing_cycle_count
        readonly_attr :start_date, type: :time
        readonly_attr :end_date, type: :time
        readonly_attr :currency
        readonly_attr :currency_sign

        def self.all(customer_uuid, options = {})
          ChartMogul::Metrics::Customers::Subscriptions.all(customer_uuid, options)
        end
      end

      class Subscriptions < APIResource
        set_resource_name 'Subscriptions'
        set_resource_path '/v1/customers/:customer_uuid/subscriptions'

        include Concerns::Entries
        include Concerns::Pageable
        include Concerns::PageableWithCursor

        set_entry_class Subscription

        def self.all(customer_uuid, options = {})
          super(options.merge(customer_uuid: customer_uuid))
        end

        def next(customer_uuid, options = {})
          Subscriptions.all(customer_uuid, options.merge(cursor: cursor))
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
chartmogul-ruby-4.6.0 lib/chartmogul/metrics/customers/subscription.rb
chartmogul-ruby-4.4.0 lib/chartmogul/metrics/customers/subscription.rb
chartmogul-ruby-4.3.0 lib/chartmogul/metrics/customers/subscription.rb
chartmogul-ruby-4.2.0 lib/chartmogul/metrics/customers/subscription.rb