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

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

Defined Under Namespace

Modules: RateType Classes: AccessSchedule

Instance Attribute 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(amount:, ending_before:, starting_at:) ⇒ Object

Parameters:

  • amount (Float)
  • ending_before (Time)

    RFC 3339 timestamp (exclusive)

  • starting_at (Time)

    RFC 3339 timestamp (inclusive)



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

Instance Attribute Details

#access_scheduleMetronomeSDK::Models::V2::ContractEditParams::AddCredit::AccessSchedule

Schedule for distributing the credit to the customer.



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

required :access_schedule, -> { MetronomeSDK::V2::ContractEditParams::AddCredit::AccessSchedule }

#applicable_product_idsArray<String>?

Which products the credit applies to. If both applicable_product_ids and applicable_product_tags are not provided, the credit applies to all products.

Returns:

  • (Array<String>, nil)


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

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

#applicable_product_tagsArray<String>?

Which tags the credit applies to. If both applicable_product_ids and applicable_product_tags are not provided, the credit applies to all products.

Returns:

  • (Array<String>, nil)


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

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

#custom_fieldsHash{Symbol=>String}?

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

Returns:

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


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

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

#descriptionString?

Used only in UI/API. It is not exposed to end customers.

Returns:

  • (String, nil)


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

optional :description, String

#hierarchy_configurationMetronomeSDK::Models::CommitHierarchyConfiguration?

Optional configuration for credit hierarchy access control



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

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

#nameString?

displayed on invoices

Returns:

  • (String, nil)


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

optional :name, String

#netsuite_sales_order_idString?

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

Returns:

  • (String, nil)


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

optional :netsuite_sales_order_id, String

#priorityFloat?

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

Returns:

  • (Float, nil)


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

optional :priority, Float

#product_idString

Returns:

  • (String)


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

required :product_id, String

#rate_typeSymbol, ...



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

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

#rollover_fractionFloat?

Fraction of unused segments that will be rolled over. Must be between 0 and 1.

Returns:

  • (Float, nil)


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

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



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

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