Class: Orb::Models::Price::UnitWithPercent

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

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(percent:, unit_amount:) ⇒ Object

Configuration for unit_with_percent pricing

Parameters:

  • percent (String)

    What percent, out of 100, of the calculated total to charge

  • unit_amount (String)

    Rate per unit of usage



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

Instance Attribute Details

#billable_metricOrb::Models::BillableMetricTiny?

Parameters:

Returns:



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

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

#billing_cycle_configurationOrb::Models::BillingCycleConfiguration



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



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

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

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

Parameters:

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

Returns:



5292
5293
5294
# File 'lib/orb/models/price.rb', line 5292

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

#conversion_rateFloat?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :conversion_rate, Float, nil?: true

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

Parameters:

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

Returns:



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

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

#created_atTime

Parameters:

  • value (Time)

Returns:

  • (Time)


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

required :created_at, Time

#credit_allocationOrb::Models::Allocation?

Parameters:

Returns:



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

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

#currencyString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :currency, String

#dimensional_price_configurationOrb::Models::DimensionalPriceConfiguration?



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

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

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

Deprecated.


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

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

#external_price_idString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :external_price_id, String, nil?: true

#fixed_price_quantityFloat?

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


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

required :fixed_price_quantity, Float, nil?: true

#idString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :id, String

#invoice_grouping_keyString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configurationOrb::Models::BillingCycleConfiguration?



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

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:



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

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

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

Returns:



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

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

#maximumOrb::Models::Maximum?

Deprecated.

Parameters:

Returns:



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

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

#maximum_amountString?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

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


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

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

#minimumOrb::Models::Minimum?

Deprecated.

Parameters:

Returns:



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

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

#minimum_amountString?

Deprecated.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


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

required :minimum_amount, String, nil?: true

#model_typeSymbol, :unit_with_percent

The pricing model type

Parameters:

  • value (:unit_with_percent)

Returns:

  • (Symbol, :unit_with_percent)


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

required :model_type, const: :unit_with_percent

#nameString

Parameters:

  • value (String)

Returns:

  • (String)


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

required :name, String

#plan_phase_orderInteger?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


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

required :plan_phase_order, Integer, nil?: true

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

Parameters:

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

Returns:



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

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


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

required :replaces_price_id, String, nil?: true

#unit_with_percent_configOrb::Models::Price::UnitWithPercent::UnitWithPercentConfig

Configuration for unit_with_percent pricing

Parameters:

  • value (Orb::Price::UnitWithPercent::UnitWithPercentConfig)

Returns:



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

required :unit_with_percent_config, -> { Orb::Price::UnitWithPercent::UnitWithPercentConfig }

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


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

Instance Method Details

#to_hash{

Returns:

  • ({)


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

def to_hash: -> {