Class: MetronomeSDK::Models::ContractV2::Credit

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/metronome_sdk/models/contract_v2.rb

Defined Under Namespace

Modules: Ledger, Type Classes: Contract, Product, RolledOverFrom

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, #inspect, inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(id:) ⇒ Object

Parameters:

  • id (String)


# File 'lib/metronome_sdk/models/contract_v2.rb', line 1791

Instance Attribute Details

#access_scheduleMetronomeSDK::Models::ScheduleDuration?

The schedule that the customer will gain access to the credits.



1668
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1668

optional :access_schedule, -> { MetronomeSDK::ScheduleDuration }

#applicable_contract_idsArray<String>?

Returns:

  • (Array<String>, nil)


1673
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1673

optional :applicable_contract_ids, MetronomeSDK::Internal::Type::ArrayOf[String]

#applicable_product_idsArray<String>?

Returns:

  • (Array<String>, nil)


1678
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1678

optional :applicable_product_ids, MetronomeSDK::Internal::Type::ArrayOf[String]

#applicable_product_tagsArray<String>?

Returns:

  • (Array<String>, nil)


1683
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1683

optional :applicable_product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]

#archived_atTime?

Returns:

  • (Time, nil)


1688
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1688

optional :archived_at, Time

#balanceFloat?

The current balance of the credit or commit. This balance reflects the amount of credit or commit that the customer has access to use at this moment - thus, expired and upcoming credit or commit segments contribute 0 to the balance. The balance will match the sum of all ledger entries with the exception of the case where the sum of negative manual ledger entries exceeds the positive amount remaining on the credit or commit - in that case, the balance will be 0. All manual ledger entries associated with active credit or commit segments are included in the balance, including future-dated manual ledger entries.

Returns:

  • (Float, nil)


1701
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1701

optional :balance, Float

#contractMetronomeSDK::Models::ContractV2::Credit::Contract?



1706
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1706

optional :contract, -> { MetronomeSDK::ContractV2::Credit::Contract }

#created_atTime?

Timestamp of when the credit was created.

  • Recurring credits: latter of credit service period date and parent credit start date

Returns:

  • (Time, nil)


1715
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1715

optional :created_at, Time

#custom_fieldsHash{Symbol=>String}?

Custom fields to be added eg. { “key1”: “value1”, “key2”: “value2” }

Returns:

  • (Hash{Symbol=>String}, nil)


1721
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1721

optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]

#descriptionString?

Returns:

  • (String, nil)


1726
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1726

optional :description, String

#hierarchy_configurationMetronomeSDK::Models::CommitHierarchyConfiguration?

Optional configuration for credit hierarchy access control



1732
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1732

optional :hierarchy_configuration, -> { MetronomeSDK::CommitHierarchyConfiguration }

#idString

Returns:

  • (String)


1652
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1652

required :id, String

#ledgerArray<MetronomeSDK::Models::ContractV2::Credit::Ledger::CreditSegmentStartLedgerEntry, MetronomeSDK::Models::ContractV2::Credit::Ledger::CreditAutomatedInvoiceDeductionLedgerEntry, MetronomeSDK::Models::ContractV2::Credit::Ledger::CreditExpirationLedgerEntry, MetronomeSDK::Models::ContractV2::Credit::Ledger::CreditCanceledLedgerEntry, MetronomeSDK::Models::ContractV2::Credit::Ledger::CreditCreditedLedgerEntry, MetronomeSDK::Models::ContractV2::Credit::Ledger::CreditManualLedgerEntry, MetronomeSDK::Models::ContractV2::Credit::Ledger::CreditSeatBasedAdjustmentLedgerEntry, MetronomeSDK::Models::ContractV2::Credit::Ledger::CreditRolloverLedgerEntry>?

A list of ordered events that impact the balance of a credit. For example, an invoice deduction or an expiration.



1739
1740
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1739

optional :ledger,
-> { MetronomeSDK::Internal::Type::ArrayOf[union: MetronomeSDK::ContractV2::Credit::Ledger] }

#nameString?

Returns:

  • (String, nil)


1745
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1745

optional :name, String

#netsuite_sales_order_idString?

This field’s availability is dependent on your client’s configuration.

Returns:

  • (String, nil)


1751
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1751

optional :netsuite_sales_order_id, String

#priorityFloat?

If multiple credits or commits are applicable, the one with the lower priority will apply first.

Returns:

  • (Float, nil)


1758
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1758

optional :priority, Float

#productMetronomeSDK::Models::ContractV2::Credit::Product



1657
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1657

required :product, -> { MetronomeSDK::ContractV2::Credit::Product }

#recurring_credit_idString?

The ID of the recurring credit that created this credit

Returns:

  • (String, nil)


1764
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1764

optional :recurring_credit_id, String

#rolled_over_fromMetronomeSDK::Models::ContractV2::Credit::RolledOverFrom?



1769
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1769

optional :rolled_over_from, -> { MetronomeSDK::ContractV2::Credit::RolledOverFrom }

#salesforce_opportunity_idString?

This field’s availability is dependent on your client’s configuration.

Returns:

  • (String, nil)


1775
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1775

optional :salesforce_opportunity_id, String

#specifiersArray<MetronomeSDK::Models::CommitSpecifier>?

List of filters that determine what kind of customer usage draws down a commit or credit. A customer’s usage needs to meet the condition of at least one of the specifiers to contribute to a commit’s or credit’s drawdown.

Returns:



1783
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1783

optional :specifiers, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::CommitSpecifier] }

#subscription_configMetronomeSDK::Models::RecurringCommitSubscriptionConfig?

Attach a subscription to the recurring commit/credit.



1789
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1789

optional :subscription_config, -> { MetronomeSDK::RecurringCommitSubscriptionConfig }

#typeSymbol, MetronomeSDK::Models::ContractV2::Credit::Type



1662
# File 'lib/metronome_sdk/models/contract_v2.rb', line 1662

required :type, enum: -> { MetronomeSDK::ContractV2::Credit::Type }

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/metronome_sdk/models/contract_v2.rb', line 1864