Class: MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/metronome_sdk/models/v1/contract_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: , list_rate: , product_custom_fields: , product_id: , product_name: , product_tags: , rate_card_id: , starting_at: , billing_frequency: nil, commit_rate: nil, ending_before: nil, override_rate: nil, pricing_group_values: nil) ⇒ Object

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

Parameters:

  • entitled (Boolean) (defaults to: )
  • list_rate (MetronomeSDK::Models::Rate) (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_card_id (String) (defaults to: )
  • starting_at (Time) (defaults to: )
  • billing_frequency (Symbol, MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::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)
  • override_rate (MetronomeSDK::Models::Rate) (defaults to: nil)
  • pricing_group_values (Hash{Symbol=>String}) (defaults to: nil)


23
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
124
125
126
127
128
129
130
131
132
133
134
135
136
# File 'lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb', line 23

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

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

  # @!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_card_id
  #
  #   @return [String]
  required :rate_card_id, String

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

  # @!attribute billing_frequency
  #
  #   @return [Symbol, MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data::BillingFrequency, nil]
  optional :billing_frequency,
           enum: -> { MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::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 override_rate
  #
  #   @return [MetronomeSDK::Models::Rate, nil]
  optional :override_rate, -> { MetronomeSDK::Rate }

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

  # @!method initialize(entitled:, list_rate:, product_custom_fields:, product_id:, product_name:, product_tags:, rate_card_id:, starting_at:, billing_frequency: nil, commit_rate: nil, ending_before: nil, override_rate: nil, pricing_group_values: nil)
  #   Some parameter documentations has been truncated, see
  #   {MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::Data} for more
  #   details.
  #
  #   @param entitled [Boolean]
  #
  #   @param list_rate [MetronomeSDK::Models::Rate]
  #
  #   @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_card_id [String]
  #
  #   @param starting_at [Time]
  #
  #   @param billing_frequency [Symbol, MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::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 override_rate [MetronomeSDK::Models::Rate]
  #
  #   @param pricing_group_values [Hash{Symbol=>String}]

  # @see MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::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, ...



68
69
# File 'lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb', line 68

optional :billing_frequency,
enum: -> { MetronomeSDK::Models::V1::ContractRetrieveRateScheduleResponse::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.



76
# File 'lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb', line 76

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

#ending_beforeTime?

Returns:

  • (Time, nil)


81
# File 'lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb', line 81

optional :ending_before, Time

#entitledBoolean

Returns:

  • (Boolean)


27
# File 'lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb', line 27

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

#list_rateMetronomeSDK::Models::Rate



32
# File 'lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb', line 32

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

#override_rateMetronomeSDK::Models::Rate?

Returns:



86
# File 'lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb', line 86

optional :override_rate, -> { MetronomeSDK::Rate }

#pricing_group_valuesHash{Symbol=>String}?

Returns:

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


91
# File 'lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb', line 91

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


38
# File 'lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb', line 38

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

#product_idString

Returns:

  • (String)


43
# File 'lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb', line 43

required :product_id, String

#product_nameString

Returns:

  • (String)


48
# File 'lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb', line 48

required :product_name, String

#product_tagsArray<String>

Returns:

  • (Array<String>)


53
# File 'lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb', line 53

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

#rate_card_idString

Returns:

  • (String)


58
# File 'lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb', line 58

required :rate_card_id, String

#starting_atTime

Returns:

  • (Time)


63
# File 'lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb', line 63

required :starting_at, Time