metronome-sdk 3.7.0 → 3.8.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 (96) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +38 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/internal/transport/base_client.rb +4 -1
  5. data/lib/metronome_sdk/models/commit.rb +10 -1
  6. data/lib/metronome_sdk/models/contract_v2.rb +290 -7
  7. data/lib/metronome_sdk/models/contract_without_amendments.rb +178 -4
  8. data/lib/metronome_sdk/models/credit.rb +10 -1
  9. data/lib/metronome_sdk/models/override.rb +7 -1
  10. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration.rb +10 -2
  11. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +3 -1
  12. data/lib/metronome_sdk/models/subscription.rb +90 -2
  13. data/lib/metronome_sdk/models/v1/alert_create_params.rb +127 -1
  14. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +17 -4
  15. data/lib/metronome_sdk/models/v1/contract_create_params.rb +290 -10
  16. data/lib/metronome_sdk/models/v1/contract_create_response.rb +178 -4
  17. data/lib/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rb +88 -0
  18. data/lib/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rb +62 -0
  19. data/lib/metronome_sdk/models/v1/contract_list_seat_balances_params.rb +10 -1
  20. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +127 -1
  21. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +130 -3
  22. data/lib/metronome_sdk/models/v1/customers/invoice_list_params.rb +10 -1
  23. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +2 -0
  24. data/lib/metronome_sdk/models/v1/package_create_params.rb +279 -10
  25. data/lib/metronome_sdk/models/v1/package_list_response.rb +264 -7
  26. data/lib/metronome_sdk/models/v1/package_retrieve_response.rb +264 -7
  27. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +515 -9
  28. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +456 -8
  29. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +456 -8
  30. data/lib/metronome_sdk/resources/v1/alerts.rb +3 -1
  31. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +4 -0
  32. data/lib/metronome_sdk/resources/v1/contracts.rb +68 -1
  33. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +4 -2
  34. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +3 -1
  35. data/lib/metronome_sdk/resources/v1/dashboards.rb +7 -2
  36. data/lib/metronome_sdk/version.rb +1 -1
  37. data/lib/metronome_sdk.rb +2 -0
  38. data/rbi/metronome_sdk/models/commit.rbi +13 -0
  39. data/rbi/metronome_sdk/models/contract_v2.rbi +715 -3
  40. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +463 -0
  41. data/rbi/metronome_sdk/models/credit.rbi +13 -0
  42. data/rbi/metronome_sdk/models/override.rbi +9 -0
  43. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration.rbi +11 -1
  44. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +4 -0
  45. data/rbi/metronome_sdk/models/subscription.rbi +212 -3
  46. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +373 -0
  47. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +27 -6
  48. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +719 -9
  49. data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +463 -0
  50. data/rbi/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rbi +112 -0
  51. data/rbi/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rbi +119 -0
  52. data/rbi/metronome_sdk/models/v1/contract_list_seat_balances_params.rbi +13 -0
  53. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +360 -0
  54. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +379 -2
  55. data/rbi/metronome_sdk/models/v1/customers/invoice_list_params.rbi +13 -0
  56. data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +10 -0
  57. data/rbi/metronome_sdk/models/v1/package_create_params.rbi +706 -9
  58. data/rbi/metronome_sdk/models/v1/package_list_response.rbi +693 -3
  59. data/rbi/metronome_sdk/models/v1/package_retrieve_response.rbi +693 -3
  60. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +1333 -40
  61. data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +1204 -67
  62. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1204 -67
  63. data/rbi/metronome_sdk/resources/v1/alerts.rbi +8 -0
  64. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +4 -0
  65. data/rbi/metronome_sdk/resources/v1/contracts.rbi +70 -0
  66. data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +8 -1
  67. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +4 -0
  68. data/rbi/metronome_sdk/resources/v1/dashboards.rbi +7 -2
  69. data/sig/metronome_sdk/models/commit.rbs +7 -0
  70. data/sig/metronome_sdk/models/contract_v2.rbs +278 -5
  71. data/sig/metronome_sdk/models/contract_without_amendments.rbs +169 -2
  72. data/sig/metronome_sdk/models/credit.rbs +7 -0
  73. data/sig/metronome_sdk/models/override.rbs +7 -0
  74. data/sig/metronome_sdk/models/subscription.rbs +88 -3
  75. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +144 -0
  76. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +7 -0
  77. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +278 -5
  78. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +167 -2
  79. data/sig/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rbs +63 -0
  80. data/sig/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rbs +59 -0
  81. data/sig/metronome_sdk/models/v1/contract_list_seat_balances_params.rbs +7 -0
  82. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +141 -0
  83. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +150 -0
  84. data/sig/metronome_sdk/models/v1/customers/invoice_list_params.rbs +8 -1
  85. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +4 -0
  86. data/sig/metronome_sdk/models/v1/package_create_params.rbs +271 -5
  87. data/sig/metronome_sdk/models/v1/package_list_response.rbs +265 -5
  88. data/sig/metronome_sdk/models/v1/package_retrieve_response.rbs +263 -5
  89. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +468 -5
  90. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +428 -5
  91. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +427 -5
  92. data/sig/metronome_sdk/resources/v1/alerts.rbs +1 -0
  93. data/sig/metronome_sdk/resources/v1/contracts.rbs +13 -0
  94. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +1 -0
  95. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -0
  96. metadata +8 -2
@@ -703,6 +703,7 @@ module MetronomeSDK
703
703
 
704
704
  type override_specifier =
705
705
  {
706
+ any_commit_or_credit_template_ids: ::Array[String],
706
707
  billing_frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Override::OverrideSpecifier::billing_frequency,
707
708
  commit_template_ids: ::Array[String],
708
709
  presentation_group_values: ::Hash[Symbol, String?],
@@ -713,6 +714,12 @@ module MetronomeSDK
713
714
  }
714
715
 
715
716
  class OverrideSpecifier < MetronomeSDK::Internal::Type::BaseModel
717
+ attr_reader any_commit_or_credit_template_ids: ::Array[String]?
718
+
719
+ def any_commit_or_credit_template_ids=: (
720
+ ::Array[String]
721
+ ) -> ::Array[String]
722
+
716
723
  attr_reader billing_frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Override::OverrideSpecifier::billing_frequency?
717
724
 
718
725
  def billing_frequency=: (
@@ -750,6 +757,7 @@ module MetronomeSDK
750
757
  ) -> ::Array[String]
751
758
 
752
759
  def initialize: (
760
+ ?any_commit_or_credit_template_ids: ::Array[String],
753
761
  ?billing_frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Override::OverrideSpecifier::billing_frequency,
754
762
  ?commit_template_ids: ::Array[String],
755
763
  ?presentation_group_values: ::Hash[Symbol, String?],
@@ -760,6 +768,7 @@ module MetronomeSDK
760
768
  ) -> void
761
769
 
762
770
  def to_hash: -> {
771
+ any_commit_or_credit_template_ids: ::Array[String],
763
772
  billing_frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Override::OverrideSpecifier::billing_frequency,
764
773
  commit_template_ids: ::Array[String],
765
774
  presentation_group_values: ::Hash[Symbol, String?],
@@ -1460,6 +1469,7 @@ module MetronomeSDK
1460
1469
  invoice_amount: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::InvoiceAmount,
1461
1470
  name: String,
1462
1471
  proration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::proration,
1472
+ proration_rounding: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding?,
1463
1473
  recurrence_frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::recurrence_frequency,
1464
1474
  rollover_fraction: Float,
1465
1475
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1515,6 +1525,8 @@ module MetronomeSDK
1515
1525
  MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::proration
1516
1526
  ) -> MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::proration
1517
1527
 
1528
+ attr_accessor proration_rounding: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding?
1529
+
1518
1530
  attr_reader recurrence_frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::recurrence_frequency?
1519
1531
 
1520
1532
  def recurrence_frequency=: (
@@ -1552,6 +1564,7 @@ module MetronomeSDK
1552
1564
  ?invoice_amount: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::InvoiceAmount,
1553
1565
  ?name: String,
1554
1566
  ?proration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::proration,
1567
+ ?proration_rounding: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding?,
1555
1568
  ?recurrence_frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::recurrence_frequency,
1556
1569
  ?rollover_fraction: Float,
1557
1570
  ?specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1573,6 +1586,7 @@ module MetronomeSDK
1573
1586
  invoice_amount: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::InvoiceAmount,
1574
1587
  name: String,
1575
1588
  proration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::proration,
1589
+ proration_rounding: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding?,
1576
1590
  recurrence_frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::recurrence_frequency,
1577
1591
  rollover_fraction: Float,
1578
1592
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1769,8 +1783,106 @@ module MetronomeSDK
1769
1783
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::proration]
1770
1784
  end
1771
1785
 
1786
+ type proration_rounding =
1787
+ {
1788
+ access: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Access,
1789
+ invoice: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Invoice
1790
+ }
1791
+
1792
+ class ProrationRounding < MetronomeSDK::Internal::Type::BaseModel
1793
+ attr_reader access: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Access?
1794
+
1795
+ def access=: (
1796
+ MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Access
1797
+ ) -> MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Access
1798
+
1799
+ attr_reader invoice: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Invoice?
1800
+
1801
+ def invoice=: (
1802
+ MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Invoice
1803
+ ) -> MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Invoice
1804
+
1805
+ def initialize: (
1806
+ ?access: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Access,
1807
+ ?invoice: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Invoice
1808
+ ) -> void
1809
+
1810
+ def to_hash: -> {
1811
+ access: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Access,
1812
+ invoice: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Invoice
1813
+ }
1814
+
1815
+ type access =
1816
+ {
1817
+ decimal_places: Float,
1818
+ rounding_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Access::rounding_method
1819
+ }
1820
+
1821
+ class Access < MetronomeSDK::Internal::Type::BaseModel
1822
+ attr_accessor decimal_places: Float
1823
+
1824
+ attr_accessor rounding_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Access::rounding_method
1825
+
1826
+ def initialize: (
1827
+ decimal_places: Float,
1828
+ rounding_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Access::rounding_method
1829
+ ) -> void
1830
+
1831
+ def to_hash: -> {
1832
+ decimal_places: Float,
1833
+ rounding_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Access::rounding_method
1834
+ }
1835
+
1836
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
1837
+
1838
+ module RoundingMethod
1839
+ extend MetronomeSDK::Internal::Type::Enum
1840
+
1841
+ HALF_UP: :HALF_UP
1842
+ FLOOR: :FLOOR
1843
+ CEILING: :CEILING
1844
+
1845
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Access::rounding_method]
1846
+ end
1847
+ end
1848
+
1849
+ type invoice =
1850
+ {
1851
+ decimal_places: Float,
1852
+ rounding_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Invoice::rounding_method
1853
+ }
1854
+
1855
+ class Invoice < MetronomeSDK::Internal::Type::BaseModel
1856
+ attr_accessor decimal_places: Float
1857
+
1858
+ attr_accessor rounding_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Invoice::rounding_method
1859
+
1860
+ def initialize: (
1861
+ decimal_places: Float,
1862
+ rounding_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Invoice::rounding_method
1863
+ ) -> void
1864
+
1865
+ def to_hash: -> {
1866
+ decimal_places: Float,
1867
+ rounding_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Invoice::rounding_method
1868
+ }
1869
+
1870
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
1871
+
1872
+ module RoundingMethod
1873
+ extend MetronomeSDK::Internal::Type::Enum
1874
+
1875
+ HALF_UP: :HALF_UP
1876
+ FLOOR: :FLOOR
1877
+ CEILING: :CEILING
1878
+
1879
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::ProrationRounding::Invoice::rounding_method]
1880
+ end
1881
+ end
1882
+ end
1883
+
1772
1884
  type recurrence_frequency =
1773
- :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
1885
+ :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY | :DAILY
1774
1886
 
1775
1887
  module RecurrenceFrequency
1776
1888
  extend MetronomeSDK::Internal::Type::Enum
@@ -1779,6 +1891,7 @@ module MetronomeSDK
1779
1891
  QUARTERLY: :QUARTERLY
1780
1892
  ANNUAL: :ANNUAL
1781
1893
  WEEKLY: :WEEKLY
1894
+ DAILY: :DAILY
1782
1895
 
1783
1896
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCommit::recurrence_frequency]
1784
1897
  end
@@ -1847,6 +1960,7 @@ module MetronomeSDK
1847
1960
  duration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::Duration,
1848
1961
  name: String,
1849
1962
  proration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::proration,
1963
+ proration_rounding: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::ProrationRounding?,
1850
1964
  recurrence_frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::recurrence_frequency,
1851
1965
  rollover_fraction: Float,
1852
1966
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1896,6 +2010,8 @@ module MetronomeSDK
1896
2010
  MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::proration
1897
2011
  ) -> MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::proration
1898
2012
 
2013
+ attr_accessor proration_rounding: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::ProrationRounding?
2014
+
1899
2015
  attr_reader recurrence_frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::recurrence_frequency?
1900
2016
 
1901
2017
  def recurrence_frequency=: (
@@ -1932,6 +2048,7 @@ module MetronomeSDK
1932
2048
  ?duration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::Duration,
1933
2049
  ?name: String,
1934
2050
  ?proration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::proration,
2051
+ ?proration_rounding: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::ProrationRounding?,
1935
2052
  ?recurrence_frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::recurrence_frequency,
1936
2053
  ?rollover_fraction: Float,
1937
2054
  ?specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -1952,6 +2069,7 @@ module MetronomeSDK
1952
2069
  duration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::Duration,
1953
2070
  name: String,
1954
2071
  proration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::proration,
2072
+ proration_rounding: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::ProrationRounding?,
1955
2073
  recurrence_frequency: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::recurrence_frequency,
1956
2074
  rollover_fraction: Float,
1957
2075
  specifiers: ::Array[MetronomeSDK::CommitSpecifier],
@@ -2125,8 +2243,63 @@ module MetronomeSDK
2125
2243
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::proration]
2126
2244
  end
2127
2245
 
2246
+ type proration_rounding =
2247
+ {
2248
+ access: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::ProrationRounding::Access
2249
+ }
2250
+
2251
+ class ProrationRounding < MetronomeSDK::Internal::Type::BaseModel
2252
+ attr_reader access: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::ProrationRounding::Access?
2253
+
2254
+ def access=: (
2255
+ MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::ProrationRounding::Access
2256
+ ) -> MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::ProrationRounding::Access
2257
+
2258
+ def initialize: (
2259
+ ?access: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::ProrationRounding::Access
2260
+ ) -> void
2261
+
2262
+ def to_hash: -> {
2263
+ access: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::ProrationRounding::Access
2264
+ }
2265
+
2266
+ type access =
2267
+ {
2268
+ decimal_places: Float,
2269
+ rounding_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::ProrationRounding::Access::rounding_method
2270
+ }
2271
+
2272
+ class Access < MetronomeSDK::Internal::Type::BaseModel
2273
+ attr_accessor decimal_places: Float
2274
+
2275
+ attr_accessor rounding_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::ProrationRounding::Access::rounding_method
2276
+
2277
+ def initialize: (
2278
+ decimal_places: Float,
2279
+ rounding_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::ProrationRounding::Access::rounding_method
2280
+ ) -> void
2281
+
2282
+ def to_hash: -> {
2283
+ decimal_places: Float,
2284
+ rounding_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::ProrationRounding::Access::rounding_method
2285
+ }
2286
+
2287
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
2288
+
2289
+ module RoundingMethod
2290
+ extend MetronomeSDK::Internal::Type::Enum
2291
+
2292
+ HALF_UP: :HALF_UP
2293
+ FLOOR: :FLOOR
2294
+ CEILING: :CEILING
2295
+
2296
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::ProrationRounding::Access::rounding_method]
2297
+ end
2298
+ end
2299
+ end
2300
+
2128
2301
  type recurrence_frequency =
2129
- :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY
2302
+ :MONTHLY | :QUARTERLY | :ANNUAL | :WEEKLY | :DAILY
2130
2303
 
2131
2304
  module RecurrenceFrequency
2132
2305
  extend MetronomeSDK::Internal::Type::Enum
@@ -2135,6 +2308,7 @@ module MetronomeSDK
2135
2308
  QUARTERLY: :QUARTERLY
2136
2309
  ANNUAL: :ANNUAL
2137
2310
  WEEKLY: :WEEKLY
2311
+ DAILY: :DAILY
2138
2312
 
2139
2313
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::RecurringCredit::recurrence_frequency]
2140
2314
  end
@@ -2310,6 +2484,7 @@ module MetronomeSDK
2310
2484
  proration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration,
2311
2485
  subscription_rate: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::SubscriptionRate,
2312
2486
  id: String,
2487
+ billing_cycle_config: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::BillingCycleConfig,
2313
2488
  custom_fields: ::Hash[Symbol, String],
2314
2489
  description: String,
2315
2490
  duration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Duration,
@@ -2332,6 +2507,12 @@ module MetronomeSDK
2332
2507
 
2333
2508
  def id=: (String) -> String
2334
2509
 
2510
+ attr_reader billing_cycle_config: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::BillingCycleConfig?
2511
+
2512
+ def billing_cycle_config=: (
2513
+ MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::BillingCycleConfig
2514
+ ) -> MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::BillingCycleConfig
2515
+
2335
2516
  attr_reader custom_fields: ::Hash[Symbol, String]?
2336
2517
 
2337
2518
  def custom_fields=: (
@@ -2383,6 +2564,7 @@ module MetronomeSDK
2383
2564
  proration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration,
2384
2565
  subscription_rate: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::SubscriptionRate,
2385
2566
  ?id: String,
2567
+ ?billing_cycle_config: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::BillingCycleConfig,
2386
2568
  ?custom_fields: ::Hash[Symbol, String],
2387
2569
  ?description: String,
2388
2570
  ?duration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Duration,
@@ -2399,6 +2581,7 @@ module MetronomeSDK
2399
2581
  proration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration,
2400
2582
  subscription_rate: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::SubscriptionRate,
2401
2583
  id: String,
2584
+ billing_cycle_config: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::BillingCycleConfig,
2402
2585
  custom_fields: ::Hash[Symbol, String],
2403
2586
  description: String,
2404
2587
  duration: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Duration,
@@ -2424,7 +2607,8 @@ module MetronomeSDK
2424
2607
  type proration =
2425
2608
  {
2426
2609
  invoice_behavior: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration::invoice_behavior,
2427
- is_prorated: bool
2610
+ is_prorated: bool,
2611
+ rounding: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration::Rounding
2428
2612
  }
2429
2613
 
2430
2614
  class Proration < MetronomeSDK::Internal::Type::BaseModel
@@ -2432,14 +2616,22 @@ module MetronomeSDK
2432
2616
 
2433
2617
  attr_accessor is_prorated: bool
2434
2618
 
2619
+ attr_reader rounding: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration::Rounding?
2620
+
2621
+ def rounding=: (
2622
+ MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration::Rounding
2623
+ ) -> MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration::Rounding
2624
+
2435
2625
  def initialize: (
2436
2626
  invoice_behavior: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration::invoice_behavior,
2437
- is_prorated: bool
2627
+ is_prorated: bool,
2628
+ ?rounding: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration::Rounding
2438
2629
  ) -> void
2439
2630
 
2440
2631
  def to_hash: -> {
2441
2632
  invoice_behavior: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration::invoice_behavior,
2442
- is_prorated: bool
2633
+ is_prorated: bool,
2634
+ rounding: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration::Rounding
2443
2635
  }
2444
2636
 
2445
2637
  type invoice_behavior =
@@ -2453,6 +2645,40 @@ module MetronomeSDK
2453
2645
 
2454
2646
  def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration::invoice_behavior]
2455
2647
  end
2648
+
2649
+ type rounding =
2650
+ {
2651
+ decimal_places: Float,
2652
+ rounding_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration::Rounding::rounding_method
2653
+ }
2654
+
2655
+ class Rounding < MetronomeSDK::Internal::Type::BaseModel
2656
+ attr_accessor decimal_places: Float
2657
+
2658
+ attr_accessor rounding_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration::Rounding::rounding_method
2659
+
2660
+ def initialize: (
2661
+ decimal_places: Float,
2662
+ rounding_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration::Rounding::rounding_method
2663
+ ) -> void
2664
+
2665
+ def to_hash: -> {
2666
+ decimal_places: Float,
2667
+ rounding_method: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration::Rounding::rounding_method
2668
+ }
2669
+
2670
+ type rounding_method = :HALF_UP | :FLOOR | :CEILING
2671
+
2672
+ module RoundingMethod
2673
+ extend MetronomeSDK::Internal::Type::Enum
2674
+
2675
+ HALF_UP: :HALF_UP
2676
+ FLOOR: :FLOOR
2677
+ CEILING: :CEILING
2678
+
2679
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Proration::Rounding::rounding_method]
2680
+ end
2681
+ end
2456
2682
  end
2457
2683
 
2458
2684
  type subscription_rate =
@@ -2502,6 +2728,38 @@ module MetronomeSDK
2502
2728
  end
2503
2729
  end
2504
2730
 
2731
+ type billing_cycle_config =
2732
+ {
2733
+ invoice_placement: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::BillingCycleConfig::invoice_placement
2734
+ }
2735
+
2736
+ class BillingCycleConfig < MetronomeSDK::Internal::Type::BaseModel
2737
+ attr_reader invoice_placement: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::BillingCycleConfig::invoice_placement?
2738
+
2739
+ def invoice_placement=: (
2740
+ MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::BillingCycleConfig::invoice_placement
2741
+ ) -> MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::BillingCycleConfig::invoice_placement
2742
+
2743
+ def initialize: (
2744
+ ?invoice_placement: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::BillingCycleConfig::invoice_placement
2745
+ ) -> void
2746
+
2747
+ def to_hash: -> {
2748
+ invoice_placement: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::BillingCycleConfig::invoice_placement
2749
+ }
2750
+
2751
+ type invoice_placement = :ON_SCHEDULED_INVOICE | :ON_USAGE_INVOICE
2752
+
2753
+ module InvoicePlacement
2754
+ extend MetronomeSDK::Internal::Type::Enum
2755
+
2756
+ ON_SCHEDULED_INVOICE: :ON_SCHEDULED_INVOICE
2757
+ ON_USAGE_INVOICE: :ON_USAGE_INVOICE
2758
+
2759
+ def self?.values: -> ::Array[MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::BillingCycleConfig::invoice_placement]
2760
+ end
2761
+ end
2762
+
2505
2763
  type duration =
2506
2764
  {
2507
2765
  unit: MetronomeSDK::Models::V1::PackageRetrieveResponse::Data::Subscription::Duration::unit,