Class: Dodopayments::Models::CreditEntitlementCreateParams

Inherits:
Internal::Type::BaseModel show all
Extended by:
Internal::Type::RequestParameters::Converter
Includes:
Internal::Type::RequestParameters
Defined in:
lib/dodopayments/models/credit_entitlement_create_params.rb

Overview

Instance Attribute Summary collapse

Attributes included from Internal::Type::RequestParameters

#request_options

Instance Method Summary collapse

Methods included from Internal::Type::RequestParameters::Converter

dump_request

Methods included from Internal::Type::RequestParameters

included

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(name:, overage_enabled:, precision:, rollover_enabled:, unit:, currency: nil, description: nil, expires_after_days: nil, max_rollover_count: nil, overage_behavior: nil, overage_limit: nil, price_per_unit: nil, rollover_percentage: nil, rollover_timeframe_count: nil, rollover_timeframe_interval: nil, request_options: {}) ⇒ Object

Some parameter documentations has been truncated, see Dodopayments::Models::CreditEntitlementCreateParams for more details.

Parameters:

  • name (String)

    Name of the credit entitlement

  • overage_enabled (Boolean)

    Whether overage charges are enabled when credits run out

  • precision (Integer)

    Precision for credit amounts (0-10 decimal places)

  • rollover_enabled (Boolean)

    Whether rollover is enabled for unused credits

  • unit (String)

    Unit of measurement for the credit (e.g., “API Calls”, “Tokens”, “Credits”)

  • currency (Symbol, Dodopayments::Models::Currency, nil) (defaults to: nil)

    Currency for pricing (required if price_per_unit is set)

  • description (String, nil) (defaults to: nil)

    Optional description of the credit entitlement

  • expires_after_days (Integer, nil) (defaults to: nil)

    Number of days after which credits expire (optional)

  • max_rollover_count (Integer, nil) (defaults to: nil)

    Maximum number of times credits can be rolled over

  • overage_behavior (Symbol, Dodopayments::Models::CbbOverageBehavior, nil) (defaults to: nil)

    Controls how overage is handled at billing cycle end.

  • overage_limit (Integer, nil) (defaults to: nil)

    Maximum overage units allowed (optional)

  • price_per_unit (String, nil) (defaults to: nil)

    Price per credit unit

  • rollover_percentage (Integer, nil) (defaults to: nil)

    Percentage of unused credits that can rollover (0-100)

  • rollover_timeframe_count (Integer, nil) (defaults to: nil)

    Count of timeframe periods for rollover limit

  • rollover_timeframe_interval (Symbol, Dodopayments::Models::TimeInterval, nil) (defaults to: nil)

    Interval type for rollover timeframe

  • request_options (Dodopayments::RequestOptions, Hash{Symbol=>Object}) (defaults to: {})


# File 'lib/dodopayments/models/credit_entitlement_create_params.rb', line 101

Instance Attribute Details

#currencySymbol, ...

Currency for pricing (required if price_per_unit is set)

Returns:



44
# File 'lib/dodopayments/models/credit_entitlement_create_params.rb', line 44

optional :currency, enum: -> { Dodopayments::Currency }, nil?: true

#descriptionString?

Optional description of the credit entitlement

Returns:

  • (String, nil)


50
# File 'lib/dodopayments/models/credit_entitlement_create_params.rb', line 50

optional :description, String, nil?: true

#expires_after_daysInteger?

Number of days after which credits expire (optional)

Returns:

  • (Integer, nil)


56
# File 'lib/dodopayments/models/credit_entitlement_create_params.rb', line 56

optional :expires_after_days, Integer, nil?: true

#max_rollover_countInteger?

Maximum number of times credits can be rolled over

Returns:

  • (Integer, nil)


62
# File 'lib/dodopayments/models/credit_entitlement_create_params.rb', line 62

optional :max_rollover_count, Integer, nil?: true

#nameString

Name of the credit entitlement

Returns:

  • (String)


14
# File 'lib/dodopayments/models/credit_entitlement_create_params.rb', line 14

required :name, String

#overage_behaviorSymbol, ...

Controls how overage is handled at billing cycle end. Defaults to forgive_at_reset if not specified.



69
# File 'lib/dodopayments/models/credit_entitlement_create_params.rb', line 69

optional :overage_behavior, enum: -> { Dodopayments::CbbOverageBehavior }, nil?: true

#overage_enabledBoolean

Whether overage charges are enabled when credits run out

Returns:

  • (Boolean)


20
# File 'lib/dodopayments/models/credit_entitlement_create_params.rb', line 20

required :overage_enabled, Dodopayments::Internal::Type::Boolean

#overage_limitInteger?

Maximum overage units allowed (optional)

Returns:

  • (Integer, nil)


75
# File 'lib/dodopayments/models/credit_entitlement_create_params.rb', line 75

optional :overage_limit, Integer, nil?: true

#precisionInteger

Precision for credit amounts (0-10 decimal places)

Returns:

  • (Integer)


26
# File 'lib/dodopayments/models/credit_entitlement_create_params.rb', line 26

required :precision, Integer

#price_per_unitString?

Price per credit unit

Returns:

  • (String, nil)


81
# File 'lib/dodopayments/models/credit_entitlement_create_params.rb', line 81

optional :price_per_unit, String, nil?: true

#rollover_enabledBoolean

Whether rollover is enabled for unused credits

Returns:

  • (Boolean)


32
# File 'lib/dodopayments/models/credit_entitlement_create_params.rb', line 32

required :rollover_enabled, Dodopayments::Internal::Type::Boolean

#rollover_percentageInteger?

Percentage of unused credits that can rollover (0-100)

Returns:

  • (Integer, nil)


87
# File 'lib/dodopayments/models/credit_entitlement_create_params.rb', line 87

optional :rollover_percentage, Integer, nil?: true

#rollover_timeframe_countInteger?

Count of timeframe periods for rollover limit

Returns:

  • (Integer, nil)


93
# File 'lib/dodopayments/models/credit_entitlement_create_params.rb', line 93

optional :rollover_timeframe_count, Integer, nil?: true

#rollover_timeframe_intervalSymbol, ...

Interval type for rollover timeframe

Returns:



99
# File 'lib/dodopayments/models/credit_entitlement_create_params.rb', line 99

optional :rollover_timeframe_interval, enum: -> { Dodopayments::TimeInterval }, nil?: true

#unitString

Unit of measurement for the credit (e.g., “API Calls”, “Tokens”, “Credits”)

Returns:

  • (String)


38
# File 'lib/dodopayments/models/credit_entitlement_create_params.rb', line 38

required :unit, String