Module: Vindi::Rest::Subscription

Included in:
Vindi::Rest
Defined in:
lib/vindi/rest/subscription.rb

Overview

Methods for the subscriptions API

Instance Method Summary collapse

Instance Method Details

#create_subscription(options = {}) ⇒ Hash

Create a subscription for a merchant vindi

Examples:

Create a subscription for a merchant vindi

client.create_subscription(plan_id: 12, customer_id: 142, 
                           payment_method_code: "credit_card",
                           product_items: [{ product_id: 14 }])

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :options (Hash)

    subscription attributes

Returns:

  • (Hash)

    The subscription created

See Also:



35
36
37
# File 'lib/vindi/rest/subscription.rb', line 35

def create_subscription(options = {})
  post('subscriptions', options)[:subscription]
end

#delete_subscription(subscription_id, options = {}) ⇒ Object

Delete a subscription from merchant vindi

Examples:

Delete subscription #2

client.delete_subscription(2)

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :options (Hash)

    subscription attributes

See Also:



80
81
82
# File 'lib/vindi/rest/subscription.rb', line 80

def delete_subscription(subscription_id, options = {})
  delete("subscriptions/#{subscription_id}", options)[:subscription]
end

#list_subscription_product_items(subscription_id, options = {}) ⇒ Object

List product items for a subscription

Examples:

List subscription product items #2

client.list_subscription_product_items(2)

See Also:



90
91
92
# File 'lib/vindi/rest/subscription.rb', line 90

def list_subscription_product_items(subscription_id, options = {})
  get("subscriptions/#{subscription_id}/product_items", options)[:product_items]
end

#list_subscriptions(options = {}) ⇒ Array<Hash>

List subscription for the authenticate user

Examples:

Get all subscriptions from merchant vindi

Returns:

  • (Array<Hash>)

    A list of subscriptions for a merchant.



11
12
13
# File 'lib/vindi/rest/subscription.rb', line 11

def list_subscriptions(options = {})
  get('subscriptions', options)[:subscriptions]
end

#reactivate_subscription(subscription_id, options = {}) ⇒ Object

Reactivate a subscription

Examples:

update subscription #2

client.reactivate_subscription(2)

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :options (Hash)

    subscription attributes

See Also:



68
69
70
# File 'lib/vindi/rest/subscription.rb', line 68

def reactivate_subscription(subscription_id, options = {})
  post("subscriptions/#{subscription_id}/reactivate", options)[:subscription]
end

#renew_subscription(subscription_id, options = {}) ⇒ Object

Renew a subscription

Examples:

update subscription #2

client.renew_subscription(2)

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :options (Hash)

    subscription attributes

See Also:



57
58
59
# File 'lib/vindi/rest/subscription.rb', line 57

def renew_subscription(subscription_id, options = {})
  post("subscriptions/#{subscription_id}/renew", options)[:subscription]
end

#subscription(subscription_id, options = {}) ⇒ Hash

Get a single subscription from a merchant

Examples:

Get subscription #2 from vindi

client.subscription(2)

Parameters:

  • subscription_id (Integer)

    ID of the subscription

Returns:

  • (Hash)

    The subscription you requested, if it exists

See Also:



22
23
24
# File 'lib/vindi/rest/subscription.rb', line 22

def subscription(subscription_id, options = {})
  get("subscriptions/#{subscription_id}", options)[:subscription]
end

#update_subscription(subscription_id, options = {}) ⇒ Object

Edit a subscription

Examples:

update subscription #2

client.update_subscription(2, payment_method_code: "debit_card")

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :options (Hash)

    subscription attributes

See Also:



46
47
48
# File 'lib/vindi/rest/subscription.rb', line 46

def update_subscription(subscription_id, options = {})
  put("subscriptions/#{subscription_id}", options)[:subscription]
end