Class: Orb::Models::Price::Matrix

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/orb/models/price.rb,
sig/orb/models/price.rbs

Defined Under Namespace

Modules: BillingMode, Cadence, PriceType Classes: CompositePriceFilter, LicenseType

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(id:, billable_metric:, billing_cycle_configuration:, billing_mode:, cadence:, composite_price_filters:, conversion_rate:, conversion_rate_config:, created_at:, credit_allocation:, currency:, discount:, external_price_id:, fixed_price_quantity:, invoice_grouping_key:, invoicing_cycle_configuration:, item:, matrix_config:, maximum:, maximum_amount:, metadata:, minimum:, minimum_amount:, name:, plan_phase_order:, price_type:, replaces_price_id:, dimensional_price_configuration: nil, license_type: nil, model_type: :matrix) ⇒ Object

Some parameter documentations has been truncated, see Orb::Models::Price::Matrix for more details.

Parameters:



# File 'lib/orb/models/price.rb', line 2159

Instance Attribute Details

#billable_metric ⇒ Orb::Models::BillableMetricTiny?

Parameters:

Returns:



1997
# File 'lib/orb/models/price.rb', line 1997

required :billable_metric, -> { Orb::BillableMetricTiny }, nil?: true

#billing_cycle_configuration ⇒ Orb::Models::BillingCycleConfiguration



2002
# File 'lib/orb/models/price.rb', line 2002

required :billing_cycle_configuration, -> { Orb::BillingCycleConfiguration }

#billing_mode ⇒ Symbol, Orb::Models::Price::Matrix::BillingMode

Parameters:

  • value (Orb::Models::Price::Matrix::billing_mode)

Returns:



2007
# File 'lib/orb/models/price.rb', line 2007

required :billing_mode, enum: -> { Orb::Price::Matrix::BillingMode }

#cadence ⇒ Symbol, Orb::Models::Price::Matrix::Cadence

Parameters:

  • value (Orb::Models::Price::Matrix::cadence)

Returns:



2012
# File 'lib/orb/models/price.rb', line 2012

required :cadence, enum: -> { Orb::Price::Matrix::Cadence }

#composite_price_filters ⇒ Array<Orb::Models::Price::Matrix::CompositePriceFilter>?

Parameters:

  • value (::Array[Orb::Price::Matrix::CompositePriceFilter], nil)

Returns:



2017
2018
2019
# File 'lib/orb/models/price.rb', line 2017

required :composite_price_filters,
-> { Orb::Internal::Type::ArrayOf[Orb::Price::Matrix::CompositePriceFilter] },
nil?: true

#conversion_rate ⇒ Float?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


2024
# File 'lib/orb/models/price.rb', line 2024

required :conversion_rate, Float, nil?: true

#conversion_rate_config ⇒ Orb::Models::UnitConversionRateConfig, ...

Parameters:

  • value (Orb::Models::conversion_rate_config, nil)

Returns:



2029
# File 'lib/orb/models/price.rb', line 2029

required :conversion_rate_config, union: -> { Orb::ConversionRateConfig }, nil?: true

#created_at ⇒ Time

Parameters:

  • value (Time)

Returns:

  • (Time)


2034
# File 'lib/orb/models/price.rb', line 2034

required :created_at, Time

#credit_allocation ⇒ Orb::Models::Allocation?

Parameters:

Returns:



2039
# File 'lib/orb/models/price.rb', line 2039

required :credit_allocation, -> { Orb::Allocation }, nil?: true

#currency ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


2044
# File 'lib/orb/models/price.rb', line 2044

required :currency, String

#dimensional_price_configuration ⇒ Orb::Models::DimensionalPriceConfiguration?



2149
# File 'lib/orb/models/price.rb', line 2149

optional :dimensional_price_configuration, -> { Orb::DimensionalPriceConfiguration }, nil?: true

#discount ⇒ Orb::Models::PercentageDiscount, ...

Deprecated.


2050
# File 'lib/orb/models/price.rb', line 2050

required :discount, union: -> { Orb::Discount }, nil?: true

#external_price_id ⇒ String?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


2055
# File 'lib/orb/models/price.rb', line 2055

required :external_price_id, String, nil?: true

#fixed_price_quantity ⇒ Float?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


2060
# File 'lib/orb/models/price.rb', line 2060

required :fixed_price_quantity, Float, nil?: true

#id ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


1992
# File 'lib/orb/models/price.rb', line 1992

required :id, String

#invoice_grouping_key ⇒ String?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


2065
# File 'lib/orb/models/price.rb', line 2065

required :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configuration ⇒ Orb::Models::BillingCycleConfiguration?



2070
# File 'lib/orb/models/price.rb', line 2070

required :invoicing_cycle_configuration, -> { Orb::BillingCycleConfiguration }, nil?: true

#item ⇒ Orb::Models::ItemSlim

A minimal representation of an Item containing only the essential identifying information.

Parameters:

Returns:



2077
# File 'lib/orb/models/price.rb', line 2077

required :item, -> { Orb::ItemSlim }

#license_type ⇒ Orb::Models::Price::Matrix::LicenseType?

The LicenseType resource represents a type of license that can be assigned to users. License types are used during billing by grouping metrics on the configured grouping key.

Parameters:

  • value (Orb::Price::Matrix::LicenseType, nil)

Returns:



2157
# File 'lib/orb/models/price.rb', line 2157

optional :license_type, -> { Orb::Price::Matrix::LicenseType }, nil?: true

#matrix_config ⇒ Orb::Models::MatrixConfig

Configuration for matrix pricing

Parameters:

Returns:



2083
# File 'lib/orb/models/price.rb', line 2083

required :matrix_config, -> { Orb::MatrixConfig }

#maximum ⇒ Orb::Models::Maximum?

Deprecated.

Parameters:

Returns:



2089
# File 'lib/orb/models/price.rb', line 2089

required :maximum, -> { Orb::Maximum }, nil?: true

#maximum_amount ⇒ String?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


2095
# File 'lib/orb/models/price.rb', line 2095

required :maximum_amount, String, nil?: true

#metadata ⇒ Hash{Symbol=>String}

User specified key-value pairs for the resource. If not present, this defaults to an empty dictionary. Individual keys can be removed by setting the value to null, and the entire metadata mapping can be cleared by setting metadata to null.

Parameters:

  • value (::Hash[Symbol, String])

Returns:

  • (Hash{Symbol=>String})


2104
# File 'lib/orb/models/price.rb', line 2104

required :metadata, Orb::Internal::Type::HashOf[String]

#minimum ⇒ Orb::Models::Minimum?

Deprecated.

Parameters:

Returns:



2110
# File 'lib/orb/models/price.rb', line 2110

required :minimum, -> { Orb::Minimum }, nil?: true

#minimum_amount ⇒ String?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


2116
# File 'lib/orb/models/price.rb', line 2116

required :minimum_amount, String, nil?: true

#model_type ⇒ Symbol, :matrix

The pricing model type

Parameters:

  • value (:matrix)

Returns:

  • (Symbol, :matrix)


2122
# File 'lib/orb/models/price.rb', line 2122

required :model_type, const: :matrix

#name ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


2127
# File 'lib/orb/models/price.rb', line 2127

required :name, String

#plan_phase_order ⇒ Integer?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


2132
# File 'lib/orb/models/price.rb', line 2132

required :plan_phase_order, Integer, nil?: true

#price_type ⇒ Symbol, Orb::Models::Price::Matrix::PriceType

Parameters:

  • value (Orb::Models::Price::Matrix::price_type)

Returns:



2137
# File 'lib/orb/models/price.rb', line 2137

required :price_type, enum: -> { Orb::Price::Matrix::PriceType }

#replaces_price_id ⇒ String?

The price id this price replaces. This price will take the place of the replaced price in plan version migrations.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


2144
# File 'lib/orb/models/price.rb', line 2144

required :replaces_price_id, String, nil?: true

Class Method Details

.values ⇒ Array<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/orb/models/price.rb', line 2230

Instance Method Details

#to_hash ⇒ {

Returns:

  • ({)


1584
# File 'sig/orb/models/price.rbs', line 1584

def to_hash: -> {