metronome-sdk 3.1.0 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +30 -0
- data/README.md +1 -1
- data/lib/metronome_sdk/internal/util.rb +32 -1
- data/lib/metronome_sdk/models/commit_rate.rb +29 -3
- data/lib/metronome_sdk/models/contract.rb +1 -9
- data/lib/metronome_sdk/models/contract_v2.rb +22 -1
- data/lib/metronome_sdk/models/overwrite_rate.rb +22 -1
- data/lib/metronome_sdk/models/payment_gate_config.rb +0 -1
- data/lib/metronome_sdk/models/payment_gate_config_v2.rb +0 -1
- data/lib/metronome_sdk/models/rate.rb +22 -1
- data/lib/metronome_sdk/models/v1/contract_amend_params.rb +23 -2
- data/lib/metronome_sdk/models/v1/contract_create_params.rb +24 -11
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +23 -1
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +21 -1
- data/lib/metronome_sdk/models/v1/customers/invoice.rb +10 -1
- data/lib/metronome_sdk/models/v1/package_archive_params.rb +24 -0
- data/lib/metronome_sdk/models/v1/package_archive_response.rb +18 -0
- data/lib/metronome_sdk/models/v1/package_create_params.rb +2719 -0
- data/lib/metronome_sdk/models/v1/package_create_response.rb +18 -0
- data/lib/metronome_sdk/models/v1/package_list_contracts_on_package_params.rb +69 -0
- data/lib/metronome_sdk/models/v1/package_list_contracts_on_package_response.rb +42 -0
- data/lib/metronome_sdk/models/v1/package_list_params.rb +52 -0
- data/lib/metronome_sdk/models/v1/package_list_response.rb +2446 -0
- data/lib/metronome_sdk/models/v1/package_retrieve_params.rb +22 -0
- data/lib/metronome_sdk/models/v1/package_retrieve_response.rb +2479 -0
- data/lib/metronome_sdk/models/v1/usage_list_with_groups_params.rb +39 -2
- data/lib/metronome_sdk/models/v1/usage_list_with_groups_response.rb +27 -3
- data/lib/metronome_sdk/models/v2/contract_edit_params.rb +23 -2
- data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +23 -1
- data/lib/metronome_sdk/resources/v1/alerts.rb +5 -0
- data/lib/metronome_sdk/resources/v1/audit_logs.rb +4 -1
- data/lib/metronome_sdk/resources/v1/billable_metrics.rb +5 -1
- data/lib/metronome_sdk/resources/v1/contracts/named_schedules.rb +2 -0
- data/lib/metronome_sdk/resources/v1/contracts/products.rb +4 -2
- data/lib/metronome_sdk/resources/v1/contracts/rate_cards/named_schedules.rb +2 -0
- data/lib/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rb +1 -0
- data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +7 -3
- data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +10 -3
- data/lib/metronome_sdk/resources/v1/contracts.rb +8 -5
- data/lib/metronome_sdk/resources/v1/credit_grants.rb +9 -4
- data/lib/metronome_sdk/resources/v1/custom_fields.rb +6 -2
- data/lib/metronome_sdk/resources/v1/customers/alerts.rb +8 -2
- data/lib/metronome_sdk/resources/v1/customers/billing_config.rb +4 -0
- data/lib/metronome_sdk/resources/v1/customers/commits.rb +1 -0
- data/lib/metronome_sdk/resources/v1/customers/credits.rb +1 -0
- data/lib/metronome_sdk/resources/v1/customers/invoices.rb +10 -3
- data/lib/metronome_sdk/resources/v1/customers/named_schedules.rb +2 -0
- data/lib/metronome_sdk/resources/v1/customers/plans.rb +8 -2
- data/lib/metronome_sdk/resources/v1/customers.rb +27 -3
- data/lib/metronome_sdk/resources/v1/dashboards.rb +4 -0
- data/lib/metronome_sdk/resources/v1/invoices.rb +4 -0
- data/lib/metronome_sdk/resources/v1/packages.rb +269 -0
- data/lib/metronome_sdk/resources/v1/plans.rb +10 -3
- data/lib/metronome_sdk/resources/v1/pricing_units.rb +4 -1
- data/lib/metronome_sdk/resources/v1/services.rb +2 -0
- data/lib/metronome_sdk/resources/v1/settings/billing_providers.rb +2 -0
- data/lib/metronome_sdk/resources/v1/settings.rb +4 -0
- data/lib/metronome_sdk/resources/v1/usage.rb +26 -13
- data/lib/metronome_sdk/resources/v1.rb +41 -0
- data/lib/metronome_sdk/version.rb +1 -1
- data/lib/metronome_sdk.rb +11 -0
- data/rbi/metronome_sdk/internal/util.rbi +21 -1
- data/rbi/metronome_sdk/models/commit_rate.rbi +43 -2
- data/rbi/metronome_sdk/models/contract.rbi +0 -11
- data/rbi/metronome_sdk/models/contract_v2.rbi +46 -0
- data/rbi/metronome_sdk/models/overwrite_rate.rbi +37 -0
- data/rbi/metronome_sdk/models/payment_gate_config.rbi +0 -5
- data/rbi/metronome_sdk/models/payment_gate_config_v2.rbi +0 -5
- data/rbi/metronome_sdk/models/rate.rbi +35 -0
- data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +46 -5
- data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +46 -16
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +46 -0
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +46 -0
- data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +13 -0
- data/rbi/metronome_sdk/models/v1/package_archive_params.rbi +48 -0
- data/rbi/metronome_sdk/models/v1/package_archive_response.rbi +31 -0
- data/rbi/metronome_sdk/models/v1/package_create_params.rbi +6362 -0
- data/rbi/metronome_sdk/models/v1/package_create_response.rbi +31 -0
- data/rbi/metronome_sdk/models/v1/package_list_contracts_on_package_params.rbi +105 -0
- data/rbi/metronome_sdk/models/v1/package_list_contracts_on_package_response.rbi +70 -0
- data/rbi/metronome_sdk/models/v1/package_list_params.rbi +123 -0
- data/rbi/metronome_sdk/models/v1/package_list_response.rbi +5796 -0
- data/rbi/metronome_sdk/models/v1/package_retrieve_params.rbi +43 -0
- data/rbi/metronome_sdk/models/v1/package_retrieve_response.rbi +5864 -0
- data/rbi/metronome_sdk/models/v1/usage_list_with_groups_params.rbi +52 -0
- data/rbi/metronome_sdk/models/v1/usage_list_with_groups_response.rbi +24 -3
- data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +46 -5
- data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +46 -0
- data/rbi/metronome_sdk/resources/v1/alerts.rbi +5 -0
- data/rbi/metronome_sdk/resources/v1/audit_logs.rbi +2 -0
- data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +3 -0
- data/rbi/metronome_sdk/resources/v1/contracts/named_schedules.rbi +2 -0
- data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +1 -0
- data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/named_schedules.rbi +2 -0
- data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rbi +1 -0
- data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +5 -0
- data/rbi/metronome_sdk/resources/v1/contracts/rate_cards.rbi +5 -0
- data/rbi/metronome_sdk/resources/v1/contracts.rbi +4 -3
- data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +3 -0
- data/rbi/metronome_sdk/resources/v1/custom_fields.rbi +3 -0
- data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +5 -0
- data/rbi/metronome_sdk/resources/v1/customers/billing_config.rbi +4 -0
- data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +1 -0
- data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +1 -0
- data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +4 -0
- data/rbi/metronome_sdk/resources/v1/customers/named_schedules.rbi +2 -0
- data/rbi/metronome_sdk/resources/v1/customers/plans.rbi +4 -0
- data/rbi/metronome_sdk/resources/v1/customers.rbi +21 -0
- data/rbi/metronome_sdk/resources/v1/dashboards.rbi +4 -0
- data/rbi/metronome_sdk/resources/v1/invoices.rbi +4 -0
- data/rbi/metronome_sdk/resources/v1/packages.rbi +268 -0
- data/rbi/metronome_sdk/resources/v1/plans.rbi +4 -0
- data/rbi/metronome_sdk/resources/v1/pricing_units.rbi +2 -0
- data/rbi/metronome_sdk/resources/v1/services.rbi +2 -0
- data/rbi/metronome_sdk/resources/v1/settings/billing_providers.rbi +2 -0
- data/rbi/metronome_sdk/resources/v1/settings.rbi +4 -0
- data/rbi/metronome_sdk/resources/v1/usage.rbi +35 -8
- data/rbi/metronome_sdk/resources/v1.rbi +40 -0
- data/sig/metronome_sdk/internal/util.rbs +10 -0
- data/sig/metronome_sdk/models/commit_rate.rbs +19 -0
- data/sig/metronome_sdk/models/contract.rbs +0 -7
- data/sig/metronome_sdk/models/contract_v2.rbs +19 -0
- data/sig/metronome_sdk/models/overwrite_rate.rbs +19 -0
- data/sig/metronome_sdk/models/payment_gate_config.rbs +1 -2
- data/sig/metronome_sdk/models/payment_gate_config_v2.rbs +1 -2
- data/sig/metronome_sdk/models/rate.rbs +19 -0
- data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +20 -2
- data/sig/metronome_sdk/models/v1/contract_create_params.rbs +20 -9
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +19 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +19 -0
- data/sig/metronome_sdk/models/v1/customers/invoice.rbs +7 -0
- data/sig/metronome_sdk/models/v1/package_archive_params.rbs +26 -0
- data/sig/metronome_sdk/models/v1/package_archive_response.rbs +15 -0
- data/sig/metronome_sdk/models/v1/package_create_params.rbs +2532 -0
- data/sig/metronome_sdk/models/v1/package_create_response.rbs +15 -0
- data/sig/metronome_sdk/models/v1/package_list_contracts_on_package_params.rbs +63 -0
- data/sig/metronome_sdk/models/v1/package_list_contracts_on_package_response.rbs +46 -0
- data/sig/metronome_sdk/models/v1/package_list_params.rbs +58 -0
- data/sig/metronome_sdk/models/v1/package_list_response.rbs +2441 -0
- data/sig/metronome_sdk/models/v1/package_retrieve_params.rbs +26 -0
- data/sig/metronome_sdk/models/v1/package_retrieve_response.rbs +2467 -0
- data/sig/metronome_sdk/models/v1/usage_list_with_groups_params.rbs +16 -0
- data/sig/metronome_sdk/models/v1/usage_list_with_groups_response.rbs +10 -3
- data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +20 -2
- data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +19 -0
- data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/contracts.rbs +0 -1
- data/sig/metronome_sdk/resources/v1/packages.rbs +63 -0
- data/sig/metronome_sdk/resources/v1/usage.rbs +2 -0
- data/sig/metronome_sdk/resources/v1.rbs +2 -0
- metadata +35 -2
|
@@ -60,6 +60,8 @@ module MetronomeSDK
|
|
|
60
60
|
sig { params(ending_before: Time).void }
|
|
61
61
|
attr_writer :ending_before
|
|
62
62
|
|
|
63
|
+
# Use group_key and group_filters instead. Use a single group key to group by.
|
|
64
|
+
# Compound group keys are not supported.
|
|
63
65
|
sig do
|
|
64
66
|
returns(
|
|
65
67
|
T.nilable(MetronomeSDK::V1::UsageListWithGroupsParams::GroupBy)
|
|
@@ -75,6 +77,32 @@ module MetronomeSDK
|
|
|
75
77
|
end
|
|
76
78
|
attr_writer :group_by
|
|
77
79
|
|
|
80
|
+
# Object mapping group keys to arrays of values to filter on. Only usage matching
|
|
81
|
+
# these filter values will be returned. Keys must be present in group_key. Omit a
|
|
82
|
+
# key or use an empty array to include all values for that dimension.
|
|
83
|
+
sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) }
|
|
84
|
+
attr_reader :group_filters
|
|
85
|
+
|
|
86
|
+
sig { params(group_filters: T::Hash[Symbol, T::Array[String]]).void }
|
|
87
|
+
attr_writer :group_filters
|
|
88
|
+
|
|
89
|
+
# Group key to group usage by. Supports both simple (single key) and compound
|
|
90
|
+
# (multiple keys) group keys.
|
|
91
|
+
#
|
|
92
|
+
# For simple group keys, provide a single key e.g. `["region"]`. For compound
|
|
93
|
+
# group keys, provide multiple keys e.g. `["region", "team"]`.
|
|
94
|
+
#
|
|
95
|
+
# For streaming metrics, the keys must be defined as a simple or compound group
|
|
96
|
+
# key on the billable metric. For compound group keys, all keys must match an
|
|
97
|
+
# exact compound group key definition — partial matches are not allowed.
|
|
98
|
+
#
|
|
99
|
+
# Cannot be used together with `group_by`.
|
|
100
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
101
|
+
attr_reader :group_key
|
|
102
|
+
|
|
103
|
+
sig { params(group_key: T::Array[String]).void }
|
|
104
|
+
attr_writer :group_key
|
|
105
|
+
|
|
78
106
|
sig { returns(T.nilable(Time)) }
|
|
79
107
|
attr_reader :starting_on
|
|
80
108
|
|
|
@@ -93,6 +121,8 @@ module MetronomeSDK
|
|
|
93
121
|
ending_before: Time,
|
|
94
122
|
group_by:
|
|
95
123
|
MetronomeSDK::V1::UsageListWithGroupsParams::GroupBy::OrHash,
|
|
124
|
+
group_filters: T::Hash[Symbol, T::Array[String]],
|
|
125
|
+
group_key: T::Array[String],
|
|
96
126
|
starting_on: Time,
|
|
97
127
|
request_options: MetronomeSDK::RequestOptions::OrHash
|
|
98
128
|
).returns(T.attached_class)
|
|
@@ -113,7 +143,25 @@ module MetronomeSDK
|
|
|
113
143
|
# are specified when this is true.
|
|
114
144
|
current_period: nil,
|
|
115
145
|
ending_before: nil,
|
|
146
|
+
# Use group_key and group_filters instead. Use a single group key to group by.
|
|
147
|
+
# Compound group keys are not supported.
|
|
116
148
|
group_by: nil,
|
|
149
|
+
# Object mapping group keys to arrays of values to filter on. Only usage matching
|
|
150
|
+
# these filter values will be returned. Keys must be present in group_key. Omit a
|
|
151
|
+
# key or use an empty array to include all values for that dimension.
|
|
152
|
+
group_filters: nil,
|
|
153
|
+
# Group key to group usage by. Supports both simple (single key) and compound
|
|
154
|
+
# (multiple keys) group keys.
|
|
155
|
+
#
|
|
156
|
+
# For simple group keys, provide a single key e.g. `["region"]`. For compound
|
|
157
|
+
# group keys, provide multiple keys e.g. `["region", "team"]`.
|
|
158
|
+
#
|
|
159
|
+
# For streaming metrics, the keys must be defined as a simple or compound group
|
|
160
|
+
# key on the billable metric. For compound group keys, all keys must match an
|
|
161
|
+
# exact compound group key definition — partial matches are not allowed.
|
|
162
|
+
#
|
|
163
|
+
# Cannot be used together with `group_by`.
|
|
164
|
+
group_key: nil,
|
|
117
165
|
starting_on: nil,
|
|
118
166
|
request_options: {}
|
|
119
167
|
)
|
|
@@ -131,6 +179,8 @@ module MetronomeSDK
|
|
|
131
179
|
current_period: T::Boolean,
|
|
132
180
|
ending_before: Time,
|
|
133
181
|
group_by: MetronomeSDK::V1::UsageListWithGroupsParams::GroupBy,
|
|
182
|
+
group_filters: T::Hash[Symbol, T::Array[String]],
|
|
183
|
+
group_key: T::Array[String],
|
|
134
184
|
starting_on: Time,
|
|
135
185
|
request_options: MetronomeSDK::RequestOptions
|
|
136
186
|
}
|
|
@@ -202,6 +252,8 @@ module MetronomeSDK
|
|
|
202
252
|
sig { params(values: T::Array[String]).void }
|
|
203
253
|
attr_writer :values
|
|
204
254
|
|
|
255
|
+
# Use group_key and group_filters instead. Use a single group key to group by.
|
|
256
|
+
# Compound group keys are not supported.
|
|
205
257
|
sig do
|
|
206
258
|
params(key: String, values: T::Array[String]).returns(
|
|
207
259
|
T.attached_class
|
|
@@ -15,9 +15,11 @@ module MetronomeSDK
|
|
|
15
15
|
sig { returns(Time) }
|
|
16
16
|
attr_accessor :ending_before
|
|
17
17
|
|
|
18
|
+
# Use `group` instead. The group key for single-key grouping.
|
|
18
19
|
sig { returns(T.nilable(String)) }
|
|
19
20
|
attr_accessor :group_key
|
|
20
21
|
|
|
22
|
+
# Use `group` instead. The group value for single-key grouping.
|
|
21
23
|
sig { returns(T.nilable(String)) }
|
|
22
24
|
attr_accessor :group_value
|
|
23
25
|
|
|
@@ -27,21 +29,39 @@ module MetronomeSDK
|
|
|
27
29
|
sig { returns(T.nilable(Float)) }
|
|
28
30
|
attr_accessor :value
|
|
29
31
|
|
|
32
|
+
# Map of group key to their value for this usage aggregate. For simple group keys,
|
|
33
|
+
# this should be a single key e.g. `{"region": "US-East"}` For compound group
|
|
34
|
+
# keys, this should contain the values of each group key that forms the compound
|
|
35
|
+
# e.g. `{"region": "US-East", "team": "engineering"}`
|
|
36
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
37
|
+
attr_reader :group
|
|
38
|
+
|
|
39
|
+
sig { params(group: T::Hash[Symbol, String]).void }
|
|
40
|
+
attr_writer :group
|
|
41
|
+
|
|
30
42
|
sig do
|
|
31
43
|
params(
|
|
32
44
|
ending_before: Time,
|
|
33
45
|
group_key: T.nilable(String),
|
|
34
46
|
group_value: T.nilable(String),
|
|
35
47
|
starting_on: Time,
|
|
36
|
-
value: T.nilable(Float)
|
|
48
|
+
value: T.nilable(Float),
|
|
49
|
+
group: T::Hash[Symbol, String]
|
|
37
50
|
).returns(T.attached_class)
|
|
38
51
|
end
|
|
39
52
|
def self.new(
|
|
40
53
|
ending_before:,
|
|
54
|
+
# Use `group` instead. The group key for single-key grouping.
|
|
41
55
|
group_key:,
|
|
56
|
+
# Use `group` instead. The group value for single-key grouping.
|
|
42
57
|
group_value:,
|
|
43
58
|
starting_on:,
|
|
44
|
-
value
|
|
59
|
+
value:,
|
|
60
|
+
# Map of group key to their value for this usage aggregate. For simple group keys,
|
|
61
|
+
# this should be a single key e.g. `{"region": "US-East"}` For compound group
|
|
62
|
+
# keys, this should contain the values of each group key that forms the compound
|
|
63
|
+
# e.g. `{"region": "US-East", "team": "engineering"}`
|
|
64
|
+
group: nil
|
|
45
65
|
)
|
|
46
66
|
end
|
|
47
67
|
|
|
@@ -52,7 +72,8 @@ module MetronomeSDK
|
|
|
52
72
|
group_key: T.nilable(String),
|
|
53
73
|
group_value: T.nilable(String),
|
|
54
74
|
starting_on: Time,
|
|
55
|
-
value: T.nilable(Float)
|
|
75
|
+
value: T.nilable(Float),
|
|
76
|
+
group: T::Hash[Symbol, String]
|
|
56
77
|
}
|
|
57
78
|
)
|
|
58
79
|
end
|
|
@@ -2355,11 +2355,6 @@ module MetronomeSDK
|
|
|
2355
2355
|
:ANROK,
|
|
2356
2356
|
MetronomeSDK::V2::ContractEditParams::AddCommit::PaymentGateConfig::TaxType::TaggedSymbol
|
|
2357
2357
|
)
|
|
2358
|
-
AVALARA =
|
|
2359
|
-
T.let(
|
|
2360
|
-
:AVALARA,
|
|
2361
|
-
MetronomeSDK::V2::ContractEditParams::AddCommit::PaymentGateConfig::TaxType::TaggedSymbol
|
|
2362
|
-
)
|
|
2363
2358
|
PRECALCULATED =
|
|
2364
2359
|
T.let(
|
|
2365
2360
|
:PRECALCULATED,
|
|
@@ -3725,6 +3720,24 @@ module MetronomeSDK
|
|
|
3725
3720
|
sig { params(is_prorated: T::Boolean).void }
|
|
3726
3721
|
attr_writer :is_prorated
|
|
3727
3722
|
|
|
3723
|
+
# Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
|
|
3724
|
+
sig do
|
|
3725
|
+
returns(
|
|
3726
|
+
T.nilable(
|
|
3727
|
+
MetronomeSDK::V2::ContractEditParams::AddOverride::OverwriteRate::MinimumConfig
|
|
3728
|
+
)
|
|
3729
|
+
)
|
|
3730
|
+
end
|
|
3731
|
+
attr_reader :minimum_config
|
|
3732
|
+
|
|
3733
|
+
sig do
|
|
3734
|
+
params(
|
|
3735
|
+
minimum_config:
|
|
3736
|
+
MetronomeSDK::V2::ContractEditParams::AddOverride::OverwriteRate::MinimumConfig::OrHash
|
|
3737
|
+
).void
|
|
3738
|
+
end
|
|
3739
|
+
attr_writer :minimum_config
|
|
3740
|
+
|
|
3728
3741
|
# Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
|
|
3729
3742
|
# this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
|
|
3730
3743
|
sig { returns(T.nilable(Float)) }
|
|
@@ -3755,6 +3768,8 @@ module MetronomeSDK
|
|
|
3755
3768
|
credit_type_id: String,
|
|
3756
3769
|
custom_rate: T::Hash[Symbol, T.anything],
|
|
3757
3770
|
is_prorated: T::Boolean,
|
|
3771
|
+
minimum_config:
|
|
3772
|
+
MetronomeSDK::V2::ContractEditParams::AddOverride::OverwriteRate::MinimumConfig::OrHash,
|
|
3758
3773
|
price: Float,
|
|
3759
3774
|
quantity: Float,
|
|
3760
3775
|
tiers: T::Array[MetronomeSDK::Tier::OrHash]
|
|
@@ -3769,6 +3784,8 @@ module MetronomeSDK
|
|
|
3769
3784
|
# Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
|
|
3770
3785
|
# set to true.
|
|
3771
3786
|
is_prorated: nil,
|
|
3787
|
+
# Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
|
|
3788
|
+
minimum_config: nil,
|
|
3772
3789
|
# Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
|
|
3773
3790
|
# this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
|
|
3774
3791
|
price: nil,
|
|
@@ -3787,6 +3804,8 @@ module MetronomeSDK
|
|
|
3787
3804
|
credit_type_id: String,
|
|
3788
3805
|
custom_rate: T::Hash[Symbol, T.anything],
|
|
3789
3806
|
is_prorated: T::Boolean,
|
|
3807
|
+
minimum_config:
|
|
3808
|
+
MetronomeSDK::V2::ContractEditParams::AddOverride::OverwriteRate::MinimumConfig,
|
|
3790
3809
|
price: Float,
|
|
3791
3810
|
quantity: Float,
|
|
3792
3811
|
tiers: T::Array[MetronomeSDK::Tier]
|
|
@@ -3849,6 +3868,28 @@ module MetronomeSDK
|
|
|
3849
3868
|
def self.values
|
|
3850
3869
|
end
|
|
3851
3870
|
end
|
|
3871
|
+
|
|
3872
|
+
class MinimumConfig < MetronomeSDK::Internal::Type::BaseModel
|
|
3873
|
+
OrHash =
|
|
3874
|
+
T.type_alias do
|
|
3875
|
+
T.any(
|
|
3876
|
+
MetronomeSDK::V2::ContractEditParams::AddOverride::OverwriteRate::MinimumConfig,
|
|
3877
|
+
MetronomeSDK::Internal::AnyHash
|
|
3878
|
+
)
|
|
3879
|
+
end
|
|
3880
|
+
|
|
3881
|
+
sig { returns(Float) }
|
|
3882
|
+
attr_accessor :minimum
|
|
3883
|
+
|
|
3884
|
+
# Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
|
|
3885
|
+
sig { params(minimum: Float).returns(T.attached_class) }
|
|
3886
|
+
def self.new(minimum:)
|
|
3887
|
+
end
|
|
3888
|
+
|
|
3889
|
+
sig { override.returns({ minimum: Float }) }
|
|
3890
|
+
def to_hash
|
|
3891
|
+
end
|
|
3892
|
+
end
|
|
3852
3893
|
end
|
|
3853
3894
|
|
|
3854
3895
|
# Indicates whether the override applies to commit rates or list rates. Can only
|
|
@@ -2017,6 +2017,24 @@ module MetronomeSDK
|
|
|
2017
2017
|
sig { params(is_prorated: T::Boolean).void }
|
|
2018
2018
|
attr_writer :is_prorated
|
|
2019
2019
|
|
|
2020
|
+
# Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
|
|
2021
|
+
sig do
|
|
2022
|
+
returns(
|
|
2023
|
+
T.nilable(
|
|
2024
|
+
MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverwriteRate::MinimumConfig
|
|
2025
|
+
)
|
|
2026
|
+
)
|
|
2027
|
+
end
|
|
2028
|
+
attr_reader :minimum_config
|
|
2029
|
+
|
|
2030
|
+
sig do
|
|
2031
|
+
params(
|
|
2032
|
+
minimum_config:
|
|
2033
|
+
MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverwriteRate::MinimumConfig::OrHash
|
|
2034
|
+
).void
|
|
2035
|
+
end
|
|
2036
|
+
attr_writer :minimum_config
|
|
2037
|
+
|
|
2020
2038
|
# Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
|
|
2021
2039
|
# this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
|
|
2022
2040
|
sig { returns(T.nilable(Float)) }
|
|
@@ -2046,6 +2064,8 @@ module MetronomeSDK
|
|
|
2046
2064
|
credit_type: MetronomeSDK::CreditTypeData::OrHash,
|
|
2047
2065
|
custom_rate: T::Hash[Symbol, T.anything],
|
|
2048
2066
|
is_prorated: T::Boolean,
|
|
2067
|
+
minimum_config:
|
|
2068
|
+
MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverwriteRate::MinimumConfig::OrHash,
|
|
2049
2069
|
price: Float,
|
|
2050
2070
|
quantity: Float,
|
|
2051
2071
|
tiers: T::Array[MetronomeSDK::Tier::OrHash]
|
|
@@ -2060,6 +2080,8 @@ module MetronomeSDK
|
|
|
2060
2080
|
# Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
|
|
2061
2081
|
# set to true.
|
|
2062
2082
|
is_prorated: nil,
|
|
2083
|
+
# Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
|
|
2084
|
+
minimum_config: nil,
|
|
2063
2085
|
# Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
|
|
2064
2086
|
# this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
|
|
2065
2087
|
price: nil,
|
|
@@ -2078,6 +2100,8 @@ module MetronomeSDK
|
|
|
2078
2100
|
credit_type: MetronomeSDK::CreditTypeData,
|
|
2079
2101
|
custom_rate: T::Hash[Symbol, T.anything],
|
|
2080
2102
|
is_prorated: T::Boolean,
|
|
2103
|
+
minimum_config:
|
|
2104
|
+
MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverwriteRate::MinimumConfig,
|
|
2081
2105
|
price: Float,
|
|
2082
2106
|
quantity: Float,
|
|
2083
2107
|
tiers: T::Array[MetronomeSDK::Tier]
|
|
@@ -2140,6 +2164,28 @@ module MetronomeSDK
|
|
|
2140
2164
|
def self.values
|
|
2141
2165
|
end
|
|
2142
2166
|
end
|
|
2167
|
+
|
|
2168
|
+
class MinimumConfig < MetronomeSDK::Internal::Type::BaseModel
|
|
2169
|
+
OrHash =
|
|
2170
|
+
T.type_alias do
|
|
2171
|
+
T.any(
|
|
2172
|
+
MetronomeSDK::Models::V2::ContractGetEditHistoryResponse::Data::AddOverride::OverwriteRate::MinimumConfig,
|
|
2173
|
+
MetronomeSDK::Internal::AnyHash
|
|
2174
|
+
)
|
|
2175
|
+
end
|
|
2176
|
+
|
|
2177
|
+
sig { returns(Float) }
|
|
2178
|
+
attr_accessor :minimum
|
|
2179
|
+
|
|
2180
|
+
# Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
|
|
2181
|
+
sig { params(minimum: Float).returns(T.attached_class) }
|
|
2182
|
+
def self.new(minimum:)
|
|
2183
|
+
end
|
|
2184
|
+
|
|
2185
|
+
sig { override.returns({ minimum: Float }) }
|
|
2186
|
+
def to_hash
|
|
2187
|
+
end
|
|
2188
|
+
end
|
|
2143
2189
|
end
|
|
2144
2190
|
|
|
2145
2191
|
class Product < MetronomeSDK::Internal::Type::BaseModel
|
|
@@ -3,6 +3,11 @@
|
|
|
3
3
|
module MetronomeSDK
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
|
+
# [Alerts](https://docs.metronome.com/connecting-metronome/alerts/) monitor
|
|
7
|
+
# customer spending, balances, and other billing factors. Use these endpoints to
|
|
8
|
+
# create, retrieve, and archive customer alerts. To view sample alert payloads by
|
|
9
|
+
# alert type, navigate
|
|
10
|
+
# [here.](https://docs.metronome.com/manage-product-access/create-manage-alerts/#webhook-notifications)
|
|
6
11
|
class Alerts
|
|
7
12
|
# Create a new threshold notification to monitor customer spending, balances, and
|
|
8
13
|
# billing metrics in real-time. Metronome's notification system provides
|
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
module MetronomeSDK
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
|
+
# [Security](https://docs.metronome.com/developer-resources/security/) endpoints
|
|
7
|
+
# allow you to retrieve security-related data.
|
|
6
8
|
class AuditLogs
|
|
7
9
|
# Get a comprehensive audit trail of all operations performed in your Metronome
|
|
8
10
|
# account, whether initiated through the API, web interface, or automated
|
|
@@ -3,6 +3,9 @@
|
|
|
3
3
|
module MetronomeSDK
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
|
+
# [Billable metrics](https://docs.metronome.com/understanding-metronome/how-metronome-works#billable-metrics)
|
|
7
|
+
# in Metronome represent the various consumption components that Metronome meters
|
|
8
|
+
# and aggregates.
|
|
6
9
|
class BillableMetrics
|
|
7
10
|
# Create billable metrics programmatically with this endpoint—an essential step in
|
|
8
11
|
# configuring your pricing and packaging in Metronome.
|
|
@@ -4,6 +4,8 @@ module MetronomeSDK
|
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
6
|
class Contracts
|
|
7
|
+
# Named schedules are used for storing custom data that can change over time.
|
|
8
|
+
# Named schedules are often used in custom pricing logic.
|
|
7
9
|
class NamedSchedules
|
|
8
10
|
# Get a named schedule for the given rate card. This endpoint's availability is
|
|
9
11
|
# dependent on your client's configuration.
|
|
@@ -4,6 +4,7 @@ module MetronomeSDK
|
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
6
|
class Contracts
|
|
7
|
+
# Products are the items that customers purchase.
|
|
7
8
|
class Products
|
|
8
9
|
# Create a new product object. Products in Metronome represent your company's
|
|
9
10
|
# individual product or service offerings. A Product can be thought of as the
|
|
@@ -5,6 +5,8 @@ module MetronomeSDK
|
|
|
5
5
|
class V1
|
|
6
6
|
class Contracts
|
|
7
7
|
class RateCards
|
|
8
|
+
# Named schedules are used for storing custom data that can change over time.
|
|
9
|
+
# Named schedules are often used in custom pricing logic.
|
|
8
10
|
class NamedSchedules
|
|
9
11
|
# Get a named schedule for the given contract. This endpoint's availability is
|
|
10
12
|
# dependent on your client's configuration.
|
|
@@ -5,6 +5,7 @@ module MetronomeSDK
|
|
|
5
5
|
class V1
|
|
6
6
|
class Contracts
|
|
7
7
|
class RateCards
|
|
8
|
+
# Rate cards are used to define default pricing for products.
|
|
8
9
|
class ProductOrders
|
|
9
10
|
# The ordering of products on a rate card determines the order in which the
|
|
10
11
|
# products will appear on customers' invoices. Use this endpoint to set the order
|
|
@@ -5,6 +5,7 @@ module MetronomeSDK
|
|
|
5
5
|
class V1
|
|
6
6
|
class Contracts
|
|
7
7
|
class RateCards
|
|
8
|
+
# Rate cards are used to define default pricing for products.
|
|
8
9
|
class Rates
|
|
9
10
|
# Understand the rate schedule at a given timestamp, optionally filtering the list
|
|
10
11
|
# of rates returned based on properties such as `product_id` and
|
|
@@ -65,6 +66,8 @@ module MetronomeSDK
|
|
|
65
66
|
custom_rate: T::Hash[Symbol, T.anything],
|
|
66
67
|
ending_before: Time,
|
|
67
68
|
is_prorated: T::Boolean,
|
|
69
|
+
minimum_config:
|
|
70
|
+
MetronomeSDK::V1::Contracts::RateCards::RateAddParams::MinimumConfig::OrHash,
|
|
68
71
|
price: Float,
|
|
69
72
|
pricing_group_values: T::Hash[Symbol, String],
|
|
70
73
|
quantity: Float,
|
|
@@ -101,6 +104,8 @@ module MetronomeSDK
|
|
|
101
104
|
# Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
|
|
102
105
|
# set to true.
|
|
103
106
|
is_prorated: nil,
|
|
107
|
+
# Only set for TIERED_PERCENTAGE or PERCENTAGE rate_type.
|
|
108
|
+
minimum_config: nil,
|
|
104
109
|
# Default price. For FLAT and SUBSCRIPTION rate_type, this must be >=0. For
|
|
105
110
|
# PERCENTAGE rate_type, this is a decimal fraction, e.g. use 0.1 for 10%; this
|
|
106
111
|
# must be >=0 and <=1.
|
|
@@ -4,7 +4,9 @@ module MetronomeSDK
|
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
6
|
class Contracts
|
|
7
|
+
# Rate cards are used to define default pricing for products.
|
|
7
8
|
class RateCards
|
|
9
|
+
# Rate cards are used to define default pricing for products.
|
|
8
10
|
sig do
|
|
9
11
|
returns(
|
|
10
12
|
MetronomeSDK::Resources::V1::Contracts::RateCards::ProductOrders
|
|
@@ -12,11 +14,14 @@ module MetronomeSDK
|
|
|
12
14
|
end
|
|
13
15
|
attr_reader :product_orders
|
|
14
16
|
|
|
17
|
+
# Rate cards are used to define default pricing for products.
|
|
15
18
|
sig do
|
|
16
19
|
returns(MetronomeSDK::Resources::V1::Contracts::RateCards::Rates)
|
|
17
20
|
end
|
|
18
21
|
attr_reader :rates
|
|
19
22
|
|
|
23
|
+
# Named schedules are used for storing custom data that can change over time.
|
|
24
|
+
# Named schedules are often used in custom pricing logic.
|
|
20
25
|
sig do
|
|
21
26
|
returns(
|
|
22
27
|
MetronomeSDK::Resources::V1::Contracts::RateCards::NamedSchedules
|
|
@@ -4,12 +4,16 @@ module MetronomeSDK
|
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
6
|
class Contracts
|
|
7
|
+
# Products are the items that customers purchase.
|
|
7
8
|
sig { returns(MetronomeSDK::Resources::V1::Contracts::Products) }
|
|
8
9
|
attr_reader :products
|
|
9
10
|
|
|
11
|
+
# Rate cards are used to define default pricing for products.
|
|
10
12
|
sig { returns(MetronomeSDK::Resources::V1::Contracts::RateCards) }
|
|
11
13
|
attr_reader :rate_cards
|
|
12
14
|
|
|
15
|
+
# Named schedules are used for storing custom data that can change over time.
|
|
16
|
+
# Named schedules are often used in custom pricing logic.
|
|
13
17
|
sig { returns(MetronomeSDK::Resources::V1::Contracts::NamedSchedules) }
|
|
14
18
|
attr_reader :named_schedules
|
|
15
19
|
|
|
@@ -167,7 +171,6 @@ module MetronomeSDK
|
|
|
167
171
|
package_id: String,
|
|
168
172
|
prepaid_balance_threshold_configuration:
|
|
169
173
|
MetronomeSDK::PrepaidBalanceThresholdConfiguration::OrHash,
|
|
170
|
-
priority: Float,
|
|
171
174
|
professional_services:
|
|
172
175
|
T::Array[
|
|
173
176
|
MetronomeSDK::V1::ContractCreateParams::ProfessionalService::OrHash
|
|
@@ -245,8 +248,6 @@ module MetronomeSDK
|
|
|
245
248
|
# and uniqueness_key are allowed.
|
|
246
249
|
package_id: nil,
|
|
247
250
|
prepaid_balance_threshold_configuration: nil,
|
|
248
|
-
# Priority of the contract.
|
|
249
|
-
priority: nil,
|
|
250
251
|
# This field's availability is dependent on your client's configuration.
|
|
251
252
|
professional_services: nil,
|
|
252
253
|
# Selects the rate card linked to the specified alias as of the contract's start
|
|
@@ -3,6 +3,9 @@
|
|
|
3
3
|
module MetronomeSDK
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
|
+
# [Credit grants](https://docs.metronome.com/invoicing/how-billing-works/manage-credits/)
|
|
7
|
+
# adjust a customer balance for prepayments, reimbursements, promotions, and so
|
|
8
|
+
# on. Use these endpoints to create, retrieve, update, and delete credit grants.
|
|
6
9
|
class CreditGrants
|
|
7
10
|
# Create a new credit grant. This is a Plans (deprecated) endpoint. New clients
|
|
8
11
|
# should implement using Contracts.
|
|
@@ -3,6 +3,9 @@
|
|
|
3
3
|
module MetronomeSDK
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
|
+
# [Custom fields](https://docs.metronome.com/integrations/custom-fields/) enable
|
|
7
|
+
# adding additional data to Metronome entities. Use these endpoints to create,
|
|
8
|
+
# retrieve, update, and delete custom fields.
|
|
6
9
|
class CustomFields
|
|
7
10
|
# Creates a new custom field key for a given entity (e.g. billable metric,
|
|
8
11
|
# contract, alert).
|
|
@@ -4,6 +4,11 @@ module MetronomeSDK
|
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
6
|
class Customers
|
|
7
|
+
# [Alerts](https://docs.metronome.com/connecting-metronome/alerts/) monitor
|
|
8
|
+
# customer spending, balances, and other billing factors. Use these endpoints to
|
|
9
|
+
# create, retrieve, and archive customer alerts. To view sample alert payloads by
|
|
10
|
+
# alert type, navigate
|
|
11
|
+
# [here.](https://docs.metronome.com/manage-product-access/create-manage-alerts/#webhook-notifications)
|
|
7
12
|
class Alerts
|
|
8
13
|
# Retrieve the real-time evaluation status for a specific threshold
|
|
9
14
|
# notification-customer pair. This endpoint provides instant visibility into
|
|
@@ -4,6 +4,10 @@ module MetronomeSDK
|
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
6
|
class Customers
|
|
7
|
+
# [Customers](https://docs.metronome.com/provisioning/create-customers/) in
|
|
8
|
+
# Metronome represent your users for all billing and reporting. Use these
|
|
9
|
+
# endpoints to create, retrieve, update, and archive customers and their billing
|
|
10
|
+
# configuration.
|
|
7
11
|
class BillingConfig
|
|
8
12
|
# Set the billing configuration for a given customer. This is a Plans (deprecated)
|
|
9
13
|
# endpoint. New clients should implement using Contracts.
|
|
@@ -4,6 +4,7 @@ module MetronomeSDK
|
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
6
|
class Customers
|
|
7
|
+
# Credits and commits are used to manage customer balances.
|
|
7
8
|
class Commits
|
|
8
9
|
# Creates customer-level commits that establish spending commitments for customers
|
|
9
10
|
# across their Metronome usage. Commits represent contracted spending obligations
|
|
@@ -4,6 +4,7 @@ module MetronomeSDK
|
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
6
|
class Customers
|
|
7
|
+
# Credits and commits are used to manage customer balances.
|
|
7
8
|
class Credits
|
|
8
9
|
# Creates customer-level credits that provide spending allowances or free credit
|
|
9
10
|
# balances for customers across their Metronome usage. Note: In most cases, you
|
|
@@ -4,6 +4,10 @@ module MetronomeSDK
|
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
6
|
class Customers
|
|
7
|
+
# [Invoices](https://docs.metronome.com/invoicing/) reflect how much a customer
|
|
8
|
+
# spent during a period, which is the basis for billing. Metronome automatically
|
|
9
|
+
# generates invoices based upon your pricing, packaging, and usage events. Use
|
|
10
|
+
# these endpoints to retrieve invoices.
|
|
7
11
|
class Invoices
|
|
8
12
|
# Retrieve detailed information for a specific invoice by its unique identifier.
|
|
9
13
|
# This endpoint returns comprehensive invoice data including line items, applied
|
|
@@ -4,6 +4,8 @@ module MetronomeSDK
|
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
6
|
class Customers
|
|
7
|
+
# Named schedules are used for storing custom data that can change over time.
|
|
8
|
+
# Named schedules are often used in custom pricing logic.
|
|
7
9
|
class NamedSchedules
|
|
8
10
|
# Get a named schedule for the given customer. This endpoint's availability is
|
|
9
11
|
# dependent on your client's configuration.
|
|
@@ -4,6 +4,10 @@ module MetronomeSDK
|
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
6
|
class Customers
|
|
7
|
+
# [Plans](https://docs.metronome.com/pricing-and-packaging/create-plans/)
|
|
8
|
+
# determine the base pricing for a customer. Use these endpoints to add a plan to
|
|
9
|
+
# a customer, end a customer plan, retrieve plans, and retrieve plan details.
|
|
10
|
+
# Create plans in the [Metronome app](https://app.metronome.com/plans).
|
|
7
11
|
class Plans
|
|
8
12
|
# List the given customer's plans in reverse-chronological order. This is a Plans
|
|
9
13
|
# (deprecated) endpoint. New clients should implement using Contracts.
|
|
@@ -4,24 +4,45 @@ module MetronomeSDK
|
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
6
|
class Customers
|
|
7
|
+
# [Alerts](https://docs.metronome.com/connecting-metronome/alerts/) monitor
|
|
8
|
+
# customer spending, balances, and other billing factors. Use these endpoints to
|
|
9
|
+
# create, retrieve, and archive customer alerts. To view sample alert payloads by
|
|
10
|
+
# alert type, navigate
|
|
11
|
+
# [here.](https://docs.metronome.com/manage-product-access/create-manage-alerts/#webhook-notifications)
|
|
7
12
|
sig { returns(MetronomeSDK::Resources::V1::Customers::Alerts) }
|
|
8
13
|
attr_reader :alerts
|
|
9
14
|
|
|
15
|
+
# [Plans](https://docs.metronome.com/pricing-and-packaging/create-plans/)
|
|
16
|
+
# determine the base pricing for a customer. Use these endpoints to add a plan to
|
|
17
|
+
# a customer, end a customer plan, retrieve plans, and retrieve plan details.
|
|
18
|
+
# Create plans in the [Metronome app](https://app.metronome.com/plans).
|
|
10
19
|
sig { returns(MetronomeSDK::Resources::V1::Customers::Plans) }
|
|
11
20
|
attr_reader :plans
|
|
12
21
|
|
|
22
|
+
# [Invoices](https://docs.metronome.com/invoicing/) reflect how much a customer
|
|
23
|
+
# spent during a period, which is the basis for billing. Metronome automatically
|
|
24
|
+
# generates invoices based upon your pricing, packaging, and usage events. Use
|
|
25
|
+
# these endpoints to retrieve invoices.
|
|
13
26
|
sig { returns(MetronomeSDK::Resources::V1::Customers::Invoices) }
|
|
14
27
|
attr_reader :invoices
|
|
15
28
|
|
|
29
|
+
# [Customers](https://docs.metronome.com/provisioning/create-customers/) in
|
|
30
|
+
# Metronome represent your users for all billing and reporting. Use these
|
|
31
|
+
# endpoints to create, retrieve, update, and archive customers and their billing
|
|
32
|
+
# configuration.
|
|
16
33
|
sig { returns(MetronomeSDK::Resources::V1::Customers::BillingConfig) }
|
|
17
34
|
attr_reader :billing_config
|
|
18
35
|
|
|
36
|
+
# Credits and commits are used to manage customer balances.
|
|
19
37
|
sig { returns(MetronomeSDK::Resources::V1::Customers::Commits) }
|
|
20
38
|
attr_reader :commits
|
|
21
39
|
|
|
40
|
+
# Credits and commits are used to manage customer balances.
|
|
22
41
|
sig { returns(MetronomeSDK::Resources::V1::Customers::Credits) }
|
|
23
42
|
attr_reader :credits
|
|
24
43
|
|
|
44
|
+
# Named schedules are used for storing custom data that can change over time.
|
|
45
|
+
# Named schedules are often used in custom pricing logic.
|
|
25
46
|
sig { returns(MetronomeSDK::Resources::V1::Customers::NamedSchedules) }
|
|
26
47
|
attr_reader :named_schedules
|
|
27
48
|
|
|
@@ -3,6 +3,10 @@
|
|
|
3
3
|
module MetronomeSDK
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
|
+
# [Customers](https://docs.metronome.com/provisioning/create-customers/) in
|
|
7
|
+
# Metronome represent your users for all billing and reporting. Use these
|
|
8
|
+
# endpoints to create, retrieve, update, and archive customers and their billing
|
|
9
|
+
# configuration.
|
|
6
10
|
class Dashboards
|
|
7
11
|
# Generate secure, embeddable dashboard URLs that allow you to seamlessly
|
|
8
12
|
# integrate Metronome's billing visualizations directly into your application.
|
|
@@ -3,6 +3,10 @@
|
|
|
3
3
|
module MetronomeSDK
|
|
4
4
|
module Resources
|
|
5
5
|
class V1
|
|
6
|
+
# [Invoices](https://docs.metronome.com/invoicing/) reflect how much a customer
|
|
7
|
+
# spent during a period, which is the basis for billing. Metronome automatically
|
|
8
|
+
# generates invoices based upon your pricing, packaging, and usage events. Use
|
|
9
|
+
# these endpoints to retrieve invoices.
|
|
6
10
|
class Invoices
|
|
7
11
|
# This endpoint regenerates a voided invoice and recalculates the invoice based on
|
|
8
12
|
# up-to-date rates, available balances, and other fees regardless of the billing
|