Class: Stigg::Models::V1::Credits::ConsumptionConsumeAsyncParams::Consumption

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/stigg/models/v1/credits/consumption_consume_async_params.rb,
sig/stigg/models/v1/credits/consumption_consume_async_params.rbs

Defined Under Namespace

Modules: Dimension

Instance Attribute 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(consumptions:, x_account_id: nil, x_environment_id: nil, request_options: {}) ⇒ Object

Parameters:



38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
# File 'lib/stigg/models/v1/credits/consumption_consume_async_params.rb', line 38

class Consumption < Stigg::Internal::Type::BaseModel
  # @!attribute amount
  #   The amount of credits to consume
  #
  #   @return [Float]
  required :amount, Float

  # @!attribute currency_id
  #   The credit currency to consume from (required)
  #
  #   @return [String]
  required :currency_id, String, api_name: :currencyId

  # @!attribute customer_id
  #   The customer to consume credits from (required)
  #
  #   @return [String]
  required :customer_id, String, api_name: :customerId

  # @!attribute idempotency_key
  #   A unique key used to deduplicate the consumption (required)
  #
  #   @return [String]
  required :idempotency_key, String, api_name: :idempotencyKey

  # @!attribute created_at
  #   Optional timestamp the consumption is attributed to
  #
  #   @return [Time, nil]
  optional :created_at, Time, api_name: :createdAt

  # @!attribute dimensions
  #   Optional dimensions describing the consumption
  #
  #   @return [Hash{Symbol=>String, Float, Boolean}, nil]
  optional :dimensions,
           -> { Stigg::Internal::Type::HashOf[union: Stigg::V1::Credits::ConsumptionConsumeAsyncParams::Consumption::Dimension] }

  # @!attribute resource_id
  #   Optional resource the consumption is attributed to
  #
  #   @return [String, nil]
  optional :resource_id, String, api_name: :resourceId

  # @!method initialize(amount:, currency_id:, customer_id:, idempotency_key:, created_at: nil, dimensions: nil, resource_id: nil)
  #   Request body for consuming credits directly from a wallet
  #
  #   @param amount [Float] The amount of credits to consume
  #
  #   @param currency_id [String] The credit currency to consume from (required)
  #
  #   @param customer_id [String] The customer to consume credits from (required)
  #
  #   @param idempotency_key [String] A unique key used to deduplicate the consumption (required)
  #
  #   @param created_at [Time] Optional timestamp the consumption is attributed to
  #
  #   @param dimensions [Hash{Symbol=>String, Float, Boolean}] Optional dimensions describing the consumption
  #
  #   @param resource_id [String] Optional resource the consumption is attributed to

  module Dimension
    extend Stigg::Internal::Type::Union

    variant String

    variant Float

    variant Stigg::Internal::Type::Boolean

    # @!method self.variants
    #   @return [Array(String, Float, Boolean)]
  end
end

Instance Attribute Details

#amountFloat

The amount of credits to consume

Parameters:

  • value (Float)

Returns:

  • (Float)


43
# File 'lib/stigg/models/v1/credits/consumption_consume_async_params.rb', line 43

required :amount, Float

#created_atTime?

Optional timestamp the consumption is attributed to

Parameters:

  • (Time)

Returns:

  • (Time, nil)


67
# File 'lib/stigg/models/v1/credits/consumption_consume_async_params.rb', line 67

optional :created_at, Time, api_name: :createdAt

#currency_idString

The credit currency to consume from (required)

Parameters:

  • value (String)

Returns:

  • (String)


49
# File 'lib/stigg/models/v1/credits/consumption_consume_async_params.rb', line 49

required :currency_id, String, api_name: :currencyId

#customer_idString

The customer to consume credits from (required)

Parameters:

  • value (String)

Returns:

  • (String)


55
# File 'lib/stigg/models/v1/credits/consumption_consume_async_params.rb', line 55

required :customer_id, String, api_name: :customerId

#dimensionsHash{Symbol=>String, Float, Boolean}?

Optional dimensions describing the consumption

Returns:

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


73
74
# File 'lib/stigg/models/v1/credits/consumption_consume_async_params.rb', line 73

optional :dimensions,
-> { Stigg::Internal::Type::HashOf[union: Stigg::V1::Credits::ConsumptionConsumeAsyncParams::Consumption::Dimension] }

#idempotency_keyString

A unique key used to deduplicate the consumption (required)

Parameters:

  • value (String)

Returns:

  • (String)


61
# File 'lib/stigg/models/v1/credits/consumption_consume_async_params.rb', line 61

required :idempotency_key, String, api_name: :idempotencyKey

#resource_idString?

Optional resource the consumption is attributed to

Parameters:

  • (String)

Returns:

  • (String, nil)


80
# File 'lib/stigg/models/v1/credits/consumption_consume_async_params.rb', line 80

optional :resource_id, String, api_name: :resourceId

Instance Method Details

#to_hash{

Returns:

  • ({)


85
# File 'sig/stigg/models/v1/credits/consumption_consume_async_params.rbs', line 85

def to_hash: -> {