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 627

Instance Attribute Details

#billable_metricOrb::Models::BillableMetricTiny?

Parameters:

Returns:



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

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

#billing_cycle_configurationOrb::Models::BillingCycleConfiguration



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



485
486
487
# File 'lib/orb/models/price.rb', line 485

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

#conversion_rateFloat?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :conversion_rate, Float, nil?: true

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

Parameters:

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

Returns:



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

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

#created_atTime

Parameters:

  • value (Time)

Returns:

  • (Time)


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

required :created_at, Time

#credit_allocationOrb::Models::Allocation?

Parameters:

Returns:



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

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

#currencyString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :currency, String

#dimensional_price_configurationOrb::Models::DimensionalPriceConfiguration?



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

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

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

Deprecated.


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

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

#external_price_idString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :external_price_id, String, nil?: true

#fixed_price_quantityFloat?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :fixed_price_quantity, Float, nil?: true

#idString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :id, String

#invoice_grouping_keyString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configurationOrb::Models::BillingCycleConfiguration?



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

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:



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

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:



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

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

#maximumOrb::Models::Maximum?

Deprecated.

Parameters:

Returns:



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

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

#maximum_amountString?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

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


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

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

#minimumOrb::Models::Minimum?

Deprecated.

Parameters:

Returns:



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

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

#minimum_amountString?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :minimum_amount, String, nil?: true

#model_typeSymbol, :tiered

The pricing model type

Parameters:

  • value (:tiered)

Returns:

  • (Symbol, :tiered)


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

required :model_type, const: :tiered

#nameString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :name, String

#plan_phase_orderInteger?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


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

required :plan_phase_order, Integer, nil?: true

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

Parameters:

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

Returns:



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

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)


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

required :replaces_price_id, String, nil?: true

#tiered_configOrb::Models::TieredConfig

Configuration for tiered pricing

Parameters:

Returns:



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

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

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


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

Instance Method Details

#to_hash{

Returns:

  • ({)


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

def to_hash: -> {