Class: MetronomeSDK::Models::V2::ContractEditParams::AddRecurringCredit

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

Defined Under Namespace

Modules: Proration, RateType, RecurrenceFrequency Classes: AccessAmount, CommitDuration, SubscriptionConfig

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(credit_type_id: , unit_price: , quantity: nil) ⇒ Object

Some parameter documentations has been truncated, see AccessAmount for more details.

The amount of commit to grant.

Parameters:

  • credit_type_id (String) (defaults to: )
  • unit_price (Float) (defaults to: )
  • quantity (Float) (defaults to: nil)

    This field is required unless a subscription is attached via ‘subscription_confi



# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2317

Instance Attribute Details

#access_amountMetronomeSDK::Models::V2::ContractEditParams::AddRecurringCredit::AccessAmount

The amount of commit to grant.



2191
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2191

required :access_amount, -> { MetronomeSDK::V2::ContractEditParams::AddRecurringCredit::AccessAmount }

#applicable_product_idsArray<String>?

Will be passed down to the individual commits

Returns:

  • (Array<String>, nil)


2222
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2222

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

#applicable_product_tagsArray<String>?

Will be passed down to the individual commits

Returns:

  • (Array<String>, nil)


2228
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2228

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

#commit_durationMetronomeSDK::Models::V2::ContractEditParams::AddRecurringCredit::CommitDuration

Defines the length of the access schedule for each created commit/credit. The value represents the number of units. Unit defaults to “PERIODS”, where the length of a period is determined by the recurrence_frequency.



2199
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2199

required :commit_duration, -> { MetronomeSDK::V2::ContractEditParams::AddRecurringCredit::CommitDuration }

#descriptionString?

Will be passed down to the individual commits

Returns:

  • (String, nil)


2234
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2234

optional :description, String

#ending_beforeTime?

Determines when the contract will stop creating recurring commits. optional

Returns:

  • (Time, nil)


2240
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2240

optional :ending_before, Time

#hierarchy_configurationMetronomeSDK::Models::CommitHierarchyConfiguration?

Optional configuration for recurring credit hierarchy access control



2246
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2246

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

#nameString?

displayed on invoices. will be passed through to the individual commits

Returns:

  • (String, nil)


2252
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2252

optional :name, String

#netsuite_sales_order_idString?

Will be passed down to the individual commits

Returns:

  • (String, nil)


2258
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2258

optional :netsuite_sales_order_id, String

#priorityFloat

Will be passed down to the individual commits

Returns:

  • (Float)


2205
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2205

required :priority, Float

#product_idString

Returns:

  • (String)


2210
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2210

required :product_id, String

#prorationSymbol, ...

Determines whether the first and last commit will be prorated. If not provided, the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).



2265
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2265

optional :proration, enum: -> { MetronomeSDK::V2::ContractEditParams::AddRecurringCredit::Proration }

#rate_typeSymbol, ...

Whether the created commits will use the commit rate or list rate



2271
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2271

optional :rate_type, enum: -> { MetronomeSDK::V2::ContractEditParams::AddRecurringCredit::RateType }

#recurrence_frequencySymbol, ...

The frequency at which the recurring commits will be created. If not provided: - The commits will be created on the usage invoice frequency. If provided: - The period defined in the duration will correspond to this frequency. - Commits will be created aligned with the recurring commit’s starting_at rather than the usage invoice dates.



2281
2282
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2281

optional :recurrence_frequency,
enum: -> { MetronomeSDK::V2::ContractEditParams::AddRecurringCredit::RecurrenceFrequency }

#rollover_fractionFloat?

Will be passed down to the individual commits. This controls how much of an individual unexpired commit will roll over upon contract transition. Must be between 0 and 1.

Returns:

  • (Float, nil)


2290
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2290

optional :rollover_fraction, Float

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

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. This field cannot be used together with ‘applicable_product_ids` or `applicable_product_tags`. Instead, to target usage by product or product tag, pass those values in the body of `specifiers`.



2301
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2301

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

#starting_atTime

determines the start time for the first commit

Returns:

  • (Time)


2216
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2216

required :starting_at, Time

#subscription_configMetronomeSDK::Models::V2::ContractEditParams::AddRecurringCredit::SubscriptionConfig?

Attach a subscription to the recurring commit/credit.



2307
2308
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2307

optional :subscription_config,
-> { MetronomeSDK::V2::ContractEditParams::AddRecurringCredit::SubscriptionConfig }

#temporary_idString?

A temporary ID that can be used to reference the recurring commit for commit specific overrides.

Returns:

  • (String, nil)


2315
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2315

optional :temporary_id, String

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 2420