Sha256: 5d94d3909ac87a69ea151d38dc0b7fd502bd613b4e2382e10cd851835cce347c

Contents?: true

Size: 1015 Bytes

Versions: 5

Compression:

Stored size: 1015 Bytes

Contents

# frozen_string_literal: true

module Stripe
  class SubscriptionSchedule < APIResource
    extend Stripe::APIOperations::Create
    extend Stripe::APIOperations::List
    include Stripe::APIOperations::Save
    extend Stripe::APIOperations::NestedResource

    OBJECT_NAME = "subscription_schedule".freeze

    custom_method :cancel, http_verb: :post
    custom_method :release, http_verb: :post

    nested_resource_class_methods :revision, operations: %i[retrieve list]

    def cancel(params = {}, opts = {})
      resp, opts = request(:post, resource_url + "/cancel", params, opts)
      Util.convert_to_stripe_object(resp.data, opts)
    end

    def release(params = {}, opts = {})
      resp, opts = request(:post, resource_url + "/release", params, opts)
      Util.convert_to_stripe_object(resp.data, opts)
    end

    def revisions(params = {}, opts = {})
      resp, opts = request(:get, resource_url + "/revisions", params, opts)
      Util.convert_to_stripe_object(resp.data, opts)
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
stripe-4.21.1 lib/stripe/resources/subscription_schedule.rb
stripe-4.21.0 lib/stripe/resources/subscription_schedule.rb
stripe-4.20.1 lib/stripe/resources/subscription_schedule.rb
stripe-4.20.0 lib/stripe/resources/subscription_schedule.rb
stripe-4.19.0 lib/stripe/resources/subscription_schedule.rb