Class: Orb::Models::Price::TieredWithMinimum

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, TieredWithMinimumConfig

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

Configuration for a single tier

Parameters:

  • minimum_amount (String)
  • tier_lower_bound (String)
  • unit_amount (String) —

    Per unit amount



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

Instance Attribute Details

#billable_metric ⇒ Orb::Models::BillableMetricTiny?

Parameters:

Returns:



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

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

#billing_cycle_configuration ⇒ Orb::Models::BillingCycleConfiguration



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



3211
3212
3213
# File 'lib/orb/models/price.rb', line 3211

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

#conversion_rate ⇒ Float?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :conversion_rate, Float, nil?: true

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

Parameters:

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

Returns:



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

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

#created_at ⇒ Time

Parameters:

  • value (Time)

Returns:

  • (Time)


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

required :created_at, Time

#credit_allocation ⇒ Orb::Models::Allocation?

Parameters:

Returns:



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

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

#currency ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :currency, String

#dimensional_price_configuration ⇒ Orb::Models::DimensionalPriceConfiguration?



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

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

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

Deprecated.


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

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

#external_price_id ⇒ String?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :external_price_id, String, nil?: true

#fixed_price_quantity ⇒ Float?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :fixed_price_quantity, Float, nil?: true

#id ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :id, String

#invoice_grouping_key ⇒ String?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configuration ⇒ Orb::Models::BillingCycleConfiguration?



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

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:



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

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

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

Returns:



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

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

#maximum ⇒ Orb::Models::Maximum?

Deprecated.

Parameters:

Returns:



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

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

#maximum_amount ⇒ String?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

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


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

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

#minimum ⇒ Orb::Models::Minimum?

Deprecated.

Parameters:

Returns:



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

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

#minimum_amount ⇒ String?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :minimum_amount, String, nil?: true

#model_type ⇒ Symbol, :tiered_with_minimum

The pricing model type

Parameters:

  • value (:tiered_with_minimum)

Returns:

  • (Symbol, :tiered_with_minimum)


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

required :model_type, const: :tiered_with_minimum

#name ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :name, String

#plan_phase_order ⇒ Integer?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


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

required :plan_phase_order, Integer, nil?: true

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

Parameters:

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

Returns:



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

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


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

required :replaces_price_id, String, nil?: true

#tiered_with_minimum_config ⇒ Orb::Models::Price::TieredWithMinimum::TieredWithMinimumConfig

Configuration for tiered_with_minimum pricing

Parameters:

  • value (Orb::Price::TieredWithMinimum::TieredWithMinimumConfig)

Returns:



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

required :tiered_with_minimum_config, -> { Orb::Price::TieredWithMinimum::TieredWithMinimumConfig }

Class Method Details

.values ⇒ Array<Symbol>

Returns:

  • (Array<Symbol>)


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

Instance Method Details

#to_hash ⇒ {

Returns:

  • ({)


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

def to_hash: -> {