metronome-sdk 2.0.0 → 2.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.
Files changed (151) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +75 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/internal/transport/base_client.rb +7 -1
  5. data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +38 -26
  6. data/lib/metronome_sdk/internal/util.rb +7 -2
  7. data/lib/metronome_sdk/models/contract.rb +1 -0
  8. data/lib/metronome_sdk/models/contract_v2.rb +69 -23
  9. data/lib/metronome_sdk/models/hierarchy_configuration.rb +45 -21
  10. data/lib/metronome_sdk/models/subscription.rb +38 -1
  11. data/lib/metronome_sdk/models/v1/alert_create_params.rb +33 -1
  12. data/lib/metronome_sdk/models/v1/contract_add_manual_balance_entry_params.rb +10 -1
  13. data/lib/metronome_sdk/models/v1/contract_create_params.rb +195 -29
  14. data/lib/metronome_sdk/models/v1/contract_list_balances_params.rb +9 -1
  15. data/lib/metronome_sdk/models/v1/customer_create_params.rb +105 -3
  16. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +14 -10
  17. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb +1 -0
  18. data/lib/metronome_sdk/models/v1/customer_set_billing_configurations_params.rb +1 -0
  19. data/lib/metronome_sdk/models/v1/customer_set_billing_configurations_response.rb +111 -0
  20. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +32 -1
  21. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +21 -2
  22. data/lib/metronome_sdk/models/v1/customers/billing_config_delete_params.rb +1 -0
  23. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rb +1 -0
  24. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +21 -2
  25. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +1 -1
  26. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +34 -1
  27. data/lib/metronome_sdk/models/v1/customers/invoice.rb +144 -4
  28. data/lib/metronome_sdk/models/v1/customers/plan_list_price_adjustments_response.rb +8 -1
  29. data/lib/metronome_sdk/models/v1/payment.rb +7 -1
  30. data/lib/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rb +74 -0
  31. data/lib/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rb +12 -0
  32. data/lib/metronome_sdk/models/v1/settings/billing_provider_create_params.rb +74 -0
  33. data/lib/metronome_sdk/models/v1/settings/billing_provider_create_response.rb +31 -0
  34. data/lib/metronome_sdk/models/v1/settings/billing_provider_list_params.rb +26 -0
  35. data/lib/metronome_sdk/models/v1/settings/billing_provider_list_response.rb +105 -0
  36. data/lib/metronome_sdk/models/v1/usage_search_response.rb +6 -3
  37. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +17 -1
  38. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +17 -1
  39. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +300 -10
  40. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +177 -3
  41. data/lib/metronome_sdk/resources/v1/alerts.rb +3 -1
  42. data/lib/metronome_sdk/resources/v1/contracts.rb +10 -4
  43. data/lib/metronome_sdk/resources/v1/credit_grants.rb +10 -5
  44. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +3 -1
  45. data/lib/metronome_sdk/resources/v1/customers/billing_config.rb +12 -5
  46. data/lib/metronome_sdk/resources/v1/customers/commits.rb +2 -1
  47. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +2 -1
  48. data/lib/metronome_sdk/resources/v1/customers/plans.rb +8 -4
  49. data/lib/metronome_sdk/resources/v1/customers.rb +12 -8
  50. data/lib/metronome_sdk/resources/v1/plans.rb +8 -4
  51. data/lib/metronome_sdk/resources/v1/settings/billing_providers.rb +75 -0
  52. data/lib/metronome_sdk/resources/v1/settings.rb +57 -0
  53. data/lib/metronome_sdk/resources/v1.rb +4 -0
  54. data/lib/metronome_sdk/resources/v2/contracts.rb +10 -2
  55. data/lib/metronome_sdk/version.rb +1 -1
  56. data/lib/metronome_sdk.rb +11 -0
  57. data/manifest.yaml +2 -0
  58. data/rbi/metronome_sdk/internal/transport/base_client.rbi +5 -0
  59. data/rbi/metronome_sdk/internal/transport/pooled_net_requester.rbi +6 -2
  60. data/rbi/metronome_sdk/internal/type/base_model.rbi +8 -4
  61. data/rbi/metronome_sdk/models/contract.rbi +5 -0
  62. data/rbi/metronome_sdk/models/contract_v2.rbi +122 -33
  63. data/rbi/metronome_sdk/models/hierarchy_configuration.rbi +63 -27
  64. data/rbi/metronome_sdk/models/subscription.rbi +64 -3
  65. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +69 -0
  66. data/rbi/metronome_sdk/models/v1/contract_add_manual_balance_entry_params.rbi +13 -0
  67. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +360 -33
  68. data/rbi/metronome_sdk/models/v1/contract_list_balances_params.rbi +11 -0
  69. data/rbi/metronome_sdk/models/v1/customer_create_params.rbi +215 -0
  70. data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +18 -11
  71. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbi +5 -0
  72. data/rbi/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbi +5 -0
  73. data/rbi/metronome_sdk/models/v1/customer_set_billing_configurations_response.rbi +281 -0
  74. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +67 -0
  75. data/rbi/metronome_sdk/models/v1/customers/billing_config_create_params.rbi +29 -0
  76. data/rbi/metronome_sdk/models/v1/customers/billing_config_delete_params.rbi +5 -0
  77. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbi +5 -0
  78. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +24 -0
  79. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +2 -2
  80. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +76 -0
  81. data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +268 -0
  82. data/rbi/metronome_sdk/models/v1/customers/plan_list_price_adjustments_response.rbi +9 -0
  83. data/rbi/metronome_sdk/models/v1/payment.rbi +11 -3
  84. data/rbi/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rbi +128 -0
  85. data/rbi/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rbi +25 -0
  86. data/rbi/metronome_sdk/models/v1/settings/billing_provider_create_params.rbi +162 -0
  87. data/rbi/metronome_sdk/models/v1/settings/billing_provider_create_response.rbi +75 -0
  88. data/rbi/metronome_sdk/models/v1/settings/billing_provider_list_params.rbi +50 -0
  89. data/rbi/metronome_sdk/models/v1/settings/billing_provider_list_response.rbi +245 -0
  90. data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +11 -3
  91. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +22 -0
  92. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +22 -0
  93. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +630 -9
  94. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +367 -3
  95. data/rbi/metronome_sdk/resources/v1/alerts.rbi +5 -0
  96. data/rbi/metronome_sdk/resources/v1/contracts.rbi +13 -1
  97. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +10 -5
  98. data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +5 -0
  99. data/rbi/metronome_sdk/resources/v1/customers/billing_config.rbi +14 -4
  100. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +3 -2
  101. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +2 -1
  102. data/rbi/metronome_sdk/resources/v1/customers/plans.rbi +8 -4
  103. data/rbi/metronome_sdk/resources/v1/customers.rbi +19 -9
  104. data/rbi/metronome_sdk/resources/v1/plans.rbi +8 -4
  105. data/rbi/metronome_sdk/resources/v1/settings/billing_providers.rbi +63 -0
  106. data/rbi/metronome_sdk/resources/v1/settings.rbi +51 -0
  107. data/rbi/metronome_sdk/resources/v1.rbi +3 -0
  108. data/rbi/metronome_sdk/resources/v2/contracts.rbi +12 -0
  109. data/sig/metronome_sdk/internal/transport/base_client.rbs +2 -0
  110. data/sig/metronome_sdk/internal/transport/pooled_net_requester.rbs +4 -1
  111. data/sig/metronome_sdk/models/contract.rbs +2 -0
  112. data/sig/metronome_sdk/models/contract_v2.rbs +33 -6
  113. data/sig/metronome_sdk/models/subscription.rbs +22 -3
  114. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +28 -0
  115. data/sig/metronome_sdk/models/v1/contract_add_manual_balance_entry_params.rbs +7 -0
  116. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +104 -0
  117. data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +7 -0
  118. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +85 -0
  119. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbs +2 -0
  120. data/sig/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbs +2 -0
  121. data/sig/metronome_sdk/models/v1/customer_set_billing_configurations_response.rbs +119 -0
  122. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +26 -1
  123. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +16 -0
  124. data/sig/metronome_sdk/models/v1/customers/billing_config_delete_params.rbs +2 -0
  125. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbs +2 -0
  126. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +14 -0
  127. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +32 -0
  128. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +130 -0
  129. data/sig/metronome_sdk/models/v1/customers/plan_list_price_adjustments_response.rbs +7 -0
  130. data/sig/metronome_sdk/models/v1/payment.rbs +10 -3
  131. data/sig/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rbs +61 -0
  132. data/sig/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rbs +13 -0
  133. data/sig/metronome_sdk/models/v1/settings/billing_provider_create_params.rbs +66 -0
  134. data/sig/metronome_sdk/models/v1/settings/billing_provider_create_response.rbs +34 -0
  135. data/sig/metronome_sdk/models/v1/settings/billing_provider_list_params.rbs +28 -0
  136. data/sig/metronome_sdk/models/v1/settings/billing_provider_list_response.rbs +102 -0
  137. data/sig/metronome_sdk/models/v1/usage_search_response.rbs +3 -1
  138. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +14 -0
  139. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +14 -0
  140. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +234 -3
  141. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +131 -3
  142. data/sig/metronome_sdk/resources/v1/alerts.rbs +1 -0
  143. data/sig/metronome_sdk/resources/v1/contracts.rbs +3 -0
  144. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +1 -0
  145. data/sig/metronome_sdk/resources/v1/customers/billing_config.rbs +2 -0
  146. data/sig/metronome_sdk/resources/v1/customers.rbs +2 -1
  147. data/sig/metronome_sdk/resources/v1/settings/billing_providers.rbs +23 -0
  148. data/sig/metronome_sdk/resources/v1/settings.rbs +20 -0
  149. data/sig/metronome_sdk/resources/v1.rbs +2 -0
  150. data/sig/metronome_sdk/resources/v2/contracts.rbs +4 -0
  151. metadata +29 -2
@@ -31,6 +31,12 @@ module MetronomeSDK
31
31
  optional :customer_billing_provider_configurations,
32
32
  -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::CustomerCreateParams::CustomerBillingProviderConfiguration] }
33
33
 
34
+ # @!attribute customer_revenue_system_configurations
35
+ #
36
+ # @return [Array<MetronomeSDK::Models::V1::CustomerCreateParams::CustomerRevenueSystemConfiguration>, nil]
37
+ optional :customer_revenue_system_configurations,
38
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::CustomerCreateParams::CustomerRevenueSystemConfiguration] }
39
+
34
40
  # @!attribute external_id
35
41
  # (deprecated, use ingest_aliases instead) an alias that can be used to refer to
36
42
  # this customer in usage events
@@ -44,7 +50,7 @@ module MetronomeSDK
44
50
  # @return [Array<String>, nil]
45
51
  optional :ingest_aliases, MetronomeSDK::Internal::Type::ArrayOf[String]
46
52
 
47
- # @!method initialize(name:, billing_config: nil, custom_fields: nil, customer_billing_provider_configurations: nil, external_id: nil, ingest_aliases: nil, request_options: {})
53
+ # @!method initialize(name:, billing_config: nil, custom_fields: nil, customer_billing_provider_configurations: nil, customer_revenue_system_configurations: nil, external_id: nil, ingest_aliases: nil, request_options: {})
48
54
  # Some parameter documentations has been truncated, see
49
55
  # {MetronomeSDK::Models::V1::CustomerCreateParams} for more details.
50
56
  #
@@ -56,6 +62,8 @@ module MetronomeSDK
56
62
  #
57
63
  # @param customer_billing_provider_configurations [Array<MetronomeSDK::Models::V1::CustomerCreateParams::CustomerBillingProviderConfiguration>]
58
64
  #
65
+ # @param customer_revenue_system_configurations [Array<MetronomeSDK::Models::V1::CustomerCreateParams::CustomerRevenueSystemConfiguration>]
66
+ #
59
67
  # @param external_id [String] (deprecated, use ingest_aliases instead) an alias that can be used to refer to t
60
68
  #
61
69
  # @param ingest_aliases [Array<String>] Aliases that can be used to refer to this customer in usage events
@@ -74,6 +82,16 @@ module MetronomeSDK
74
82
  required :billing_provider_type,
75
83
  enum: -> { MetronomeSDK::V1::CustomerCreateParams::BillingConfig::BillingProviderType }
76
84
 
85
+ # @!attribute aws_customer_account_id
86
+ #
87
+ # @return [String, nil]
88
+ optional :aws_customer_account_id, String
89
+
90
+ # @!attribute aws_customer_id
91
+ #
92
+ # @return [String, nil]
93
+ optional :aws_customer_id, String
94
+
77
95
  # @!attribute aws_is_subscription_product
78
96
  # True if the aws_product_code is a SAAS subscription product, false otherwise.
79
97
  #
@@ -91,23 +109,33 @@ module MetronomeSDK
91
109
  optional :aws_region, enum: -> { MetronomeSDK::V1::CustomerCreateParams::BillingConfig::AwsRegion }
92
110
 
93
111
  # @!attribute stripe_collection_method
112
+ # The collection method for the customer's invoices. NOTE:
113
+ # `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
94
114
  #
95
115
  # @return [Symbol, MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig::StripeCollectionMethod, nil]
96
116
  optional :stripe_collection_method,
97
117
  enum: -> { MetronomeSDK::V1::CustomerCreateParams::BillingConfig::StripeCollectionMethod }
98
118
 
99
- # @!method initialize(billing_provider_customer_id:, billing_provider_type:, aws_is_subscription_product: nil, aws_product_code: nil, aws_region: nil, stripe_collection_method: nil)
119
+ # @!method initialize(billing_provider_customer_id:, billing_provider_type:, aws_customer_account_id: nil, aws_customer_id: nil, aws_is_subscription_product: nil, aws_product_code: nil, aws_region: nil, stripe_collection_method: nil)
120
+ # Some parameter documentations has been truncated, see
121
+ # {MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig} for more
122
+ # details.
123
+ #
100
124
  # @param billing_provider_customer_id [String]
101
125
  #
102
126
  # @param billing_provider_type [Symbol, MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig::BillingProviderType]
103
127
  #
128
+ # @param aws_customer_account_id [String]
129
+ #
130
+ # @param aws_customer_id [String]
131
+ #
104
132
  # @param aws_is_subscription_product [Boolean] True if the aws_product_code is a SAAS subscription product, false otherwise.
105
133
  #
106
134
  # @param aws_product_code [String]
107
135
  #
108
136
  # @param aws_region [Symbol, MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig::AwsRegion]
109
137
  #
110
- # @param stripe_collection_method [Symbol, MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig::StripeCollectionMethod]
138
+ # @param stripe_collection_method [Symbol, MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig::StripeCollectionMethod] The collection method for the customer's invoices.
111
139
 
112
140
  # @see MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig#billing_provider_type
113
141
  module BillingProviderType
@@ -121,6 +149,7 @@ module MetronomeSDK
121
149
  QUICKBOOKS_ONLINE = :quickbooks_online
122
150
  WORKDAY = :workday
123
151
  GCP_MARKETPLACE = :gcp_marketplace
152
+ METRONOME = :metronome
124
153
 
125
154
  # @!method self.values
126
155
  # @return [Array<Symbol>]
@@ -160,6 +189,9 @@ module MetronomeSDK
160
189
  # @return [Array<Symbol>]
161
190
  end
162
191
 
192
+ # The collection method for the customer's invoices. NOTE:
193
+ # `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
194
+ #
163
195
  # @see MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig#stripe_collection_method
164
196
  module StripeCollectionMethod
165
197
  extend MetronomeSDK::Internal::Type::Enum
@@ -280,6 +312,76 @@ module MetronomeSDK
280
312
  # @return [Array<Symbol>]
281
313
  end
282
314
  end
315
+
316
+ class CustomerRevenueSystemConfiguration < MetronomeSDK::Internal::Type::BaseModel
317
+ # @!attribute provider
318
+ # The revenue system provider set for this configuration.
319
+ #
320
+ # @return [Symbol, MetronomeSDK::Models::V1::CustomerCreateParams::CustomerRevenueSystemConfiguration::Provider]
321
+ required :provider,
322
+ enum: -> { MetronomeSDK::V1::CustomerCreateParams::CustomerRevenueSystemConfiguration::Provider }
323
+
324
+ # @!attribute configuration
325
+ # Configuration for the revenue system provider. The structure of this object is
326
+ # specific to the revenue system provider. For NetSuite, this should contain
327
+ # `netsuite_customer_id`.
328
+ #
329
+ # @return [Hash{Symbol=>Object}, nil]
330
+ optional :configuration, MetronomeSDK::Internal::Type::HashOf[MetronomeSDK::Internal::Type::Unknown]
331
+
332
+ # @!attribute delivery_method
333
+ # The method to use for delivering invoices to this customer. If not provided, the
334
+ # `delivery_method_id` must be provided.
335
+ #
336
+ # @return [Symbol, MetronomeSDK::Models::V1::CustomerCreateParams::CustomerRevenueSystemConfiguration::DeliveryMethod, nil]
337
+ optional :delivery_method,
338
+ enum: -> { MetronomeSDK::V1::CustomerCreateParams::CustomerRevenueSystemConfiguration::DeliveryMethod }
339
+
340
+ # @!attribute delivery_method_id
341
+ # ID of the delivery method to use for this customer. If not provided, the
342
+ # `delivery_method` must be provided.
343
+ #
344
+ # @return [String, nil]
345
+ optional :delivery_method_id, String
346
+
347
+ # @!method initialize(provider:, configuration: nil, delivery_method: nil, delivery_method_id: nil)
348
+ # Some parameter documentations has been truncated, see
349
+ # {MetronomeSDK::Models::V1::CustomerCreateParams::CustomerRevenueSystemConfiguration}
350
+ # for more details.
351
+ #
352
+ # @param provider [Symbol, MetronomeSDK::Models::V1::CustomerCreateParams::CustomerRevenueSystemConfiguration::Provider] The revenue system provider set for this configuration.
353
+ #
354
+ # @param configuration [Hash{Symbol=>Object}] Configuration for the revenue system provider. The structure of this object is s
355
+ #
356
+ # @param delivery_method [Symbol, MetronomeSDK::Models::V1::CustomerCreateParams::CustomerRevenueSystemConfiguration::DeliveryMethod] The method to use for delivering invoices to this customer. If not provided, the
357
+ #
358
+ # @param delivery_method_id [String] ID of the delivery method to use for this customer. If not provided, the `delive
359
+
360
+ # The revenue system provider set for this configuration.
361
+ #
362
+ # @see MetronomeSDK::Models::V1::CustomerCreateParams::CustomerRevenueSystemConfiguration#provider
363
+ module Provider
364
+ extend MetronomeSDK::Internal::Type::Enum
365
+
366
+ NETSUITE = :netsuite
367
+
368
+ # @!method self.values
369
+ # @return [Array<Symbol>]
370
+ end
371
+
372
+ # The method to use for delivering invoices to this customer. If not provided, the
373
+ # `delivery_method_id` must be provided.
374
+ #
375
+ # @see MetronomeSDK::Models::V1::CustomerCreateParams::CustomerRevenueSystemConfiguration#delivery_method
376
+ module DeliveryMethod
377
+ extend MetronomeSDK::Internal::Type::Enum
378
+
379
+ DIRECT_TO_BILLING_PROVIDER = :direct_to_billing_provider
380
+
381
+ # @!method self.values
382
+ # @return [Array<Symbol>]
383
+ end
384
+ end
283
385
  end
284
386
  end
285
387
  end
@@ -14,21 +14,24 @@ module MetronomeSDK
14
14
  required :customer_id, String
15
15
 
16
16
  # @!attribute events
17
+ # Array of usage events to include in the preview calculation. Must contain at
18
+ # least one event in `merge` mode.
17
19
  #
18
20
  # @return [Array<MetronomeSDK::Models::V1::CustomerPreviewEventsParams::Event>]
19
21
  required :events,
20
22
  -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::CustomerPreviewEventsParams::Event] }
21
23
 
22
24
  # @!attribute mode
23
- # If set to "replace", the preview will be generated as if those were the only
24
- # events for the specified customer. If set to "merge", the events will be merged
25
- # with any existing events for the specified customer. Defaults to "replace".
25
+ # Controls how the provided events are combined with existing usage data. Use
26
+ # `replace` to calculate the preview as if these are the only events for the
27
+ # customer, ignoring all historical usage. Use `merge` to combine these events
28
+ # with the customer's existing usage. Defaults to `replace`.
26
29
  #
27
30
  # @return [Symbol, MetronomeSDK::Models::V1::CustomerPreviewEventsParams::Mode, nil]
28
31
  optional :mode, enum: -> { MetronomeSDK::V1::CustomerPreviewEventsParams::Mode }
29
32
 
30
33
  # @!attribute skip_zero_qty_line_items
31
- # If set, all zero quantity line items will be filtered out of the response.
34
+ # When `true`, line items with zero quantity are excluded from the response.
32
35
  #
33
36
  # @return [Boolean, nil]
34
37
  optional :skip_zero_qty_line_items, MetronomeSDK::Internal::Type::Boolean
@@ -39,11 +42,11 @@ module MetronomeSDK
39
42
  #
40
43
  # @param customer_id [String]
41
44
  #
42
- # @param events [Array<MetronomeSDK::Models::V1::CustomerPreviewEventsParams::Event>]
45
+ # @param events [Array<MetronomeSDK::Models::V1::CustomerPreviewEventsParams::Event>] Array of usage events to include in the preview calculation. Must contain at lea
43
46
  #
44
- # @param mode [Symbol, MetronomeSDK::Models::V1::CustomerPreviewEventsParams::Mode] If set to "replace", the preview will be generated as if those were the only eve
47
+ # @param mode [Symbol, MetronomeSDK::Models::V1::CustomerPreviewEventsParams::Mode] Controls how the provided events are combined with existing usage data. Use `rep
45
48
  #
46
- # @param skip_zero_qty_line_items [Boolean] If set, all zero quantity line items will be filtered out of the response.
49
+ # @param skip_zero_qty_line_items [Boolean] When `true`, line items with zero quantity are excluded from the response.
47
50
  #
48
51
  # @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}]
49
52
 
@@ -85,9 +88,10 @@ module MetronomeSDK
85
88
  # @param transaction_id [String] Optional unique identifier for event deduplication. When provided, preview event
86
89
  end
87
90
 
88
- # If set to "replace", the preview will be generated as if those were the only
89
- # events for the specified customer. If set to "merge", the events will be merged
90
- # with any existing events for the specified customer. Defaults to "replace".
91
+ # Controls how the provided events are combined with existing usage data. Use
92
+ # `replace` to calculate the preview as if these are the only events for the
93
+ # customer, ignoring all historical usage. Use `merge` to combine these events
94
+ # with the customer's existing usage. Defaults to `replace`.
91
95
  module Mode
92
96
  extend MetronomeSDK::Internal::Type::Enum
93
97
 
@@ -102,6 +102,7 @@ module MetronomeSDK
102
102
  QUICKBOOKS_ONLINE = :quickbooks_online
103
103
  WORKDAY = :workday
104
104
  GCP_MARKETPLACE = :gcp_marketplace
105
+ METRONOME = :metronome
105
106
 
106
107
  # @!method self.values
107
108
  # @return [Array<Symbol>]
@@ -99,6 +99,7 @@ module MetronomeSDK
99
99
  QUICKBOOKS_ONLINE = :quickbooks_online
100
100
  WORKDAY = :workday
101
101
  GCP_MARKETPLACE = :gcp_marketplace
102
+ METRONOME = :metronome
102
103
 
103
104
  # @!method self.values
104
105
  # @return [Array<Symbol>]
@@ -0,0 +1,111 @@
1
+ # frozen_string_literal: true
2
+
3
+ module MetronomeSDK
4
+ module Models
5
+ module V1
6
+ # @see MetronomeSDK::Resources::V1::Customers#set_billing_configurations
7
+ class CustomerSetBillingConfigurationsResponse < MetronomeSDK::Internal::Type::BaseModel
8
+ # @!attribute data
9
+ #
10
+ # @return [Array<MetronomeSDK::Models::V1::CustomerSetBillingConfigurationsResponse::Data>]
11
+ required :data,
12
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V1::CustomerSetBillingConfigurationsResponse::Data] }
13
+
14
+ # @!method initialize(data:)
15
+ # @param data [Array<MetronomeSDK::Models::V1::CustomerSetBillingConfigurationsResponse::Data>]
16
+
17
+ class Data < MetronomeSDK::Internal::Type::BaseModel
18
+ # @!attribute id
19
+ # ID of the created configuration
20
+ #
21
+ # @return [String, nil]
22
+ optional :id, String
23
+
24
+ # @!attribute billing_provider
25
+ # The billing provider set for this configuration.
26
+ #
27
+ # @return [Symbol, MetronomeSDK::Models::V1::CustomerSetBillingConfigurationsResponse::Data::BillingProvider, nil]
28
+ optional :billing_provider,
29
+ enum: -> { MetronomeSDK::Models::V1::CustomerSetBillingConfigurationsResponse::Data::BillingProvider }
30
+
31
+ # @!attribute configuration
32
+ # Configuration for the billing provider. The structure of this object is specific
33
+ # to the billing provider and delivery method combination.
34
+ #
35
+ # @return [Hash{Symbol=>Object}, nil]
36
+ optional :configuration, MetronomeSDK::Internal::Type::HashOf[MetronomeSDK::Internal::Type::Unknown]
37
+
38
+ # @!attribute customer_id
39
+ # ID of the customer this configuration is associated with.
40
+ #
41
+ # @return [String, nil]
42
+ optional :customer_id, String
43
+
44
+ # @!attribute delivery_method_id
45
+ # ID of the delivery method used for this customer configuration.
46
+ #
47
+ # @return [String, nil]
48
+ optional :delivery_method_id, String
49
+
50
+ # @!attribute tax_provider
51
+ # The tax provider set for this configuration.
52
+ #
53
+ # @return [Symbol, MetronomeSDK::Models::V1::CustomerSetBillingConfigurationsResponse::Data::TaxProvider, nil]
54
+ optional :tax_provider,
55
+ enum: -> { MetronomeSDK::Models::V1::CustomerSetBillingConfigurationsResponse::Data::TaxProvider }
56
+
57
+ # @!method initialize(id: nil, billing_provider: nil, configuration: nil, customer_id: nil, delivery_method_id: nil, tax_provider: nil)
58
+ # Some parameter documentations has been truncated, see
59
+ # {MetronomeSDK::Models::V1::CustomerSetBillingConfigurationsResponse::Data} for
60
+ # more details.
61
+ #
62
+ # @param id [String] ID of the created configuration
63
+ #
64
+ # @param billing_provider [Symbol, MetronomeSDK::Models::V1::CustomerSetBillingConfigurationsResponse::Data::BillingProvider] The billing provider set for this configuration.
65
+ #
66
+ # @param configuration [Hash{Symbol=>Object}] Configuration for the billing provider. The structure of this object is specific
67
+ #
68
+ # @param customer_id [String] ID of the customer this configuration is associated with.
69
+ #
70
+ # @param delivery_method_id [String] ID of the delivery method used for this customer configuration.
71
+ #
72
+ # @param tax_provider [Symbol, MetronomeSDK::Models::V1::CustomerSetBillingConfigurationsResponse::Data::TaxProvider] The tax provider set for this configuration.
73
+
74
+ # The billing provider set for this configuration.
75
+ #
76
+ # @see MetronomeSDK::Models::V1::CustomerSetBillingConfigurationsResponse::Data#billing_provider
77
+ module BillingProvider
78
+ extend MetronomeSDK::Internal::Type::Enum
79
+
80
+ AWS_MARKETPLACE = :aws_marketplace
81
+ STRIPE = :stripe
82
+ NETSUITE = :netsuite
83
+ CUSTOM = :custom
84
+ AZURE_MARKETPLACE = :azure_marketplace
85
+ QUICKBOOKS_ONLINE = :quickbooks_online
86
+ WORKDAY = :workday
87
+ GCP_MARKETPLACE = :gcp_marketplace
88
+ METRONOME = :metronome
89
+
90
+ # @!method self.values
91
+ # @return [Array<Symbol>]
92
+ end
93
+
94
+ # The tax provider set for this configuration.
95
+ #
96
+ # @see MetronomeSDK::Models::V1::CustomerSetBillingConfigurationsResponse::Data#tax_provider
97
+ module TaxProvider
98
+ extend MetronomeSDK::Internal::Type::Enum
99
+
100
+ ANROK = :anrok
101
+ AVALARA = :avalara
102
+ STRIPE = :stripe
103
+
104
+ # @!method self.values
105
+ # @return [Array<Symbol>]
106
+ end
107
+ end
108
+ end
109
+ end
110
+ end
111
+ end
@@ -37,7 +37,14 @@ module MetronomeSDK
37
37
  optional :plans_or_contracts,
38
38
  enum: -> { MetronomeSDK::V1::Customers::AlertRetrieveParams::PlansOrContracts }
39
39
 
40
- # @!method initialize(alert_id:, customer_id:, group_values: nil, plans_or_contracts: nil, request_options: {})
40
+ # @!attribute seat_filter
41
+ # Only allowed for `low_remaining_seat_balance_reached` notifications. This
42
+ # filters alerts by the seat group key-value pair.
43
+ #
44
+ # @return [MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::SeatFilter, nil]
45
+ optional :seat_filter, -> { MetronomeSDK::V1::Customers::AlertRetrieveParams::SeatFilter }
46
+
47
+ # @!method initialize(alert_id:, customer_id:, group_values: nil, plans_or_contracts: nil, seat_filter: nil, request_options: {})
41
48
  # Some parameter documentations has been truncated, see
42
49
  # {MetronomeSDK::Models::V1::Customers::AlertRetrieveParams} for more details.
43
50
  #
@@ -49,6 +56,8 @@ module MetronomeSDK
49
56
  #
50
57
  # @param plans_or_contracts [Symbol, MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::PlansOrContracts] When parallel threshold notifications are enabled during migration, this flag de
51
58
  #
59
+ # @param seat_filter [MetronomeSDK::Models::V1::Customers::AlertRetrieveParams::SeatFilter] Only allowed for `low_remaining_seat_balance_reached` notifications. This filter
60
+ #
52
61
  # @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}]
53
62
 
54
63
  class GroupValue < MetronomeSDK::Internal::Type::BaseModel
@@ -81,6 +90,28 @@ module MetronomeSDK
81
90
  # @!method self.values
82
91
  # @return [Array<Symbol>]
83
92
  end
93
+
94
+ class SeatFilter < MetronomeSDK::Internal::Type::BaseModel
95
+ # @!attribute seat_group_key
96
+ # The seat group key (e.g., "seat_id", "user_id")
97
+ #
98
+ # @return [String]
99
+ required :seat_group_key, String
100
+
101
+ # @!attribute seat_group_value
102
+ # The specific seat identifier to filter by
103
+ #
104
+ # @return [String]
105
+ required :seat_group_value, String
106
+
107
+ # @!method initialize(seat_group_key:, seat_group_value:)
108
+ # Only allowed for `low_remaining_seat_balance_reached` notifications. This
109
+ # filters alerts by the seat group key-value pair.
110
+ #
111
+ # @param seat_group_key [String] The seat group key (e.g., "seat_id", "user_id")
112
+ #
113
+ # @param seat_group_value [String] The specific seat identifier to filter by
114
+ end
84
115
  end
85
116
  end
86
117
  end
@@ -27,6 +27,16 @@ module MetronomeSDK
27
27
  # @return [String]
28
28
  required :billing_provider_customer_id, String
29
29
 
30
+ # @!attribute aws_customer_account_id
31
+ #
32
+ # @return [String, nil]
33
+ optional :aws_customer_account_id, String
34
+
35
+ # @!attribute aws_customer_id
36
+ #
37
+ # @return [String, nil]
38
+ optional :aws_customer_id, String
39
+
30
40
  # @!attribute aws_product_code
31
41
  #
32
42
  # @return [String, nil]
@@ -38,12 +48,14 @@ module MetronomeSDK
38
48
  optional :aws_region, enum: -> { MetronomeSDK::V1::Customers::BillingConfigCreateParams::AwsRegion }
39
49
 
40
50
  # @!attribute stripe_collection_method
51
+ # The collection method for the customer's invoices. NOTE:
52
+ # `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
41
53
  #
42
54
  # @return [Symbol, MetronomeSDK::Models::V1::Customers::BillingConfigCreateParams::StripeCollectionMethod, nil]
43
55
  optional :stripe_collection_method,
44
56
  enum: -> { MetronomeSDK::V1::Customers::BillingConfigCreateParams::StripeCollectionMethod }
45
57
 
46
- # @!method initialize(customer_id:, billing_provider_type:, billing_provider_customer_id:, aws_product_code: nil, aws_region: nil, stripe_collection_method: nil, request_options: {})
58
+ # @!method initialize(customer_id:, billing_provider_type:, billing_provider_customer_id:, aws_customer_account_id: nil, aws_customer_id: nil, aws_product_code: nil, aws_region: nil, stripe_collection_method: nil, request_options: {})
47
59
  # Some parameter documentations has been truncated, see
48
60
  # {MetronomeSDK::Models::V1::Customers::BillingConfigCreateParams} for more
49
61
  # details.
@@ -54,11 +66,15 @@ module MetronomeSDK
54
66
  #
55
67
  # @param billing_provider_customer_id [String] The customer ID in the billing provider's system. For Azure, this is the subscri
56
68
  #
69
+ # @param aws_customer_account_id [String]
70
+ #
71
+ # @param aws_customer_id [String]
72
+ #
57
73
  # @param aws_product_code [String]
58
74
  #
59
75
  # @param aws_region [Symbol, MetronomeSDK::Models::V1::Customers::BillingConfigCreateParams::AwsRegion]
60
76
  #
61
- # @param stripe_collection_method [Symbol, MetronomeSDK::Models::V1::Customers::BillingConfigCreateParams::StripeCollectionMethod]
77
+ # @param stripe_collection_method [Symbol, MetronomeSDK::Models::V1::Customers::BillingConfigCreateParams::StripeCollectionMethod] The collection method for the customer's invoices.
62
78
  #
63
79
  # @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}]
64
80
 
@@ -73,6 +89,7 @@ module MetronomeSDK
73
89
  QUICKBOOKS_ONLINE = :quickbooks_online
74
90
  WORKDAY = :workday
75
91
  GCP_MARKETPLACE = :gcp_marketplace
92
+ METRONOME = :metronome
76
93
 
77
94
  # @!method self.values
78
95
  # @return [Array<Symbol>]
@@ -111,6 +128,8 @@ module MetronomeSDK
111
128
  # @return [Array<Symbol>]
112
129
  end
113
130
 
131
+ # The collection method for the customer's invoices. NOTE:
132
+ # `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
114
133
  module StripeCollectionMethod
115
134
  extend MetronomeSDK::Internal::Type::Enum
116
135
 
@@ -36,6 +36,7 @@ module MetronomeSDK
36
36
  QUICKBOOKS_ONLINE = :quickbooks_online
37
37
  WORKDAY = :workday
38
38
  GCP_MARKETPLACE = :gcp_marketplace
39
+ METRONOME = :metronome
39
40
 
40
41
  # @!method self.values
41
42
  # @return [Array<Symbol>]
@@ -36,6 +36,7 @@ module MetronomeSDK
36
36
  QUICKBOOKS_ONLINE = :quickbooks_online
37
37
  WORKDAY = :workday
38
38
  GCP_MARKETPLACE = :gcp_marketplace
39
+ METRONOME = :metronome
39
40
 
40
41
  # @!method self.values
41
42
  # @return [Array<Symbol>]
@@ -16,6 +16,16 @@ module MetronomeSDK
16
16
 
17
17
  # @see MetronomeSDK::Models::V1::Customers::BillingConfigRetrieveResponse#data
18
18
  class Data < MetronomeSDK::Internal::Type::BaseModel
19
+ # @!attribute aws_customer_account_id
20
+ #
21
+ # @return [String, nil]
22
+ optional :aws_customer_account_id, String
23
+
24
+ # @!attribute aws_customer_id
25
+ #
26
+ # @return [String, nil]
27
+ optional :aws_customer_id, String
28
+
19
29
  # @!attribute aws_expiration_date
20
30
  # Contract expiration date for the customer. The expected format is RFC 3339 and
21
31
  # can be retrieved from
@@ -74,16 +84,22 @@ module MetronomeSDK
74
84
  optional :billing_provider_customer_id, String
75
85
 
76
86
  # @!attribute stripe_collection_method
87
+ # The collection method for the customer's invoices. NOTE:
88
+ # `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
77
89
  #
78
90
  # @return [Symbol, MetronomeSDK::Models::V1::Customers::BillingConfigRetrieveResponse::Data::StripeCollectionMethod, nil]
79
91
  optional :stripe_collection_method,
80
92
  enum: -> { MetronomeSDK::Models::V1::Customers::BillingConfigRetrieveResponse::Data::StripeCollectionMethod }
81
93
 
82
- # @!method initialize(aws_expiration_date: nil, aws_is_subscription_product: nil, aws_product_code: nil, aws_region: nil, azure_expiration_date: nil, azure_plan_id: nil, azure_start_date: nil, azure_subscription_status: nil, billing_provider_customer_id: nil, stripe_collection_method: nil)
94
+ # @!method initialize(aws_customer_account_id: nil, aws_customer_id: nil, aws_expiration_date: nil, aws_is_subscription_product: nil, aws_product_code: nil, aws_region: nil, azure_expiration_date: nil, azure_plan_id: nil, azure_start_date: nil, azure_subscription_status: nil, billing_provider_customer_id: nil, stripe_collection_method: nil)
83
95
  # Some parameter documentations has been truncated, see
84
96
  # {MetronomeSDK::Models::V1::Customers::BillingConfigRetrieveResponse::Data} for
85
97
  # more details.
86
98
  #
99
+ # @param aws_customer_account_id [String]
100
+ #
101
+ # @param aws_customer_id [String]
102
+ #
87
103
  # @param aws_expiration_date [Time] Contract expiration date for the customer. The expected format is RFC 3339 and c
88
104
  #
89
105
  # @param aws_is_subscription_product [Boolean] True if the aws_product_code is a SAAS subscription product, false otherwise.
@@ -102,7 +118,7 @@ module MetronomeSDK
102
118
  #
103
119
  # @param billing_provider_customer_id [String]
104
120
  #
105
- # @param stripe_collection_method [Symbol, MetronomeSDK::Models::V1::Customers::BillingConfigRetrieveResponse::Data::StripeCollectionMethod]
121
+ # @param stripe_collection_method [Symbol, MetronomeSDK::Models::V1::Customers::BillingConfigRetrieveResponse::Data::StripeCollectionMethod] The collection method for the customer's invoices.
106
122
 
107
123
  # @see MetronomeSDK::Models::V1::Customers::BillingConfigRetrieveResponse::Data#aws_region
108
124
  module AwsRegion
@@ -151,6 +167,9 @@ module MetronomeSDK
151
167
  # @return [Array<Symbol>]
152
168
  end
153
169
 
170
+ # The collection method for the customer's invoices. NOTE:
171
+ # `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
172
+ #
154
173
  # @see MetronomeSDK::Models::V1::Customers::BillingConfigRetrieveResponse::Data#stripe_collection_method
155
174
  module StripeCollectionMethod
156
175
  extend MetronomeSDK::Internal::Type::Enum
@@ -78,7 +78,7 @@ module MetronomeSDK
78
78
  # @!attribute invoice_contract_id
79
79
  # The contract that this commit will be billed on. This is required for "POSTPAID"
80
80
  # commits and for "PREPAID" commits unless there is no invoice schedule above
81
- # (i.e., the commit is 'free').
81
+ # (i.e., the commit is 'free'), or if do_not_invoice is set to true.
82
82
  #
83
83
  # @return [String, nil]
84
84
  optional :invoice_contract_id, String
@@ -118,6 +118,13 @@ module MetronomeSDK
118
118
  # @return [Array<String>, nil]
119
119
  optional :invoice_types_filter, MetronomeSDK::Internal::Type::ArrayOf[String]
120
120
 
121
+ # @!attribute seat_filter
122
+ # Only present for low_remaining_seat_balance_reached notifications. The seat
123
+ # group key or seat group key-value pair the alert is scoped to.
124
+ #
125
+ # @return [MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::SeatFilter, nil]
126
+ optional :seat_filter, -> { MetronomeSDK::V1::Customers::CustomerAlert::Alert::SeatFilter }
127
+
121
128
  # @!attribute uniqueness_key
122
129
  # Prevents the creation of duplicates. If a request to create a record is made
123
130
  # with a previously used uniqueness key, a new record will not be created and the
@@ -126,7 +133,7 @@ module MetronomeSDK
126
133
  # @return [String, nil]
127
134
  optional :uniqueness_key, String
128
135
 
129
- # @!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, uniqueness_key: nil)
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)
130
137
  # Some parameter documentations has been truncated, see
131
138
  # {MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert} for more details.
132
139
  #
@@ -154,6 +161,8 @@ module MetronomeSDK
154
161
  #
155
162
  # @param invoice_types_filter [Array<String>] Only supported for invoice_total_reached threshold notifications. A list of invo
156
163
  #
164
+ # @param seat_filter [MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert::SeatFilter] Only present for low_remaining_seat_balance_reached notifications. The seat grou
165
+ #
157
166
  # @param uniqueness_key [String] Prevents the creation of duplicates. If a request to create a record is made wit
158
167
 
159
168
  # Status of the threshold notification
@@ -191,6 +200,7 @@ module MetronomeSDK
191
200
  LOW_REMAINING_CONTRACT_CREDIT_PERCENTAGE_REACHED = :low_remaining_contract_credit_percentage_reached
192
201
  LOW_REMAINING_CONTRACT_CREDIT_AND_COMMIT_BALANCE_REACHED =
193
202
  :low_remaining_contract_credit_and_commit_balance_reached
203
+ LOW_REMAINING_SEAT_BALANCE_REACHED = :low_remaining_seat_balance_reached
194
204
  INVOICE_TOTAL_REACHED = :invoice_total_reached
195
205
 
196
206
  # @!method self.values
@@ -267,6 +277,29 @@ module MetronomeSDK
267
277
  # @param key [String]
268
278
  # @param value [String]
269
279
  end
280
+
281
+ # @see MetronomeSDK::Models::V1::Customers::CustomerAlert::Alert#seat_filter
282
+ class SeatFilter < MetronomeSDK::Internal::Type::BaseModel
283
+ # @!attribute seat_group_key
284
+ # The seat group key (e.g., "seat_id", "user_id") that the alert is scoped to.
285
+ #
286
+ # @return [String]
287
+ required :seat_group_key, String
288
+
289
+ # @!attribute seat_group_value
290
+ # The seat group value that the alert is scoped to.
291
+ #
292
+ # @return [String, nil]
293
+ optional :seat_group_value, String
294
+
295
+ # @!method initialize(seat_group_key:, seat_group_value: nil)
296
+ # Only present for low_remaining_seat_balance_reached notifications. The seat
297
+ # group key or seat group key-value pair the alert is scoped to.
298
+ #
299
+ # @param seat_group_key [String] The seat group key (e.g., "seat_id", "user_id") that the alert is scoped to.
300
+ #
301
+ # @param seat_group_value [String] The seat group value that the alert is scoped to.
302
+ end
270
303
  end
271
304
 
272
305
  # The status of the threshold notification. If the notification is archived, null