Class: Orb::Models::Price::Unit

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:, unit_config:, dimensional_price_configuration: nil, license_type: nil, model_type: :unit) ⇒ Object

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

Parameters:



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

Instance Attribute Details

#billable_metric ⇒ Orb::Models::BillableMetricTiny?

Parameters:

Returns:



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

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

#billing_cycle_configuration ⇒ Orb::Models::BillingCycleConfiguration



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



121
122
123
# File 'lib/orb/models/price.rb', line 121

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

#conversion_rate ⇒ Float?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :conversion_rate, Float, nil?: true

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

Parameters:

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

Returns:



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

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

#created_at ⇒ Time

Parameters:

  • value (Time)

Returns:

  • (Time)


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

required :created_at, Time

#credit_allocation ⇒ Orb::Models::Allocation?

Parameters:

Returns:



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

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

#currency ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :currency, String

#dimensional_price_configuration ⇒ Orb::Models::DimensionalPriceConfiguration?



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

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

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

Deprecated.


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

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

#external_price_id ⇒ String?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :external_price_id, String, nil?: true

#fixed_price_quantity ⇒ Float?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :fixed_price_quantity, Float, nil?: true

#id ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :id, String

#invoice_grouping_key ⇒ String?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configuration ⇒ Orb::Models::BillingCycleConfiguration?



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

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:



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

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

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

Returns:



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

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

#maximum ⇒ Orb::Models::Maximum?

Deprecated.

Parameters:

Returns:



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

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

#maximum_amount ⇒ String?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

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


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

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

#minimum ⇒ Orb::Models::Minimum?

Deprecated.

Parameters:

Returns:



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

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

#minimum_amount ⇒ String?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :minimum_amount, String, nil?: true

#model_type ⇒ Symbol, :unit

The pricing model type

Parameters:

  • value (:unit)

Returns:

  • (Symbol, :unit)


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

required :model_type, const: :unit

#name ⇒ String

Parameters:

  • value (String)

Returns:

  • (String)


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

required :name, String

#plan_phase_order ⇒ Integer?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


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

required :plan_phase_order, Integer, nil?: true

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

Parameters:

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

Returns:



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

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


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

required :replaces_price_id, String, nil?: true

#unit_config ⇒ Orb::Models::UnitConfig

Configuration for unit pricing

Parameters:

Returns:



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

required :unit_config, -> { Orb::UnitConfig }

Class Method Details

.values ⇒ Array<Symbol>

Returns:

  • (Array<Symbol>)


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

Instance Method Details

#to_hash ⇒ {

Returns:

  • ({)


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

def to_hash: -> {