chargify/chargify_api_ares

View on GitHub
examples/metered_components.rb

Summary

Maintainability
A
0 mins
Test Coverage
$: << File.expand_path(File.dirname(__FILE__) + '/../lib')

require 'chargify_api_ares'

# You could load your credentials from a file...
chargify_config = YAML::load_file(File.join(File.dirname(__FILE__), '..', 'chargify.yml'))

Chargify.configure do |c|
  c.subdomain = chargify_config['subdomain']
  c.api_key   = chargify_config['api_key']
  if chargify_config['site']
    c.site = chargify_config['site']
  end
end

#
# This assumes you have a product family with a metered component setup
#
product_family = Chargify::ProductFamily.find(:first)
component =  Chargify::Component.find(:first, :params => {:product_family_id => product_family.id})
subscription = Chargify::Subscription.find(:first)


u = Chargify::Usage.new
u.subscription_id = subscription.id
u.component_id = component.id
u.quantity = 5
d = DateTime.now.to_s
u.memo = d
puts d
u.save


x = Chargify::Usage.find(:last, :params => {:subscription_id => subscription.id, :component_id => component.id})
puts x.memo == d

# Call a specific Component by ID
component = Chargify::ProductFamily::Component.find(component_id, :params => {:product_family_id => product_family_id})