Class: Orb::Models::Price::GroupedTieredPackage

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, GroupedTieredPackageConfig, 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(per_unit:, tier_lower_bound:) ⇒ Object

Configuration for a single tier

Parameters:

  • per_unit (String) —

    Per package

  • tier_lower_bound (String)


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

Instance Attribute Details

#billable_metric ⇒ Orb::Models::BillableMetricTiny?

Parameters:

Returns:



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

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

#billing_cycle_configuration ⇒ Orb::Models::BillingCycleConfiguration



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



10261
10262
10263
# File 'lib/orb/models/price.rb', line 10261

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

#conversion_rate ⇒ Float?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :conversion_rate, Float, nil?: true

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

Parameters:

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

Returns:



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

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

#created_at ⇒ Time

Parameters:

  • value (Time)

Returns:

  • (Time)


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

required :created_at, Time

#credit_allocation ⇒ Orb::Models::Allocation?

Parameters:

Returns:



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

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

#currency ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :currency, String

#dimensional_price_configuration ⇒ Orb::Models::DimensionalPriceConfiguration?



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

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

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

Deprecated.


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

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

#external_price_id ⇒ String?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :external_price_id, String, nil?: true

#fixed_price_quantity ⇒ Float?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :fixed_price_quantity, Float, nil?: true

#grouped_tiered_package_config ⇒ Orb::Models::Price::GroupedTieredPackage::GroupedTieredPackageConfig

Configuration for grouped_tiered_package pricing

Parameters:

  • value (Orb::Price::GroupedTieredPackage::GroupedTieredPackageConfig)

Returns:



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

required :grouped_tiered_package_config,
-> { Orb::Price::GroupedTieredPackage::GroupedTieredPackageConfig }

#id ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :id, String

#invoice_grouping_key ⇒ String?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configuration ⇒ Orb::Models::BillingCycleConfiguration?



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

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:



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

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

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

Returns:



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

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

#maximum ⇒ Orb::Models::Maximum?

Deprecated.

Parameters:

Returns:



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

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

#maximum_amount ⇒ String?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

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


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

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

#minimum ⇒ Orb::Models::Minimum?

Deprecated.

Parameters:

Returns:



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

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

#minimum_amount ⇒ String?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :minimum_amount, String, nil?: true

#model_type ⇒ Symbol, :grouped_tiered_package

The pricing model type

Parameters:

  • value (:grouped_tiered_package)

Returns:

  • (Symbol, :grouped_tiered_package)


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

required :model_type, const: :grouped_tiered_package

#name ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :name, String

#plan_phase_order ⇒ Integer?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


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

required :plan_phase_order, Integer, nil?: true

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

Parameters:

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

Returns:



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

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


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

required :replaces_price_id, String, nil?: true

Class Method Details

.values ⇒ Array<Symbol>

Returns:

  • (Array<Symbol>)


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

Instance Method Details

#to_hash ⇒ {

Returns:

  • ({)


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

def to_hash: -> {