Class: MetronomeSDK::Models::V2::ContractEditCommitParams

Inherits:
Internal::Type::BaseModel show all
Extended by:
Internal::Type::RequestParameters::Converter
Includes:
Internal::Type::RequestParameters
Defined in:
lib/metronome_sdk/models/v2/contract_edit_commit_params.rb

Overview

Defined Under Namespace

Modules: RateType Classes: AccessSchedule, InvoiceSchedule

Instance Attribute Summary collapse

Attributes included from Internal::Type::RequestParameters

#request_options

Instance Method Summary collapse

Methods included from Internal::Type::RequestParameters::Converter

dump_request

Methods included from Internal::Type::RequestParameters

included

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

Parameters:

  • id (String) (defaults to: )
  • amount (Float) (defaults to: nil)
  • quantity (Float) (defaults to: nil)
  • timestamp (Time) (defaults to: nil)
  • unit_price (Float) (defaults to: nil)


# File 'lib/metronome_sdk/models/v2/contract_edit_commit_params.rb', line 201


Instance Attribute Details

#access_scheduleMetronomeSDK::Models::V2::ContractEditCommitParams::AccessSchedule?



26
# File 'lib/metronome_sdk/models/v2/contract_edit_commit_params.rb', line 26

optional :access_schedule, -> { MetronomeSDK::V2::ContractEditCommitParams::AccessSchedule }

#applicable_product_idsArray<String>?

Which products the commit applies to. If applicable_product_ids, applicable_product_tags or specifiers are not provided, the commit applies to all products.

Returns:

  • (Array<String>, nil)


34
# File 'lib/metronome_sdk/models/v2/contract_edit_commit_params.rb', line 34

optional :applicable_product_ids, MetronomeSDK::Internal::Type::ArrayOf[String], nil?: true

#applicable_product_tagsArray<String>?

Which tags the commit applies to. If applicable_product_ids, applicable_product_tags or specifiers are not provided, the commit applies to all products.

Returns:

  • (Array<String>, nil)


42
# File 'lib/metronome_sdk/models/v2/contract_edit_commit_params.rb', line 42

optional :applicable_product_tags, MetronomeSDK::Internal::Type::ArrayOf[String], nil?: true

#commit_idString

ID of the commit to edit

Returns:

  • (String)


15
# File 'lib/metronome_sdk/models/v2/contract_edit_commit_params.rb', line 15

required :commit_id, String

#customer_idString

ID of the customer whose commit is being edited

Returns:

  • (String)


21
# File 'lib/metronome_sdk/models/v2/contract_edit_commit_params.rb', line 21

required :customer_id, String

#hierarchy_configurationMetronomeSDK::Models::CommitHierarchyConfiguration?

Optional configuration for commit hierarchy access control



48
# File 'lib/metronome_sdk/models/v2/contract_edit_commit_params.rb', line 48

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

#invoice_contract_idString?

ID of contract to use for invoicing

Returns:

  • (String, nil)


54
# File 'lib/metronome_sdk/models/v2/contract_edit_commit_params.rb', line 54

optional :invoice_contract_id, String

#invoice_scheduleMetronomeSDK::Models::V2::ContractEditCommitParams::InvoiceSchedule?



59
# File 'lib/metronome_sdk/models/v2/contract_edit_commit_params.rb', line 59

optional :invoice_schedule, -> { MetronomeSDK::V2::ContractEditCommitParams::InvoiceSchedule }

#priorityFloat?

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

Returns:

  • (Float, nil)


66
# File 'lib/metronome_sdk/models/v2/contract_edit_commit_params.rb', line 66

optional :priority, Float, nil?: true

#product_idString?

Returns:

  • (String, nil)


71
# File 'lib/metronome_sdk/models/v2/contract_edit_commit_params.rb', line 71

optional :product_id, String

#rate_typeSymbol, ...

If provided, updates the commit to use the specified rate type for current and future invoices. Previously finalized invoices will need to be voided and regenerated to reflect the rate type change.



79
# File 'lib/metronome_sdk/models/v2/contract_edit_commit_params.rb', line 79

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

#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`.



90
91
92
# File 'lib/metronome_sdk/models/v2/contract_edit_commit_params.rb', line 90

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