Class: Orb::Models::Price::Tiered

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

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(id:, billable_metric:, billing_cycle_configuration:, billing_mode:, cadence:, composite_price_filters:, conversion_rate:, conversion_rate_config:, created_at:, credit_allocation:, currency:, discount:, external_price_id:, fixed_price_quantity:, invoice_grouping_key:, invoicing_cycle_configuration:, item:, maximum:, maximum_amount:, metadata:, minimum:, minimum_amount:, name:, plan_phase_order:, price_type:, replaces_price_id:, tiered_config:, dimensional_price_configuration: nil, license_type: nil, model_type: :tiered) ⇒ Object

Some parameter documentations has been truncated, see Orb::Models::Price::Tiered for more details.

Parameters:



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

Instance Attribute Details

#billable_metricOrb::Models::BillableMetricTiny?

Parameters:

Returns:



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

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

#billing_cycle_configurationOrb::Models::BillingCycleConfiguration



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

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

#billing_modeSymbol, Orb::Models::Price::Tiered::BillingMode

Parameters:

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

Returns:



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

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

#cadenceSymbol, Orb::Models::Price::Tiered::Cadence

Parameters:

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

Returns:



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

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

#composite_price_filtersArray<Orb::Models::Price::Tiered::CompositePriceFilter>?

Parameters:

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

Returns:



483
484
485
# File 'lib/orb/models/price.rb', line 483

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

#conversion_rateFloat?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :conversion_rate, Float, nil?: true

#conversion_rate_configOrb::Models::UnitConversionRateConfig, ...

Parameters:

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

Returns:



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

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

#created_atTime

Parameters:

  • value (Time)

Returns:

  • (Time)


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

required :created_at, Time

#credit_allocationOrb::Models::Allocation?

Parameters:

Returns:



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

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

#currencyString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :currency, String

#dimensional_price_configurationOrb::Models::DimensionalPriceConfiguration?



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

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

#discountOrb::Models::PercentageDiscount, ...

Deprecated.


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

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

#external_price_idString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :external_price_id, String, nil?: true

#fixed_price_quantityFloat?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :fixed_price_quantity, Float, nil?: true

#idString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :id, String

#invoice_grouping_keyString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configurationOrb::Models::BillingCycleConfiguration?



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

required :invoicing_cycle_configuration, -> { Orb::BillingCycleConfiguration }, nil?: true

#itemOrb::Models::ItemSlim

A minimal representation of an Item containing only the essential identifying information.

Parameters:

Returns:



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

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

#license_typeOrb::Models::Price::Tiered::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::Tiered::LicenseType, nil)

Returns:



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

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

#maximumOrb::Models::Maximum?

Deprecated.

Parameters:

Returns:



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

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

#maximum_amountString?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :maximum_amount, String, nil?: true

#metadataHash{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})


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

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

#minimumOrb::Models::Minimum?

Deprecated.

Parameters:

Returns:



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

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

#minimum_amountString?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :minimum_amount, String, nil?: true

#model_typeSymbol, :tiered

The pricing model type

Parameters:

  • value (:tiered)

Returns:

  • (Symbol, :tiered)


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

required :model_type, const: :tiered

#nameString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :name, String

#plan_phase_orderInteger?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


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

required :plan_phase_order, Integer, nil?: true

#price_typeSymbol, Orb::Models::Price::Tiered::PriceType

Parameters:

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

Returns:



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

required :price_type, enum: -> { Orb::Price::Tiered::PriceType }

#replaces_price_idString?

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)


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

required :replaces_price_id, String, nil?: true

#tiered_configOrb::Models::TieredConfig

Configuration for tiered pricing

Parameters:

Returns:



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

required :tiered_config, -> { Orb::TieredConfig }

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


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

Instance Method Details

#to_hash{

Returns:

  • ({)


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

def to_hash: -> {