Class: Stripe::SubscriptionItemService
- Inherits:
-
StripeService
- Object
- StripeService
- Stripe::SubscriptionItemService
- Defined in:
- lib/stripe/services/subscription_item_service.rb
Instance Method Summary collapse
-
#create(params = {}, opts = {}) ⇒ Object
Adds a new item to an existing subscription.
-
#delete(item, params = {}, opts = {}) ⇒ Object
Deletes an item from the subscription.
-
#list(params = {}, opts = {}) ⇒ Object
Returns a list of your subscription items for a given subscription.
-
#retrieve(item, params = {}, opts = {}) ⇒ Object
Retrieves the subscription item with the given ID.
-
#serialize_batch_create(params = {}, opts = {}) ⇒ Object
Serializes a SubscriptionItem create request into a batch job JSONL line.
-
#serialize_batch_delete(item, params = {}, opts = {}) ⇒ Object
Serializes a SubscriptionItem delete request into a batch job JSONL line.
-
#serialize_batch_update(item, params = {}, opts = {}) ⇒ Object
Serializes a SubscriptionItem update request into a batch job JSONL line.
-
#update(item, params = {}, opts = {}) ⇒ Object
Updates the plan or quantity of an item on a current subscription.
Methods inherited from StripeService
#initialize, #request, #request_stream
Constructor Details
This class inherits a constructor from Stripe::StripeService
Instance Method Details
#create(params = {}, opts = {}) ⇒ Object
Adds a new item to an existing subscription. No existing items will be changed or replaced.
7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/stripe/services/subscription_item_service.rb', line 7 def create(params = {}, opts = {}) params = ::Stripe::SubscriptionItemCreateParams.coerce_params(params) unless params.is_a?(Stripe::RequestParams) 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.
20 21 22 23 24 25 26 27 28 |
# File 'lib/stripe/services/subscription_item_service.rb', line 20 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.
31 32 33 34 35 36 37 38 39 |
# File 'lib/stripe/services/subscription_item_service.rb', line 31 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.
42 43 44 45 46 47 48 49 50 |
# File 'lib/stripe/services/subscription_item_service.rb', line 42 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 |
#serialize_batch_create(params = {}, opts = {}) ⇒ Object
Serializes a SubscriptionItem create request into a batch job JSONL line.
53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/stripe/services/subscription_item_service.rb', line 53 def serialize_batch_create(params = {}, opts = {}) request_id = SecureRandom.uuid stripe_version = opts[:stripe_version] || Stripe.api_version request_body = { id: request_id, params: params, stripe_version: stripe_version, } request_body[:context] = opts[:stripe_context] if opts[:stripe_context] JSON.generate(request_body) end |
#serialize_batch_delete(item, params = {}, opts = {}) ⇒ Object
Serializes a SubscriptionItem delete request into a batch job JSONL line.
67 68 69 70 71 72 73 74 75 76 77 78 79 |
# File 'lib/stripe/services/subscription_item_service.rb', line 67 def serialize_batch_delete(item, params = {}, opts = {}) request_id = SecureRandom.uuid stripe_version = opts[:stripe_version] || Stripe.api_version request_body = { id: request_id, params: params, stripe_version: stripe_version, } request_body[:path_params] = { item: item } request_body[:context] = opts[:stripe_context] if opts[:stripe_context] JSON.generate(request_body) end |
#serialize_batch_update(item, params = {}, opts = {}) ⇒ Object
Serializes a SubscriptionItem update request into a batch job JSONL line.
82 83 84 85 86 87 88 89 90 91 92 93 94 |
# File 'lib/stripe/services/subscription_item_service.rb', line 82 def serialize_batch_update(item, params = {}, opts = {}) request_id = SecureRandom.uuid stripe_version = opts[:stripe_version] || Stripe.api_version request_body = { id: request_id, params: params, stripe_version: stripe_version, } request_body[:path_params] = { item: item } request_body[:context] = opts[:stripe_context] if opts[:stripe_context] JSON.generate(request_body) end |
#update(item, params = {}, opts = {}) ⇒ Object
Updates the plan or quantity of an item on a current subscription.
97 98 99 100 101 102 103 104 105 106 107 |
# File 'lib/stripe/services/subscription_item_service.rb', line 97 def update(item, params = {}, opts = {}) params = ::Stripe::SubscriptionItemUpdateParams.coerce_params(params) unless params.is_a?(Stripe::RequestParams) request( method: :post, path: format("/v1/subscription_items/%<item>s", { item: CGI.escape(item) }), params: params, opts: opts, base_address: :api ) end |