metronome-sdk 2.1.0 → 3.0.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 (148) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +65 -0
  3. data/README.md +10 -1
  4. data/lib/metronome_sdk/internal/transport/base_client.rb +7 -1
  5. data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +18 -12
  6. data/lib/metronome_sdk/internal/util.rb +7 -2
  7. data/lib/metronome_sdk/models/commit.rb +69 -1
  8. data/lib/metronome_sdk/models/contract_v2.rb +45 -2
  9. data/lib/metronome_sdk/models/credit.rb +69 -1
  10. data/lib/metronome_sdk/models/rate.rb +1 -11
  11. data/lib/metronome_sdk/models/subscription.rb +32 -5
  12. data/lib/metronome_sdk/models/v1/alert_create_params.rb +33 -1
  13. data/lib/metronome_sdk/models/v1/contract_add_manual_balance_entry_params.rb +10 -1
  14. data/lib/metronome_sdk/models/v1/contract_create_params.rb +136 -20
  15. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +1 -11
  16. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +1 -11
  17. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +1 -11
  18. data/lib/metronome_sdk/models/v1/custom_field_add_key_params.rb +4 -0
  19. data/lib/metronome_sdk/models/v1/custom_field_delete_values_params.rb +4 -0
  20. data/lib/metronome_sdk/models/v1/custom_field_list_keys_params.rb +4 -0
  21. data/lib/metronome_sdk/models/v1/custom_field_list_keys_response.rb +4 -0
  22. data/lib/metronome_sdk/models/v1/custom_field_remove_key_params.rb +4 -0
  23. data/lib/metronome_sdk/models/v1/custom_field_set_values_params.rb +4 -0
  24. data/lib/metronome_sdk/models/v1/customer_create_params.rb +94 -2
  25. data/lib/metronome_sdk/models/v1/customer_set_billing_configurations_response.rb +111 -0
  26. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +32 -1
  27. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +15 -1
  28. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +15 -1
  29. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +33 -1
  30. data/lib/metronome_sdk/models/v1/customers/invoice.rb +71 -3
  31. data/lib/metronome_sdk/models/v1/customers/plan_list_price_adjustments_response.rb +8 -1
  32. data/lib/metronome_sdk/models/v1/payment.rb +40 -1
  33. data/lib/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rb +10 -1
  34. data/lib/metronome_sdk/models/v1/settings/billing_provider_create_params.rb +1 -0
  35. data/lib/metronome_sdk/models/v1/usage_search_response.rb +6 -3
  36. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +17 -1
  37. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +17 -1
  38. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +285 -22
  39. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +177 -3
  40. data/lib/metronome_sdk/resources/v1/alerts.rb +3 -1
  41. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +1 -3
  42. data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +1 -1
  43. data/lib/metronome_sdk/resources/v1/contracts.rb +6 -2
  44. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +3 -1
  45. data/lib/metronome_sdk/resources/v1/customers/billing_config.rb +8 -4
  46. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +7 -7
  47. data/lib/metronome_sdk/resources/v1/customers/plans.rb +5 -5
  48. data/lib/metronome_sdk/resources/v1/customers.rb +12 -10
  49. data/lib/metronome_sdk/resources/v1/plans.rb +2 -2
  50. data/lib/metronome_sdk/resources/v1/settings.rb +3 -1
  51. data/lib/metronome_sdk/resources/v1/usage.rb +7 -7
  52. data/lib/metronome_sdk/resources/v2/contracts.rb +10 -2
  53. data/lib/metronome_sdk/version.rb +1 -1
  54. data/lib/metronome_sdk.rb +3 -0
  55. data/manifest.yaml +2 -0
  56. data/rbi/metronome_sdk/internal/transport/base_client.rbi +5 -0
  57. data/rbi/metronome_sdk/internal/transport/pooled_net_requester.rbi +6 -2
  58. data/rbi/metronome_sdk/internal/type/base_model.rbi +8 -4
  59. data/rbi/metronome_sdk/models/commit.rbi +171 -0
  60. data/rbi/metronome_sdk/models/contract_v2.rbi +85 -6
  61. data/rbi/metronome_sdk/models/credit.rbi +171 -0
  62. data/rbi/metronome_sdk/models/rate.rbi +3 -18
  63. data/rbi/metronome_sdk/models/subscription.rbi +55 -9
  64. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +69 -0
  65. data/rbi/metronome_sdk/models/v1/contract_add_manual_balance_entry_params.rbi +13 -0
  66. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +288 -24
  67. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +3 -18
  68. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +0 -15
  69. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +3 -18
  70. data/rbi/metronome_sdk/models/v1/custom_field_add_key_params.rbi +20 -0
  71. data/rbi/metronome_sdk/models/v1/custom_field_delete_values_params.rbi +20 -0
  72. data/rbi/metronome_sdk/models/v1/custom_field_list_keys_params.rbi +20 -0
  73. data/rbi/metronome_sdk/models/v1/custom_field_list_keys_response.rbi +20 -0
  74. data/rbi/metronome_sdk/models/v1/custom_field_remove_key_params.rbi +20 -0
  75. data/rbi/metronome_sdk/models/v1/custom_field_set_values_params.rbi +20 -0
  76. data/rbi/metronome_sdk/models/v1/customer_create_params.rbi +204 -0
  77. data/rbi/metronome_sdk/models/v1/customer_set_billing_configurations_response.rbi +281 -0
  78. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +67 -0
  79. data/rbi/metronome_sdk/models/v1/customers/billing_config_create_params.rbi +18 -0
  80. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +18 -0
  81. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +71 -0
  82. data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +121 -0
  83. data/rbi/metronome_sdk/models/v1/customers/plan_list_price_adjustments_response.rbi +9 -0
  84. data/rbi/metronome_sdk/models/v1/payment.rbi +79 -0
  85. data/rbi/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rbi +13 -0
  86. data/rbi/metronome_sdk/models/v1/settings/billing_provider_create_params.rbi +5 -0
  87. data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +11 -3
  88. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +22 -0
  89. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +22 -0
  90. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +616 -27
  91. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +367 -3
  92. data/rbi/metronome_sdk/resources/v1/alerts.rbi +5 -0
  93. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +0 -5
  94. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards.rbi +1 -1
  95. data/rbi/metronome_sdk/resources/v1/contracts.rbi +9 -0
  96. data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +5 -0
  97. data/rbi/metronome_sdk/resources/v1/customers/billing_config.rbi +9 -3
  98. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +7 -7
  99. data/rbi/metronome_sdk/resources/v1/customers/plans.rbi +5 -5
  100. data/rbi/metronome_sdk/resources/v1/customers.rbi +15 -8
  101. data/rbi/metronome_sdk/resources/v1/plans.rbi +2 -2
  102. data/rbi/metronome_sdk/resources/v1/settings.rbi +4 -0
  103. data/rbi/metronome_sdk/resources/v1/usage.rbi +7 -7
  104. data/rbi/metronome_sdk/resources/v2/contracts.rbi +12 -0
  105. data/sig/metronome_sdk/internal/transport/base_client.rbs +2 -0
  106. data/sig/metronome_sdk/internal/transport/pooled_net_requester.rbs +4 -1
  107. data/sig/metronome_sdk/models/commit.rbs +74 -0
  108. data/sig/metronome_sdk/models/contract_v2.rbs +45 -6
  109. data/sig/metronome_sdk/models/credit.rbs +74 -0
  110. data/sig/metronome_sdk/models/rate.rbs +3 -10
  111. data/sig/metronome_sdk/models/subscription.rbs +22 -3
  112. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +28 -0
  113. data/sig/metronome_sdk/models/v1/contract_add_manual_balance_entry_params.rbs +7 -0
  114. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +104 -0
  115. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +3 -10
  116. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +1 -8
  117. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +3 -10
  118. data/sig/metronome_sdk/models/v1/custom_field_add_key_params.rbs +8 -0
  119. data/sig/metronome_sdk/models/v1/custom_field_delete_values_params.rbs +8 -0
  120. data/sig/metronome_sdk/models/v1/custom_field_list_keys_params.rbs +8 -0
  121. data/sig/metronome_sdk/models/v1/custom_field_list_keys_response.rbs +8 -0
  122. data/sig/metronome_sdk/models/v1/custom_field_remove_key_params.rbs +8 -0
  123. data/sig/metronome_sdk/models/v1/custom_field_set_values_params.rbs +8 -0
  124. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +83 -0
  125. data/sig/metronome_sdk/models/v1/customer_set_billing_configurations_response.rbs +119 -0
  126. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +26 -1
  127. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +14 -0
  128. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +14 -0
  129. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +30 -0
  130. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +64 -0
  131. data/sig/metronome_sdk/models/v1/customers/plan_list_price_adjustments_response.rbs +7 -0
  132. data/sig/metronome_sdk/models/v1/payment.rbs +45 -0
  133. data/sig/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rbs +8 -1
  134. data/sig/metronome_sdk/models/v1/settings/billing_provider_create_params.rbs +3 -1
  135. data/sig/metronome_sdk/models/v1/usage_search_response.rbs +3 -1
  136. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +14 -0
  137. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +14 -0
  138. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +232 -3
  139. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +131 -3
  140. data/sig/metronome_sdk/resources/v1/alerts.rbs +1 -0
  141. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +0 -1
  142. data/sig/metronome_sdk/resources/v1/contracts.rbs +2 -0
  143. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +1 -0
  144. data/sig/metronome_sdk/resources/v1/customers/billing_config.rbs +2 -0
  145. data/sig/metronome_sdk/resources/v1/customers.rbs +2 -1
  146. data/sig/metronome_sdk/resources/v1/settings.rbs +1 -0
  147. data/sig/metronome_sdk/resources/v2/contracts.rbs +4 -0
  148. metadata +19 -2
@@ -69,6 +69,10 @@ module MetronomeSDK
69
69
  T::Array[
70
70
  MetronomeSDK::V1::CustomerCreateParams::CustomerBillingProviderConfiguration::OrHash
71
71
  ],
72
+ customer_revenue_system_configurations:
73
+ T::Array[
74
+ MetronomeSDK::V1::CustomerCreateParams::CustomerRevenueSystemConfiguration::OrHash
75
+ ],
72
76
  external_id: String,
73
77
  ingest_aliases: T::Array[String],
74
78
  request_options: MetronomeSDK::RequestOptions::OrHash
@@ -81,6 +85,7 @@ module MetronomeSDK
81
85
  # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
82
86
  custom_fields: nil,
83
87
  customer_billing_provider_configurations: nil,
88
+ customer_revenue_system_configurations: nil,
84
89
  # (deprecated, use ingest_aliases instead) an alias that can be used to refer to
85
90
  # this customer in usage events
86
91
  external_id: nil,
@@ -185,7 +190,7 @@ module MetronomeSDK
185
190
  )
186
191
  end
187
192
  def list_billable_metrics(
188
- # Path param:
193
+ # Path param
189
194
  customer_id:,
190
195
  # Query param: If true, the list of returned metrics will include archived metrics
191
196
  include_archived: nil,
@@ -219,7 +224,7 @@ module MetronomeSDK
219
224
  )
220
225
  end
221
226
  def list_costs(
222
- # Path param:
227
+ # Path param
223
228
  customer_id:,
224
229
  # Query param: RFC 3339 timestamp (exclusive)
225
230
  ending_before:,
@@ -251,7 +256,7 @@ module MetronomeSDK
251
256
  ).returns(MetronomeSDK::Models::V1::CustomerPreviewEventsResponse)
252
257
  end
253
258
  def preview_events(
254
- # Path param:
259
+ # Path param
255
260
  customer_id:,
256
261
  # Body param: Array of usage events to include in the preview calculation. Must
257
262
  # contain at least one event in `merge` mode.
@@ -335,7 +340,9 @@ module MetronomeSDK
335
340
  MetronomeSDK::V1::CustomerSetBillingConfigurationsParams::Data::OrHash
336
341
  ],
337
342
  request_options: MetronomeSDK::RequestOptions::OrHash
338
- ).void
343
+ ).returns(
344
+ MetronomeSDK::Models::V1::CustomerSetBillingConfigurationsResponse
345
+ )
339
346
  end
340
347
  def set_billing_configurations(data:, request_options: {})
341
348
  end
@@ -361,9 +368,9 @@ module MetronomeSDK
361
368
  ).void
362
369
  end
363
370
  def set_ingest_aliases(
364
- # Path param:
371
+ # Path param
365
372
  customer_id:,
366
- # Body param:
373
+ # Body param
367
374
  ingest_aliases:,
368
375
  request_options: {}
369
376
  )
@@ -382,7 +389,7 @@ module MetronomeSDK
382
389
  ).returns(MetronomeSDK::Models::V1::CustomerSetNameResponse)
383
390
  end
384
391
  def set_name(
385
- # Path param:
392
+ # Path param
386
393
  customer_id:,
387
394
  # Body param: The new name for the customer. This will be truncated to 160
388
395
  # characters if the provided name is longer.
@@ -404,7 +411,7 @@ module MetronomeSDK
404
411
  ).void
405
412
  end
406
413
  def update_config(
407
- # Path param:
414
+ # Path param
408
415
  customer_id:,
409
416
  # Body param: Leave in draft or set to auto-advance on invoices sent to Stripe.
410
417
  # Falls back to the client-level config if unset, which defaults to true if unset.
@@ -52,7 +52,7 @@ module MetronomeSDK
52
52
  )
53
53
  end
54
54
  def list_charges(
55
- # Path param:
55
+ # Path param
56
56
  plan_id:,
57
57
  # Query param: Max number of results that should be returned
58
58
  limit: nil,
@@ -79,7 +79,7 @@ module MetronomeSDK
79
79
  )
80
80
  end
81
81
  def list_customers(
82
- # Path param:
82
+ # Path param
83
83
  plan_id:,
84
84
  # Query param: Max number of results that should be returned
85
85
  limit: nil,
@@ -18,6 +18,7 @@ module MetronomeSDK
18
18
  avalara_password: String,
19
19
  avalara_username: String,
20
20
  delivery_method_ids: T::Array[String],
21
+ commit_transactions: T::Boolean,
21
22
  request_options: MetronomeSDK::RequestOptions::OrHash
22
23
  ).returns(
23
24
  MetronomeSDK::Models::V1::SettingUpsertAvalaraCredentialsResponse
@@ -33,6 +34,9 @@ module MetronomeSDK
33
34
  # The delivery method IDs of the billing provider configurations to update, can be
34
35
  # found in the response of the `/listConfiguredBillingProviders` endpoint.
35
36
  delivery_method_ids:,
37
+ # Commit transactions if you want Metronome tax calculations used for reporting
38
+ # and tax filings.
39
+ commit_transactions: nil,
36
40
  request_options: {}
37
41
  )
38
42
  end
@@ -57,9 +57,9 @@ module MetronomeSDK
57
57
  )
58
58
  end
59
59
  def list(
60
- # Body param:
60
+ # Body param
61
61
  ending_before:,
62
- # Body param:
62
+ # Body param
63
63
  starting_on:,
64
64
  # Body param: A window_size of "day" or "hour" will return the usage for the
65
65
  # specified period segmented into daily or hourly aggregates. A window_size of
@@ -228,9 +228,9 @@ module MetronomeSDK
228
228
  )
229
229
  end
230
230
  def list_with_groups(
231
- # Body param:
231
+ # Body param
232
232
  billable_metric_id:,
233
- # Body param:
233
+ # Body param
234
234
  customer_id:,
235
235
  # Body param: A window_size of "day" or "hour" will return the usage for the
236
236
  # specified period segmented into daily or hourly aggregates. A window_size of
@@ -245,11 +245,11 @@ module MetronomeSDK
245
245
  # return an error if the customer is currently uncontracted or starting_on and
246
246
  # ending_before are specified when this is true.
247
247
  current_period: nil,
248
- # Body param:
248
+ # Body param
249
249
  ending_before: nil,
250
- # Body param:
250
+ # Body param
251
251
  group_by: nil,
252
- # Body param:
252
+ # Body param
253
253
  starting_on: nil,
254
254
  request_options: {}
255
255
  )
@@ -300,11 +300,13 @@ module MetronomeSDK
300
300
  MetronomeSDK::V2::ContractEditCommitParams::AccessSchedule::OrHash,
301
301
  applicable_product_ids: T.nilable(T::Array[String]),
302
302
  applicable_product_tags: T.nilable(T::Array[String]),
303
+ description: String,
303
304
  hierarchy_configuration:
304
305
  MetronomeSDK::CommitHierarchyConfiguration::OrHash,
305
306
  invoice_contract_id: String,
306
307
  invoice_schedule:
307
308
  MetronomeSDK::V2::ContractEditCommitParams::InvoiceSchedule::OrHash,
309
+ name: String,
308
310
  priority: T.nilable(Float),
309
311
  product_id: String,
310
312
  rate_type:
@@ -328,11 +330,15 @@ module MetronomeSDK
328
330
  # applicable_product_tags or specifiers are not provided, the commit applies to
329
331
  # all products.
330
332
  applicable_product_tags: nil,
333
+ # Updated description for the commit
334
+ description: nil,
331
335
  # Optional configuration for commit hierarchy access control
332
336
  hierarchy_configuration: nil,
333
337
  # ID of contract to use for invoicing
334
338
  invoice_contract_id: nil,
335
339
  invoice_schedule: nil,
340
+ # Updated name for the commit
341
+ name: nil,
336
342
  # If multiple commits are applicable, the one with the lower priority will apply
337
343
  # first.
338
344
  priority: nil,
@@ -376,8 +382,10 @@ module MetronomeSDK
376
382
  MetronomeSDK::V2::ContractEditCreditParams::AccessSchedule::OrHash,
377
383
  applicable_product_ids: T.nilable(T::Array[String]),
378
384
  applicable_product_tags: T.nilable(T::Array[String]),
385
+ description: String,
379
386
  hierarchy_configuration:
380
387
  MetronomeSDK::CommitHierarchyConfiguration::OrHash,
388
+ name: String,
381
389
  priority: T.nilable(Float),
382
390
  product_id: String,
383
391
  rate_type:
@@ -399,8 +407,12 @@ module MetronomeSDK
399
407
  # Which tags the credit applies to. If both applicable_product_ids and
400
408
  # applicable_product_tags are not provided, the credit applies to all products.
401
409
  applicable_product_tags: nil,
410
+ # Updated description for the credit
411
+ description: nil,
402
412
  # Optional configuration for credit hierarchy access control
403
413
  hierarchy_configuration: nil,
414
+ # Updated name for the credit
415
+ name: nil,
404
416
  # If multiple commits are applicable, the one with the lower priority will apply
405
417
  # first.
406
418
  priority: nil,
@@ -87,6 +87,8 @@ module MetronomeSDK
87
87
 
88
88
  private def auth_headers: -> ::Hash[String, String]
89
89
 
90
+ private def user_agent: -> String
91
+
90
92
  private def generate_idempotency_key: -> String
91
93
 
92
94
  private def build_request: (
@@ -17,7 +17,10 @@ module MetronomeSDK
17
17
 
18
18
  DEFAULT_MAX_CONNECTIONS: Integer
19
19
 
20
- def self.connect: (URI::Generic url) -> top
20
+ def self.connect: (
21
+ cert_store: OpenSSL::X509::Store,
22
+ url: URI::Generic
23
+ ) -> top
21
24
 
22
25
  def self.calibrate_socket_timeout: (top conn, Float deadline) -> void
23
26
 
@@ -24,10 +24,12 @@ module MetronomeSDK
24
24
  netsuite_sales_order_id: String,
25
25
  priority: Float,
26
26
  rate_type: MetronomeSDK::Models::Commit::rate_type,
27
+ recurring_commit_id: String,
27
28
  rolled_over_from: MetronomeSDK::Commit::RolledOverFrom,
28
29
  rollover_fraction: Float,
29
30
  salesforce_opportunity_id: String,
30
31
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
32
+ subscription_config: MetronomeSDK::Commit::SubscriptionConfig,
31
33
  uniqueness_key: String
32
34
  }
33
35
 
@@ -126,6 +128,10 @@ module MetronomeSDK
126
128
  MetronomeSDK::Models::Commit::rate_type
127
129
  ) -> MetronomeSDK::Models::Commit::rate_type
128
130
 
131
+ attr_reader recurring_commit_id: String?
132
+
133
+ def recurring_commit_id=: (String) -> String
134
+
129
135
  attr_reader rolled_over_from: MetronomeSDK::Commit::RolledOverFrom?
130
136
 
131
137
  def rolled_over_from=: (
@@ -146,6 +152,12 @@ module MetronomeSDK
146
152
  ::Array[MetronomeSDK::CommitSpecifier]
147
153
  ) -> ::Array[MetronomeSDK::CommitSpecifier]
148
154
 
155
+ attr_reader subscription_config: MetronomeSDK::Commit::SubscriptionConfig?
156
+
157
+ def subscription_config=: (
158
+ MetronomeSDK::Commit::SubscriptionConfig
159
+ ) -> MetronomeSDK::Commit::SubscriptionConfig
160
+
149
161
  attr_reader uniqueness_key: String?
150
162
 
151
163
  def uniqueness_key=: (String) -> String
@@ -173,10 +185,12 @@ module MetronomeSDK
173
185
  ?netsuite_sales_order_id: String,
174
186
  ?priority: Float,
175
187
  ?rate_type: MetronomeSDK::Models::Commit::rate_type,
188
+ ?recurring_commit_id: String,
176
189
  ?rolled_over_from: MetronomeSDK::Commit::RolledOverFrom,
177
190
  ?rollover_fraction: Float,
178
191
  ?salesforce_opportunity_id: String,
179
192
  ?specifiers: ::Array[MetronomeSDK::CommitSpecifier],
193
+ ?subscription_config: MetronomeSDK::Commit::SubscriptionConfig,
180
194
  ?uniqueness_key: String
181
195
  ) -> void
182
196
 
@@ -203,10 +217,12 @@ module MetronomeSDK
203
217
  netsuite_sales_order_id: String,
204
218
  priority: Float,
205
219
  rate_type: MetronomeSDK::Models::Commit::rate_type,
220
+ recurring_commit_id: String,
206
221
  rolled_over_from: MetronomeSDK::Commit::RolledOverFrom,
207
222
  rollover_fraction: Float,
208
223
  salesforce_opportunity_id: String,
209
224
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
225
+ subscription_config: MetronomeSDK::Commit::SubscriptionConfig,
210
226
  uniqueness_key: String
211
227
  }
212
228
 
@@ -940,6 +956,64 @@ module MetronomeSDK
940
956
 
941
957
  def to_hash: -> { commit_id: String, contract_id: String }
942
958
  end
959
+
960
+ type subscription_config =
961
+ {
962
+ allocation: MetronomeSDK::Models::Commit::SubscriptionConfig::allocation,
963
+ apply_seat_increase_config: MetronomeSDK::Commit::SubscriptionConfig::ApplySeatIncreaseConfig,
964
+ subscription_id: String
965
+ }
966
+
967
+ class SubscriptionConfig < MetronomeSDK::Internal::Type::BaseModel
968
+ attr_reader allocation: MetronomeSDK::Models::Commit::SubscriptionConfig::allocation?
969
+
970
+ def allocation=: (
971
+ MetronomeSDK::Models::Commit::SubscriptionConfig::allocation
972
+ ) -> MetronomeSDK::Models::Commit::SubscriptionConfig::allocation
973
+
974
+ attr_reader apply_seat_increase_config: MetronomeSDK::Commit::SubscriptionConfig::ApplySeatIncreaseConfig?
975
+
976
+ def apply_seat_increase_config=: (
977
+ MetronomeSDK::Commit::SubscriptionConfig::ApplySeatIncreaseConfig
978
+ ) -> MetronomeSDK::Commit::SubscriptionConfig::ApplySeatIncreaseConfig
979
+
980
+ attr_reader subscription_id: String?
981
+
982
+ def subscription_id=: (String) -> String
983
+
984
+ def initialize: (
985
+ ?allocation: MetronomeSDK::Models::Commit::SubscriptionConfig::allocation,
986
+ ?apply_seat_increase_config: MetronomeSDK::Commit::SubscriptionConfig::ApplySeatIncreaseConfig,
987
+ ?subscription_id: String
988
+ ) -> void
989
+
990
+ def to_hash: -> {
991
+ allocation: MetronomeSDK::Models::Commit::SubscriptionConfig::allocation,
992
+ apply_seat_increase_config: MetronomeSDK::Commit::SubscriptionConfig::ApplySeatIncreaseConfig,
993
+ subscription_id: String
994
+ }
995
+
996
+ type allocation = :INDIVIDUAL | :POOLED
997
+
998
+ module Allocation
999
+ extend MetronomeSDK::Internal::Type::Enum
1000
+
1001
+ INDIVIDUAL: :INDIVIDUAL
1002
+ POOLED: :POOLED
1003
+
1004
+ def self?.values: -> ::Array[MetronomeSDK::Models::Commit::SubscriptionConfig::allocation]
1005
+ end
1006
+
1007
+ type apply_seat_increase_config = { is_prorated: bool }
1008
+
1009
+ class ApplySeatIncreaseConfig < MetronomeSDK::Internal::Type::BaseModel
1010
+ attr_accessor is_prorated: bool
1011
+
1012
+ def initialize: (is_prorated: bool) -> void
1013
+
1014
+ def to_hash: -> { is_prorated: bool }
1015
+ end
1016
+ end
943
1017
  end
944
1018
  end
945
1019
  end
@@ -292,10 +292,12 @@ module MetronomeSDK
292
292
  netsuite_sales_order_id: String,
293
293
  priority: Float,
294
294
  rate_type: MetronomeSDK::Models::ContractV2::Commit::rate_type,
295
+ recurring_commit_id: String,
295
296
  rolled_over_from: MetronomeSDK::ContractV2::Commit::RolledOverFrom,
296
297
  rollover_fraction: Float,
297
298
  salesforce_opportunity_id: String,
298
- specifiers: ::Array[MetronomeSDK::CommitSpecifier]
299
+ specifiers: ::Array[MetronomeSDK::CommitSpecifier],
300
+ subscription_config: MetronomeSDK::RecurringCommitSubscriptionConfig
299
301
  }
300
302
 
301
303
  class Commit < MetronomeSDK::Internal::Type::BaseModel
@@ -389,6 +391,10 @@ module MetronomeSDK
389
391
  MetronomeSDK::Models::ContractV2::Commit::rate_type
390
392
  ) -> MetronomeSDK::Models::ContractV2::Commit::rate_type
391
393
 
394
+ attr_reader recurring_commit_id: String?
395
+
396
+ def recurring_commit_id=: (String) -> String
397
+
392
398
  attr_reader rolled_over_from: MetronomeSDK::ContractV2::Commit::RolledOverFrom?
393
399
 
394
400
  def rolled_over_from=: (
@@ -409,6 +415,12 @@ module MetronomeSDK
409
415
  ::Array[MetronomeSDK::CommitSpecifier]
410
416
  ) -> ::Array[MetronomeSDK::CommitSpecifier]
411
417
 
418
+ attr_reader subscription_config: MetronomeSDK::RecurringCommitSubscriptionConfig?
419
+
420
+ def subscription_config=: (
421
+ MetronomeSDK::RecurringCommitSubscriptionConfig
422
+ ) -> MetronomeSDK::RecurringCommitSubscriptionConfig
423
+
412
424
  def initialize: (
413
425
  id: String,
414
426
  created_at: Time,
@@ -431,10 +443,12 @@ module MetronomeSDK
431
443
  ?netsuite_sales_order_id: String,
432
444
  ?priority: Float,
433
445
  ?rate_type: MetronomeSDK::Models::ContractV2::Commit::rate_type,
446
+ ?recurring_commit_id: String,
434
447
  ?rolled_over_from: MetronomeSDK::ContractV2::Commit::RolledOverFrom,
435
448
  ?rollover_fraction: Float,
436
449
  ?salesforce_opportunity_id: String,
437
- ?specifiers: ::Array[MetronomeSDK::CommitSpecifier]
450
+ ?specifiers: ::Array[MetronomeSDK::CommitSpecifier],
451
+ ?subscription_config: MetronomeSDK::RecurringCommitSubscriptionConfig
438
452
  ) -> void
439
453
 
440
454
  def to_hash: -> {
@@ -459,10 +473,12 @@ module MetronomeSDK
459
473
  netsuite_sales_order_id: String,
460
474
  priority: Float,
461
475
  rate_type: MetronomeSDK::Models::ContractV2::Commit::rate_type,
476
+ recurring_commit_id: String,
462
477
  rolled_over_from: MetronomeSDK::ContractV2::Commit::RolledOverFrom,
463
478
  rollover_fraction: Float,
464
479
  salesforce_opportunity_id: String,
465
- specifiers: ::Array[MetronomeSDK::CommitSpecifier]
480
+ specifiers: ::Array[MetronomeSDK::CommitSpecifier],
481
+ subscription_config: MetronomeSDK::RecurringCommitSubscriptionConfig
466
482
  }
467
483
 
468
484
  type product = { id: String, name: String }
@@ -1633,6 +1649,7 @@ module MetronomeSDK
1633
1649
  applicable_product_tags: ::Array[String],
1634
1650
  balance: Float,
1635
1651
  contract: MetronomeSDK::ContractV2::Credit::Contract,
1652
+ created_at: Time,
1636
1653
  custom_fields: ::Hash[Symbol, String],
1637
1654
  description: String,
1638
1655
  hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
@@ -1640,8 +1657,10 @@ module MetronomeSDK
1640
1657
  name: String,
1641
1658
  netsuite_sales_order_id: String,
1642
1659
  priority: Float,
1660
+ recurring_credit_id: String,
1643
1661
  salesforce_opportunity_id: String,
1644
- specifiers: ::Array[MetronomeSDK::CommitSpecifier]
1662
+ specifiers: ::Array[MetronomeSDK::CommitSpecifier],
1663
+ subscription_config: MetronomeSDK::RecurringCommitSubscriptionConfig
1645
1664
  }
1646
1665
 
1647
1666
  class Credit < MetronomeSDK::Internal::Type::BaseModel
@@ -1679,6 +1698,10 @@ module MetronomeSDK
1679
1698
  MetronomeSDK::ContractV2::Credit::Contract
1680
1699
  ) -> MetronomeSDK::ContractV2::Credit::Contract
1681
1700
 
1701
+ attr_reader created_at: Time?
1702
+
1703
+ def created_at=: (Time) -> Time
1704
+
1682
1705
  attr_reader custom_fields: ::Hash[Symbol, String]?
1683
1706
 
1684
1707
  def custom_fields=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
@@ -1711,6 +1734,10 @@ module MetronomeSDK
1711
1734
 
1712
1735
  def priority=: (Float) -> Float
1713
1736
 
1737
+ attr_reader recurring_credit_id: String?
1738
+
1739
+ def recurring_credit_id=: (String) -> String
1740
+
1714
1741
  attr_reader salesforce_opportunity_id: String?
1715
1742
 
1716
1743
  def salesforce_opportunity_id=: (String) -> String
@@ -1721,6 +1748,12 @@ module MetronomeSDK
1721
1748
  ::Array[MetronomeSDK::CommitSpecifier]
1722
1749
  ) -> ::Array[MetronomeSDK::CommitSpecifier]
1723
1750
 
1751
+ attr_reader subscription_config: MetronomeSDK::RecurringCommitSubscriptionConfig?
1752
+
1753
+ def subscription_config=: (
1754
+ MetronomeSDK::RecurringCommitSubscriptionConfig
1755
+ ) -> MetronomeSDK::RecurringCommitSubscriptionConfig
1756
+
1724
1757
  def initialize: (
1725
1758
  id: String,
1726
1759
  product: MetronomeSDK::ContractV2::Credit::Product,
@@ -1731,6 +1764,7 @@ module MetronomeSDK
1731
1764
  ?applicable_product_tags: ::Array[String],
1732
1765
  ?balance: Float,
1733
1766
  ?contract: MetronomeSDK::ContractV2::Credit::Contract,
1767
+ ?created_at: Time,
1734
1768
  ?custom_fields: ::Hash[Symbol, String],
1735
1769
  ?description: String,
1736
1770
  ?hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
@@ -1738,8 +1772,10 @@ module MetronomeSDK
1738
1772
  ?name: String,
1739
1773
  ?netsuite_sales_order_id: String,
1740
1774
  ?priority: Float,
1775
+ ?recurring_credit_id: String,
1741
1776
  ?salesforce_opportunity_id: String,
1742
- ?specifiers: ::Array[MetronomeSDK::CommitSpecifier]
1777
+ ?specifiers: ::Array[MetronomeSDK::CommitSpecifier],
1778
+ ?subscription_config: MetronomeSDK::RecurringCommitSubscriptionConfig
1743
1779
  ) -> void
1744
1780
 
1745
1781
  def to_hash: -> {
@@ -1752,6 +1788,7 @@ module MetronomeSDK
1752
1788
  applicable_product_tags: ::Array[String],
1753
1789
  balance: Float,
1754
1790
  contract: MetronomeSDK::ContractV2::Credit::Contract,
1791
+ created_at: Time,
1755
1792
  custom_fields: ::Hash[Symbol, String],
1756
1793
  description: String,
1757
1794
  hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
@@ -1759,8 +1796,10 @@ module MetronomeSDK
1759
1796
  name: String,
1760
1797
  netsuite_sales_order_id: String,
1761
1798
  priority: Float,
1799
+ recurring_credit_id: String,
1762
1800
  salesforce_opportunity_id: String,
1763
- specifiers: ::Array[MetronomeSDK::CommitSpecifier]
1801
+ specifiers: ::Array[MetronomeSDK::CommitSpecifier],
1802
+ subscription_config: MetronomeSDK::RecurringCommitSubscriptionConfig
1764
1803
  }
1765
1804
 
1766
1805
  type product = { id: String, name: String }
@@ -19,8 +19,10 @@ module MetronomeSDK
19
19
  netsuite_sales_order_id: String,
20
20
  priority: Float,
21
21
  rate_type: MetronomeSDK::Models::Credit::rate_type,
22
+ recurring_credit_id: String,
22
23
  salesforce_opportunity_id: String,
23
24
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
25
+ subscription_config: MetronomeSDK::Credit::SubscriptionConfig,
24
26
  uniqueness_key: String
25
27
  }
26
28
 
@@ -97,6 +99,10 @@ module MetronomeSDK
97
99
  MetronomeSDK::Models::Credit::rate_type
98
100
  ) -> MetronomeSDK::Models::Credit::rate_type
99
101
 
102
+ attr_reader recurring_credit_id: String?
103
+
104
+ def recurring_credit_id=: (String) -> String
105
+
100
106
  attr_reader salesforce_opportunity_id: String?
101
107
 
102
108
  def salesforce_opportunity_id=: (String) -> String
@@ -107,6 +113,12 @@ module MetronomeSDK
107
113
  ::Array[MetronomeSDK::CommitSpecifier]
108
114
  ) -> ::Array[MetronomeSDK::CommitSpecifier]
109
115
 
116
+ attr_reader subscription_config: MetronomeSDK::Credit::SubscriptionConfig?
117
+
118
+ def subscription_config=: (
119
+ MetronomeSDK::Credit::SubscriptionConfig
120
+ ) -> MetronomeSDK::Credit::SubscriptionConfig
121
+
110
122
  attr_reader uniqueness_key: String?
111
123
 
112
124
  def uniqueness_key=: (String) -> String
@@ -129,8 +141,10 @@ module MetronomeSDK
129
141
  ?netsuite_sales_order_id: String,
130
142
  ?priority: Float,
131
143
  ?rate_type: MetronomeSDK::Models::Credit::rate_type,
144
+ ?recurring_credit_id: String,
132
145
  ?salesforce_opportunity_id: String,
133
146
  ?specifiers: ::Array[MetronomeSDK::CommitSpecifier],
147
+ ?subscription_config: MetronomeSDK::Credit::SubscriptionConfig,
134
148
  ?uniqueness_key: String
135
149
  ) -> void
136
150
 
@@ -152,8 +166,10 @@ module MetronomeSDK
152
166
  netsuite_sales_order_id: String,
153
167
  priority: Float,
154
168
  rate_type: MetronomeSDK::Models::Credit::rate_type,
169
+ recurring_credit_id: String,
155
170
  salesforce_opportunity_id: String,
156
171
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
172
+ subscription_config: MetronomeSDK::Credit::SubscriptionConfig,
157
173
  uniqueness_key: String
158
174
  }
159
175
 
@@ -544,6 +560,64 @@ module MetronomeSDK
544
560
 
545
561
  def self?.values: -> ::Array[MetronomeSDK::Models::Credit::rate_type]
546
562
  end
563
+
564
+ type subscription_config =
565
+ {
566
+ allocation: MetronomeSDK::Models::Credit::SubscriptionConfig::allocation,
567
+ apply_seat_increase_config: MetronomeSDK::Credit::SubscriptionConfig::ApplySeatIncreaseConfig,
568
+ subscription_id: String
569
+ }
570
+
571
+ class SubscriptionConfig < MetronomeSDK::Internal::Type::BaseModel
572
+ attr_reader allocation: MetronomeSDK::Models::Credit::SubscriptionConfig::allocation?
573
+
574
+ def allocation=: (
575
+ MetronomeSDK::Models::Credit::SubscriptionConfig::allocation
576
+ ) -> MetronomeSDK::Models::Credit::SubscriptionConfig::allocation
577
+
578
+ attr_reader apply_seat_increase_config: MetronomeSDK::Credit::SubscriptionConfig::ApplySeatIncreaseConfig?
579
+
580
+ def apply_seat_increase_config=: (
581
+ MetronomeSDK::Credit::SubscriptionConfig::ApplySeatIncreaseConfig
582
+ ) -> MetronomeSDK::Credit::SubscriptionConfig::ApplySeatIncreaseConfig
583
+
584
+ attr_reader subscription_id: String?
585
+
586
+ def subscription_id=: (String) -> String
587
+
588
+ def initialize: (
589
+ ?allocation: MetronomeSDK::Models::Credit::SubscriptionConfig::allocation,
590
+ ?apply_seat_increase_config: MetronomeSDK::Credit::SubscriptionConfig::ApplySeatIncreaseConfig,
591
+ ?subscription_id: String
592
+ ) -> void
593
+
594
+ def to_hash: -> {
595
+ allocation: MetronomeSDK::Models::Credit::SubscriptionConfig::allocation,
596
+ apply_seat_increase_config: MetronomeSDK::Credit::SubscriptionConfig::ApplySeatIncreaseConfig,
597
+ subscription_id: String
598
+ }
599
+
600
+ type allocation = :INDIVIDUAL | :POOLED
601
+
602
+ module Allocation
603
+ extend MetronomeSDK::Internal::Type::Enum
604
+
605
+ INDIVIDUAL: :INDIVIDUAL
606
+ POOLED: :POOLED
607
+
608
+ def self?.values: -> ::Array[MetronomeSDK::Models::Credit::SubscriptionConfig::allocation]
609
+ end
610
+
611
+ type apply_seat_increase_config = { is_prorated: bool }
612
+
613
+ class ApplySeatIncreaseConfig < MetronomeSDK::Internal::Type::BaseModel
614
+ attr_accessor is_prorated: bool
615
+
616
+ def initialize: (is_prorated: bool) -> void
617
+
618
+ def to_hash: -> { is_prorated: bool }
619
+ end
620
+ end
547
621
  end
548
622
  end
549
623
  end
@@ -9,8 +9,7 @@ module MetronomeSDK
9
9
  price: Float,
10
10
  pricing_group_values: ::Hash[Symbol, String],
11
11
  quantity: Float,
12
- tiers: ::Array[MetronomeSDK::Tier],
13
- use_list_prices: bool
12
+ tiers: ::Array[MetronomeSDK::Tier]
14
13
  }
15
14
 
16
15
  class Rate < MetronomeSDK::Internal::Type::BaseModel
@@ -48,10 +47,6 @@ module MetronomeSDK
48
47
 
49
48
  def tiers=: (::Array[MetronomeSDK::Tier]) -> ::Array[MetronomeSDK::Tier]
50
49
 
51
- attr_reader use_list_prices: bool?
52
-
53
- def use_list_prices=: (bool) -> bool
54
-
55
50
  def initialize: (
56
51
  rate_type: MetronomeSDK::Models::Rate::rate_type,
57
52
  ?credit_type: MetronomeSDK::CreditTypeData,
@@ -60,8 +55,7 @@ module MetronomeSDK
60
55
  ?price: Float,
61
56
  ?pricing_group_values: ::Hash[Symbol, String],
62
57
  ?quantity: Float,
63
- ?tiers: ::Array[MetronomeSDK::Tier],
64
- ?use_list_prices: bool
58
+ ?tiers: ::Array[MetronomeSDK::Tier]
65
59
  ) -> void
66
60
 
67
61
  def to_hash: -> {
@@ -72,8 +66,7 @@ module MetronomeSDK
72
66
  price: Float,
73
67
  pricing_group_values: ::Hash[Symbol, String],
74
68
  quantity: Float,
75
- tiers: ::Array[MetronomeSDK::Tier],
76
- use_list_prices: bool
69
+ tiers: ::Array[MetronomeSDK::Tier]
77
70
  }
78
71
 
79
72
  type rate_type = :FLAT | :PERCENTAGE | :SUBSCRIPTION | :CUSTOM | :TIERED