metronome-sdk 3.8.0 → 3.10.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 (56) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +34 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/models/commit.rb +9 -1
  5. data/lib/metronome_sdk/models/contract.rb +46 -16
  6. data/lib/metronome_sdk/models/contract_v2.rb +378 -15
  7. data/lib/metronome_sdk/models/contract_without_amendments.rb +8 -5
  8. data/lib/metronome_sdk/models/v1/contract_create_params.rb +8 -5
  9. data/lib/metronome_sdk/models/v1/contract_create_response.rb +73 -18
  10. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_params.rb +27 -1
  11. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +32 -5
  12. data/lib/metronome_sdk/models/v1/package_create_params.rb +8 -4
  13. data/lib/metronome_sdk/models/v1/package_list_response.rb +8 -4
  14. data/lib/metronome_sdk/models/v1/package_retrieve_response.rb +8 -4
  15. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +11 -1
  16. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +11 -1
  17. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +14 -8
  18. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +8 -4
  19. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +8 -4
  20. data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +11 -14
  21. data/lib/metronome_sdk/resources/v1/dashboards.rb +6 -9
  22. data/lib/metronome_sdk/resources/v2/contracts.rb +6 -2
  23. data/lib/metronome_sdk/version.rb +1 -1
  24. data/rbi/metronome_sdk/models/commit.rbi +11 -0
  25. data/rbi/metronome_sdk/models/contract.rbi +47 -22
  26. data/rbi/metronome_sdk/models/contract_v2.rbi +711 -19
  27. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +12 -11
  28. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +12 -11
  29. data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +72 -43
  30. data/rbi/metronome_sdk/models/v1/contracts/rate_card_update_params.rbi +67 -0
  31. data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +96 -5
  32. data/rbi/metronome_sdk/models/v1/package_create_params.rbi +12 -6
  33. data/rbi/metronome_sdk/models/v1/package_list_response.rbi +12 -6
  34. data/rbi/metronome_sdk/models/v1/package_retrieve_response.rbi +12 -6
  35. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +12 -0
  36. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +12 -0
  37. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +28 -18
  38. data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +12 -6
  39. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +12 -6
  40. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards.rbi +15 -13
  41. data/rbi/metronome_sdk/resources/v1/dashboards.rbi +6 -9
  42. data/rbi/metronome_sdk/resources/v2/contracts.rbi +10 -0
  43. data/sig/metronome_sdk/models/commit.rbs +7 -0
  44. data/sig/metronome_sdk/models/contract.rbs +22 -11
  45. data/sig/metronome_sdk/models/contract_v2.rbs +289 -5
  46. data/sig/metronome_sdk/models/contract_without_amendments.rbs +1 -2
  47. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +1 -2
  48. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +31 -17
  49. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_params.rbs +28 -0
  50. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +39 -4
  51. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +5 -0
  52. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +5 -0
  53. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +12 -14
  54. data/sig/metronome_sdk/resources/v1/contracts/rate_cards.rbs +1 -0
  55. data/sig/metronome_sdk/resources/v2/contracts.rbs +2 -0
  56. metadata +2 -2
@@ -315,42 +315,53 @@ module MetronomeSDK
315
315
 
316
316
  type customer_billing_provider_configuration =
317
317
  {
318
+ id: String,
318
319
  archived_at: Time?,
319
320
  billing_provider: MetronomeSDK::Models::Contract::CustomerBillingProviderConfiguration::billing_provider,
321
+ configuration: ::Hash[Symbol, top],
322
+ customer_id: String,
320
323
  delivery_method: MetronomeSDK::Models::Contract::CustomerBillingProviderConfiguration::delivery_method,
321
- id: String,
322
- configuration: ::Hash[Symbol, top]
324
+ delivery_method_configuration: ::Hash[Symbol, top],
325
+ delivery_method_id: String
323
326
  }
324
327
 
325
328
  class CustomerBillingProviderConfiguration < MetronomeSDK::Internal::Type::BaseModel
329
+ attr_accessor id: String
330
+
326
331
  attr_accessor archived_at: Time?
327
332
 
328
333
  attr_accessor billing_provider: MetronomeSDK::Models::Contract::CustomerBillingProviderConfiguration::billing_provider
329
334
 
330
- attr_accessor delivery_method: MetronomeSDK::Models::Contract::CustomerBillingProviderConfiguration::delivery_method
335
+ attr_accessor configuration: ::Hash[Symbol, top]
331
336
 
332
- attr_reader id: String?
337
+ attr_accessor customer_id: String
333
338
 
334
- def id=: (String) -> String
339
+ attr_accessor delivery_method: MetronomeSDK::Models::Contract::CustomerBillingProviderConfiguration::delivery_method
335
340
 
336
- attr_reader configuration: ::Hash[Symbol, top]?
341
+ attr_accessor delivery_method_configuration: ::Hash[Symbol, top]
337
342
 
338
- def configuration=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
343
+ attr_accessor delivery_method_id: String
339
344
 
340
345
  def initialize: (
346
+ id: String,
341
347
  archived_at: Time?,
342
348
  billing_provider: MetronomeSDK::Models::Contract::CustomerBillingProviderConfiguration::billing_provider,
349
+ configuration: ::Hash[Symbol, top],
350
+ customer_id: String,
343
351
  delivery_method: MetronomeSDK::Models::Contract::CustomerBillingProviderConfiguration::delivery_method,
344
- ?id: String,
345
- ?configuration: ::Hash[Symbol, top]
352
+ delivery_method_configuration: ::Hash[Symbol, top],
353
+ delivery_method_id: String
346
354
  ) -> void
347
355
 
348
356
  def to_hash: -> {
357
+ id: String,
349
358
  archived_at: Time?,
350
359
  billing_provider: MetronomeSDK::Models::Contract::CustomerBillingProviderConfiguration::billing_provider,
360
+ configuration: ::Hash[Symbol, top],
361
+ customer_id: String,
351
362
  delivery_method: MetronomeSDK::Models::Contract::CustomerBillingProviderConfiguration::delivery_method,
352
- id: String,
353
- configuration: ::Hash[Symbol, top]
363
+ delivery_method_configuration: ::Hash[Symbol, top],
364
+ delivery_method_id: String
354
365
  }
355
366
 
356
367
  type billing_provider =
@@ -14,6 +14,7 @@ module MetronomeSDK
14
14
  usage_filter: ::Array[MetronomeSDK::ContractV2::UsageFilter],
15
15
  usage_statement_schedule: MetronomeSDK::ContractV2::UsageStatementSchedule,
16
16
  archived_at: Time,
17
+ billing_provider_configuration_schedule: ::Array[MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule],
17
18
  credits: ::Array[MetronomeSDK::ContractV2::Credit],
18
19
  custom_fields: ::Hash[Symbol, String],
19
20
  customer_billing_provider_configuration: MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration,
@@ -32,6 +33,7 @@ module MetronomeSDK
32
33
  recurring_commits: ::Array[MetronomeSDK::ContractV2::RecurringCommit],
33
34
  recurring_credits: ::Array[MetronomeSDK::ContractV2::RecurringCredit],
34
35
  reseller_royalties: ::Array[MetronomeSDK::ContractV2::ResellerRoyalty],
36
+ revenue_system_configuration_schedule: ::Array[MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule],
35
37
  salesforce_opportunity_id: String,
36
38
  scheduled_charges_on_usage_invoices: MetronomeSDK::Models::ContractV2::scheduled_charges_on_usage_invoices,
37
39
  spend_threshold_configuration: MetronomeSDK::SpendThresholdConfigurationV2,
@@ -68,6 +70,12 @@ module MetronomeSDK
68
70
 
69
71
  def archived_at=: (Time) -> Time
70
72
 
73
+ attr_reader billing_provider_configuration_schedule: ::Array[MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule]?
74
+
75
+ def billing_provider_configuration_schedule=: (
76
+ ::Array[MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule]
77
+ ) -> ::Array[MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule]
78
+
71
79
  attr_reader credits: ::Array[MetronomeSDK::ContractV2::Credit]?
72
80
 
73
81
  def credits=: (
@@ -162,6 +170,12 @@ module MetronomeSDK
162
170
  ::Array[MetronomeSDK::ContractV2::ResellerRoyalty]
163
171
  ) -> ::Array[MetronomeSDK::ContractV2::ResellerRoyalty]
164
172
 
173
+ attr_reader revenue_system_configuration_schedule: ::Array[MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule]?
174
+
175
+ def revenue_system_configuration_schedule=: (
176
+ ::Array[MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule]
177
+ ) -> ::Array[MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule]
178
+
165
179
  attr_reader salesforce_opportunity_id: String?
166
180
 
167
181
  def salesforce_opportunity_id=: (String) -> String
@@ -211,6 +225,7 @@ module MetronomeSDK
211
225
  usage_filter: ::Array[MetronomeSDK::ContractV2::UsageFilter],
212
226
  usage_statement_schedule: MetronomeSDK::ContractV2::UsageStatementSchedule,
213
227
  ?archived_at: Time,
228
+ ?billing_provider_configuration_schedule: ::Array[MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule],
214
229
  ?credits: ::Array[MetronomeSDK::ContractV2::Credit],
215
230
  ?custom_fields: ::Hash[Symbol, String],
216
231
  ?customer_billing_provider_configuration: MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration,
@@ -229,6 +244,7 @@ module MetronomeSDK
229
244
  ?recurring_commits: ::Array[MetronomeSDK::ContractV2::RecurringCommit],
230
245
  ?recurring_credits: ::Array[MetronomeSDK::ContractV2::RecurringCredit],
231
246
  ?reseller_royalties: ::Array[MetronomeSDK::ContractV2::ResellerRoyalty],
247
+ ?revenue_system_configuration_schedule: ::Array[MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule],
232
248
  ?salesforce_opportunity_id: String,
233
249
  ?scheduled_charges_on_usage_invoices: MetronomeSDK::Models::ContractV2::scheduled_charges_on_usage_invoices,
234
250
  ?spend_threshold_configuration: MetronomeSDK::SpendThresholdConfigurationV2,
@@ -251,6 +267,7 @@ module MetronomeSDK
251
267
  usage_filter: ::Array[MetronomeSDK::ContractV2::UsageFilter],
252
268
  usage_statement_schedule: MetronomeSDK::ContractV2::UsageStatementSchedule,
253
269
  archived_at: Time,
270
+ billing_provider_configuration_schedule: ::Array[MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule],
254
271
  credits: ::Array[MetronomeSDK::ContractV2::Credit],
255
272
  custom_fields: ::Hash[Symbol, String],
256
273
  customer_billing_provider_configuration: MetronomeSDK::ContractV2::CustomerBillingProviderConfiguration,
@@ -269,6 +286,7 @@ module MetronomeSDK
269
286
  recurring_commits: ::Array[MetronomeSDK::ContractV2::RecurringCommit],
270
287
  recurring_credits: ::Array[MetronomeSDK::ContractV2::RecurringCredit],
271
288
  reseller_royalties: ::Array[MetronomeSDK::ContractV2::ResellerRoyalty],
289
+ revenue_system_configuration_schedule: ::Array[MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule],
272
290
  salesforce_opportunity_id: String,
273
291
  scheduled_charges_on_usage_invoices: MetronomeSDK::Models::ContractV2::scheduled_charges_on_usage_invoices,
274
292
  spend_threshold_configuration: MetronomeSDK::SpendThresholdConfigurationV2,
@@ -291,6 +309,7 @@ module MetronomeSDK
291
309
  archived_at: Time,
292
310
  balance: Float,
293
311
  contract: MetronomeSDK::ContractV2::Commit::Contract,
312
+ cost_basis: Float,
294
313
  created_by: String,
295
314
  custom_fields: ::Hash[Symbol, String],
296
315
  description: String,
@@ -352,6 +371,10 @@ module MetronomeSDK
352
371
  MetronomeSDK::ContractV2::Commit::Contract
353
372
  ) -> MetronomeSDK::ContractV2::Commit::Contract
354
373
 
374
+ attr_reader cost_basis: Float?
375
+
376
+ def cost_basis=: (Float) -> Float
377
+
355
378
  attr_reader created_by: String?
356
379
 
357
380
  def created_by=: (String) -> String
@@ -454,6 +477,7 @@ module MetronomeSDK
454
477
  ?archived_at: Time,
455
478
  ?balance: Float,
456
479
  ?contract: MetronomeSDK::ContractV2::Commit::Contract,
480
+ ?cost_basis: Float,
457
481
  ?created_by: String,
458
482
  ?custom_fields: ::Hash[Symbol, String],
459
483
  ?description: String,
@@ -486,6 +510,7 @@ module MetronomeSDK
486
510
  archived_at: Time,
487
511
  balance: Float,
488
512
  contract: MetronomeSDK::ContractV2::Commit::Contract,
513
+ cost_basis: Float,
489
514
  created_by: String,
490
515
  custom_fields: ::Hash[Symbol, String],
491
516
  description: String,
@@ -1603,12 +1628,11 @@ module MetronomeSDK
1603
1628
  type: MetronomeSDK::Models::ContractV2::Transition::type_
1604
1629
  }
1605
1630
 
1606
- type type_ = :SUPERSEDE | :RENEWAL
1631
+ type type_ = :RENEWAL
1607
1632
 
1608
1633
  module Type
1609
1634
  extend MetronomeSDK::Internal::Type::Enum
1610
1635
 
1611
- SUPERSEDE: :SUPERSEDE
1612
1636
  RENEWAL: :RENEWAL
1613
1637
 
1614
1638
  def self?.values: -> ::Array[MetronomeSDK::Models::ContractV2::Transition::type_]
@@ -1684,6 +1708,128 @@ module MetronomeSDK
1684
1708
  end
1685
1709
  end
1686
1710
 
1711
+ type billing_provider_configuration_schedule =
1712
+ {
1713
+ billing_provider_configuration: MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration?,
1714
+ effective_at: Time,
1715
+ effective_until: Time
1716
+ }
1717
+
1718
+ class BillingProviderConfigurationSchedule < MetronomeSDK::Internal::Type::BaseModel
1719
+ attr_accessor billing_provider_configuration: MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration?
1720
+
1721
+ attr_accessor effective_at: Time
1722
+
1723
+ attr_reader effective_until: Time?
1724
+
1725
+ def effective_until=: (Time) -> Time
1726
+
1727
+ def initialize: (
1728
+ billing_provider_configuration: MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration?,
1729
+ effective_at: Time,
1730
+ ?effective_until: Time
1731
+ ) -> void
1732
+
1733
+ def to_hash: -> {
1734
+ billing_provider_configuration: MetronomeSDK::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration?,
1735
+ effective_at: Time,
1736
+ effective_until: Time
1737
+ }
1738
+
1739
+ type billing_provider_configuration =
1740
+ {
1741
+ id: String,
1742
+ archived_at: Time?,
1743
+ billing_provider: MetronomeSDK::Models::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::billing_provider,
1744
+ configuration: ::Hash[Symbol, top],
1745
+ customer_id: String,
1746
+ delivery_method: MetronomeSDK::Models::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::delivery_method,
1747
+ delivery_method_configuration: ::Hash[Symbol, top],
1748
+ delivery_method_id: String
1749
+ }
1750
+
1751
+ class BillingProviderConfiguration < MetronomeSDK::Internal::Type::BaseModel
1752
+ attr_accessor id: String
1753
+
1754
+ attr_accessor archived_at: Time?
1755
+
1756
+ attr_accessor billing_provider: MetronomeSDK::Models::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::billing_provider
1757
+
1758
+ attr_accessor configuration: ::Hash[Symbol, top]
1759
+
1760
+ attr_accessor customer_id: String
1761
+
1762
+ attr_accessor delivery_method: MetronomeSDK::Models::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::delivery_method
1763
+
1764
+ attr_accessor delivery_method_configuration: ::Hash[Symbol, top]
1765
+
1766
+ attr_accessor delivery_method_id: String
1767
+
1768
+ def initialize: (
1769
+ id: String,
1770
+ archived_at: Time?,
1771
+ billing_provider: MetronomeSDK::Models::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::billing_provider,
1772
+ configuration: ::Hash[Symbol, top],
1773
+ customer_id: String,
1774
+ delivery_method: MetronomeSDK::Models::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::delivery_method,
1775
+ delivery_method_configuration: ::Hash[Symbol, top],
1776
+ delivery_method_id: String
1777
+ ) -> void
1778
+
1779
+ def to_hash: -> {
1780
+ id: String,
1781
+ archived_at: Time?,
1782
+ billing_provider: MetronomeSDK::Models::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::billing_provider,
1783
+ configuration: ::Hash[Symbol, top],
1784
+ customer_id: String,
1785
+ delivery_method: MetronomeSDK::Models::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::delivery_method,
1786
+ delivery_method_configuration: ::Hash[Symbol, top],
1787
+ delivery_method_id: String
1788
+ }
1789
+
1790
+ type billing_provider =
1791
+ :aws_marketplace
1792
+ | :stripe
1793
+ | :netsuite
1794
+ | :custom
1795
+ | :azure_marketplace
1796
+ | :quickbooks_online
1797
+ | :workday
1798
+ | :gcp_marketplace
1799
+ | :metronome
1800
+
1801
+ module BillingProvider
1802
+ extend MetronomeSDK::Internal::Type::Enum
1803
+
1804
+ AWS_MARKETPLACE: :aws_marketplace
1805
+ STRIPE: :stripe
1806
+ NETSUITE: :netsuite
1807
+ CUSTOM: :custom
1808
+ AZURE_MARKETPLACE: :azure_marketplace
1809
+ QUICKBOOKS_ONLINE: :quickbooks_online
1810
+ WORKDAY: :workday
1811
+ GCP_MARKETPLACE: :gcp_marketplace
1812
+ METRONOME: :metronome
1813
+
1814
+ def self?.values: -> ::Array[MetronomeSDK::Models::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::billing_provider]
1815
+ end
1816
+
1817
+ type delivery_method =
1818
+ :direct_to_billing_provider | :aws_sqs | :tackle | :aws_sns
1819
+
1820
+ module DeliveryMethod
1821
+ extend MetronomeSDK::Internal::Type::Enum
1822
+
1823
+ DIRECT_TO_BILLING_PROVIDER: :direct_to_billing_provider
1824
+ AWS_SQS: :aws_sqs
1825
+ TACKLE: :tackle
1826
+ AWS_SNS: :aws_sns
1827
+
1828
+ def self?.values: -> ::Array[MetronomeSDK::Models::ContractV2::BillingProviderConfigurationSchedule::BillingProviderConfiguration::delivery_method]
1829
+ end
1830
+ end
1831
+ end
1832
+
1687
1833
  type credit =
1688
1834
  {
1689
1835
  id: String,
@@ -2312,27 +2458,52 @@ module MetronomeSDK
2312
2458
  type customer_billing_provider_configuration =
2313
2459
  {
2314
2460
  id: String,
2461
+ archived_at: Time?,
2315
2462
  billing_provider: MetronomeSDK::Models::ContractV2::CustomerBillingProviderConfiguration::billing_provider,
2316
- delivery_method: MetronomeSDK::Models::ContractV2::CustomerBillingProviderConfiguration::delivery_method
2463
+ configuration: ::Hash[Symbol, top],
2464
+ customer_id: String,
2465
+ delivery_method: MetronomeSDK::Models::ContractV2::CustomerBillingProviderConfiguration::delivery_method,
2466
+ delivery_method_configuration: ::Hash[Symbol, top],
2467
+ delivery_method_id: String
2317
2468
  }
2318
2469
 
2319
2470
  class CustomerBillingProviderConfiguration < MetronomeSDK::Internal::Type::BaseModel
2320
2471
  attr_accessor id: String
2321
2472
 
2473
+ attr_accessor archived_at: Time?
2474
+
2322
2475
  attr_accessor billing_provider: MetronomeSDK::Models::ContractV2::CustomerBillingProviderConfiguration::billing_provider
2323
2476
 
2477
+ attr_accessor configuration: ::Hash[Symbol, top]
2478
+
2479
+ attr_accessor customer_id: String
2480
+
2324
2481
  attr_accessor delivery_method: MetronomeSDK::Models::ContractV2::CustomerBillingProviderConfiguration::delivery_method
2325
2482
 
2483
+ attr_accessor delivery_method_configuration: ::Hash[Symbol, top]
2484
+
2485
+ attr_accessor delivery_method_id: String
2486
+
2326
2487
  def initialize: (
2327
2488
  id: String,
2489
+ archived_at: Time?,
2328
2490
  billing_provider: MetronomeSDK::Models::ContractV2::CustomerBillingProviderConfiguration::billing_provider,
2329
- delivery_method: MetronomeSDK::Models::ContractV2::CustomerBillingProviderConfiguration::delivery_method
2491
+ configuration: ::Hash[Symbol, top],
2492
+ customer_id: String,
2493
+ delivery_method: MetronomeSDK::Models::ContractV2::CustomerBillingProviderConfiguration::delivery_method,
2494
+ delivery_method_configuration: ::Hash[Symbol, top],
2495
+ delivery_method_id: String
2330
2496
  ) -> void
2331
2497
 
2332
2498
  def to_hash: -> {
2333
2499
  id: String,
2500
+ archived_at: Time?,
2334
2501
  billing_provider: MetronomeSDK::Models::ContractV2::CustomerBillingProviderConfiguration::billing_provider,
2335
- delivery_method: MetronomeSDK::Models::ContractV2::CustomerBillingProviderConfiguration::delivery_method
2502
+ configuration: ::Hash[Symbol, top],
2503
+ customer_id: String,
2504
+ delivery_method: MetronomeSDK::Models::ContractV2::CustomerBillingProviderConfiguration::delivery_method,
2505
+ delivery_method_configuration: ::Hash[Symbol, top],
2506
+ delivery_method_id: String
2336
2507
  }
2337
2508
 
2338
2509
  type billing_provider =
@@ -3431,6 +3602,119 @@ module MetronomeSDK
3431
3602
  end
3432
3603
  end
3433
3604
 
3605
+ type revenue_system_configuration_schedule =
3606
+ {
3607
+ effective_at: Time,
3608
+ revenue_system_configuration: MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration?,
3609
+ effective_until: Time
3610
+ }
3611
+
3612
+ class RevenueSystemConfigurationSchedule < MetronomeSDK::Internal::Type::BaseModel
3613
+ attr_accessor effective_at: Time
3614
+
3615
+ attr_accessor revenue_system_configuration: MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration?
3616
+
3617
+ attr_reader effective_until: Time?
3618
+
3619
+ def effective_until=: (Time) -> Time
3620
+
3621
+ def initialize: (
3622
+ effective_at: Time,
3623
+ revenue_system_configuration: MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration?,
3624
+ ?effective_until: Time
3625
+ ) -> void
3626
+
3627
+ def to_hash: -> {
3628
+ effective_at: Time,
3629
+ revenue_system_configuration: MetronomeSDK::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration?,
3630
+ effective_until: Time
3631
+ }
3632
+
3633
+ type revenue_system_configuration =
3634
+ {
3635
+ id: String,
3636
+ configuration: ::Hash[Symbol, top],
3637
+ customer_id: String,
3638
+ delivery_method_id: String,
3639
+ provider: MetronomeSDK::Models::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::provider,
3640
+ archived_at: Time?,
3641
+ delivery_method: MetronomeSDK::Models::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::delivery_method,
3642
+ delivery_method_configuration: ::Hash[Symbol, top]
3643
+ }
3644
+
3645
+ class RevenueSystemConfiguration < MetronomeSDK::Internal::Type::BaseModel
3646
+ attr_accessor id: String
3647
+
3648
+ attr_accessor configuration: ::Hash[Symbol, top]
3649
+
3650
+ attr_accessor customer_id: String
3651
+
3652
+ attr_accessor delivery_method_id: String
3653
+
3654
+ attr_accessor provider: MetronomeSDK::Models::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::provider
3655
+
3656
+ attr_accessor archived_at: Time?
3657
+
3658
+ attr_reader delivery_method: MetronomeSDK::Models::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::delivery_method?
3659
+
3660
+ def delivery_method=: (
3661
+ MetronomeSDK::Models::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::delivery_method
3662
+ ) -> MetronomeSDK::Models::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::delivery_method
3663
+
3664
+ attr_reader delivery_method_configuration: ::Hash[Symbol, top]?
3665
+
3666
+ def delivery_method_configuration=: (
3667
+ ::Hash[Symbol, top]
3668
+ ) -> ::Hash[Symbol, top]
3669
+
3670
+ def initialize: (
3671
+ id: String,
3672
+ configuration: ::Hash[Symbol, top],
3673
+ customer_id: String,
3674
+ delivery_method_id: String,
3675
+ provider: MetronomeSDK::Models::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::provider,
3676
+ ?archived_at: Time?,
3677
+ ?delivery_method: MetronomeSDK::Models::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::delivery_method,
3678
+ ?delivery_method_configuration: ::Hash[Symbol, top]
3679
+ ) -> void
3680
+
3681
+ def to_hash: -> {
3682
+ id: String,
3683
+ configuration: ::Hash[Symbol, top],
3684
+ customer_id: String,
3685
+ delivery_method_id: String,
3686
+ provider: MetronomeSDK::Models::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::provider,
3687
+ archived_at: Time?,
3688
+ delivery_method: MetronomeSDK::Models::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::delivery_method,
3689
+ delivery_method_configuration: ::Hash[Symbol, top]
3690
+ }
3691
+
3692
+ type provider = :netsuite
3693
+
3694
+ module Provider
3695
+ extend MetronomeSDK::Internal::Type::Enum
3696
+
3697
+ NETSUITE: :netsuite
3698
+
3699
+ def self?.values: -> ::Array[MetronomeSDK::Models::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::provider]
3700
+ end
3701
+
3702
+ type delivery_method =
3703
+ :direct_to_billing_provider | :aws_sqs | :tackle | :aws_sns
3704
+
3705
+ module DeliveryMethod
3706
+ extend MetronomeSDK::Internal::Type::Enum
3707
+
3708
+ DIRECT_TO_BILLING_PROVIDER: :direct_to_billing_provider
3709
+ AWS_SQS: :aws_sqs
3710
+ TACKLE: :tackle
3711
+ AWS_SNS: :aws_sns
3712
+
3713
+ def self?.values: -> ::Array[MetronomeSDK::Models::ContractV2::RevenueSystemConfigurationSchedule::RevenueSystemConfiguration::delivery_method]
3714
+ end
3715
+ end
3716
+ end
3717
+
3434
3718
  type scheduled_charges_on_usage_invoices = :ALL
3435
3719
 
3436
3720
  module ScheduledChargesOnUsageInvoices
@@ -234,12 +234,11 @@ module MetronomeSDK
234
234
  type: MetronomeSDK::Models::ContractWithoutAmendments::Transition::type_
235
235
  }
236
236
 
237
- type type_ = :SUPERSEDE | :RENEWAL
237
+ type type_ = :RENEWAL
238
238
 
239
239
  module Type
240
240
  extend MetronomeSDK::Internal::Type::Enum
241
241
 
242
- SUPERSEDE: :SUPERSEDE
243
242
  RENEWAL: :RENEWAL
244
243
 
245
244
  def self?.values: -> ::Array[MetronomeSDK::Models::ContractWithoutAmendments::Transition::type_]
@@ -3278,12 +3278,11 @@ module MetronomeSDK
3278
3278
  future_invoice_behavior: MetronomeSDK::V1::ContractCreateParams::Transition::FutureInvoiceBehavior
3279
3279
  }
3280
3280
 
3281
- type type_ = :SUPERSEDE | :RENEWAL
3281
+ type type_ = :RENEWAL
3282
3282
 
3283
3283
  module Type
3284
3284
  extend MetronomeSDK::Internal::Type::Enum
3285
3285
 
3286
- SUPERSEDE: :SUPERSEDE
3287
3286
  RENEWAL: :RENEWAL
3288
3287
 
3289
3288
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateParams::Transition::type_]
@@ -282,12 +282,11 @@ module MetronomeSDK
282
282
  type: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::Transition::type_
283
283
  }
284
284
 
285
- type type_ = :SUPERSEDE | :RENEWAL
285
+ type type_ = :RENEWAL
286
286
 
287
287
  module Type
288
288
  extend MetronomeSDK::Internal::Type::Enum
289
289
 
290
- SUPERSEDE: :SUPERSEDE
291
290
  RENEWAL: :RENEWAL
292
291
 
293
292
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::Transition::type_]
@@ -366,37 +365,52 @@ module MetronomeSDK
366
365
  type customer_billing_provider_configuration =
367
366
  {
368
367
  id: String,
368
+ archived_at: Time?,
369
369
  billing_provider: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::billing_provider,
370
- delivery_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method
370
+ configuration: ::Hash[Symbol, top],
371
+ customer_id: String,
372
+ delivery_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method,
373
+ delivery_method_configuration: ::Hash[Symbol, top],
374
+ delivery_method_id: String
371
375
  }
372
376
 
373
377
  class CustomerBillingProviderConfiguration < MetronomeSDK::Internal::Type::BaseModel
374
- attr_reader id: String?
378
+ attr_accessor id: String
379
+
380
+ attr_accessor archived_at: Time?
381
+
382
+ attr_accessor billing_provider: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::billing_provider
375
383
 
376
- def id=: (String) -> String
384
+ attr_accessor configuration: ::Hash[Symbol, top]
377
385
 
378
- attr_reader billing_provider: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::billing_provider?
386
+ attr_accessor customer_id: String
379
387
 
380
- def billing_provider=: (
381
- MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::billing_provider
382
- ) -> MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::billing_provider
388
+ attr_accessor delivery_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method
383
389
 
384
- attr_reader delivery_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method?
390
+ attr_accessor delivery_method_configuration: ::Hash[Symbol, top]
385
391
 
386
- def delivery_method=: (
387
- MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method
388
- ) -> MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method
392
+ attr_accessor delivery_method_id: String
389
393
 
390
394
  def initialize: (
391
- ?id: String,
392
- ?billing_provider: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::billing_provider,
393
- ?delivery_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method
395
+ id: String,
396
+ archived_at: Time?,
397
+ billing_provider: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::billing_provider,
398
+ configuration: ::Hash[Symbol, top],
399
+ customer_id: String,
400
+ delivery_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method,
401
+ delivery_method_configuration: ::Hash[Symbol, top],
402
+ delivery_method_id: String
394
403
  ) -> void
395
404
 
396
405
  def to_hash: -> {
397
406
  id: String,
407
+ archived_at: Time?,
398
408
  billing_provider: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::billing_provider,
399
- delivery_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method
409
+ configuration: ::Hash[Symbol, top],
410
+ customer_id: String,
411
+ delivery_method: MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::delivery_method,
412
+ delivery_method_configuration: ::Hash[Symbol, top],
413
+ delivery_method_id: String
400
414
  }
401
415
 
402
416
  type billing_provider =
@@ -5,6 +5,7 @@ module MetronomeSDK
5
5
  type rate_card_update_params =
6
6
  {
7
7
  rate_card_id: String,
8
+ add_credit_type_conversions: ::Array[MetronomeSDK::V1::Contracts::RateCardUpdateParams::AddCreditTypeConversion],
8
9
  aliases: ::Array[MetronomeSDK::V1::Contracts::RateCardUpdateParams::Alias],
9
10
  description: String,
10
11
  name: String
@@ -17,6 +18,12 @@ module MetronomeSDK
17
18
 
18
19
  attr_accessor rate_card_id: String
19
20
 
21
+ attr_reader add_credit_type_conversions: ::Array[MetronomeSDK::V1::Contracts::RateCardUpdateParams::AddCreditTypeConversion]?
22
+
23
+ def add_credit_type_conversions=: (
24
+ ::Array[MetronomeSDK::V1::Contracts::RateCardUpdateParams::AddCreditTypeConversion]
25
+ ) -> ::Array[MetronomeSDK::V1::Contracts::RateCardUpdateParams::AddCreditTypeConversion]
26
+
20
27
  attr_reader aliases: ::Array[MetronomeSDK::V1::Contracts::RateCardUpdateParams::Alias]?
21
28
 
22
29
  def aliases=: (
@@ -33,6 +40,7 @@ module MetronomeSDK
33
40
 
34
41
  def initialize: (
35
42
  rate_card_id: String,
43
+ ?add_credit_type_conversions: ::Array[MetronomeSDK::V1::Contracts::RateCardUpdateParams::AddCreditTypeConversion],
36
44
  ?aliases: ::Array[MetronomeSDK::V1::Contracts::RateCardUpdateParams::Alias],
37
45
  ?description: String,
38
46
  ?name: String,
@@ -41,12 +49,32 @@ module MetronomeSDK
41
49
 
42
50
  def to_hash: -> {
43
51
  rate_card_id: String,
52
+ add_credit_type_conversions: ::Array[MetronomeSDK::V1::Contracts::RateCardUpdateParams::AddCreditTypeConversion],
44
53
  aliases: ::Array[MetronomeSDK::V1::Contracts::RateCardUpdateParams::Alias],
45
54
  description: String,
46
55
  name: String,
47
56
  request_options: MetronomeSDK::RequestOptions
48
57
  }
49
58
 
59
+ type add_credit_type_conversion =
60
+ { custom_credit_type_id: String, fiat_per_custom_credit: Float }
61
+
62
+ class AddCreditTypeConversion < MetronomeSDK::Internal::Type::BaseModel
63
+ attr_accessor custom_credit_type_id: String
64
+
65
+ attr_accessor fiat_per_custom_credit: Float
66
+
67
+ def initialize: (
68
+ custom_credit_type_id: String,
69
+ fiat_per_custom_credit: Float
70
+ ) -> void
71
+
72
+ def to_hash: -> {
73
+ custom_credit_type_id: String,
74
+ fiat_per_custom_credit: Float
75
+ }
76
+ end
77
+
50
78
  type alias_ = { name: String, ending_before: Time, starting_at: Time }
51
79
 
52
80
  class Alias < MetronomeSDK::Internal::Type::BaseModel