Class: MetronomeSDK::Models::V1::ContractAmendParams::Override

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/metronome_sdk/models/v1/contract_amend_params.rb,
sig/metronome_sdk/models/v1/contract_amend_params.rbs

Defined Under Namespace

Modules: Target, Type Classes: OverrideSpecifier, OverwriteRate, Tier

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(multiplier:, size: nil) ⇒ Object

Parameters:

  • multiplier (Float)
  • size (Float) (defaults to: nil)


# File 'lib/metronome_sdk/models/v1/contract_amend_params.rb', line 1309

Instance Attribute Details

#applicable_product_tagsArray<String>?

tags identifying products whose rates are being overridden. Cannot be used in conjunction with override_specifiers.

Parameters:

  • (::Array[String])

Returns:

  • (Array<String>, nil)


994
# File 'lib/metronome_sdk/models/v1/contract_amend_params.rb', line 994

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

#ending_beforeTime?

RFC 3339 timestamp indicating when the override will stop applying (exclusive)

Parameters:

  • (Time)

Returns:

  • (Time, nil)


1000
# File 'lib/metronome_sdk/models/v1/contract_amend_params.rb', line 1000

optional :ending_before, Time

#entitledBoolean?

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


1005
# File 'lib/metronome_sdk/models/v1/contract_amend_params.rb', line 1005

optional :entitled, MetronomeSDK::Internal::Type::Boolean

#is_commit_specificBoolean?

Indicates whether the override should only apply to commits. Defaults to false. If true you can specify relevant commits in override_specifiers by passing commit_ids, recurring_commit_ids, or any_commit_or_credit_ids. If you do not specify any of these fields, the override will apply when consuming any prepaid commit, postpaid commit, or credit

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


1015
# File 'lib/metronome_sdk/models/v1/contract_amend_params.rb', line 1015

optional :is_commit_specific, MetronomeSDK::Internal::Type::Boolean

#multiplierFloat?

Required for MULTIPLIER type. Must be >=0.

Parameters:

  • (Float)

Returns:

  • (Float, nil)


1021
# File 'lib/metronome_sdk/models/v1/contract_amend_params.rb', line 1021

optional :multiplier, Float

#override_specifiersArray<MetronomeSDK::Models::V1::ContractAmendParams::Override::OverrideSpecifier>?

Cannot be used in conjunction with product_id or applicable_product_tags. If provided, the override will apply to all products with the specified specifiers.



1028
1029
# File 'lib/metronome_sdk/models/v1/contract_amend_params.rb', line 1028

optional :override_specifiers,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::Override::OverrideSpecifier] }

#overwrite_rateMetronomeSDK::Models::V1::ContractAmendParams::Override::OverwriteRate?

Required for OVERWRITE type.



1035
# File 'lib/metronome_sdk/models/v1/contract_amend_params.rb', line 1035

optional :overwrite_rate, -> { MetronomeSDK::V1::ContractAmendParams::Override::OverwriteRate }

#priorityFloat?

Required for EXPLICIT multiplier prioritization scheme and all TIERED overrides. Under EXPLICIT prioritization, overwrites are prioritized first, and then tiered and multiplier overrides are prioritized by their priority value (lowest first). Must be > 0.

Parameters:

  • (Float)

Returns:

  • (Float, nil)


1044
# File 'lib/metronome_sdk/models/v1/contract_amend_params.rb', line 1044

optional :priority, Float

#product_idString?

ID of the product whose rate is being overridden. Cannot be used in conjunction with override_specifiers.

Parameters:

  • (String)

Returns:

  • (String, nil)


1051
# File 'lib/metronome_sdk/models/v1/contract_amend_params.rb', line 1051

optional :product_id, String

#starting_atTime

RFC 3339 timestamp indicating when the override will start applying (inclusive)

Parameters:

  • value (Time)

Returns:

  • (Time)


987
# File 'lib/metronome_sdk/models/v1/contract_amend_params.rb', line 987

required :starting_at, Time

#targetSymbol, ...

Indicates whether the override applies to commit rates or list rates. Can only be used for overrides that have is_commit_specific set to true. Defaults to "LIST_RATE".



1059
# File 'lib/metronome_sdk/models/v1/contract_amend_params.rb', line 1059

optional :target, enum: -> { MetronomeSDK::V1::ContractAmendParams::Override::Target }

#tiersArray<MetronomeSDK::Models::V1::ContractAmendParams::Override::Tier>?

Required for TIERED type. Must have at least one tier.



1065
1066
# File 'lib/metronome_sdk/models/v1/contract_amend_params.rb', line 1065

optional :tiers,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractAmendParams::Override::Tier] }

#typeSymbol, ...

Overwrites are prioritized over multipliers and tiered overrides.



1072
# File 'lib/metronome_sdk/models/v1/contract_amend_params.rb', line 1072

optional :type, enum: -> { MetronomeSDK::V1::ContractAmendParams::Override::Type }

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/metronome_sdk/models/v1/contract_amend_params.rb', line 1196

Instance Method Details

#to_hash{

Returns:

  • ({)


972
# File 'sig/metronome_sdk/models/v1/contract_amend_params.rbs', line 972

def to_hash: -> {