Class: Orb::Models::Price::MeteredAllowance

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

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(allowance_grouping_value:, consumption_grouping_value:, grouping_key:, unit_amount:, allowance_display_name: nil, consumption_display_name: nil) ⇒ Object

Some parameter documentations has been truncated, see MeteredAllowanceConfig for more details.

Configuration for metered_allowance pricing

Parameters:

  • allowance_grouping_value (String) —

    The grouping_key value whose summed quantity represents the allowance for this p

  • consumption_grouping_value (String) —

    The grouping_key value whose summed quantity represents consumption (e.g. 'downl

  • grouping_key (String) —

    Event property used to partition the metric into consumption and allowance quant

  • unit_amount (String) —

    Per-unit price applied to gross consumption and to the allowance credit.

  • allowance_display_name (String) (defaults to: nil) —

    Sub-line label for the credit row (e.g. 'Up to 3x free egress').

  • consumption_display_name (String) (defaults to: nil) —

    Sub-line label for the gross consumption row (e.g. 'bytes gotten').



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

Instance Attribute Details

#billable_metric ⇒ Orb::Models::BillableMetricTiny?

Parameters:

Returns:



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

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

#billing_cycle_configuration ⇒ Orb::Models::BillingCycleConfiguration



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



13278
13279
13280
# File 'lib/orb/models/price.rb', line 13278

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

#conversion_rate ⇒ Float?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :conversion_rate, Float, nil?: true

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

Parameters:

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

Returns:



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

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

#created_at ⇒ Time

Parameters:

  • value (Time)

Returns:

  • (Time)


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

required :created_at, Time

#credit_allocation ⇒ Orb::Models::Allocation?

Parameters:

Returns:



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

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

#currency ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :currency, String

#dimensional_price_configuration ⇒ Orb::Models::DimensionalPriceConfiguration?



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

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

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

Deprecated.


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

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

#external_price_id ⇒ String?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :external_price_id, String, nil?: true

#fixed_price_quantity ⇒ Float?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :fixed_price_quantity, Float, nil?: true

#id ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :id, String

#invoice_grouping_key ⇒ String?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configuration ⇒ Orb::Models::BillingCycleConfiguration?



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

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:



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

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

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

Returns:



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

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

#maximum ⇒ Orb::Models::Maximum?

Deprecated.

Parameters:

Returns:



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

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

#maximum_amount ⇒ String?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

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


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

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

#metered_allowance_config ⇒ Orb::Models::Price::MeteredAllowance::MeteredAllowanceConfig

Configuration for metered_allowance pricing

Parameters:

  • value (Orb::Price::MeteredAllowance::MeteredAllowanceConfig)

Returns:



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

required :metered_allowance_config, -> { Orb::Price::MeteredAllowance::MeteredAllowanceConfig }

#minimum ⇒ Orb::Models::Minimum?

Deprecated.

Parameters:

Returns:



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

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

#minimum_amount ⇒ String?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :minimum_amount, String, nil?: true

#model_type ⇒ Symbol, :metered_allowance

The pricing model type

Parameters:

  • value (:metered_allowance)

Returns:

  • (Symbol, :metered_allowance)


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

required :model_type, const: :metered_allowance

#name ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :name, String

#plan_phase_order ⇒ Integer?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


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

required :plan_phase_order, Integer, nil?: true

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

Parameters:

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

Returns:



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

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


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

required :replaces_price_id, String, nil?: true

Class Method Details

.values ⇒ Array<Symbol>

Returns:

  • (Array<Symbol>)


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

Instance Method Details

#to_hash ⇒ {

Returns:

  • ({)


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

def to_hash: -> {