Class: Pago::V2026_04::Models::SubscriptionProductUpdatedEvent

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 changes the product.

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:) ⇒ SubscriptionProductUpdatedEvent

Returns a new instance of SubscriptionProductUpdatedEvent.

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::SubscriptionProductUpdatedMetadata)


41429
41430
41431
41432
41433
41434
41435
41436
41437
41438
41439
41440
41441
41442
41443
41444
41445
41446
41447
41448
41449
41450
41451
41452
41453
41454
41455
41456
41457
41458
41459
41460
# File 'lib/pago/v2026_04/models.rb', line 41429

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)


41408
41409
41410
# File 'lib/pago/v2026_04/models.rb', line 41408

def child_count
  @child_count
end

#customerObject? (readonly)

The customer associated with the event.

Returns:

  • (Object, nil)


41392
41393
41394
# File 'lib/pago/v2026_04/models.rb', line 41392

def customer
  @customer
end

#customer_idString? (readonly)

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

Returns:

  • (String, nil)


41388
41389
41390
# File 'lib/pago/v2026_04/models.rb', line 41388

def customer_id
  @customer_id
end

#external_customer_idString? (readonly)

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

Returns:

  • (String, nil)


41396
41397
41398
# File 'lib/pago/v2026_04/models.rb', line 41396

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)


41404
41405
41406
# File 'lib/pago/v2026_04/models.rb', line 41404

def external_member_id
  @external_member_id
end

#idString (readonly)

The ID of the object.

Returns:

  • (String)


41376
41377
41378
# File 'lib/pago/v2026_04/models.rb', line 41376

def id
  @id
end

#labelString (readonly)

Human readable label of the event type.

Returns:

  • (String)


41416
41417
41418
# File 'lib/pago/v2026_04/models.rb', line 41416

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)


41400
41401
41402
# File 'lib/pago/v2026_04/models.rb', line 41400

def member_id
  @member_id
end

#metadataModels::SubscriptionProductUpdatedMetadata (readonly)



41427
41428
41429
# File 'lib/pago/v2026_04/models.rb', line 41427

def 
  @metadata
end

#nameString (readonly)

The name of the event.

Returns:

  • (String)


41424
41425
41426
# File 'lib/pago/v2026_04/models.rb', line 41424

def name
  @name
end

#organization_idString (readonly)

The ID of the organization owning the event.

Returns:

  • (String)


41384
41385
41386
# File 'lib/pago/v2026_04/models.rb', line 41384

def organization_id
  @organization_id
end

#parent_idString? (readonly)

The ID of the parent event.

Returns:

  • (String, nil)


41412
41413
41414
# File 'lib/pago/v2026_04/models.rb', line 41412

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)


41420
41421
41422
# File 'lib/pago/v2026_04/models.rb', line 41420

def source
  @source
end

#timestampString (readonly)

The timestamp of the event.

Returns:

  • (String)


41380
41381
41382
# File 'lib/pago/v2026_04/models.rb', line 41380

def timestamp
  @timestamp
end

Class Method Details

.from_json(data) ⇒ SubscriptionProductUpdatedEvent?

Parameters:

  • data (Hash, String, nil)

Returns:



41464
41465
41466
41467
41468
41469
41470
41471
41472
41473
41474
41475
41476
41477
41478
41479
41480
41481
41482
41483
41484
41485
41486
41487
41488
# File 'lib/pago/v2026_04/models.rb', line 41464

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::SubscriptionProductUpdatedMetadata.from_json(data["metadata"]) : ::Pago::UNSET)
    ),
    data
  )
end