metronome-sdk 3.7.0 → 3.9.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 (99) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +46 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/internal/transport/base_client.rb +4 -1
  5. data/lib/metronome_sdk/models/commit.rb +10 -1
  6. data/lib/metronome_sdk/models/contract.rb +46 -16
  7. data/lib/metronome_sdk/models/contract_v2.rb +645 -16
  8. data/lib/metronome_sdk/models/contract_without_amendments.rb +178 -4
  9. data/lib/metronome_sdk/models/credit.rb +10 -1
  10. data/lib/metronome_sdk/models/override.rb +7 -1
  11. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration.rb +10 -2
  12. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +3 -1
  13. data/lib/metronome_sdk/models/subscription.rb +90 -2
  14. data/lib/metronome_sdk/models/v1/alert_create_params.rb +127 -1
  15. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +17 -4
  16. data/lib/metronome_sdk/models/v1/contract_create_params.rb +290 -10
  17. data/lib/metronome_sdk/models/v1/contract_create_response.rb +243 -17
  18. data/lib/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rb +88 -0
  19. data/lib/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rb +62 -0
  20. data/lib/metronome_sdk/models/v1/contract_list_seat_balances_params.rb +10 -1
  21. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +127 -1
  22. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +130 -3
  23. data/lib/metronome_sdk/models/v1/customers/invoice_list_params.rb +10 -1
  24. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +2 -0
  25. data/lib/metronome_sdk/models/v1/package_create_params.rb +279 -10
  26. data/lib/metronome_sdk/models/v1/package_list_response.rb +264 -7
  27. data/lib/metronome_sdk/models/v1/package_retrieve_response.rb +264 -7
  28. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +517 -9
  29. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +456 -8
  30. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +456 -8
  31. data/lib/metronome_sdk/resources/v1/alerts.rb +3 -1
  32. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +4 -0
  33. data/lib/metronome_sdk/resources/v1/contracts.rb +68 -1
  34. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +4 -2
  35. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +3 -1
  36. data/lib/metronome_sdk/resources/v1/dashboards.rb +7 -2
  37. data/lib/metronome_sdk/version.rb +1 -1
  38. data/lib/metronome_sdk.rb +2 -0
  39. data/rbi/metronome_sdk/models/commit.rbi +13 -0
  40. data/rbi/metronome_sdk/models/contract.rbi +47 -22
  41. data/rbi/metronome_sdk/models/contract_v2.rbi +1472 -96
  42. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +463 -0
  43. data/rbi/metronome_sdk/models/credit.rbi +13 -0
  44. data/rbi/metronome_sdk/models/override.rbi +9 -0
  45. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration.rbi +11 -1
  46. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +4 -0
  47. data/rbi/metronome_sdk/models/subscription.rbi +212 -3
  48. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +373 -0
  49. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +27 -6
  50. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +719 -9
  51. data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +523 -32
  52. data/rbi/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rbi +112 -0
  53. data/rbi/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rbi +119 -0
  54. data/rbi/metronome_sdk/models/v1/contract_list_seat_balances_params.rbi +13 -0
  55. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +360 -0
  56. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +379 -2
  57. data/rbi/metronome_sdk/models/v1/customers/invoice_list_params.rbi +13 -0
  58. data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +10 -0
  59. data/rbi/metronome_sdk/models/v1/package_create_params.rbi +706 -9
  60. data/rbi/metronome_sdk/models/v1/package_list_response.rbi +693 -3
  61. data/rbi/metronome_sdk/models/v1/package_retrieve_response.rbi +693 -3
  62. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +1372 -69
  63. data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +1204 -67
  64. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1204 -67
  65. data/rbi/metronome_sdk/resources/v1/alerts.rbi +8 -0
  66. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +4 -0
  67. data/rbi/metronome_sdk/resources/v1/contracts.rbi +70 -0
  68. data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +8 -1
  69. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +4 -0
  70. data/rbi/metronome_sdk/resources/v1/dashboards.rbi +7 -2
  71. data/sig/metronome_sdk/models/commit.rbs +7 -0
  72. data/sig/metronome_sdk/models/contract.rbs +22 -11
  73. data/sig/metronome_sdk/models/contract_v2.rbs +559 -8
  74. data/sig/metronome_sdk/models/contract_without_amendments.rbs +169 -2
  75. data/sig/metronome_sdk/models/credit.rbs +7 -0
  76. data/sig/metronome_sdk/models/override.rbs +7 -0
  77. data/sig/metronome_sdk/models/subscription.rbs +88 -3
  78. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +144 -0
  79. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +7 -0
  80. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +278 -5
  81. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +197 -17
  82. data/sig/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rbs +63 -0
  83. data/sig/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rbs +59 -0
  84. data/sig/metronome_sdk/models/v1/contract_list_seat_balances_params.rbs +7 -0
  85. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +141 -0
  86. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +150 -0
  87. data/sig/metronome_sdk/models/v1/customers/invoice_list_params.rbs +8 -1
  88. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +4 -0
  89. data/sig/metronome_sdk/models/v1/package_create_params.rbs +271 -5
  90. data/sig/metronome_sdk/models/v1/package_list_response.rbs +265 -5
  91. data/sig/metronome_sdk/models/v1/package_retrieve_response.rbs +263 -5
  92. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +472 -7
  93. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +428 -5
  94. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +427 -5
  95. data/sig/metronome_sdk/resources/v1/alerts.rbs +1 -0
  96. data/sig/metronome_sdk/resources/v1/contracts.rbs +13 -0
  97. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +1 -0
  98. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -0
  99. metadata +8 -2
@@ -21,6 +21,14 @@ module MetronomeSDK
21
21
  # @return [String]
22
22
  required :customer_id, String
23
23
 
24
+ # @!attribute alert_specifiers
25
+ # Can be used with only `low_remaining_contract_credit_and_commit_balance_reached`
26
+ # notifications. Used to filter the alert by the custom field key-value pair.
27
+ #
28
+ # @return [Array<MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier>, nil]
29
+ optional :alert_specifiers,
30
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier] }
31
+
24
32
  # @!attribute group_values
25
33
  # Only present for `spend_threshold_reached` notifications. Retrieve the
26
34
  # notification for a specific group key-value pair.
@@ -44,7 +52,7 @@ module MetronomeSDK
44
52
  # @return [MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::SeatFilter, nil]
45
53
  optional :seat_filter, -> { MetronomeSDK::V1::Customers::AlertRetrieveParams::SeatFilter }
46
54
 
47
- # @!method initialize(alert_id:, customer_id:, group_values: nil, plans_or_contracts: nil, seat_filter: nil, request_options: {})
55
+ # @!method initialize(alert_id:, customer_id:, alert_specifiers: nil, group_values: nil, plans_or_contracts: nil, seat_filter: nil, request_options: {})
48
56
  # Some parameter documentations has been truncated, see
49
57
  # {MetronomeSDK::Models::V1::Customers::AlertRetrieveParams} for more details.
50
58
  #
@@ -52,6 +60,8 @@ module MetronomeSDK
52
60
  #
53
61
  # @param customer_id [String] The Metronome ID of the customer
54
62
  #
63
+ # @param alert_specifiers [Array<MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier>] Can be used with only `low_remaining_contract_credit_and_commit_balance_reached`
64
+ #
55
65
  # @param group_values [Array<MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::GroupValue>] Only present for `spend_threshold_reached` notifications. Retrieve the notificat
56
66
  #
57
67
  # @param plans_or_contracts [Symbol, MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::PlansOrContracts] When parallel threshold notifications are enabled during migration, this flag de
@@ -60,6 +70,122 @@ module MetronomeSDK
60
70
  #
61
71
  # @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}]
62
72
 
73
+ class AlertSpecifier < MetronomeSDK::Internal::Type::BaseModel
74
+ # @!attribute custom_field_filters
75
+ # A list of custom field filters for notification types that support advanced
76
+ # filtering
77
+ #
78
+ # @return [Array<MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::CustomFieldFilter>]
79
+ required :custom_field_filters,
80
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::CustomFieldFilter] }
81
+
82
+ # @!attribute exclude
83
+ # If provided, the specifier will not apply to balances that matches the inclusion
84
+ # criteria and any of the excluding values.
85
+ #
86
+ # @return [Array<MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude>, nil]
87
+ optional :exclude,
88
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude] }
89
+
90
+ # @!method initialize(custom_field_filters:, exclude: nil)
91
+ # Some parameter documentations has been truncated, see
92
+ # {MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier} for
93
+ # more details.
94
+ #
95
+ # @param custom_field_filters [Array<MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::CustomFieldFilter>] A list of custom field filters for notification types that support advanced filt
96
+ #
97
+ # @param exclude [Array<MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude>] If provided, the specifier will not apply to balances that matches the inclusion
98
+
99
+ class CustomFieldFilter < MetronomeSDK::Internal::Type::BaseModel
100
+ # @!attribute entity
101
+ #
102
+ # @return [Symbol, MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::CustomFieldFilter::Entity]
103
+ required :entity,
104
+ enum: -> { MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::CustomFieldFilter::Entity }
105
+
106
+ # @!attribute key
107
+ #
108
+ # @return [String]
109
+ required :key, String
110
+
111
+ # @!attribute value
112
+ #
113
+ # @return [String]
114
+ required :value, String
115
+
116
+ # @!method initialize(entity:, key:, value:)
117
+ # @param entity [Symbol, MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::CustomFieldFilter::Entity]
118
+ # @param key [String]
119
+ # @param value [String]
120
+
121
+ # @see MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::CustomFieldFilter#entity
122
+ module Entity
123
+ extend MetronomeSDK::Internal::Type::Enum
124
+
125
+ CONTRACT = :Contract
126
+ COMMIT = :Commit
127
+ CONTRACT_CREDIT = :ContractCredit
128
+ CONTRACT_CREDIT_OR_COMMIT = :ContractCreditOrCommit
129
+
130
+ # @!method self.values
131
+ # @return [Array<Symbol>]
132
+ end
133
+ end
134
+
135
+ class Exclude < MetronomeSDK::Internal::Type::BaseModel
136
+ # @!attribute custom_field_filters
137
+ # A list of custom field filters for notification types that support advanced
138
+ # filtering
139
+ #
140
+ # @return [Array<MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter>, nil]
141
+ optional :custom_field_filters,
142
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter] }
143
+
144
+ # @!method initialize(custom_field_filters: nil)
145
+ # Some parameter documentations has been truncated, see
146
+ # {MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude}
147
+ # for more details.
148
+ #
149
+ # @param custom_field_filters [Array<MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter>] A list of custom field filters for notification types that support advanced filt
150
+
151
+ class CustomFieldFilter < MetronomeSDK::Internal::Type::BaseModel
152
+ # @!attribute entity
153
+ #
154
+ # @return [Symbol, MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter::Entity]
155
+ required :entity,
156
+ enum: -> { MetronomeSDK::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter::Entity }
157
+
158
+ # @!attribute key
159
+ #
160
+ # @return [String]
161
+ required :key, String
162
+
163
+ # @!attribute value
164
+ #
165
+ # @return [String]
166
+ required :value, String
167
+
168
+ # @!method initialize(entity:, key:, value:)
169
+ # @param entity [Symbol, MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter::Entity]
170
+ # @param key [String]
171
+ # @param value [String]
172
+
173
+ # @see MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::AlertSpecifier::Exclude::CustomFieldFilter#entity
174
+ module Entity
175
+ extend MetronomeSDK::Internal::Type::Enum
176
+
177
+ CONTRACT = :Contract
178
+ COMMIT = :Commit
179
+ CONTRACT_CREDIT = :ContractCredit
180
+ CONTRACT_CREDIT_OR_COMMIT = :ContractCreditOrCommit
181
+
182
+ # @!method self.values
183
+ # @return [Array<Symbol>]
184
+ end
185
+ end
186
+ end
187
+ end
188
+
63
189
  class GroupValue < MetronomeSDK::Internal::Type::BaseModel
64
190
  # @!attribute key
65
191
  #
@@ -69,11 +69,20 @@ module MetronomeSDK
69
69
  required :type, enum: -> { MetronomeSDK::V1::Customers::CustomerAlert::Alert::Type }
70
70
 
71
71
  # @!attribute updated_at
72
- # Timestamp for when the threshold notification was last updated
72
+ # Timestamp for when the threshold notification's customer status was last updated
73
73
  #
74
74
  # @return [Time]
75
75
  required :updated_at, Time
76
76
 
77
+ # @!attribute alert_specifiers
78
+ # Present for `low_remaining_contract_credit_and_commit_balance_reached`
79
+ # notifications. The filters that define the balances that are considered when
80
+ # evaluating the alert.
81
+ #
82
+ # @return [Array<MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::AlertSpecifier>, nil]
83
+ optional :alert_specifiers,
84
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Customers::CustomerAlert::Alert::AlertSpecifier] }
85
+
77
86
  # @!attribute credit_grant_type_filters
78
87
  # An array of strings, representing a way to filter the credit grant this
79
88
  # threshold notification applies to, by looking at the credit_grant_type field on
@@ -133,7 +142,7 @@ module MetronomeSDK
133
142
  # @return [String, nil]
134
143
  optional :uniqueness_key, String
135
144
 
136
- # @!method initialize(id:, name:, status:, threshold:, type:, updated_at:, credit_grant_type_filters: nil, credit_type: nil, custom_field_filters: nil, group_key_filter: nil, group_values: nil, invoice_types_filter: nil, seat_filter: nil, uniqueness_key: nil)
145
+ # @!method initialize(id:, name:, status:, threshold:, type:, updated_at:, alert_specifiers: nil, credit_grant_type_filters: nil, credit_type: nil, custom_field_filters: nil, group_key_filter: nil, group_values: nil, invoice_types_filter: nil, seat_filter: nil, uniqueness_key: nil)
137
146
  # Some parameter documentations has been truncated, see
138
147
  # {MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert} for more details.
139
148
  #
@@ -147,7 +156,9 @@ module MetronomeSDK
147
156
  #
148
157
  # @param type [Symbol, MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::Type] Type of the threshold notification
149
158
  #
150
- # @param updated_at [Time] Timestamp for when the threshold notification was last updated
159
+ # @param updated_at [Time] Timestamp for when the threshold notification's customer status was last updated
160
+ #
161
+ # @param alert_specifiers [Array<MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::AlertSpecifier>] Present for `low_remaining_contract_credit_and_commit_balance_reached` notificat
151
162
  #
152
163
  # @param credit_grant_type_filters [Array<String>] An array of strings, representing a way to filter the credit grant this threshol
153
164
  #
@@ -207,6 +218,122 @@ module MetronomeSDK
207
218
  # @return [Array<Symbol>]
208
219
  end
209
220
 
221
+ class AlertSpecifier < MetronomeSDK::Internal::Type::BaseModel
222
+ # @!attribute custom_field_filters
223
+ # A list of custom field filters for notification types that support advanced
224
+ # filtering
225
+ #
226
+ # @return [Array<MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::AlertSpecifier::CustomFieldFilter>, nil]
227
+ optional :custom_field_filters,
228
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Customers::CustomerAlert::Alert::AlertSpecifier::CustomFieldFilter] }
229
+
230
+ # @!attribute exclude
231
+ # If provided, the specifier will not apply to balances that matches the inclusion
232
+ # criteria and any of the excluding values.
233
+ #
234
+ # @return [Array<MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::AlertSpecifier::Exclude>, nil]
235
+ optional :exclude,
236
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Customers::CustomerAlert::Alert::AlertSpecifier::Exclude] }
237
+
238
+ # @!method initialize(custom_field_filters: nil, exclude: nil)
239
+ # Some parameter documentations has been truncated, see
240
+ # {MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::AlertSpecifier} for
241
+ # more details.
242
+ #
243
+ # @param custom_field_filters [Array<MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::AlertSpecifier::CustomFieldFilter>] A list of custom field filters for notification types that support advanced filt
244
+ #
245
+ # @param exclude [Array<MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::AlertSpecifier::Exclude>] If provided, the specifier will not apply to balances that matches the inclusion
246
+
247
+ class CustomFieldFilter < MetronomeSDK::Internal::Type::BaseModel
248
+ # @!attribute entity
249
+ #
250
+ # @return [Symbol, MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::AlertSpecifier::CustomFieldFilter::Entity]
251
+ required :entity,
252
+ enum: -> { MetronomeSDK::V1::Customers::CustomerAlert::Alert::AlertSpecifier::CustomFieldFilter::Entity }
253
+
254
+ # @!attribute key
255
+ #
256
+ # @return [String]
257
+ required :key, String
258
+
259
+ # @!attribute value
260
+ #
261
+ # @return [String, nil]
262
+ optional :value, String
263
+
264
+ # @!method initialize(entity:, key:, value: nil)
265
+ # @param entity [Symbol, MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::AlertSpecifier::CustomFieldFilter::Entity]
266
+ # @param key [String]
267
+ # @param value [String]
268
+
269
+ # @see MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::AlertSpecifier::CustomFieldFilter#entity
270
+ module Entity
271
+ extend MetronomeSDK::Internal::Type::Enum
272
+
273
+ CONTRACT = :Contract
274
+ COMMIT = :Commit
275
+ CONTRACT_CREDIT = :ContractCredit
276
+ CONTRACT_CREDIT_OR_COMMIT = :ContractCreditOrCommit
277
+
278
+ # @!method self.values
279
+ # @return [Array<Symbol>]
280
+ end
281
+ end
282
+
283
+ class Exclude < MetronomeSDK::Internal::Type::BaseModel
284
+ # @!attribute custom_field_filters
285
+ # A list of custom field filters for notification types that support advanced
286
+ # filtering
287
+ #
288
+ # @return [Array<MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::AlertSpecifier::Exclude::CustomFieldFilter>, nil]
289
+ optional :custom_field_filters,
290
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Customers::CustomerAlert::Alert::AlertSpecifier::Exclude::CustomFieldFilter] }
291
+
292
+ # @!method initialize(custom_field_filters: nil)
293
+ # Some parameter documentations has been truncated, see
294
+ # {MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::AlertSpecifier::Exclude}
295
+ # for more details.
296
+ #
297
+ # @param custom_field_filters [Array<MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::AlertSpecifier::Exclude::CustomFieldFilter>] A list of custom field filters for notification types that support advanced filt
298
+
299
+ class CustomFieldFilter < MetronomeSDK::Internal::Type::BaseModel
300
+ # @!attribute entity
301
+ #
302
+ # @return [Symbol, MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::AlertSpecifier::Exclude::CustomFieldFilter::Entity]
303
+ required :entity,
304
+ enum: -> { MetronomeSDK::V1::Customers::CustomerAlert::Alert::AlertSpecifier::Exclude::CustomFieldFilter::Entity }
305
+
306
+ # @!attribute key
307
+ #
308
+ # @return [String]
309
+ required :key, String
310
+
311
+ # @!attribute value
312
+ #
313
+ # @return [String]
314
+ required :value, String
315
+
316
+ # @!method initialize(entity:, key:, value:)
317
+ # @param entity [Symbol, MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::AlertSpecifier::Exclude::CustomFieldFilter::Entity]
318
+ # @param key [String]
319
+ # @param value [String]
320
+
321
+ # @see MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::AlertSpecifier::Exclude::CustomFieldFilter#entity
322
+ module Entity
323
+ extend MetronomeSDK::Internal::Type::Enum
324
+
325
+ CONTRACT = :Contract
326
+ COMMIT = :Commit
327
+ CONTRACT_CREDIT = :ContractCredit
328
+ CONTRACT_CREDIT_OR_COMMIT = :ContractCreditOrCommit
329
+
330
+ # @!method self.values
331
+ # @return [Array<Symbol>]
332
+ end
333
+ end
334
+ end
335
+ end
336
+
210
337
  class CustomFieldFilter < MetronomeSDK::Internal::Type::BaseModel
211
338
  # @!attribute entity
212
339
  #
@@ -77,7 +77,14 @@ module MetronomeSDK
77
77
  # @return [Symbol, MetronomeSDK::Models::V1::Customers::InvoiceListParams::Type, nil]
78
78
  optional :type, enum: -> { MetronomeSDK::V1::Customers::InvoiceListParams::Type }
79
79
 
80
- # @!method initialize(customer_id:, contract_id: nil, credit_type_id: nil, ending_before: nil, limit: nil, next_page: nil, skip_zero_qty_line_items: nil, sort: nil, starting_on: nil, status: nil, type: nil, request_options: {})
80
+ # @!attribute webhook_notification_id
81
+ # Indicates that this API request was triggered by a webhook notification with the
82
+ # provided ID.
83
+ #
84
+ # @return [String, nil]
85
+ optional :webhook_notification_id, String
86
+
87
+ # @!method initialize(customer_id:, contract_id: nil, credit_type_id: nil, ending_before: nil, limit: nil, next_page: nil, skip_zero_qty_line_items: nil, sort: nil, starting_on: nil, status: nil, type: nil, webhook_notification_id: nil, request_options: {})
81
88
  # Some parameter documentations has been truncated, see
82
89
  # {MetronomeSDK::Models::V1::Customers::InvoiceListParams} for more details.
83
90
  #
@@ -103,6 +110,8 @@ module MetronomeSDK
103
110
  #
104
111
  # @param type [Symbol, MetronomeSDK::Models::V1::Customers::InvoiceListParams::Type] Filter invoices by type. Defaults to returning all invoice types.
105
112
  #
113
+ # @param webhook_notification_id [String] Indicates that this API request was triggered by a webhook notification with the
114
+ #
106
115
  # @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}]
107
116
 
108
117
  # Invoice sort order by issued_at, e.g. date_asc or date_desc. Defaults to
@@ -143,6 +143,8 @@ module MetronomeSDK
143
143
  PRIMARY_RED = :Primary_red
144
144
  PROGRESS_BAR = :Progress_bar
145
145
  PROGRESS_BAR_BACKGROUND = :Progress_bar_background
146
+ ACTION = :Action
147
+ ACTION_HOVER = :Action_hover
146
148
 
147
149
  # @!method self.values
148
150
  # @return [Array<Symbol>]