Class: MetronomeSDK::Models::V1::Contracts::ProductListItemState

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb

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(created_at: , created_by: , name: , billable_metric_id: nil, composite_product_ids: nil, composite_tags: nil, exclude_free_usage: nil, is_refundable: nil, netsuite_internal_item_id: nil, netsuite_overage_item_id: nil, presentation_group_key: nil, pricing_group_key: nil, quantity_conversion: nil, quantity_rounding: nil, starting_at: nil, tags: nil) ⇒ Object

Some parameter documentations has been truncated, see MetronomeSDK::Models::V1::Contracts::ProductListItemState for more details.

Parameters:

  • created_at (Time) (defaults to: )
  • created_by (String) (defaults to: )
  • name (String) (defaults to: )
  • billable_metric_id (String) (defaults to: nil)
  • composite_product_ids (Array<String>) (defaults to: nil)
  • composite_tags (Array<String>) (defaults to: nil)
  • exclude_free_usage (Boolean) (defaults to: nil)
  • is_refundable (Boolean) (defaults to: nil)

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

  • netsuite_internal_item_id (String) (defaults to: nil)

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

  • netsuite_overage_item_id (String) (defaults to: nil)

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

  • presentation_group_key (Array<String>) (defaults to: nil)

    For USAGE products only. Groups usage line items on invoices. The superset of va

  • pricing_group_key (Array<String>) (defaults to: nil)

    For USAGE products only. If set, pricing for this product will be determined for

  • quantity_conversion (MetronomeSDK::Models::V1::Contracts::QuantityConversion, nil) (defaults to: nil)

    Optional. Only valid for USAGE products. If provided, the quantity will be conve

  • quantity_rounding (MetronomeSDK::Models::V1::Contracts::QuantityRounding, nil) (defaults to: nil)

    Optional. Only valid for USAGE products. If provided, the quantity will be round

  • starting_at (Time) (defaults to: nil)
  • tags (Array<String>) (defaults to: nil)


# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 109


Instance Attribute Details

#billable_metric_idString?

Returns:

  • (String, nil)


26
# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 26

optional :billable_metric_id, String

#composite_product_idsArray<String>?

Returns:

  • (Array<String>, nil)


31
# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 31

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

#composite_tagsArray<String>?

Returns:

  • (Array<String>, nil)


36
# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 36

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

#created_atTime

Returns:

  • (Time)


11
# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 11

required :created_at, Time

#created_byString

Returns:

  • (String)


16
# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 16

required :created_by, String

#exclude_free_usageBoolean?

Returns:

  • (Boolean, nil)


41
# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 41

optional :exclude_free_usage, MetronomeSDK::Internal::Type::Boolean

#is_refundableBoolean?

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

Returns:

  • (Boolean, nil)


47
# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 47

optional :is_refundable, MetronomeSDK::Internal::Type::Boolean

#nameString

Returns:

  • (String)


21
# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 21

required :name, String

#netsuite_internal_item_idString?

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

Returns:

  • (String, nil)


53
# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 53

optional :netsuite_internal_item_id, String

#netsuite_overage_item_idString?

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

Returns:

  • (String, nil)


59
# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 59

optional :netsuite_overage_item_id, String

#presentation_group_keyArray<String>?

For USAGE products only. Groups usage line items on invoices. The superset of values in the pricing group key and presentation group key must be set as one compound group key on the billable metric.

Returns:

  • (Array<String>, nil)


67
# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 67

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

#pricing_group_keyArray<String>?

For USAGE products only. If set, pricing for this product will be determined for each pricing_group_key value, as opposed to the product as a whole. The superset of values in the pricing group key and presentation group key must be set as one compound group key on the billable metric.

Returns:

  • (Array<String>, nil)


76
# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 76

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

#quantity_conversionMetronomeSDK::Models::V1::Contracts::QuantityConversion?

Optional. Only valid for USAGE products. If provided, the quantity will be converted using the provided conversion factor and operation. For example, if the operation is “multiply” and the conversion factor is 100, then the quantity will be multiplied by 100. This can be used in cases where data is sent in one unit and priced in another. For example, data could be sent in MB and priced in GB. In this case, the conversion factor would be 1024 and the operation would be “divide”.



88
# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 88

optional :quantity_conversion, -> { MetronomeSDK::V1::Contracts::QuantityConversion }, nil?: true

#quantity_roundingMetronomeSDK::Models::V1::Contracts::QuantityRounding?

Optional. Only valid for USAGE products. If provided, the quantity will be rounded using the provided rounding method and decimal places. For example, if the method is “round up” and the decimal places is 0, then the quantity will be rounded up to the nearest integer.



97
# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 97

optional :quantity_rounding, -> { MetronomeSDK::V1::Contracts::QuantityRounding }, nil?: true

#starting_atTime?

Returns:

  • (Time, nil)


102
# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 102

optional :starting_at, Time

#tagsArray<String>?

Returns:

  • (Array<String>, nil)


107
# File 'lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb', line 107

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