Class: Orb::Models::Price::TieredWithProration

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

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 tiered with proration tier

Parameters:

  • tier_lower_bound (String) —

    Inclusive tier starting value

  • unit_amount (String) —

    Amount per unit



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

Instance Attribute Details

#billable_metric ⇒ Orb::Models::BillableMetricTiny?

Parameters:

Returns:



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

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

#billing_cycle_configuration ⇒ Orb::Models::BillingCycleConfiguration



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



6982
6983
6984
# File 'lib/orb/models/price.rb', line 6982

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

#conversion_rate ⇒ Float?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :conversion_rate, Float, nil?: true

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

Parameters:

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

Returns:



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

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

#created_at ⇒ Time

Parameters:

  • value (Time)

Returns:

  • (Time)


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

required :created_at, Time

#credit_allocation ⇒ Orb::Models::Allocation?

Parameters:

Returns:



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

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

#currency ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :currency, String

#dimensional_price_configuration ⇒ Orb::Models::DimensionalPriceConfiguration?



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

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

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

Deprecated.


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

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

#external_price_id ⇒ String?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :external_price_id, String, nil?: true

#fixed_price_quantity ⇒ Float?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :fixed_price_quantity, Float, nil?: true

#id ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :id, String

#invoice_grouping_key ⇒ String?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configuration ⇒ Orb::Models::BillingCycleConfiguration?



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

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:



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

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

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

Returns:



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

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

#maximum ⇒ Orb::Models::Maximum?

Deprecated.

Parameters:

Returns:



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

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

#maximum_amount ⇒ String?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

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


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

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

#minimum ⇒ Orb::Models::Minimum?

Deprecated.

Parameters:

Returns:



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

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

#minimum_amount ⇒ String?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :minimum_amount, String, nil?: true

#model_type ⇒ Symbol, :tiered_with_proration

The pricing model type

Parameters:

  • value (:tiered_with_proration)

Returns:

  • (Symbol, :tiered_with_proration)


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

required :model_type, const: :tiered_with_proration

#name ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :name, String

#plan_phase_order ⇒ Integer?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


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

required :plan_phase_order, Integer, nil?: true

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

Parameters:

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

Returns:



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

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


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

required :replaces_price_id, String, nil?: true

#tiered_with_proration_config ⇒ Orb::Models::Price::TieredWithProration::TieredWithProrationConfig

Configuration for tiered_with_proration pricing

Parameters:

  • value (Orb::Price::TieredWithProration::TieredWithProrationConfig)

Returns:



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

required :tiered_with_proration_config, -> { Orb::Price::TieredWithProration::TieredWithProrationConfig }

Class Method Details

.values ⇒ Array<Symbol>

Returns:

  • (Array<Symbol>)


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

Instance Method Details

#to_hash ⇒ {

Returns:

  • ({)


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

def to_hash: -> {