metronome-sdk 3.4.0 → 3.6.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.
Files changed (95) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +84 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/client.rb +15 -1
  5. data/lib/metronome_sdk/internal/transport/base_client.rb +2 -0
  6. data/lib/metronome_sdk/internal/util.rb +22 -7
  7. data/lib/metronome_sdk/models/base_threshold_commit.rb +10 -1
  8. data/lib/metronome_sdk/models/contract_v2.rb +443 -15
  9. data/lib/metronome_sdk/models/credit.rb +74 -4
  10. data/lib/metronome_sdk/models/override.rb +9 -8
  11. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration.rb +27 -1
  12. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +28 -2
  13. data/lib/metronome_sdk/models/spend_threshold_configuration.rb +26 -1
  14. data/lib/metronome_sdk/models/spend_threshold_configuration_v2.rb +30 -4
  15. data/lib/metronome_sdk/models/update_base_threshold_commit.rb +11 -1
  16. data/lib/metronome_sdk/models/v1/alert_create_params.rb +1 -0
  17. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +2 -189
  18. data/lib/metronome_sdk/models/v1/contract_create_params.rb +3 -191
  19. data/lib/metronome_sdk/models/v1/contract_list_seat_balances_params.rb +119 -0
  20. data/lib/metronome_sdk/models/v1/contract_list_seat_balances_response.rb +315 -0
  21. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +31 -1
  22. data/lib/metronome_sdk/models/v1/contracts/product_update_params.rb +31 -1
  23. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +1 -0
  24. data/lib/metronome_sdk/models/v1/customers/invoice.rb +8 -1
  25. data/lib/metronome_sdk/models/v1/customers/invoice_list_params.rb +29 -1
  26. data/lib/metronome_sdk/models/v1/package_create_params.rb +2 -30
  27. data/lib/metronome_sdk/models/v1/package_list_response.rb +28 -9
  28. data/lib/metronome_sdk/models/v1/package_retrieve_response.rb +29 -9
  29. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +67 -20
  30. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +496 -15
  31. data/lib/metronome_sdk/resources/v1/contracts/products.rb +6 -2
  32. data/lib/metronome_sdk/resources/v1/contracts.rb +76 -2
  33. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +5 -1
  34. data/lib/metronome_sdk/resources/v1/packages.rb +1 -3
  35. data/lib/metronome_sdk/version.rb +1 -1
  36. data/lib/metronome_sdk.rb +3 -1
  37. data/rbi/metronome_sdk/internal/util.rbi +8 -0
  38. data/rbi/metronome_sdk/models/base_threshold_commit.rbi +24 -5
  39. data/rbi/metronome_sdk/models/contract_v2.rbi +916 -19
  40. data/rbi/metronome_sdk/models/credit.rbi +139 -3
  41. data/rbi/metronome_sdk/models/override.rbi +9 -12
  42. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration.rbi +54 -3
  43. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +55 -4
  44. data/rbi/metronome_sdk/models/spend_threshold_configuration.rbi +54 -3
  45. data/rbi/metronome_sdk/models/spend_threshold_configuration_v2.rbi +58 -9
  46. data/rbi/metronome_sdk/models/update_base_threshold_commit.rbi +22 -4
  47. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +5 -0
  48. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +3 -416
  49. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +5 -418
  50. data/rbi/metronome_sdk/models/v1/contract_list_seat_balances_params.rbi +179 -0
  51. data/rbi/metronome_sdk/models/v1/contract_list_seat_balances_response.rbi +714 -0
  52. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +74 -0
  53. data/rbi/metronome_sdk/models/v1/contracts/product_update_params.rbi +74 -0
  54. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +5 -0
  55. data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +9 -0
  56. data/rbi/metronome_sdk/models/v1/customers/invoice_list_params.rbi +75 -0
  57. data/rbi/metronome_sdk/models/v1/package_create_params.rbi +3 -76
  58. data/rbi/metronome_sdk/models/v1/package_list_response.rbi +72 -15
  59. data/rbi/metronome_sdk/models/v1/package_retrieve_response.rbi +72 -17
  60. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +133 -28
  61. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1174 -145
  62. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +18 -0
  63. data/rbi/metronome_sdk/resources/v1/contracts.rbi +88 -3
  64. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +7 -0
  65. data/rbi/metronome_sdk/resources/v1/packages.rbi +0 -3
  66. data/sig/metronome_sdk/internal/util.rbs +4 -0
  67. data/sig/metronome_sdk/models/base_threshold_commit.rbs +13 -3
  68. data/sig/metronome_sdk/models/contract_v2.rbs +401 -16
  69. data/sig/metronome_sdk/models/credit.rbs +69 -0
  70. data/sig/metronome_sdk/models/override.rbs +8 -10
  71. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration.rbs +22 -3
  72. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbs +23 -4
  73. data/sig/metronome_sdk/models/spend_threshold_configuration.rbs +22 -3
  74. data/sig/metronome_sdk/models/spend_threshold_configuration_v2.rbs +26 -7
  75. data/sig/metronome_sdk/models/update_base_threshold_commit.rbs +15 -2
  76. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +3 -1
  77. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +3 -147
  78. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +3 -147
  79. data/sig/metronome_sdk/models/v1/contract_list_seat_balances_params.rbs +96 -0
  80. data/sig/metronome_sdk/models/v1/contract_list_seat_balances_response.rbs +299 -0
  81. data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +20 -0
  82. data/sig/metronome_sdk/models/v1/contracts/product_update_params.rbs +20 -0
  83. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +3 -1
  84. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +7 -0
  85. data/sig/metronome_sdk/models/v1/customers/invoice_list_params.rbs +29 -1
  86. data/sig/metronome_sdk/models/v1/package_create_params.rbs +3 -30
  87. data/sig/metronome_sdk/models/v1/package_list_response.rbs +33 -15
  88. data/sig/metronome_sdk/models/v1/package_retrieve_response.rbs +33 -15
  89. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +33 -10
  90. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +409 -19
  91. data/sig/metronome_sdk/resources/v1/contracts/products.rbs +2 -0
  92. data/sig/metronome_sdk/resources/v1/contracts.rbs +15 -0
  93. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +2 -0
  94. data/sig/metronome_sdk/resources/v1/packages.rbs +0 -1
  95. metadata +8 -2
@@ -18,6 +18,7 @@ module MetronomeSDK
18
18
  pricing_group_key: ::Array[String],
19
19
  quantity_conversion: MetronomeSDK::V1::Contracts::QuantityConversion?,
20
20
  quantity_rounding: MetronomeSDK::V1::Contracts::QuantityRounding?,
21
+ sql_breakdown_granularity: MetronomeSDK::Models::V1::Contracts::ProductUpdateParams::sql_breakdown_granularity,
21
22
  tags: ::Array[String]
22
23
  }
23
24
  & MetronomeSDK::Internal::Type::request_parameters
@@ -74,6 +75,12 @@ module MetronomeSDK
74
75
 
75
76
  attr_accessor quantity_rounding: MetronomeSDK::V1::Contracts::QuantityRounding?
76
77
 
78
+ attr_reader sql_breakdown_granularity: MetronomeSDK::Models::V1::Contracts::ProductUpdateParams::sql_breakdown_granularity?
79
+
80
+ def sql_breakdown_granularity=: (
81
+ MetronomeSDK::Models::V1::Contracts::ProductUpdateParams::sql_breakdown_granularity
82
+ ) -> MetronomeSDK::Models::V1::Contracts::ProductUpdateParams::sql_breakdown_granularity
83
+
77
84
  attr_reader tags: ::Array[String]?
78
85
 
79
86
  def tags=: (::Array[String]) -> ::Array[String]
@@ -93,6 +100,7 @@ module MetronomeSDK
93
100
  ?pricing_group_key: ::Array[String],
94
101
  ?quantity_conversion: MetronomeSDK::V1::Contracts::QuantityConversion?,
95
102
  ?quantity_rounding: MetronomeSDK::V1::Contracts::QuantityRounding?,
103
+ ?sql_breakdown_granularity: MetronomeSDK::Models::V1::Contracts::ProductUpdateParams::sql_breakdown_granularity,
96
104
  ?tags: ::Array[String],
97
105
  ?request_options: MetronomeSDK::request_opts
98
106
  ) -> void
@@ -112,9 +120,21 @@ module MetronomeSDK
112
120
  pricing_group_key: ::Array[String],
113
121
  quantity_conversion: MetronomeSDK::V1::Contracts::QuantityConversion?,
114
122
  quantity_rounding: MetronomeSDK::V1::Contracts::QuantityRounding?,
123
+ sql_breakdown_granularity: MetronomeSDK::Models::V1::Contracts::ProductUpdateParams::sql_breakdown_granularity,
115
124
  tags: ::Array[String],
116
125
  request_options: MetronomeSDK::RequestOptions
117
126
  }
127
+
128
+ type sql_breakdown_granularity = :HOUR | :SERVICE_PERIOD
129
+
130
+ module SqlBreakdownGranularity
131
+ extend MetronomeSDK::Internal::Type::Enum
132
+
133
+ HOUR: :HOUR
134
+ SERVICE_PERIOD: :SERVICE_PERIOD
135
+
136
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::Contracts::ProductUpdateParams::sql_breakdown_granularity]
137
+ end
118
138
  end
119
139
  end
120
140
  end
@@ -210,7 +210,8 @@ module MetronomeSDK
210
210
  value: String
211
211
  }
212
212
 
213
- type entity = :Contract | :Commit | :ContractCredit
213
+ type entity =
214
+ :Contract | :Commit | :ContractCredit | :ContractCreditOrCommit
214
215
 
215
216
  module Entity
216
217
  extend MetronomeSDK::Internal::Type::Enum
@@ -218,6 +219,7 @@ module MetronomeSDK
218
219
  CONTRACT: :Contract
219
220
  COMMIT: :Commit
220
221
  CONTRACT_CREDIT: :ContractCredit
222
+ CONTRACT_CREDIT_OR_COMMIT: :ContractCreditOrCommit
221
223
 
222
224
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::CustomFieldFilter::entity]
223
225
  end
@@ -30,6 +30,7 @@ module MetronomeSDK
30
30
  plan_custom_fields: ::Hash[Symbol, String],
31
31
  plan_id: String,
32
32
  plan_name: String,
33
+ regenerated_from_invoice_id: String,
33
34
  reseller_royalty: MetronomeSDK::V1::Customers::Invoice::ResellerRoyalty,
34
35
  revenue_system_invoices: ::Array[MetronomeSDK::V1::Customers::Invoice::RevenueSystemInvoice]?,
35
36
  salesforce_opportunity_id: String,
@@ -140,6 +141,10 @@ module MetronomeSDK
140
141
 
141
142
  def plan_name=: (String) -> String
142
143
 
144
+ attr_reader regenerated_from_invoice_id: String?
145
+
146
+ def regenerated_from_invoice_id=: (String) -> String
147
+
143
148
  attr_reader reseller_royalty: MetronomeSDK::V1::Customers::Invoice::ResellerRoyalty?
144
149
 
145
150
  def reseller_royalty=: (
@@ -187,6 +192,7 @@ module MetronomeSDK
187
192
  ?plan_custom_fields: ::Hash[Symbol, String],
188
193
  ?plan_id: String,
189
194
  ?plan_name: String,
195
+ ?regenerated_from_invoice_id: String,
190
196
  ?reseller_royalty: MetronomeSDK::V1::Customers::Invoice::ResellerRoyalty,
191
197
  ?revenue_system_invoices: ::Array[MetronomeSDK::V1::Customers::Invoice::RevenueSystemInvoice]?,
192
198
  ?salesforce_opportunity_id: String,
@@ -221,6 +227,7 @@ module MetronomeSDK
221
227
  plan_custom_fields: ::Hash[Symbol, String],
222
228
  plan_id: String,
223
229
  plan_name: String,
230
+ regenerated_from_invoice_id: String,
224
231
  reseller_royalty: MetronomeSDK::V1::Customers::Invoice::ResellerRoyalty,
225
232
  revenue_system_invoices: ::Array[MetronomeSDK::V1::Customers::Invoice::RevenueSystemInvoice]?,
226
233
  salesforce_opportunity_id: String,
@@ -5,6 +5,7 @@ module MetronomeSDK
5
5
  type invoice_list_params =
6
6
  {
7
7
  customer_id: String,
8
+ contract_id: String,
8
9
  credit_type_id: String,
9
10
  ending_before: Time,
10
11
  limit: Integer,
@@ -12,7 +13,8 @@ module MetronomeSDK
12
13
  skip_zero_qty_line_items: bool,
13
14
  sort: MetronomeSDK::Models::V1::Customers::InvoiceListParams::sort,
14
15
  starting_on: Time,
15
- status: String
16
+ status: String,
17
+ type: MetronomeSDK::Models::V1::Customers::InvoiceListParams::type_
16
18
  }
17
19
  & MetronomeSDK::Internal::Type::request_parameters
18
20
 
@@ -22,6 +24,10 @@ module MetronomeSDK
22
24
 
23
25
  attr_accessor customer_id: String
24
26
 
27
+ attr_reader contract_id: String?
28
+
29
+ def contract_id=: (String) -> String
30
+
25
31
  attr_reader credit_type_id: String?
26
32
 
27
33
  def credit_type_id=: (String) -> String
@@ -56,8 +62,15 @@ module MetronomeSDK
56
62
 
57
63
  def status=: (String) -> String
58
64
 
65
+ attr_reader type: MetronomeSDK::Models::V1::Customers::InvoiceListParams::type_?
66
+
67
+ def type=: (
68
+ MetronomeSDK::Models::V1::Customers::InvoiceListParams::type_
69
+ ) -> MetronomeSDK::Models::V1::Customers::InvoiceListParams::type_
70
+
59
71
  def initialize: (
60
72
  customer_id: String,
73
+ ?contract_id: String,
61
74
  ?credit_type_id: String,
62
75
  ?ending_before: Time,
63
76
  ?limit: Integer,
@@ -66,11 +79,13 @@ module MetronomeSDK
66
79
  ?sort: MetronomeSDK::Models::V1::Customers::InvoiceListParams::sort,
67
80
  ?starting_on: Time,
68
81
  ?status: String,
82
+ ?type: MetronomeSDK::Models::V1::Customers::InvoiceListParams::type_,
69
83
  ?request_options: MetronomeSDK::request_opts
70
84
  ) -> void
71
85
 
72
86
  def to_hash: -> {
73
87
  customer_id: String,
88
+ contract_id: String,
74
89
  credit_type_id: String,
75
90
  ending_before: Time,
76
91
  limit: Integer,
@@ -79,6 +94,7 @@ module MetronomeSDK
79
94
  sort: MetronomeSDK::Models::V1::Customers::InvoiceListParams::sort,
80
95
  starting_on: Time,
81
96
  status: String,
97
+ type: MetronomeSDK::Models::V1::Customers::InvoiceListParams::type_,
82
98
  request_options: MetronomeSDK::RequestOptions
83
99
  }
84
100
 
@@ -92,6 +108,18 @@ module MetronomeSDK
92
108
 
93
109
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::InvoiceListParams::sort]
94
110
  end
111
+
112
+ type type_ = :USAGE | :USAGE_CONSOLIDATED | :SCHEDULED
113
+
114
+ module Type
115
+ extend MetronomeSDK::Internal::Type::Enum
116
+
117
+ USAGE: :USAGE
118
+ USAGE_CONSOLIDATED: :USAGE_CONSOLIDATED
119
+ SCHEDULED: :SCHEDULED
120
+
121
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::Customers::InvoiceListParams::type_]
122
+ end
95
123
  end
96
124
  end
97
125
  end
@@ -5,7 +5,6 @@ module MetronomeSDK
5
5
  {
6
6
  name: String,
7
7
  aliases: ::Array[MetronomeSDK::V1::PackageCreateParams::Alias],
8
- billing_anchor_date: MetronomeSDK::Models::V1::PackageCreateParams::billing_anchor_date,
9
8
  billing_provider: MetronomeSDK::Models::V1::PackageCreateParams::billing_provider,
10
9
  commits: ::Array[MetronomeSDK::V1::PackageCreateParams::Commit],
11
10
  contract_name: String,
@@ -41,12 +40,6 @@ module MetronomeSDK
41
40
  ::Array[MetronomeSDK::V1::PackageCreateParams::Alias]
42
41
  ) -> ::Array[MetronomeSDK::V1::PackageCreateParams::Alias]
43
42
 
44
- attr_reader billing_anchor_date: MetronomeSDK::Models::V1::PackageCreateParams::billing_anchor_date?
45
-
46
- def billing_anchor_date=: (
47
- MetronomeSDK::Models::V1::PackageCreateParams::billing_anchor_date
48
- ) -> MetronomeSDK::Models::V1::PackageCreateParams::billing_anchor_date
49
-
50
43
  attr_reader billing_provider: MetronomeSDK::Models::V1::PackageCreateParams::billing_provider?
51
44
 
52
45
  def billing_provider=: (
@@ -160,7 +153,6 @@ module MetronomeSDK
160
153
  def initialize: (
161
154
  name: String,
162
155
  ?aliases: ::Array[MetronomeSDK::V1::PackageCreateParams::Alias],
163
- ?billing_anchor_date: MetronomeSDK::Models::V1::PackageCreateParams::billing_anchor_date,
164
156
  ?billing_provider: MetronomeSDK::Models::V1::PackageCreateParams::billing_provider,
165
157
  ?commits: ::Array[MetronomeSDK::V1::PackageCreateParams::Commit],
166
158
  ?contract_name: String,
@@ -187,7 +179,6 @@ module MetronomeSDK
187
179
  def to_hash: -> {
188
180
  name: String,
189
181
  aliases: ::Array[MetronomeSDK::V1::PackageCreateParams::Alias],
190
- billing_anchor_date: MetronomeSDK::Models::V1::PackageCreateParams::billing_anchor_date,
191
182
  billing_provider: MetronomeSDK::Models::V1::PackageCreateParams::billing_provider,
192
183
  commits: ::Array[MetronomeSDK::V1::PackageCreateParams::Commit],
193
184
  contract_name: String,
@@ -237,17 +228,6 @@ module MetronomeSDK
237
228
  }
238
229
  end
239
230
 
240
- type billing_anchor_date = :contract_start_date | :first_billing_period
241
-
242
- module BillingAnchorDate
243
- extend MetronomeSDK::Internal::Type::Enum
244
-
245
- CONTRACT_START_DATE: :contract_start_date
246
- FIRST_BILLING_PERIOD: :first_billing_period
247
-
248
- def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageCreateParams::billing_anchor_date]
249
- end
250
-
251
231
  type billing_provider =
252
232
  :aws_marketplace
253
233
  | :azure_marketplace
@@ -989,8 +969,7 @@ module MetronomeSDK
989
969
  pricing_group_values: ::Hash[Symbol, String],
990
970
  product_id: String,
991
971
  product_tags: ::Array[String],
992
- recurring_commit_ids: ::Array[String],
993
- recurring_credit_ids: ::Array[String]
972
+ recurring_commit_ids: ::Array[String]
994
973
  }
995
974
 
996
975
  class OverrideSpecifier < MetronomeSDK::Internal::Type::BaseModel
@@ -1028,10 +1007,6 @@ module MetronomeSDK
1028
1007
 
1029
1008
  def recurring_commit_ids=: (::Array[String]) -> ::Array[String]
1030
1009
 
1031
- attr_reader recurring_credit_ids: ::Array[String]?
1032
-
1033
- def recurring_credit_ids=: (::Array[String]) -> ::Array[String]
1034
-
1035
1010
  def initialize: (
1036
1011
  ?billing_frequency: MetronomeSDK::Models::V1::PackageCreateParams::Override::OverrideSpecifier::billing_frequency,
1037
1012
  ?commit_ids: ::Array[String],
@@ -1039,8 +1014,7 @@ module MetronomeSDK
1039
1014
  ?pricing_group_values: ::Hash[Symbol, String],
1040
1015
  ?product_id: String,
1041
1016
  ?product_tags: ::Array[String],
1042
- ?recurring_commit_ids: ::Array[String],
1043
- ?recurring_credit_ids: ::Array[String]
1017
+ ?recurring_commit_ids: ::Array[String]
1044
1018
  ) -> void
1045
1019
 
1046
1020
  def to_hash: -> {
@@ -1050,8 +1024,7 @@ module MetronomeSDK
1050
1024
  pricing_group_values: ::Hash[Symbol, String],
1051
1025
  product_id: String,
1052
1026
  product_tags: ::Array[String],
1053
- recurring_commit_ids: ::Array[String],
1054
- recurring_credit_ids: ::Array[String]
1027
+ recurring_commit_ids: ::Array[String]
1055
1028
  }
1056
1029
 
1057
1030
  type billing_frequency = :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
@@ -13,6 +13,7 @@ module MetronomeSDK
13
13
  aliases: ::Array[MetronomeSDK::Models::V1::PackageListResponse::Alias],
14
14
  archived_at: Time,
15
15
  billing_provider: MetronomeSDK::Models::V1::PackageListResponse::billing_provider,
16
+ contract_name: String,
16
17
  credits: ::Array[MetronomeSDK::Models::V1::PackageListResponse::Credit],
17
18
  delivery_method: MetronomeSDK::Models::V1::PackageListResponse::delivery_method,
18
19
  duration: MetronomeSDK::Models::V1::PackageListResponse::Duration,
@@ -60,6 +61,10 @@ module MetronomeSDK
60
61
  MetronomeSDK::Models::V1::PackageListResponse::billing_provider
61
62
  ) -> MetronomeSDK::Models::V1::PackageListResponse::billing_provider
62
63
 
64
+ attr_reader contract_name: String?
65
+
66
+ def contract_name=: (String) -> String
67
+
63
68
  attr_reader credits: ::Array[MetronomeSDK::Models::V1::PackageListResponse::Credit]?
64
69
 
65
70
  def credits=: (
@@ -147,6 +152,7 @@ module MetronomeSDK
147
152
  ?aliases: ::Array[MetronomeSDK::Models::V1::PackageListResponse::Alias],
148
153
  ?archived_at: Time,
149
154
  ?billing_provider: MetronomeSDK::Models::V1::PackageListResponse::billing_provider,
155
+ ?contract_name: String,
150
156
  ?credits: ::Array[MetronomeSDK::Models::V1::PackageListResponse::Credit],
151
157
  ?delivery_method: MetronomeSDK::Models::V1::PackageListResponse::delivery_method,
152
158
  ?duration: MetronomeSDK::Models::V1::PackageListResponse::Duration,
@@ -174,6 +180,7 @@ module MetronomeSDK
174
180
  aliases: ::Array[MetronomeSDK::Models::V1::PackageListResponse::Alias],
175
181
  archived_at: Time,
176
182
  billing_provider: MetronomeSDK::Models::V1::PackageListResponse::billing_provider,
183
+ contract_name: String,
177
184
  credits: ::Array[MetronomeSDK::Models::V1::PackageListResponse::Credit],
178
185
  delivery_method: MetronomeSDK::Models::V1::PackageListResponse::delivery_method,
179
186
  duration: MetronomeSDK::Models::V1::PackageListResponse::Duration,
@@ -677,8 +684,7 @@ module MetronomeSDK
677
684
  pricing_group_values: ::Hash[Symbol, String],
678
685
  product_id: String,
679
686
  product_tags: ::Array[String],
680
- recurring_commit_template_ids: ::Array[String],
681
- recurring_credit_template_ids: ::Array[String]
687
+ recurring_commit_template_ids: ::Array[String]
682
688
  }
683
689
 
684
690
  class OverrideSpecifier < MetronomeSDK::Internal::Type::BaseModel
@@ -718,12 +724,6 @@ module MetronomeSDK
718
724
  ::Array[String]
719
725
  ) -> ::Array[String]
720
726
 
721
- attr_reader recurring_credit_template_ids: ::Array[String]?
722
-
723
- def recurring_credit_template_ids=: (
724
- ::Array[String]
725
- ) -> ::Array[String]
726
-
727
727
  def initialize: (
728
728
  ?billing_frequency: MetronomeSDK::Models::V1::PackageListResponse::Override::OverrideSpecifier::billing_frequency,
729
729
  ?commit_template_ids: ::Array[String],
@@ -731,8 +731,7 @@ module MetronomeSDK
731
731
  ?pricing_group_values: ::Hash[Symbol, String],
732
732
  ?product_id: String,
733
733
  ?product_tags: ::Array[String],
734
- ?recurring_commit_template_ids: ::Array[String],
735
- ?recurring_credit_template_ids: ::Array[String]
734
+ ?recurring_commit_template_ids: ::Array[String]
736
735
  ) -> void
737
736
 
738
737
  def to_hash: -> {
@@ -742,8 +741,7 @@ module MetronomeSDK
742
741
  pricing_group_values: ::Hash[Symbol, String],
743
742
  product_id: String,
744
743
  product_tags: ::Array[String],
745
- recurring_commit_template_ids: ::Array[String],
746
- recurring_credit_template_ids: ::Array[String]
744
+ recurring_commit_template_ids: ::Array[String]
747
745
  }
748
746
 
749
747
  type billing_frequency = :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
@@ -1017,18 +1015,27 @@ module MetronomeSDK
1017
1015
 
1018
1016
  type usage_statement_schedule =
1019
1017
  {
1020
- frequency: MetronomeSDK::Models::V1::PackageListResponse::UsageStatementSchedule::frequency
1018
+ frequency: MetronomeSDK::Models::V1::PackageListResponse::UsageStatementSchedule::frequency,
1019
+ day: MetronomeSDK::Models::V1::PackageListResponse::UsageStatementSchedule::day
1021
1020
  }
1022
1021
 
1023
1022
  class UsageStatementSchedule < MetronomeSDK::Internal::Type::BaseModel
1024
1023
  attr_accessor frequency: MetronomeSDK::Models::V1::PackageListResponse::UsageStatementSchedule::frequency
1025
1024
 
1025
+ attr_reader day: MetronomeSDK::Models::V1::PackageListResponse::UsageStatementSchedule::day?
1026
+
1027
+ def day=: (
1028
+ MetronomeSDK::Models::V1::PackageListResponse::UsageStatementSchedule::day
1029
+ ) -> MetronomeSDK::Models::V1::PackageListResponse::UsageStatementSchedule::day
1030
+
1026
1031
  def initialize: (
1027
- frequency: MetronomeSDK::Models::V1::PackageListResponse::UsageStatementSchedule::frequency
1032
+ frequency: MetronomeSDK::Models::V1::PackageListResponse::UsageStatementSchedule::frequency,
1033
+ ?day: MetronomeSDK::Models::V1::PackageListResponse::UsageStatementSchedule::day
1028
1034
  ) -> void
1029
1035
 
1030
1036
  def to_hash: -> {
1031
- frequency: MetronomeSDK::Models::V1::PackageListResponse::UsageStatementSchedule::frequency
1037
+ frequency: MetronomeSDK::Models::V1::PackageListResponse::UsageStatementSchedule::frequency,
1038
+ day: MetronomeSDK::Models::V1::PackageListResponse::UsageStatementSchedule::day
1032
1039
  }
1033
1040
 
1034
1041
  type frequency = :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
@@ -1043,6 +1050,17 @@ module MetronomeSDK
1043
1050
 
1044
1051
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageListResponse::UsageStatementSchedule::frequency]
1045
1052
  end
1053
+
1054
+ type day = :FIRST_OF_MONTH | :CONTRACT_START
1055
+
1056
+ module Day
1057
+ extend MetronomeSDK::Internal::Type::Enum
1058
+
1059
+ FIRST_OF_MONTH: :FIRST_OF_MONTH
1060
+ CONTRACT_START: :CONTRACT_START
1061
+
1062
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageListResponse::UsageStatementSchedule::day]
1063
+ end
1046
1064
  end
1047
1065
 
1048
1066
  type alias_ = { name: String, ending_before: Time, starting_at: Time }
@@ -27,6 +27,7 @@ module MetronomeSDK
27
27
  aliases: ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Alias],
28
28
  archived_at: Time,
29
29
  billing_provider: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::billing_provider,
30
+ contract_name: String,
30
31
  credits: ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Credit],
31
32
  delivery_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::delivery_method,
32
33
  duration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Duration,
@@ -74,6 +75,10 @@ module MetronomeSDK
74
75
  MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::billing_provider
75
76
  ) -> MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::billing_provider
76
77
 
78
+ attr_reader contract_name: String?
79
+
80
+ def contract_name=: (String) -> String
81
+
77
82
  attr_reader credits: ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Credit]?
78
83
 
79
84
  def credits=: (
@@ -161,6 +166,7 @@ module MetronomeSDK
161
166
  ?aliases: ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Alias],
162
167
  ?archived_at: Time,
163
168
  ?billing_provider: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::billing_provider,
169
+ ?contract_name: String,
164
170
  ?credits: ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Credit],
165
171
  ?delivery_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::delivery_method,
166
172
  ?duration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Duration,
@@ -188,6 +194,7 @@ module MetronomeSDK
188
194
  aliases: ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Alias],
189
195
  archived_at: Time,
190
196
  billing_provider: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::billing_provider,
197
+ contract_name: String,
191
198
  credits: ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Credit],
192
199
  delivery_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::delivery_method,
193
200
  duration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Duration,
@@ -693,8 +700,7 @@ module MetronomeSDK
693
700
  pricing_group_values: ::Hash[Symbol, String],
694
701
  product_id: String,
695
702
  product_tags: ::Array[String],
696
- recurring_commit_template_ids: ::Array[String],
697
- recurring_credit_template_ids: ::Array[String]
703
+ recurring_commit_template_ids: ::Array[String]
698
704
  }
699
705
 
700
706
  class OverrideSpecifier < MetronomeSDK::Internal::Type::BaseModel
@@ -734,12 +740,6 @@ module MetronomeSDK
734
740
  ::Array[String]
735
741
  ) -> ::Array[String]
736
742
 
737
- attr_reader recurring_credit_template_ids: ::Array[String]?
738
-
739
- def recurring_credit_template_ids=: (
740
- ::Array[String]
741
- ) -> ::Array[String]
742
-
743
743
  def initialize: (
744
744
  ?billing_frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Override::OverrideSpecifier::billing_frequency,
745
745
  ?commit_template_ids: ::Array[String],
@@ -747,8 +747,7 @@ module MetronomeSDK
747
747
  ?pricing_group_values: ::Hash[Symbol, String],
748
748
  ?product_id: String,
749
749
  ?product_tags: ::Array[String],
750
- ?recurring_commit_template_ids: ::Array[String],
751
- ?recurring_credit_template_ids: ::Array[String]
750
+ ?recurring_commit_template_ids: ::Array[String]
752
751
  ) -> void
753
752
 
754
753
  def to_hash: -> {
@@ -758,8 +757,7 @@ module MetronomeSDK
758
757
  pricing_group_values: ::Hash[Symbol, String],
759
758
  product_id: String,
760
759
  product_tags: ::Array[String],
761
- recurring_commit_template_ids: ::Array[String],
762
- recurring_credit_template_ids: ::Array[String]
760
+ recurring_commit_template_ids: ::Array[String]
763
761
  }
764
762
 
765
763
  type billing_frequency = :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
@@ -1035,18 +1033,27 @@ module MetronomeSDK
1035
1033
 
1036
1034
  type usage_statement_schedule =
1037
1035
  {
1038
- frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::UsageStatementSchedule::frequency
1036
+ frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::UsageStatementSchedule::frequency,
1037
+ day: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::UsageStatementSchedule::day
1039
1038
  }
1040
1039
 
1041
1040
  class UsageStatementSchedule < MetronomeSDK::Internal::Type::BaseModel
1042
1041
  attr_accessor frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::UsageStatementSchedule::frequency
1043
1042
 
1043
+ attr_reader day: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::UsageStatementSchedule::day?
1044
+
1045
+ def day=: (
1046
+ MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::UsageStatementSchedule::day
1047
+ ) -> MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::UsageStatementSchedule::day
1048
+
1044
1049
  def initialize: (
1045
- frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::UsageStatementSchedule::frequency
1050
+ frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::UsageStatementSchedule::frequency,
1051
+ ?day: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::UsageStatementSchedule::day
1046
1052
  ) -> void
1047
1053
 
1048
1054
  def to_hash: -> {
1049
- frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::UsageStatementSchedule::frequency
1055
+ frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::UsageStatementSchedule::frequency,
1056
+ day: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::UsageStatementSchedule::day
1050
1057
  }
1051
1058
 
1052
1059
  type frequency = :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
@@ -1061,6 +1068,17 @@ module MetronomeSDK
1061
1068
 
1062
1069
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::UsageStatementSchedule::frequency]
1063
1070
  end
1071
+
1072
+ type day = :FIRST_OF_MONTH | :CONTRACT_START
1073
+
1074
+ module Day
1075
+ extend MetronomeSDK::Internal::Type::Enum
1076
+
1077
+ FIRST_OF_MONTH: :FIRST_OF_MONTH
1078
+ CONTRACT_START: :CONTRACT_START
1079
+
1080
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::UsageStatementSchedule::day]
1081
+ end
1064
1082
  end
1065
1083
 
1066
1084
  type alias_ = { name: String, ending_before: Time, starting_at: Time }
@@ -1409,8 +1409,7 @@ module MetronomeSDK
1409
1409
  pricing_group_values: ::Hash[Symbol, String],
1410
1410
  product_id: String,
1411
1411
  product_tags: ::Array[String],
1412
- recurring_commit_ids: ::Array[String],
1413
- recurring_credit_ids: ::Array[String]
1412
+ recurring_commit_ids: ::Array[String]
1414
1413
  }
1415
1414
 
1416
1415
  class OverrideSpecifier < MetronomeSDK::Internal::Type::BaseModel
@@ -1448,10 +1447,6 @@ module MetronomeSDK
1448
1447
 
1449
1448
  def recurring_commit_ids=: (::Array[String]) -> ::Array[String]
1450
1449
 
1451
- attr_reader recurring_credit_ids: ::Array[String]?
1452
-
1453
- def recurring_credit_ids=: (::Array[String]) -> ::Array[String]
1454
-
1455
1450
  def initialize: (
1456
1451
  ?billing_frequency: MetronomeSDK::Models::V2::ContractEditParams::AddOverride::OverrideSpecifier::billing_frequency,
1457
1452
  ?commit_ids: ::Array[String],
@@ -1459,8 +1454,7 @@ module MetronomeSDK
1459
1454
  ?pricing_group_values: ::Hash[Symbol, String],
1460
1455
  ?product_id: String,
1461
1456
  ?product_tags: ::Array[String],
1462
- ?recurring_commit_ids: ::Array[String],
1463
- ?recurring_credit_ids: ::Array[String]
1457
+ ?recurring_commit_ids: ::Array[String]
1464
1458
  ) -> void
1465
1459
 
1466
1460
  def to_hash: -> {
@@ -1470,8 +1464,7 @@ module MetronomeSDK
1470
1464
  pricing_group_values: ::Hash[Symbol, String],
1471
1465
  product_id: String,
1472
1466
  product_tags: ::Array[String],
1473
- recurring_commit_ids: ::Array[String],
1474
- recurring_credit_ids: ::Array[String]
1467
+ recurring_commit_ids: ::Array[String]
1475
1468
  }
1476
1469
 
1477
1470
  type billing_frequency = :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
@@ -3576,6 +3569,7 @@ module MetronomeSDK
3576
3569
  {
3577
3570
  commit: MetronomeSDK::V2::ContractEditParams::UpdatePrepaidBalanceThresholdConfiguration::Commit,
3578
3571
  custom_credit_type_id: String?,
3572
+ discount_configuration: MetronomeSDK::V2::ContractEditParams::UpdatePrepaidBalanceThresholdConfiguration::DiscountConfiguration?,
3579
3573
  is_enabled: bool,
3580
3574
  payment_gate_config: MetronomeSDK::PaymentGateConfigV2,
3581
3575
  recharge_to_amount: Float,
@@ -3591,6 +3585,8 @@ module MetronomeSDK
3591
3585
 
3592
3586
  attr_accessor custom_credit_type_id: String?
3593
3587
 
3588
+ attr_accessor discount_configuration: MetronomeSDK::V2::ContractEditParams::UpdatePrepaidBalanceThresholdConfiguration::DiscountConfiguration?
3589
+
3594
3590
  attr_reader is_enabled: bool?
3595
3591
 
3596
3592
  def is_enabled=: (bool) -> bool
@@ -3612,6 +3608,7 @@ module MetronomeSDK
3612
3608
  def initialize: (
3613
3609
  ?commit: MetronomeSDK::V2::ContractEditParams::UpdatePrepaidBalanceThresholdConfiguration::Commit,
3614
3610
  ?custom_credit_type_id: String?,
3611
+ ?discount_configuration: MetronomeSDK::V2::ContractEditParams::UpdatePrepaidBalanceThresholdConfiguration::DiscountConfiguration?,
3615
3612
  ?is_enabled: bool,
3616
3613
  ?payment_gate_config: MetronomeSDK::PaymentGateConfigV2,
3617
3614
  ?recharge_to_amount: Float,
@@ -3621,6 +3618,7 @@ module MetronomeSDK
3621
3618
  def to_hash: -> {
3622
3619
  commit: MetronomeSDK::V2::ContractEditParams::UpdatePrepaidBalanceThresholdConfiguration::Commit,
3623
3620
  custom_credit_type_id: String?,
3621
+ discount_configuration: MetronomeSDK::V2::ContractEditParams::UpdatePrepaidBalanceThresholdConfiguration::DiscountConfiguration?,
3624
3622
  is_enabled: bool,
3625
3623
  payment_gate_config: MetronomeSDK::PaymentGateConfigV2,
3626
3624
  recharge_to_amount: Float,
@@ -3665,6 +3663,16 @@ module MetronomeSDK
3665
3663
  specifiers: ::Array[MetronomeSDK::CommitSpecifierInput]?
3666
3664
  }
3667
3665
  end
3666
+
3667
+ type discount_configuration = { payment_fraction: Float? }
3668
+
3669
+ class DiscountConfiguration < MetronomeSDK::Internal::Type::BaseModel
3670
+ attr_accessor payment_fraction: Float?
3671
+
3672
+ def initialize: (?payment_fraction: Float?) -> void
3673
+
3674
+ def to_hash: -> { payment_fraction: Float? }
3675
+ end
3668
3676
  end
3669
3677
 
3670
3678
  type update_recurring_commit =
@@ -3992,6 +4000,7 @@ module MetronomeSDK
3992
4000
  type update_spend_threshold_configuration =
3993
4001
  {
3994
4002
  commit: MetronomeSDK::UpdateBaseThresholdCommit,
4003
+ discount_configuration: MetronomeSDK::V2::ContractEditParams::UpdateSpendThresholdConfiguration::DiscountConfiguration?,
3995
4004
  is_enabled: bool,
3996
4005
  payment_gate_config: MetronomeSDK::PaymentGateConfigV2,
3997
4006
  threshold_amount: Float
@@ -4004,6 +4013,8 @@ module MetronomeSDK
4004
4013
  MetronomeSDK::UpdateBaseThresholdCommit
4005
4014
  ) -> MetronomeSDK::UpdateBaseThresholdCommit
4006
4015
 
4016
+ attr_accessor discount_configuration: MetronomeSDK::V2::ContractEditParams::UpdateSpendThresholdConfiguration::DiscountConfiguration?
4017
+
4007
4018
  attr_reader is_enabled: bool?
4008
4019
 
4009
4020
  def is_enabled=: (bool) -> bool
@@ -4020,6 +4031,7 @@ module MetronomeSDK
4020
4031
 
4021
4032
  def initialize: (
4022
4033
  ?commit: MetronomeSDK::UpdateBaseThresholdCommit,
4034
+ ?discount_configuration: MetronomeSDK::V2::ContractEditParams::UpdateSpendThresholdConfiguration::DiscountConfiguration?,
4023
4035
  ?is_enabled: bool,
4024
4036
  ?payment_gate_config: MetronomeSDK::PaymentGateConfigV2,
4025
4037
  ?threshold_amount: Float
@@ -4027,10 +4039,21 @@ module MetronomeSDK
4027
4039
 
4028
4040
  def to_hash: -> {
4029
4041
  commit: MetronomeSDK::UpdateBaseThresholdCommit,
4042
+ discount_configuration: MetronomeSDK::V2::ContractEditParams::UpdateSpendThresholdConfiguration::DiscountConfiguration?,
4030
4043
  is_enabled: bool,
4031
4044
  payment_gate_config: MetronomeSDK::PaymentGateConfigV2,
4032
4045
  threshold_amount: Float
4033
4046
  }
4047
+
4048
+ type discount_configuration = { payment_fraction: Float? }
4049
+
4050
+ class DiscountConfiguration < MetronomeSDK::Internal::Type::BaseModel
4051
+ attr_accessor payment_fraction: Float?
4052
+
4053
+ def initialize: (?payment_fraction: Float?) -> void
4054
+
4055
+ def to_hash: -> { payment_fraction: Float? }
4056
+ end
4034
4057
  end
4035
4058
 
4036
4059
  type update_subscription =