Class: Orb::Models::Price::GroupedAllocation

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, GroupedAllocationConfig, 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(allocation:, grouping_key:, overage_unit_rate:) ⇒ Object

Configuration for grouped_allocation pricing

Parameters:

  • allocation (String)

    Usage allocation per group

  • grouping_key (String)

    How to determine the groups that should each be allocated some quantity

  • overage_unit_rate (String)

    Unit rate for post-allocation



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

Instance Attribute Details

#billable_metricOrb::Models::BillableMetricTiny?

Parameters:

Returns:



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

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

#billing_cycle_configurationOrb::Models::BillingCycleConfiguration



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



6888
6889
6890
# File 'lib/orb/models/price.rb', line 6888

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

#conversion_rateFloat?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :conversion_rate, Float, nil?: true

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

Parameters:

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

Returns:



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

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

#created_atTime

Parameters:

  • value (Time)

Returns:

  • (Time)


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

required :created_at, Time

#credit_allocationOrb::Models::Allocation?

Parameters:

Returns:



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

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

#currencyString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :currency, String

#dimensional_price_configurationOrb::Models::DimensionalPriceConfiguration?



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

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

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

Deprecated.


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

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

#external_price_idString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :external_price_id, String, nil?: true

#fixed_price_quantityFloat?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :fixed_price_quantity, Float, nil?: true

#grouped_allocation_configOrb::Models::Price::GroupedAllocation::GroupedAllocationConfig

Configuration for grouped_allocation pricing

Parameters:

  • value (Orb::Price::GroupedAllocation::GroupedAllocationConfig)

Returns:



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

required :grouped_allocation_config, -> { Orb::Price::GroupedAllocation::GroupedAllocationConfig }

#idString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :id, String

#invoice_grouping_keyString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configurationOrb::Models::BillingCycleConfiguration?



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

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:



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

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

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

Returns:



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

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

#maximumOrb::Models::Maximum?

Deprecated.

Parameters:

Returns:



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

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

#maximum_amountString?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

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


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

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

#minimumOrb::Models::Minimum?

Deprecated.

Parameters:

Returns:



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

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

#minimum_amountString?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :minimum_amount, String, nil?: true

#model_typeSymbol, :grouped_allocation

The pricing model type

Parameters:

  • value (:grouped_allocation)

Returns:

  • (Symbol, :grouped_allocation)


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

required :model_type, const: :grouped_allocation

#nameString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :name, String

#plan_phase_orderInteger?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


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

required :plan_phase_order, Integer, nil?: true

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

Parameters:

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

Returns:



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

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


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

required :replaces_price_id, String, nil?: true

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


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

Instance Method Details

#to_hash{

Returns:

  • ({)


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

def to_hash: -> {