Class: Pago::V2026_04::Models::SubscriptionBillingPeriodUpdatedEvent

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

Overview

An event created by Pago when a subscription billing period is updated.

Constant Summary collapse

JSON_KEYS =

Returns:

  • (Hash[Symbol, String])
{
  id: "id",
  timestamp: "timestamp",
  organization_id: "organization_id",
  customer_id: "customer_id",
  customer: "customer",
  external_customer_id: "external_customer_id",
  member_id: "member_id",
  external_member_id: "external_member_id",
  child_count: "child_count",
  parent_id: "parent_id",
  label: "label",
  source: "source",
  name: "name",
  metadata: "metadata"
}.freeze
REQUIRED_KEYS =

Returns:

  • (Array[String])
["id", "timestamp", "organization_id", "customer_id", "customer", "external_customer_id", "label", "source", "name", "metadata"].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(id:, timestamp:, organization_id:, customer_id:, customer:, external_customer_id:, member_id: ::Pago::UNSET, external_member_id: ::Pago::UNSET, child_count: ::Pago::UNSET, parent_id: ::Pago::UNSET, label:, source:, name:, metadata:) ⇒ SubscriptionBillingPeriodUpdatedEvent

Returns a new instance of SubscriptionBillingPeriodUpdatedEvent.

Parameters:

  • id: (String)
  • timestamp: (String)
  • organization_id: (String)
  • customer_id: (String, nil)
  • customer: (Object)
  • external_customer_id: (String, nil)
  • member_id: (String, nil) (defaults to: ::Pago::UNSET)
  • external_member_id: (String, nil) (defaults to: ::Pago::UNSET)
  • child_count: (Integer, nil) (defaults to: ::Pago::UNSET)
  • parent_id: (String, nil) (defaults to: ::Pago::UNSET)
  • label: (String)
  • source: (String)
  • name: (String)
  • metadata: (Models::SubscriptionBillingPeriodUpdatedMetadata)


39638
39639
39640
39641
39642
39643
39644
39645
39646
39647
39648
39649
39650
39651
39652
39653
39654
39655
39656
39657
39658
39659
39660
39661
39662
39663
39664
39665
39666
39667
39668
39669
# File 'lib/pago/v2026_04/models.rb', line 39638

def initialize(
  id:,
  timestamp:,
  organization_id:,
  customer_id:,
  customer:,
  external_customer_id:,
  member_id: ::Pago::UNSET,
  external_member_id: ::Pago::UNSET,
  child_count: ::Pago::UNSET,
  parent_id: ::Pago::UNSET,
  label:,
  source:,
  name:,
  metadata:
)
  super()
  assign(:id, id)
  assign(:timestamp, timestamp)
  assign(:organization_id, organization_id)
  assign(:customer_id, customer_id)
  assign(:customer, customer)
  assign(:external_customer_id, external_customer_id)
  assign(:member_id, member_id)
  assign(:external_member_id, external_member_id)
  assign(:child_count, child_count)
  assign(:parent_id, parent_id)
  assign(:label, label)
  assign(:source, source)
  assign(:name, name)
  assign(:metadata, )
end

Instance Attribute Details

#child_countInteger (readonly)

Number of direct child events linked to this event.

Returns:

  • (Integer)


39617
39618
39619
# File 'lib/pago/v2026_04/models.rb', line 39617

def child_count
  @child_count
end

#customerObject? (readonly)

The customer associated with the event.

Returns:

  • (Object, nil)


39601
39602
39603
# File 'lib/pago/v2026_04/models.rb', line 39601

def customer
  @customer
end

#customer_idString? (readonly)

ID of the customer in your Pago organization associated with the event.

Returns:

  • (String, nil)


39597
39598
39599
# File 'lib/pago/v2026_04/models.rb', line 39597

def customer_id
  @customer_id
end

#external_customer_idString? (readonly)

ID of the customer in your system associated with the event.

Returns:

  • (String, nil)


39605
39606
39607
# File 'lib/pago/v2026_04/models.rb', line 39605

def external_customer_id
  @external_customer_id
end

#external_member_idString? (readonly)

ID of the member in your system within the customer's organization who performed the action inside B2B.

Returns:

  • (String, nil)


39613
39614
39615
# File 'lib/pago/v2026_04/models.rb', line 39613

def external_member_id
  @external_member_id
end

#idString (readonly)

The ID of the object.

Returns:

  • (String)


39585
39586
39587
# File 'lib/pago/v2026_04/models.rb', line 39585

def id
  @id
end

#labelString (readonly)

Human readable label of the event type.

Returns:

  • (String)


39625
39626
39627
# File 'lib/pago/v2026_04/models.rb', line 39625

def label
  @label
end

#member_idString? (readonly)

ID of the member within the customer's organization who performed the action inside B2B.

Returns:

  • (String, nil)


39609
39610
39611
# File 'lib/pago/v2026_04/models.rb', line 39609

def member_id
  @member_id
end

#metadataModels::SubscriptionBillingPeriodUpdatedMetadata (readonly)



39636
39637
39638
# File 'lib/pago/v2026_04/models.rb', line 39636

def 
  @metadata
end

#nameString (readonly)

The name of the event.

Returns:

  • (String)


39633
39634
39635
# File 'lib/pago/v2026_04/models.rb', line 39633

def name
  @name
end

#organization_idString (readonly)

The ID of the organization owning the event.

Returns:

  • (String)


39593
39594
39595
# File 'lib/pago/v2026_04/models.rb', line 39593

def organization_id
  @organization_id
end

#parent_idString? (readonly)

The ID of the parent event.

Returns:

  • (String, nil)


39621
39622
39623
# File 'lib/pago/v2026_04/models.rb', line 39621

def parent_id
  @parent_id
end

#sourceString (readonly)

The source of the event. system events are created by Pago. user events are the one you create through our ingestion API.

Returns:

  • (String)


39629
39630
39631
# File 'lib/pago/v2026_04/models.rb', line 39629

def source
  @source
end

#timestampString (readonly)

The timestamp of the event.

Returns:

  • (String)


39589
39590
39591
# File 'lib/pago/v2026_04/models.rb', line 39589

def timestamp
  @timestamp
end

Class Method Details

.from_json(data) ⇒ SubscriptionBillingPeriodUpdatedEvent?

Parameters:

  • data (Hash, String, nil)

Returns:



39673
39674
39675
39676
39677
39678
39679
39680
39681
39682
39683
39684
39685
39686
39687
39688
39689
39690
39691
39692
39693
39694
39695
39696
39697
# File 'lib/pago/v2026_04/models.rb', line 39673

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(
      id: (data.key?("id") ? data["id"] : ::Pago::UNSET),
      timestamp: (data.key?("timestamp") ? data["timestamp"] : ::Pago::UNSET),
      organization_id: (data.key?("organization_id") ? data["organization_id"] : ::Pago::UNSET),
      customer_id: (data.key?("customer_id") ? data["customer_id"] : ::Pago::UNSET),
      customer: (data.key?("customer") ? Unions::Customer.from_json(data["customer"]) : ::Pago::UNSET),
      external_customer_id: (data.key?("external_customer_id") ? data["external_customer_id"] : ::Pago::UNSET),
      member_id: (data.key?("member_id") ? data["member_id"] : ::Pago::UNSET),
      external_member_id: (data.key?("external_member_id") ? data["external_member_id"] : ::Pago::UNSET),
      child_count: (data.key?("child_count") ? data["child_count"] : ::Pago::UNSET),
      parent_id: (data.key?("parent_id") ? data["parent_id"] : ::Pago::UNSET),
      label: (data.key?("label") ? data["label"] : ::Pago::UNSET),
      source: (data.key?("source") ? data["source"] : ::Pago::UNSET),
      name: (data.key?("name") ? data["name"] : ::Pago::UNSET),
      metadata: (data.key?("metadata") ? Models::SubscriptionBillingPeriodUpdatedMetadata.from_json(data["metadata"]) : ::Pago::UNSET)
    ),
    data
  )
end