Class: MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb

Defined Under Namespace

Modules: BillingFrequency

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(entitled: , product_custom_fields: , product_id: , product_name: , product_tags: , rate: , starting_at: , billing_frequency: nil, commit_rate: nil, ending_before: nil, pricing_group_values: nil) ⇒ Object

Some parameter documentations has been truncated, see MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data for more details.

Parameters:

  • entitled (Boolean) (defaults to: )
  • product_custom_fields (Hash{Symbol=>String}) (defaults to: )

    Custom fields to be added eg. { “key1”: “value1”, “key2”: “value2” }

  • product_id (String) (defaults to: )
  • product_name (String) (defaults to: )
  • product_tags (Array<String>) (defaults to: )
  • rate (MetronomeSDK::Models::Rate) (defaults to: )
  • starting_at (Time) (defaults to: )
  • billing_frequency (Symbol, MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::BillingFrequency) (defaults to: nil)
  • commit_rate (MetronomeSDK::Models::CommitRate) (defaults to: nil)

    A distinct rate on the rate card. You can choose to use this rate rather than li

  • ending_before (Time) (defaults to: nil)
  • pricing_group_values (Hash{Symbol=>String}) (defaults to: nil)


24
25
26
27
28
29
30
31
32
33
34
35
36
37
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
112
113
114
115
116
117
118
119
120
121
122
123
# File 'lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb', line 24

class Data < MetronomeSDK::Internal::Type::BaseModel
  # @!attribute entitled
  #
  #   @return [Boolean]
  required :entitled, MetronomeSDK::Internal::Type::Boolean

  # @!attribute product_custom_fields
  #   Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
  #
  #   @return [Hash{Symbol=>String}]
  required :product_custom_fields, MetronomeSDK::Internal::Type::HashOf[String]

  # @!attribute product_id
  #
  #   @return [String]
  required :product_id, String

  # @!attribute product_name
  #
  #   @return [String]
  required :product_name, String

  # @!attribute product_tags
  #
  #   @return [Array<String>]
  required :product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]

  # @!attribute rate
  #
  #   @return [MetronomeSDK::Models::Rate]
  required :rate, -> { MetronomeSDK::Rate }

  # @!attribute starting_at
  #
  #   @return [Time]
  required :starting_at, Time

  # @!attribute billing_frequency
  #
  #   @return [Symbol, MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::BillingFrequency, nil]
  optional :billing_frequency,
           enum: -> { MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::BillingFrequency }

  # @!attribute commit_rate
  #   A distinct rate on the rate card. You can choose to use this rate rather than
  #   list rate when consuming a credit or commit.
  #
  #   @return [MetronomeSDK::Models::CommitRate, nil]
  optional :commit_rate, -> { MetronomeSDK::CommitRate }

  # @!attribute ending_before
  #
  #   @return [Time, nil]
  optional :ending_before, Time

  # @!attribute pricing_group_values
  #
  #   @return [Hash{Symbol=>String}, nil]
  optional :pricing_group_values, MetronomeSDK::Internal::Type::HashOf[String]

  # @!method initialize(entitled:, product_custom_fields:, product_id:, product_name:, product_tags:, rate:, starting_at:, billing_frequency: nil, commit_rate: nil, ending_before: nil, pricing_group_values: nil)
  #   Some parameter documentations has been truncated, see
  #   {MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data}
  #   for more details.
  #
  #   @param entitled [Boolean]
  #
  #   @param product_custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
  #
  #   @param product_id [String]
  #
  #   @param product_name [String]
  #
  #   @param product_tags [Array<String>]
  #
  #   @param rate [MetronomeSDK::Models::Rate]
  #
  #   @param starting_at [Time]
  #
  #   @param billing_frequency [Symbol, MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::BillingFrequency]
  #
  #   @param commit_rate [MetronomeSDK::Models::CommitRate] A distinct rate on the rate card. You can choose to use this rate rather than li
  #
  #   @param ending_before [Time]
  #
  #   @param pricing_group_values [Hash{Symbol=>String}]

  # @see MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data#billing_frequency
  module BillingFrequency
    extend MetronomeSDK::Internal::Type::Enum

    MONTHLY = :MONTHLY
    QUARTERLY = :QUARTERLY
    ANNUAL = :ANNUAL
    WEEKLY = :WEEKLY

    # @!method self.values
    #   @return [Array<Symbol>]
  end
end

Instance Attribute Details

#billing_frequencySymbol, ...



64
65
# File 'lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb', line 64

optional :billing_frequency,
enum: -> { MetronomeSDK::Models::V1::Contracts::RateCardRetrieveRateScheduleResponse::Data::BillingFrequency }

#commit_rateMetronomeSDK::Models::CommitRate?

A distinct rate on the rate card. You can choose to use this rate rather than list rate when consuming a credit or commit.



72
# File 'lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb', line 72

optional :commit_rate, -> { MetronomeSDK::CommitRate }

#ending_beforeTime?

Returns:

  • (Time, nil)


77
# File 'lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb', line 77

optional :ending_before, Time

#entitledBoolean

Returns:

  • (Boolean)


28
# File 'lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb', line 28

required :entitled, MetronomeSDK::Internal::Type::Boolean

#pricing_group_valuesHash{Symbol=>String}?

Returns:

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


82
# File 'lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb', line 82

optional :pricing_group_values, MetronomeSDK::Internal::Type::HashOf[String]

#product_custom_fieldsHash{Symbol=>String}

Custom fields to be added eg. { “key1”: “value1”, “key2”: “value2” }

Returns:

  • (Hash{Symbol=>String})


34
# File 'lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb', line 34

required :product_custom_fields, MetronomeSDK::Internal::Type::HashOf[String]

#product_idString

Returns:

  • (String)


39
# File 'lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb', line 39

required :product_id, String

#product_nameString

Returns:

  • (String)


44
# File 'lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb', line 44

required :product_name, String

#product_tagsArray<String>

Returns:

  • (Array<String>)


49
# File 'lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb', line 49

required :product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]

#rateMetronomeSDK::Models::Rate



54
# File 'lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb', line 54

required :rate, -> { MetronomeSDK::Rate }

#starting_atTime

Returns:

  • (Time)


59
# File 'lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb', line 59

required :starting_at, Time