Class: Stripe::SubscriptionItemService

Inherits:
StripeService show all
Defined in:
lib/stripe/services/subscription_item_service.rb

Defined Under Namespace

Classes: CreateParams, DeleteParams, ListParams, RetrieveParams, UpdateParams

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from StripeService

#request, #request_stream

Constructor Details

#initialize(requestor) ⇒ SubscriptionItemService

Returns a new instance of SubscriptionItemService.



8
9
10
11
12
# File 'lib/stripe/services/subscription_item_service.rb', line 8

def initialize(requestor)
  super(requestor)
  @usage_records = Stripe::SubscriptionItemUsageRecordService.new(@requestor)
  @usage_record_summaries = Stripe::SubscriptionItemUsageRecordSummaryService.new(@requestor)
end

Instance Attribute Details

#usage_record_summariesObject (readonly)

Returns the value of attribute usage_record_summaries.



6
7
8
# File 'lib/stripe/services/subscription_item_service.rb', line 6

def usage_record_summaries
  @usage_record_summaries
end

#usage_recordsObject (readonly)

Returns the value of attribute usage_records.



6
7
8
# File 'lib/stripe/services/subscription_item_service.rb', line 6

def usage_records
  @usage_records
end

Instance Method Details

#create(params = {}, opts = {}) ⇒ Object

Adds a new item to an existing subscription. No existing items will be changed or replaced.



398
399
400
401
402
403
404
405
406
# File 'lib/stripe/services/subscription_item_service.rb', line 398

def create(params = {}, opts = {})
  request(
    method: :post,
    path: "/v1/subscription_items",
    params: params,
    opts: opts,
    base_address: :api
  )
end

#delete(item, params = {}, opts = {}) ⇒ Object

Deletes an item from the subscription. Removing a subscription item from a subscription will not cancel the subscription.



409
410
411
412
413
414
415
416
417
# File 'lib/stripe/services/subscription_item_service.rb', line 409

def delete(item, params = {}, opts = {})
  request(
    method: :delete,
    path: format("/v1/subscription_items/%<item>s", { item: CGI.escape(item) }),
    params: params,
    opts: opts,
    base_address: :api
  )
end

#list(params = {}, opts = {}) ⇒ Object

Returns a list of your subscription items for a given subscription.



420
421
422
423
424
425
426
427
428
# File 'lib/stripe/services/subscription_item_service.rb', line 420

def list(params = {}, opts = {})
  request(
    method: :get,
    path: "/v1/subscription_items",
    params: params,
    opts: opts,
    base_address: :api
  )
end

#retrieve(item, params = {}, opts = {}) ⇒ Object

Retrieves the subscription item with the given ID.



431
432
433
434
435
436
437
438
439
# File 'lib/stripe/services/subscription_item_service.rb', line 431

def retrieve(item, params = {}, opts = {})
  request(
    method: :get,
    path: format("/v1/subscription_items/%<item>s", { item: CGI.escape(item) }),
    params: params,
    opts: opts,
    base_address: :api
  )
end

#update(item, params = {}, opts = {}) ⇒ Object

Updates the plan or quantity of an item on a current subscription.



442
443
444
445
446
447
448
449
450
# File 'lib/stripe/services/subscription_item_service.rb', line 442

def update(item, params = {}, opts = {})
  request(
    method: :post,
    path: format("/v1/subscription_items/%<item>s", { item: CGI.escape(item) }),
    params: params,
    opts: opts,
    base_address: :api
  )
end