Class: Orb::Models::Price::GroupedTiered

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, GroupedTieredConfig, 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(tier_lower_bound:, unit_amount:) ⇒ Object

Configuration for a single tier

Parameters:

  • tier_lower_bound (String)
  • unit_amount (String) —

    Per unit amount



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


Instance Attribute Details

#billable_metric ⇒ Orb::Models::BillableMetricTiny?

Parameters:

Returns:



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

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

#billing_cycle_configuration ⇒ Orb::Models::BillingCycleConfiguration



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



3640
3641
3642
# File 'lib/orb/models/price.rb', line 3640

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

#conversion_rate ⇒ Float?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :conversion_rate, Float, nil?: true

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

Parameters:

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

Returns:



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

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

#created_at ⇒ Time

Parameters:

  • value (Time)

Returns:

  • (Time)


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

required :created_at, Time

#credit_allocation ⇒ Orb::Models::Allocation?

Parameters:

Returns:



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

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

#currency ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :currency, String

#dimensional_price_configuration ⇒ Orb::Models::DimensionalPriceConfiguration?



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

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

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

Deprecated.


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

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

#external_price_id ⇒ String?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :external_price_id, String, nil?: true

#fixed_price_quantity ⇒ Float?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :fixed_price_quantity, Float, nil?: true

#grouped_tiered_config ⇒ Orb::Models::Price::GroupedTiered::GroupedTieredConfig

Configuration for grouped_tiered pricing

Parameters:

  • value (Orb::Price::GroupedTiered::GroupedTieredConfig)

Returns:



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

required :grouped_tiered_config, -> { Orb::Price::GroupedTiered::GroupedTieredConfig }

#id ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :id, String

#invoice_grouping_key ⇒ String?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configuration ⇒ Orb::Models::BillingCycleConfiguration?



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

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:



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

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

#license_type ⇒ Orb::Models::Price::GroupedTiered::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::GroupedTiered::LicenseType, nil)

Returns:



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

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

#maximum ⇒ Orb::Models::Maximum?

Deprecated.

Parameters:

Returns:



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

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

#maximum_amount ⇒ String?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

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})


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

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

#minimum ⇒ Orb::Models::Minimum?

Deprecated.

Parameters:

Returns:



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

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

#minimum_amount ⇒ String?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :minimum_amount, String, nil?: true

#model_type ⇒ Symbol, :grouped_tiered

The pricing model type

Parameters:

  • value (:grouped_tiered)

Returns:

  • (Symbol, :grouped_tiered)


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

required :model_type, const: :grouped_tiered

#name ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :name, String

#plan_phase_order ⇒ Integer?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


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

required :plan_phase_order, Integer, nil?: true

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

Parameters:

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

Returns:



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

required :price_type, enum: -> { Orb::Price::GroupedTiered::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)


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

required :replaces_price_id, String, nil?: true

Class Method Details

.values ⇒ Array<Symbol>

Returns:

  • (Array<Symbol>)


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


Instance Method Details

#to_hash ⇒ {

Returns:

  • ({)


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

def to_hash: -> {