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

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_params.rb

Overview

Defined Under Namespace

Classes: AddBillingProviderConfigurationUpdate, AddCommit, AddCredit, AddDiscount, AddOverride, AddProfessionalService, AddRecurringCommit, AddRecurringCredit, AddResellerRoyalty, AddScheduledCharge, AddSubscription, ArchiveCommit, ArchiveCredit, ArchiveScheduledCharge, RemoveOverride, UpdateCommit, UpdateCredit, UpdatePrepaidBalanceThresholdConfiguration, UpdateRecurringCommit, UpdateRecurringCredit, UpdateScheduledCharge, UpdateSpendThresholdConfiguration, UpdateSubscription

Instance Attribute Summary collapse

Attributes included from Internal::Type::RequestParameters

#request_options

Class Method Summary collapse

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(commit: nil, is_enabled: nil, payment_gate_config: nil, threshold_amount: nil) ⇒ Object

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

Parameters:



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


Instance Attribute Details

#add_billing_provider_configuration_updateMetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate?

Update the billing provider configuration on the contract. Currently only supports adding a billing provider configuration to a contract that does not already have one.



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

optional :add_billing_provider_configuration_update,
-> { MetronomeSDK::V2::ContractEditParams::AddBillingProviderConfigurationUpdate }

#add_commitsArray<MetronomeSDK::Models::V2::ContractEditParams::AddCommit>?



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

optional :add_commits,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::AddCommit] }

#add_creditsArray<MetronomeSDK::Models::V2::ContractEditParams::AddCredit>?



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

optional :add_credits,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::AddCredit] }

#add_discountsArray<MetronomeSDK::Models::V2::ContractEditParams::AddDiscount>?



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

optional :add_discounts,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::AddDiscount] }

#add_overridesArray<MetronomeSDK::Models::V2::ContractEditParams::AddOverride>?



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

optional :add_overrides,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::AddOverride] }

#add_prepaid_balance_threshold_configurationMetronomeSDK::Models::PrepaidBalanceThresholdConfigurationV2?



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

optional :add_prepaid_balance_threshold_configuration,
-> { MetronomeSDK::PrepaidBalanceThresholdConfigurationV2 }

#add_professional_servicesArray<MetronomeSDK::Models::V2::ContractEditParams::AddProfessionalService>?

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



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

optional :add_professional_services,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::AddProfessionalService] }

#add_recurring_commitsArray<MetronomeSDK::Models::V2::ContractEditParams::AddRecurringCommit>?



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

optional :add_recurring_commits,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::AddRecurringCommit] }

#add_recurring_creditsArray<MetronomeSDK::Models::V2::ContractEditParams::AddRecurringCredit>?



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

optional :add_recurring_credits,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::AddRecurringCredit] }

#add_reseller_royaltiesArray<MetronomeSDK::Models::V2::ContractEditParams::AddResellerRoyalty>?



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

optional :add_reseller_royalties,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::AddResellerRoyalty] }

#add_scheduled_chargesArray<MetronomeSDK::Models::V2::ContractEditParams::AddScheduledCharge>?



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

optional :add_scheduled_charges,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::AddScheduledCharge] }

#add_spend_threshold_configurationMetronomeSDK::Models::SpendThresholdConfigurationV2?



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

optional :add_spend_threshold_configuration, -> { MetronomeSDK::SpendThresholdConfigurationV2 }

#add_subscriptionsArray<MetronomeSDK::Models::V2::ContractEditParams::AddSubscription>?

Optional list of [subscriptions](docs.metronome.com/manage-product-access/create-subscription/) to add to the contract.



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

optional :add_subscriptions,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::AddSubscription] }

#allow_contract_ending_before_finalized_invoiceBoolean?

If true, allows setting the contract end date earlier than the end_timestamp of existing finalized invoices. Finalized invoices will be unchanged; if you want to incorporate the new end date, you can void and regenerate finalized usage invoices. Defaults to true.

Returns:

  • (Boolean, nil)


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

optional :allow_contract_ending_before_finalized_invoice, MetronomeSDK::Internal::Type::Boolean

#archive_commitsArray<MetronomeSDK::Models::V2::ContractEditParams::ArchiveCommit>?

IDs of commits to archive



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

optional :archive_commits,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::ArchiveCommit] }

#archive_creditsArray<MetronomeSDK::Models::V2::ContractEditParams::ArchiveCredit>?

IDs of credits to archive



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

optional :archive_credits,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::ArchiveCredit] }

#archive_scheduled_chargesArray<MetronomeSDK::Models::V2::ContractEditParams::ArchiveScheduledCharge>?

IDs of scheduled charges to archive



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

optional :archive_scheduled_charges,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::ArchiveScheduledCharge] }

#contract_idString

ID of the contract being edited

Returns:

  • (String)


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

required :contract_id, String

#customer_idString

ID of the customer whose contract is being edited

Returns:

  • (String)


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

required :customer_id, String

#remove_overridesArray<MetronomeSDK::Models::V2::ContractEditParams::RemoveOverride>?

IDs of overrides to remove



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

optional :remove_overrides,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::RemoveOverride] }

#uniqueness_keyString?

Optional uniqueness key to prevent duplicate contract edits.

Returns:

  • (String, nil)


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

optional :uniqueness_key, String

#update_commitsArray<MetronomeSDK::Models::V2::ContractEditParams::UpdateCommit>?



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

optional :update_commits,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::UpdateCommit] }

#update_contract_end_dateTime?

RFC 3339 timestamp indicating when the contract will end (exclusive).

Returns:

  • (Time, nil)


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

optional :update_contract_end_date, Time, nil?: true

#update_contract_nameString?

Value to update the contract name to. If not provided, the contract name will remain unchanged.

Returns:

  • (String, nil)


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

optional :update_contract_name, String, nil?: true

#update_creditsArray<MetronomeSDK::Models::V2::ContractEditParams::UpdateCredit>?



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

optional :update_credits,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::UpdateCredit] }

#update_prepaid_balance_threshold_configurationMetronomeSDK::Models::V2::ContractEditParams::UpdatePrepaidBalanceThresholdConfiguration?



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

optional :update_prepaid_balance_threshold_configuration,
-> { MetronomeSDK::V2::ContractEditParams::UpdatePrepaidBalanceThresholdConfiguration }

#update_recurring_commitsArray<MetronomeSDK::Models::V2::ContractEditParams::UpdateRecurringCommit>?

Edits to these recurring commits will only affect commits whose access schedules has not started. Expired commits, and commits with an active access schedule will remain unchanged.



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

optional :update_recurring_commits,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::UpdateRecurringCommit] }

#update_recurring_creditsArray<MetronomeSDK::Models::V2::ContractEditParams::UpdateRecurringCredit>?

Edits to these recurring credits will only affect credits whose access schedules has not started. Expired credits, and credits with an active access schedule will remain unchanged.



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

optional :update_recurring_credits,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::UpdateRecurringCredit] }

#update_scheduled_chargesArray<MetronomeSDK::Models::V2::ContractEditParams::UpdateScheduledCharge>?



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

optional :update_scheduled_charges,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::UpdateScheduledCharge] }

#update_spend_threshold_configurationMetronomeSDK::Models::V2::ContractEditParams::UpdateSpendThresholdConfiguration?



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

optional :update_spend_threshold_configuration,
-> { MetronomeSDK::V2::ContractEditParams::UpdateSpendThresholdConfiguration }

#update_subscriptionsArray<MetronomeSDK::Models::V2::ContractEditParams::UpdateSubscription>?

Optional list of subscriptions to update.



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

optional :update_subscriptions,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditParams::UpdateSubscription] }

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


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