Class: Pago::V2026_04::Models::BenefitCycledEvent

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 benefit is cycled.

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

Returns a new instance of BenefitCycledEvent.

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


2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
# File 'lib/pago/v2026_04/models.rb', line 2540

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)


2519
2520
2521
# File 'lib/pago/v2026_04/models.rb', line 2519

def child_count
  @child_count
end

#customerObject? (readonly)

The customer associated with the event.

Returns:

  • (Object, nil)


2503
2504
2505
# File 'lib/pago/v2026_04/models.rb', line 2503

def customer
  @customer
end

#customer_idString? (readonly)

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

Returns:

  • (String, nil)


2499
2500
2501
# File 'lib/pago/v2026_04/models.rb', line 2499

def customer_id
  @customer_id
end

#external_customer_idString? (readonly)

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

Returns:

  • (String, nil)


2507
2508
2509
# File 'lib/pago/v2026_04/models.rb', line 2507

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)


2515
2516
2517
# File 'lib/pago/v2026_04/models.rb', line 2515

def external_member_id
  @external_member_id
end

#idString (readonly)

The ID of the object.

Returns:

  • (String)


2487
2488
2489
# File 'lib/pago/v2026_04/models.rb', line 2487

def id
  @id
end

#labelString (readonly)

Human readable label of the event type.

Returns:

  • (String)


2527
2528
2529
# File 'lib/pago/v2026_04/models.rb', line 2527

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)


2511
2512
2513
# File 'lib/pago/v2026_04/models.rb', line 2511

def member_id
  @member_id
end

#metadataModels::BenefitGrantMetadata (readonly)



2538
2539
2540
# File 'lib/pago/v2026_04/models.rb', line 2538

def 
  @metadata
end

#nameString (readonly)

The name of the event.

Returns:

  • (String)


2535
2536
2537
# File 'lib/pago/v2026_04/models.rb', line 2535

def name
  @name
end

#organization_idString (readonly)

The ID of the organization owning the event.

Returns:

  • (String)


2495
2496
2497
# File 'lib/pago/v2026_04/models.rb', line 2495

def organization_id
  @organization_id
end

#parent_idString? (readonly)

The ID of the parent event.

Returns:

  • (String, nil)


2523
2524
2525
# File 'lib/pago/v2026_04/models.rb', line 2523

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)


2531
2532
2533
# File 'lib/pago/v2026_04/models.rb', line 2531

def source
  @source
end

#timestampString (readonly)

The timestamp of the event.

Returns:

  • (String)


2491
2492
2493
# File 'lib/pago/v2026_04/models.rb', line 2491

def timestamp
  @timestamp
end

Class Method Details

.from_json(data) ⇒ BenefitCycledEvent?

Parameters:

  • data (Hash, String, nil)

Returns:



2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
# File 'lib/pago/v2026_04/models.rb', line 2575

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