Class: Orb::Models::Beta::ExternalPlanIDCreatePlanVersionParams::ReplacePrice::LicenseAllocationPrice

Inherits:
Internal::Type::BaseModel
  • Object
show all
Defined in:
lib/orb/models/beta/external_plan_id_create_plan_version_params.rb,
sig/orb/models/beta/external_plan_id_create_plan_version_params.rbs

Overview

See Also:

  • Orb::Models::Beta::ExternalPlanIDCreatePlanVersionParams::ReplacePrice#license_allocation_price

Defined Under Namespace

Modules: Cadence, ModelType Classes: LicenseAllocation

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(amount:, currency:, write_off_overage: nil) ⇒ Object

Parameters:

  • amount (String) —

    The amount of credits granted per active license per cadence.

  • currency (String) —

    The currency of the license allocation.

  • write_off_overage (Boolean, nil) (defaults to: nil) —

    When True, overage beyond the allocation is written off.



# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 4084

Instance Attribute Details

#billable_metric_id ⇒ String?

The id of the billable metric for the price. Only needed if the price is usage-based.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


3988
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 3988

optional :billable_metric_id, String, nil?: true

#billed_in_advance ⇒ Boolean?

If the Price represents a fixed cost, the price will be billed in-advance if this is true, and in-arrears if this is false.

Parameters:

  • value (Boolean, nil)

Returns:

  • (Boolean, nil)


3995
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 3995

optional :billed_in_advance, Orb::Internal::Type::Boolean, nil?: true

#billing_cycle_configuration ⇒ Orb::Models::NewBillingCycleConfiguration?

For custom cadence: specifies the duration of the billing period in days or months.



4002
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 4002

optional :billing_cycle_configuration, -> { Orb::NewBillingCycleConfiguration }, nil?: true

#cadence ⇒ Symbol, Orb::Models::Beta::ExternalPlanIDCreatePlanVersionParams::ReplacePrice::LicenseAllocationPrice::Cadence

The cadence to bill for this price on.

Parameters:

  • value (Orb::Models::Beta::ExternalPlanIDCreatePlanVersionParams::ReplacePrice::LicenseAllocationPrice::cadence)

Returns:



3945
3946
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 3945

required :cadence,
enum: -> { Orb::Beta::ExternalPlanIDCreatePlanVersionParams::ReplacePrice::LicenseAllocationPrice::Cadence }

#conversion_rate ⇒ Float?

The per unit conversion rate of the price currency to the invoicing currency.

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


4008
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 4008

optional :conversion_rate, Float, nil?: true

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

The configuration for the rate of the price currency to the invoicing currency.

Parameters:

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

Returns:



4014
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 4014

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

#currency ⇒ String?

An ISO 4217 currency string, or custom pricing unit identifier, in which this price is billed.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


4021
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 4021

optional :currency, String, nil?: true

#dimensional_price_configuration ⇒ Orb::Models::NewDimensionalPriceConfiguration?

For dimensional price: specifies a price group and dimension values



4027
4028
4029
4030
4031
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 4027

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

#external_price_id ⇒ String?

An alias for the price.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


4037
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 4037

optional :external_price_id, String, nil?: true

#fixed_price_quantity ⇒ Float?

If the Price represents a fixed cost, this represents the quantity of units applied.

Parameters:

  • value (Float, nil)

Returns:

  • (Float, nil)


4044
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 4044

optional :fixed_price_quantity, Float, nil?: true

#invoice_grouping_key ⇒ String?

The property used to group this price on an invoice

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


4050
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 4050

optional :invoice_grouping_key, String, nil?: true

#invoicing_cycle_configuration ⇒ Orb::Models::NewBillingCycleConfiguration?

Within each billing cycle, specifies the cadence at which invoices are produced. If unspecified, a single invoice is produced per billing cycle.



4057
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 4057

optional :invoicing_cycle_configuration, -> { Orb::NewBillingCycleConfiguration }, nil?: true

#item_id ⇒ String

The id of the item the price will be associated with.

Parameters:

  • value (String)

Returns:

  • (String)


3952
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 3952

required :item_id, String

#license_allocations ⇒ Array<Orb::Models::Beta::ExternalPlanIDCreatePlanVersionParams::ReplacePrice::LicenseAllocationPrice::LicenseAllocation>

License allocations to associate with this price. Each entry defines a per-license credit pool granted each cadence. Requires license_type_id or license_type_configuration to be set. Usage prices draw down from these allocations only if they set the same license type.

Parameters:

  • value (::Array[Orb::Beta::ExternalPlanIDCreatePlanVersionParams::ReplacePrice::LicenseAllocationPrice::LicenseAllocation])

Returns:



3961
3962
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 3961

required :license_allocations,
-> { Orb::Internal::Type::ArrayOf[Orb::Beta::ExternalPlanIDCreatePlanVersionParams::ReplacePrice::LicenseAllocationPrice::LicenseAllocation] }

#license_type_id ⇒ String?

The ID of the license type to associate with this price. On a usage price this also marks the price as eligible to draw down from that license type's allocation; a usage price created without it is billed normally. Usage prices with a license type must use the unit model, and only draw down when their currency matches the allocation's.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


4067
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 4067

optional :license_type_id, String, nil?: true

#metadata ⇒ Hash{Symbol=>String, nil}?

User-specified key/value pairs for the resource. 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?], nil)

Returns:

  • (Hash{Symbol=>String, nil}, nil)


4075
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 4075

optional :metadata, Orb::Internal::Type::HashOf[String, nil?: true], nil?: true

#model_type ⇒ Symbol, Orb::Models::Beta::ExternalPlanIDCreatePlanVersionParams::ReplacePrice::LicenseAllocationPrice::ModelType

The pricing model type

Parameters:

  • value (Orb::Models::Beta::ExternalPlanIDCreatePlanVersionParams::ReplacePrice::LicenseAllocationPrice::model_type)

Returns:



3968
3969
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 3968

required :model_type,
enum: -> { Orb::Beta::ExternalPlanIDCreatePlanVersionParams::ReplacePrice::LicenseAllocationPrice::ModelType }

#name ⇒ String

The name of the price.

Parameters:

  • value (String)

Returns:

  • (String)


3975
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 3975

required :name, String

#reference_id ⇒ String?

A transient ID that can be used to reference this price when adding adjustments in the same API call.

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


4082
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 4082

optional :reference_id, String, nil?: true

#unit_config ⇒ Orb::Models::UnitConfig

Configuration for unit pricing

Parameters:

Returns:



3981
# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 3981

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

Class Method Details

.values ⇒ Array<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/orb/models/beta/external_plan_id_create_plan_version_params.rb', line 4144

Instance Method Details

#to_hash ⇒ {

Returns:

  • ({)


2822
# File 'sig/orb/models/beta/external_plan_id_create_plan_version_params.rbs', line 2822

def to_hash: -> {