Class: Pago::V2026_04::Models::SubscriptionPastDueMetadata

Inherits:
Model
  • Object
show all
Defined in:
lib/pago/v2026_04/models.rb,
sig/pago/v2026_04/generated.rbs

Constant Summary collapse

JSON_KEYS =

Returns:

  • (Hash[Symbol, String])
{
  subscription_id: "subscription_id",
  product_id: "product_id",
  past_due_at: "past_due_at",
  amount: "amount",
  currency: "currency",
  recurring_interval: "recurring_interval",
  recurring_interval_count: "recurring_interval_count"
}.freeze
REQUIRED_KEYS =

Returns:

  • (Array[String])
["subscription_id", "past_due_at"].freeze

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Model

#==, #[], #field_set?, #hash, #inspect, json_keys, required_json_keys, #to_json, #to_json_hash, wrap_raw

Constructor Details

#initialize(subscription_id:, product_id: ::Pago::UNSET, past_due_at:, amount: ::Pago::UNSET, currency: ::Pago::UNSET, recurring_interval: ::Pago::UNSET, recurring_interval_count: ::Pago::UNSET) ⇒ SubscriptionPastDueMetadata

Returns a new instance of SubscriptionPastDueMetadata.

Parameters:

  • subscription_id: (String)
  • product_id: (String, nil) (defaults to: ::Pago::UNSET)
  • past_due_at: (String)
  • amount: (Integer, nil) (defaults to: ::Pago::UNSET)
  • currency: (String, nil) (defaults to: ::Pago::UNSET)
  • recurring_interval: (String, nil) (defaults to: ::Pago::UNSET)
  • recurring_interval_count: (Integer, nil) (defaults to: ::Pago::UNSET)


41048
41049
41050
41051
41052
41053
41054
41055
41056
41057
41058
41059
41060
41061
41062
41063
41064
41065
# File 'lib/pago/v2026_04/models.rb', line 41048

def initialize(
  subscription_id:,
  product_id: ::Pago::UNSET,
  past_due_at:,
  amount: ::Pago::UNSET,
  currency: ::Pago::UNSET,
  recurring_interval: ::Pago::UNSET,
  recurring_interval_count: ::Pago::UNSET
)
  super()
  assign(:subscription_id, subscription_id)
  assign(:product_id, product_id)
  assign(:past_due_at, past_due_at)
  assign(:amount, amount)
  assign(:currency, currency)
  assign(:recurring_interval, recurring_interval)
  assign(:recurring_interval_count, recurring_interval_count)
end

Instance Attribute Details

#amountInteger (readonly)

Returns:

  • (Integer)


41037
41038
41039
# File 'lib/pago/v2026_04/models.rb', line 41037

def amount
  @amount
end

#currencyString (readonly)

Returns:

  • (String)


41040
41041
41042
# File 'lib/pago/v2026_04/models.rb', line 41040

def currency
  @currency
end

#past_due_atString (readonly)

Returns:

  • (String)


41034
41035
41036
# File 'lib/pago/v2026_04/models.rb', line 41034

def past_due_at
  @past_due_at
end

#product_idString (readonly)

Returns:

  • (String)


41031
41032
41033
# File 'lib/pago/v2026_04/models.rb', line 41031

def product_id
  @product_id
end

#recurring_intervalString (readonly)

Returns:

  • (String)


41043
41044
41045
# File 'lib/pago/v2026_04/models.rb', line 41043

def recurring_interval
  @recurring_interval
end

#recurring_interval_countInteger (readonly)

Returns:

  • (Integer)


41046
41047
41048
# File 'lib/pago/v2026_04/models.rb', line 41046

def recurring_interval_count
  @recurring_interval_count
end

#subscription_idString (readonly)

Returns:

  • (String)


41028
41029
41030
# File 'lib/pago/v2026_04/models.rb', line 41028

def subscription_id
  @subscription_id
end

Class Method Details

.from_json(data) ⇒ SubscriptionPastDueMetadata?

Parameters:

  • data (Hash, String, nil)

Returns:



41069
41070
41071
41072
41073
41074
41075
41076
41077
41078
41079
41080
41081
41082
41083
41084
41085
41086
# File 'lib/pago/v2026_04/models.rb', line 41069

def self.from_json(data)
  data = ::JSON.parse(data) if data.is_a?(String)
  data = ::Pago::Serde.object(data)
  return nil if data.nil?

  wrap_raw(
    new(
      subscription_id: (data.key?("subscription_id") ? data["subscription_id"] : ::Pago::UNSET),
      product_id: (data.key?("product_id") ? data["product_id"] : ::Pago::UNSET),
      past_due_at: (data.key?("past_due_at") ? data["past_due_at"] : ::Pago::UNSET),
      amount: (data.key?("amount") ? data["amount"] : ::Pago::UNSET),
      currency: (data.key?("currency") ? data["currency"] : ::Pago::UNSET),
      recurring_interval: (data.key?("recurring_interval") ? data["recurring_interval"] : ::Pago::UNSET),
      recurring_interval_count: (data.key?("recurring_interval_count") ? data["recurring_interval_count"] : ::Pago::UNSET)
    ),
    data
  )
end