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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +38 -0
- data/README.md +1 -1
- data/lib/metronome_sdk/internal/transport/base_client.rb +4 -1
- data/lib/metronome_sdk/models/commit.rb +10 -1
- data/lib/metronome_sdk/models/contract_v2.rb +290 -7
- data/lib/metronome_sdk/models/contract_without_amendments.rb +178 -4
- data/lib/metronome_sdk/models/credit.rb +10 -1
- data/lib/metronome_sdk/models/override.rb +7 -1
- data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration.rb +10 -2
- data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +3 -1
- data/lib/metronome_sdk/models/subscription.rb +90 -2
- data/lib/metronome_sdk/models/v1/alert_create_params.rb +127 -1
- data/lib/metronome_sdk/models/v1/contract_amend_params.rb +17 -4
- data/lib/metronome_sdk/models/v1/contract_create_params.rb +290 -10
- data/lib/metronome_sdk/models/v1/contract_create_response.rb +178 -4
- data/lib/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rb +88 -0
- data/lib/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rb +62 -0
- data/lib/metronome_sdk/models/v1/contract_list_seat_balances_params.rb +10 -1
- data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +127 -1
- data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +130 -3
- data/lib/metronome_sdk/models/v1/customers/invoice_list_params.rb +10 -1
- data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +2 -0
- data/lib/metronome_sdk/models/v1/package_create_params.rb +279 -10
- data/lib/metronome_sdk/models/v1/package_list_response.rb +264 -7
- data/lib/metronome_sdk/models/v1/package_retrieve_response.rb +264 -7
- data/lib/metronome_sdk/models/v2/contract_edit_params.rb +515 -9
- data/lib/metronome_sdk/models/v2/contract_edit_response.rb +456 -8
- data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +456 -8
- data/lib/metronome_sdk/resources/v1/alerts.rb +3 -1
- data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +4 -0
- data/lib/metronome_sdk/resources/v1/contracts.rb +68 -1
- data/lib/metronome_sdk/resources/v1/customers/alerts.rb +4 -2
- data/lib/metronome_sdk/resources/v1/customers/invoices.rb +3 -1
- data/lib/metronome_sdk/resources/v1/dashboards.rb +7 -2
- data/lib/metronome_sdk/version.rb +1 -1
- data/lib/metronome_sdk.rb +2 -0
- data/rbi/metronome_sdk/models/commit.rbi +13 -0
- data/rbi/metronome_sdk/models/contract_v2.rbi +715 -3
- data/rbi/metronome_sdk/models/contract_without_amendments.rbi +463 -0
- data/rbi/metronome_sdk/models/credit.rbi +13 -0
- data/rbi/metronome_sdk/models/override.rbi +9 -0
- data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration.rbi +11 -1
- data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +4 -0
- data/rbi/metronome_sdk/models/subscription.rbi +212 -3
- data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +373 -0
- data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +27 -6
- data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +719 -9
- data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +463 -0
- data/rbi/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rbi +112 -0
- data/rbi/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rbi +119 -0
- data/rbi/metronome_sdk/models/v1/contract_list_seat_balances_params.rbi +13 -0
- data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +360 -0
- data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +379 -2
- data/rbi/metronome_sdk/models/v1/customers/invoice_list_params.rbi +13 -0
- data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +10 -0
- data/rbi/metronome_sdk/models/v1/package_create_params.rbi +706 -9
- data/rbi/metronome_sdk/models/v1/package_list_response.rbi +693 -3
- data/rbi/metronome_sdk/models/v1/package_retrieve_response.rbi +693 -3
- data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +1333 -40
- data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +1204 -67
- data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1204 -67
- data/rbi/metronome_sdk/resources/v1/alerts.rbi +8 -0
- data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +4 -0
- data/rbi/metronome_sdk/resources/v1/contracts.rbi +70 -0
- data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +8 -1
- data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +4 -0
- data/rbi/metronome_sdk/resources/v1/dashboards.rbi +7 -2
- data/sig/metronome_sdk/models/commit.rbs +7 -0
- data/sig/metronome_sdk/models/contract_v2.rbs +278 -5
- data/sig/metronome_sdk/models/contract_without_amendments.rbs +169 -2
- data/sig/metronome_sdk/models/credit.rbs +7 -0
- data/sig/metronome_sdk/models/override.rbs +7 -0
- data/sig/metronome_sdk/models/subscription.rbs +88 -3
- data/sig/metronome_sdk/models/v1/alert_create_params.rbs +144 -0
- data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/contract_create_params.rbs +278 -5
- data/sig/metronome_sdk/models/v1/contract_create_response.rbs +167 -2
- data/sig/metronome_sdk/models/v1/contract_get_subscription_seats_history_params.rbs +63 -0
- data/sig/metronome_sdk/models/v1/contract_get_subscription_seats_history_response.rbs +59 -0
- data/sig/metronome_sdk/models/v1/contract_list_seat_balances_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +141 -0
- data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +150 -0
- data/sig/metronome_sdk/models/v1/customers/invoice_list_params.rbs +8 -1
- data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +4 -0
- data/sig/metronome_sdk/models/v1/package_create_params.rbs +271 -5
- data/sig/metronome_sdk/models/v1/package_list_response.rbs +265 -5
- data/sig/metronome_sdk/models/v1/package_retrieve_response.rbs +263 -5
- data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +468 -5
- data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +428 -5
- data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +427 -5
- data/sig/metronome_sdk/resources/v1/alerts.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/contracts.rbs +13 -0
- data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -0
- metadata +8 -2
|
@@ -1243,6 +1243,26 @@ module MetronomeSDK
|
|
|
1243
1243
|
end
|
|
1244
1244
|
attr_writer :proration
|
|
1245
1245
|
|
|
1246
|
+
# Rounding configuration for prorated recurring commit amounts.
|
|
1247
|
+
sig do
|
|
1248
|
+
returns(
|
|
1249
|
+
T.nilable(
|
|
1250
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding
|
|
1251
|
+
)
|
|
1252
|
+
)
|
|
1253
|
+
end
|
|
1254
|
+
attr_reader :proration_rounding
|
|
1255
|
+
|
|
1256
|
+
sig do
|
|
1257
|
+
params(
|
|
1258
|
+
proration_rounding:
|
|
1259
|
+
T.nilable(
|
|
1260
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::OrHash
|
|
1261
|
+
)
|
|
1262
|
+
).void
|
|
1263
|
+
end
|
|
1264
|
+
attr_writer :proration_rounding
|
|
1265
|
+
|
|
1246
1266
|
# The frequency at which the recurring commits will be created. If not provided: -
|
|
1247
1267
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
1248
1268
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
@@ -1332,6 +1352,10 @@ module MetronomeSDK
|
|
|
1332
1352
|
netsuite_sales_order_id: String,
|
|
1333
1353
|
proration:
|
|
1334
1354
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::Proration::OrSymbol,
|
|
1355
|
+
proration_rounding:
|
|
1356
|
+
T.nilable(
|
|
1357
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::OrHash
|
|
1358
|
+
),
|
|
1335
1359
|
recurrence_frequency:
|
|
1336
1360
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::RecurrenceFrequency::OrSymbol,
|
|
1337
1361
|
rollover_fraction: Float,
|
|
@@ -1373,6 +1397,8 @@ module MetronomeSDK
|
|
|
1373
1397
|
# Determines whether the first and last commit will be prorated. If not provided,
|
|
1374
1398
|
# the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).
|
|
1375
1399
|
proration: nil,
|
|
1400
|
+
# Rounding configuration for prorated recurring commit amounts.
|
|
1401
|
+
proration_rounding: nil,
|
|
1376
1402
|
# The frequency at which the recurring commits will be created. If not provided: -
|
|
1377
1403
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
1378
1404
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
@@ -1420,6 +1446,10 @@ module MetronomeSDK
|
|
|
1420
1446
|
netsuite_sales_order_id: String,
|
|
1421
1447
|
proration:
|
|
1422
1448
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::Proration::TaggedSymbol,
|
|
1449
|
+
proration_rounding:
|
|
1450
|
+
T.nilable(
|
|
1451
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding
|
|
1452
|
+
),
|
|
1423
1453
|
recurrence_frequency:
|
|
1424
1454
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::RecurrenceFrequency::TaggedSymbol,
|
|
1425
1455
|
rollover_fraction: Float,
|
|
@@ -1729,6 +1759,259 @@ module MetronomeSDK
|
|
|
1729
1759
|
end
|
|
1730
1760
|
end
|
|
1731
1761
|
|
|
1762
|
+
class ProrationRounding < MetronomeSDK::Internal::Type::BaseModel
|
|
1763
|
+
OrHash =
|
|
1764
|
+
T.type_alias do
|
|
1765
|
+
T.any(
|
|
1766
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding,
|
|
1767
|
+
MetronomeSDK::Internal::AnyHash
|
|
1768
|
+
)
|
|
1769
|
+
end
|
|
1770
|
+
|
|
1771
|
+
sig do
|
|
1772
|
+
returns(
|
|
1773
|
+
T.nilable(
|
|
1774
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access
|
|
1775
|
+
)
|
|
1776
|
+
)
|
|
1777
|
+
end
|
|
1778
|
+
attr_reader :access
|
|
1779
|
+
|
|
1780
|
+
sig do
|
|
1781
|
+
params(
|
|
1782
|
+
access:
|
|
1783
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::OrHash
|
|
1784
|
+
).void
|
|
1785
|
+
end
|
|
1786
|
+
attr_writer :access
|
|
1787
|
+
|
|
1788
|
+
sig do
|
|
1789
|
+
returns(
|
|
1790
|
+
T.nilable(
|
|
1791
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice
|
|
1792
|
+
)
|
|
1793
|
+
)
|
|
1794
|
+
end
|
|
1795
|
+
attr_reader :invoice
|
|
1796
|
+
|
|
1797
|
+
sig do
|
|
1798
|
+
params(
|
|
1799
|
+
invoice:
|
|
1800
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::OrHash
|
|
1801
|
+
).void
|
|
1802
|
+
end
|
|
1803
|
+
attr_writer :invoice
|
|
1804
|
+
|
|
1805
|
+
# Rounding configuration for prorated recurring commit amounts.
|
|
1806
|
+
sig do
|
|
1807
|
+
params(
|
|
1808
|
+
access:
|
|
1809
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::OrHash,
|
|
1810
|
+
invoice:
|
|
1811
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::OrHash
|
|
1812
|
+
).returns(T.attached_class)
|
|
1813
|
+
end
|
|
1814
|
+
def self.new(access: nil, invoice: nil)
|
|
1815
|
+
end
|
|
1816
|
+
|
|
1817
|
+
sig do
|
|
1818
|
+
override.returns(
|
|
1819
|
+
{
|
|
1820
|
+
access:
|
|
1821
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access,
|
|
1822
|
+
invoice:
|
|
1823
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice
|
|
1824
|
+
}
|
|
1825
|
+
)
|
|
1826
|
+
end
|
|
1827
|
+
def to_hash
|
|
1828
|
+
end
|
|
1829
|
+
|
|
1830
|
+
class Access < MetronomeSDK::Internal::Type::BaseModel
|
|
1831
|
+
OrHash =
|
|
1832
|
+
T.type_alias do
|
|
1833
|
+
T.any(
|
|
1834
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access,
|
|
1835
|
+
MetronomeSDK::Internal::AnyHash
|
|
1836
|
+
)
|
|
1837
|
+
end
|
|
1838
|
+
|
|
1839
|
+
# Number of decimal places to round to. Applied directly to the stored monetary
|
|
1840
|
+
# representation. Negative values round to powers of 10 (e.g., -2 rounds to
|
|
1841
|
+
# nearest 100 in the stored unit. For USD, this means rounding to the nearest
|
|
1842
|
+
# dollar).
|
|
1843
|
+
sig { returns(Float) }
|
|
1844
|
+
attr_accessor :decimal_places
|
|
1845
|
+
|
|
1846
|
+
sig do
|
|
1847
|
+
returns(
|
|
1848
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
1849
|
+
)
|
|
1850
|
+
end
|
|
1851
|
+
attr_accessor :rounding_method
|
|
1852
|
+
|
|
1853
|
+
sig do
|
|
1854
|
+
params(
|
|
1855
|
+
decimal_places: Float,
|
|
1856
|
+
rounding_method:
|
|
1857
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::RoundingMethod::OrSymbol
|
|
1858
|
+
).returns(T.attached_class)
|
|
1859
|
+
end
|
|
1860
|
+
def self.new(
|
|
1861
|
+
# Number of decimal places to round to. Applied directly to the stored monetary
|
|
1862
|
+
# representation. Negative values round to powers of 10 (e.g., -2 rounds to
|
|
1863
|
+
# nearest 100 in the stored unit. For USD, this means rounding to the nearest
|
|
1864
|
+
# dollar).
|
|
1865
|
+
decimal_places:,
|
|
1866
|
+
rounding_method:
|
|
1867
|
+
)
|
|
1868
|
+
end
|
|
1869
|
+
|
|
1870
|
+
sig do
|
|
1871
|
+
override.returns(
|
|
1872
|
+
{
|
|
1873
|
+
decimal_places: Float,
|
|
1874
|
+
rounding_method:
|
|
1875
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
1876
|
+
}
|
|
1877
|
+
)
|
|
1878
|
+
end
|
|
1879
|
+
def to_hash
|
|
1880
|
+
end
|
|
1881
|
+
|
|
1882
|
+
module RoundingMethod
|
|
1883
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
1884
|
+
|
|
1885
|
+
TaggedSymbol =
|
|
1886
|
+
T.type_alias do
|
|
1887
|
+
T.all(
|
|
1888
|
+
Symbol,
|
|
1889
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::RoundingMethod
|
|
1890
|
+
)
|
|
1891
|
+
end
|
|
1892
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
1893
|
+
|
|
1894
|
+
HALF_UP =
|
|
1895
|
+
T.let(
|
|
1896
|
+
:HALF_UP,
|
|
1897
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
1898
|
+
)
|
|
1899
|
+
FLOOR =
|
|
1900
|
+
T.let(
|
|
1901
|
+
:FLOOR,
|
|
1902
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
1903
|
+
)
|
|
1904
|
+
CEILING =
|
|
1905
|
+
T.let(
|
|
1906
|
+
:CEILING,
|
|
1907
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
1908
|
+
)
|
|
1909
|
+
|
|
1910
|
+
sig do
|
|
1911
|
+
override.returns(
|
|
1912
|
+
T::Array[
|
|
1913
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
1914
|
+
]
|
|
1915
|
+
)
|
|
1916
|
+
end
|
|
1917
|
+
def self.values
|
|
1918
|
+
end
|
|
1919
|
+
end
|
|
1920
|
+
end
|
|
1921
|
+
|
|
1922
|
+
class Invoice < MetronomeSDK::Internal::Type::BaseModel
|
|
1923
|
+
OrHash =
|
|
1924
|
+
T.type_alias do
|
|
1925
|
+
T.any(
|
|
1926
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice,
|
|
1927
|
+
MetronomeSDK::Internal::AnyHash
|
|
1928
|
+
)
|
|
1929
|
+
end
|
|
1930
|
+
|
|
1931
|
+
# Number of decimal places to round to. Applied directly to the stored monetary
|
|
1932
|
+
# representation. Negative values round to powers of 10 (e.g., -2 rounds to
|
|
1933
|
+
# nearest 100 in the stored unit. For USD, this means rounding to the nearest
|
|
1934
|
+
# dollar).
|
|
1935
|
+
sig { returns(Float) }
|
|
1936
|
+
attr_accessor :decimal_places
|
|
1937
|
+
|
|
1938
|
+
sig do
|
|
1939
|
+
returns(
|
|
1940
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::RoundingMethod::TaggedSymbol
|
|
1941
|
+
)
|
|
1942
|
+
end
|
|
1943
|
+
attr_accessor :rounding_method
|
|
1944
|
+
|
|
1945
|
+
sig do
|
|
1946
|
+
params(
|
|
1947
|
+
decimal_places: Float,
|
|
1948
|
+
rounding_method:
|
|
1949
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::RoundingMethod::OrSymbol
|
|
1950
|
+
).returns(T.attached_class)
|
|
1951
|
+
end
|
|
1952
|
+
def self.new(
|
|
1953
|
+
# Number of decimal places to round to. Applied directly to the stored monetary
|
|
1954
|
+
# representation. Negative values round to powers of 10 (e.g., -2 rounds to
|
|
1955
|
+
# nearest 100 in the stored unit. For USD, this means rounding to the nearest
|
|
1956
|
+
# dollar).
|
|
1957
|
+
decimal_places:,
|
|
1958
|
+
rounding_method:
|
|
1959
|
+
)
|
|
1960
|
+
end
|
|
1961
|
+
|
|
1962
|
+
sig do
|
|
1963
|
+
override.returns(
|
|
1964
|
+
{
|
|
1965
|
+
decimal_places: Float,
|
|
1966
|
+
rounding_method:
|
|
1967
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::RoundingMethod::TaggedSymbol
|
|
1968
|
+
}
|
|
1969
|
+
)
|
|
1970
|
+
end
|
|
1971
|
+
def to_hash
|
|
1972
|
+
end
|
|
1973
|
+
|
|
1974
|
+
module RoundingMethod
|
|
1975
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
1976
|
+
|
|
1977
|
+
TaggedSymbol =
|
|
1978
|
+
T.type_alias do
|
|
1979
|
+
T.all(
|
|
1980
|
+
Symbol,
|
|
1981
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::RoundingMethod
|
|
1982
|
+
)
|
|
1983
|
+
end
|
|
1984
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
1985
|
+
|
|
1986
|
+
HALF_UP =
|
|
1987
|
+
T.let(
|
|
1988
|
+
:HALF_UP,
|
|
1989
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::RoundingMethod::TaggedSymbol
|
|
1990
|
+
)
|
|
1991
|
+
FLOOR =
|
|
1992
|
+
T.let(
|
|
1993
|
+
:FLOOR,
|
|
1994
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::RoundingMethod::TaggedSymbol
|
|
1995
|
+
)
|
|
1996
|
+
CEILING =
|
|
1997
|
+
T.let(
|
|
1998
|
+
:CEILING,
|
|
1999
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::RoundingMethod::TaggedSymbol
|
|
2000
|
+
)
|
|
2001
|
+
|
|
2002
|
+
sig do
|
|
2003
|
+
override.returns(
|
|
2004
|
+
T::Array[
|
|
2005
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::RoundingMethod::TaggedSymbol
|
|
2006
|
+
]
|
|
2007
|
+
)
|
|
2008
|
+
end
|
|
2009
|
+
def self.values
|
|
2010
|
+
end
|
|
2011
|
+
end
|
|
2012
|
+
end
|
|
2013
|
+
end
|
|
2014
|
+
|
|
1732
2015
|
# The frequency at which the recurring commits will be created. If not provided: -
|
|
1733
2016
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
1734
2017
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
@@ -1766,6 +2049,11 @@ module MetronomeSDK
|
|
|
1766
2049
|
:WEEKLY,
|
|
1767
2050
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::RecurrenceFrequency::TaggedSymbol
|
|
1768
2051
|
)
|
|
2052
|
+
DAILY =
|
|
2053
|
+
T.let(
|
|
2054
|
+
:DAILY,
|
|
2055
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::RecurrenceFrequency::TaggedSymbol
|
|
2056
|
+
)
|
|
1769
2057
|
|
|
1770
2058
|
sig do
|
|
1771
2059
|
override.returns(
|
|
@@ -1946,6 +2234,26 @@ module MetronomeSDK
|
|
|
1946
2234
|
end
|
|
1947
2235
|
attr_writer :proration
|
|
1948
2236
|
|
|
2237
|
+
# Rounding configuration for prorated recurring credit amounts.
|
|
2238
|
+
sig do
|
|
2239
|
+
returns(
|
|
2240
|
+
T.nilable(
|
|
2241
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding
|
|
2242
|
+
)
|
|
2243
|
+
)
|
|
2244
|
+
end
|
|
2245
|
+
attr_reader :proration_rounding
|
|
2246
|
+
|
|
2247
|
+
sig do
|
|
2248
|
+
params(
|
|
2249
|
+
proration_rounding:
|
|
2250
|
+
T.nilable(
|
|
2251
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::OrHash
|
|
2252
|
+
)
|
|
2253
|
+
).void
|
|
2254
|
+
end
|
|
2255
|
+
attr_writer :proration_rounding
|
|
2256
|
+
|
|
1949
2257
|
# The frequency at which the recurring commits will be created. If not provided: -
|
|
1950
2258
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
1951
2259
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
@@ -2033,6 +2341,10 @@ module MetronomeSDK
|
|
|
2033
2341
|
netsuite_sales_order_id: String,
|
|
2034
2342
|
proration:
|
|
2035
2343
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::Proration::OrSymbol,
|
|
2344
|
+
proration_rounding:
|
|
2345
|
+
T.nilable(
|
|
2346
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::OrHash
|
|
2347
|
+
),
|
|
2036
2348
|
recurrence_frequency:
|
|
2037
2349
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::RecurrenceFrequency::OrSymbol,
|
|
2038
2350
|
rollover_fraction: Float,
|
|
@@ -2072,6 +2384,8 @@ module MetronomeSDK
|
|
|
2072
2384
|
# Determines whether the first and last commit will be prorated. If not provided,
|
|
2073
2385
|
# the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).
|
|
2074
2386
|
proration: nil,
|
|
2387
|
+
# Rounding configuration for prorated recurring credit amounts.
|
|
2388
|
+
proration_rounding: nil,
|
|
2075
2389
|
# The frequency at which the recurring commits will be created. If not provided: -
|
|
2076
2390
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
2077
2391
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
@@ -2117,6 +2431,10 @@ module MetronomeSDK
|
|
|
2117
2431
|
netsuite_sales_order_id: String,
|
|
2118
2432
|
proration:
|
|
2119
2433
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::Proration::TaggedSymbol,
|
|
2434
|
+
proration_rounding:
|
|
2435
|
+
T.nilable(
|
|
2436
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding
|
|
2437
|
+
),
|
|
2120
2438
|
recurrence_frequency:
|
|
2121
2439
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::RecurrenceFrequency::TaggedSymbol,
|
|
2122
2440
|
rollover_fraction: Float,
|
|
@@ -2384,6 +2702,146 @@ module MetronomeSDK
|
|
|
2384
2702
|
end
|
|
2385
2703
|
end
|
|
2386
2704
|
|
|
2705
|
+
class ProrationRounding < MetronomeSDK::Internal::Type::BaseModel
|
|
2706
|
+
OrHash =
|
|
2707
|
+
T.type_alias do
|
|
2708
|
+
T.any(
|
|
2709
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding,
|
|
2710
|
+
MetronomeSDK::Internal::AnyHash
|
|
2711
|
+
)
|
|
2712
|
+
end
|
|
2713
|
+
|
|
2714
|
+
sig do
|
|
2715
|
+
returns(
|
|
2716
|
+
T.nilable(
|
|
2717
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access
|
|
2718
|
+
)
|
|
2719
|
+
)
|
|
2720
|
+
end
|
|
2721
|
+
attr_reader :access
|
|
2722
|
+
|
|
2723
|
+
sig do
|
|
2724
|
+
params(
|
|
2725
|
+
access:
|
|
2726
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::OrHash
|
|
2727
|
+
).void
|
|
2728
|
+
end
|
|
2729
|
+
attr_writer :access
|
|
2730
|
+
|
|
2731
|
+
# Rounding configuration for prorated recurring credit amounts.
|
|
2732
|
+
sig do
|
|
2733
|
+
params(
|
|
2734
|
+
access:
|
|
2735
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::OrHash
|
|
2736
|
+
).returns(T.attached_class)
|
|
2737
|
+
end
|
|
2738
|
+
def self.new(access: nil)
|
|
2739
|
+
end
|
|
2740
|
+
|
|
2741
|
+
sig do
|
|
2742
|
+
override.returns(
|
|
2743
|
+
{
|
|
2744
|
+
access:
|
|
2745
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access
|
|
2746
|
+
}
|
|
2747
|
+
)
|
|
2748
|
+
end
|
|
2749
|
+
def to_hash
|
|
2750
|
+
end
|
|
2751
|
+
|
|
2752
|
+
class Access < MetronomeSDK::Internal::Type::BaseModel
|
|
2753
|
+
OrHash =
|
|
2754
|
+
T.type_alias do
|
|
2755
|
+
T.any(
|
|
2756
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access,
|
|
2757
|
+
MetronomeSDK::Internal::AnyHash
|
|
2758
|
+
)
|
|
2759
|
+
end
|
|
2760
|
+
|
|
2761
|
+
# Number of decimal places to round to. Applied directly to the stored monetary
|
|
2762
|
+
# representation. Negative values round to powers of 10 (e.g., -2 rounds to
|
|
2763
|
+
# nearest 100 in the stored unit. For USD, this means rounding to the nearest
|
|
2764
|
+
# dollar).
|
|
2765
|
+
sig { returns(Float) }
|
|
2766
|
+
attr_accessor :decimal_places
|
|
2767
|
+
|
|
2768
|
+
sig do
|
|
2769
|
+
returns(
|
|
2770
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
2771
|
+
)
|
|
2772
|
+
end
|
|
2773
|
+
attr_accessor :rounding_method
|
|
2774
|
+
|
|
2775
|
+
sig do
|
|
2776
|
+
params(
|
|
2777
|
+
decimal_places: Float,
|
|
2778
|
+
rounding_method:
|
|
2779
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::RoundingMethod::OrSymbol
|
|
2780
|
+
).returns(T.attached_class)
|
|
2781
|
+
end
|
|
2782
|
+
def self.new(
|
|
2783
|
+
# Number of decimal places to round to. Applied directly to the stored monetary
|
|
2784
|
+
# representation. Negative values round to powers of 10 (e.g., -2 rounds to
|
|
2785
|
+
# nearest 100 in the stored unit. For USD, this means rounding to the nearest
|
|
2786
|
+
# dollar).
|
|
2787
|
+
decimal_places:,
|
|
2788
|
+
rounding_method:
|
|
2789
|
+
)
|
|
2790
|
+
end
|
|
2791
|
+
|
|
2792
|
+
sig do
|
|
2793
|
+
override.returns(
|
|
2794
|
+
{
|
|
2795
|
+
decimal_places: Float,
|
|
2796
|
+
rounding_method:
|
|
2797
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
2798
|
+
}
|
|
2799
|
+
)
|
|
2800
|
+
end
|
|
2801
|
+
def to_hash
|
|
2802
|
+
end
|
|
2803
|
+
|
|
2804
|
+
module RoundingMethod
|
|
2805
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
2806
|
+
|
|
2807
|
+
TaggedSymbol =
|
|
2808
|
+
T.type_alias do
|
|
2809
|
+
T.all(
|
|
2810
|
+
Symbol,
|
|
2811
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::RoundingMethod
|
|
2812
|
+
)
|
|
2813
|
+
end
|
|
2814
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
2815
|
+
|
|
2816
|
+
HALF_UP =
|
|
2817
|
+
T.let(
|
|
2818
|
+
:HALF_UP,
|
|
2819
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
2820
|
+
)
|
|
2821
|
+
FLOOR =
|
|
2822
|
+
T.let(
|
|
2823
|
+
:FLOOR,
|
|
2824
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
2825
|
+
)
|
|
2826
|
+
CEILING =
|
|
2827
|
+
T.let(
|
|
2828
|
+
:CEILING,
|
|
2829
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
2830
|
+
)
|
|
2831
|
+
|
|
2832
|
+
sig do
|
|
2833
|
+
override.returns(
|
|
2834
|
+
T::Array[
|
|
2835
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
2836
|
+
]
|
|
2837
|
+
)
|
|
2838
|
+
end
|
|
2839
|
+
def self.values
|
|
2840
|
+
end
|
|
2841
|
+
end
|
|
2842
|
+
end
|
|
2843
|
+
end
|
|
2844
|
+
|
|
2387
2845
|
# The frequency at which the recurring commits will be created. If not provided: -
|
|
2388
2846
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
2389
2847
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
@@ -2421,6 +2879,11 @@ module MetronomeSDK
|
|
|
2421
2879
|
:WEEKLY,
|
|
2422
2880
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::RecurrenceFrequency::TaggedSymbol
|
|
2423
2881
|
)
|
|
2882
|
+
DAILY =
|
|
2883
|
+
T.let(
|
|
2884
|
+
:DAILY,
|
|
2885
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::RecurrenceFrequency::TaggedSymbol
|
|
2886
|
+
)
|
|
2424
2887
|
|
|
2425
2888
|
sig do
|
|
2426
2889
|
override.returns(
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module MetronomeSDK
|
|
4
|
+
module Models
|
|
5
|
+
module V1
|
|
6
|
+
class ContractGetSubscriptionSeatsHistoryParams < MetronomeSDK::Internal::Type::BaseModel
|
|
7
|
+
extend MetronomeSDK::Internal::Type::RequestParameters::Converter
|
|
8
|
+
include MetronomeSDK::Internal::Type::RequestParameters
|
|
9
|
+
|
|
10
|
+
OrHash =
|
|
11
|
+
T.type_alias do
|
|
12
|
+
T.any(
|
|
13
|
+
MetronomeSDK::V1::ContractGetSubscriptionSeatsHistoryParams,
|
|
14
|
+
MetronomeSDK::Internal::AnyHash
|
|
15
|
+
)
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
sig { returns(String) }
|
|
19
|
+
attr_accessor :contract_id
|
|
20
|
+
|
|
21
|
+
sig { returns(String) }
|
|
22
|
+
attr_accessor :customer_id
|
|
23
|
+
|
|
24
|
+
sig { returns(String) }
|
|
25
|
+
attr_accessor :subscription_id
|
|
26
|
+
|
|
27
|
+
# Get the seats history segment for the covering date. Cannot be used with
|
|
28
|
+
# `starting_at` or `ending_before`.
|
|
29
|
+
sig { returns(T.nilable(Time)) }
|
|
30
|
+
attr_accessor :covering_date
|
|
31
|
+
|
|
32
|
+
# Cursor for pagination. Use the value from the `next_page` field of the previous
|
|
33
|
+
# response to retrieve the next page of results.
|
|
34
|
+
sig { returns(T.nilable(String)) }
|
|
35
|
+
attr_accessor :cursor
|
|
36
|
+
|
|
37
|
+
# Include seats history segments that are active at or before this timestamp. Use
|
|
38
|
+
# with `starting_at` to get a specific time range. If not set, there's no upper
|
|
39
|
+
# bound.
|
|
40
|
+
sig { returns(T.nilable(Time)) }
|
|
41
|
+
attr_accessor :ending_before
|
|
42
|
+
|
|
43
|
+
# Maximum number of seat schedule entries to return. Defaults to 10. Required
|
|
44
|
+
# range: 1 <= x <= 10.
|
|
45
|
+
sig { returns(T.nilable(Integer)) }
|
|
46
|
+
attr_accessor :limit
|
|
47
|
+
|
|
48
|
+
# Include seats history segments that are active at or after this timestamp. Use
|
|
49
|
+
# with `ending_before` to get a specific time range. If not set, there's no lower
|
|
50
|
+
# bound.
|
|
51
|
+
sig { returns(T.nilable(Time)) }
|
|
52
|
+
attr_accessor :starting_at
|
|
53
|
+
|
|
54
|
+
sig do
|
|
55
|
+
params(
|
|
56
|
+
contract_id: String,
|
|
57
|
+
customer_id: String,
|
|
58
|
+
subscription_id: String,
|
|
59
|
+
covering_date: T.nilable(Time),
|
|
60
|
+
cursor: T.nilable(String),
|
|
61
|
+
ending_before: T.nilable(Time),
|
|
62
|
+
limit: T.nilable(Integer),
|
|
63
|
+
starting_at: T.nilable(Time),
|
|
64
|
+
request_options: MetronomeSDK::RequestOptions::OrHash
|
|
65
|
+
).returns(T.attached_class)
|
|
66
|
+
end
|
|
67
|
+
def self.new(
|
|
68
|
+
contract_id:,
|
|
69
|
+
customer_id:,
|
|
70
|
+
subscription_id:,
|
|
71
|
+
# Get the seats history segment for the covering date. Cannot be used with
|
|
72
|
+
# `starting_at` or `ending_before`.
|
|
73
|
+
covering_date: nil,
|
|
74
|
+
# Cursor for pagination. Use the value from the `next_page` field of the previous
|
|
75
|
+
# response to retrieve the next page of results.
|
|
76
|
+
cursor: nil,
|
|
77
|
+
# Include seats history segments that are active at or before this timestamp. Use
|
|
78
|
+
# with `starting_at` to get a specific time range. If not set, there's no upper
|
|
79
|
+
# bound.
|
|
80
|
+
ending_before: nil,
|
|
81
|
+
# Maximum number of seat schedule entries to return. Defaults to 10. Required
|
|
82
|
+
# range: 1 <= x <= 10.
|
|
83
|
+
limit: nil,
|
|
84
|
+
# Include seats history segments that are active at or after this timestamp. Use
|
|
85
|
+
# with `ending_before` to get a specific time range. If not set, there's no lower
|
|
86
|
+
# bound.
|
|
87
|
+
starting_at: nil,
|
|
88
|
+
request_options: {}
|
|
89
|
+
)
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
sig do
|
|
93
|
+
override.returns(
|
|
94
|
+
{
|
|
95
|
+
contract_id: String,
|
|
96
|
+
customer_id: String,
|
|
97
|
+
subscription_id: String,
|
|
98
|
+
covering_date: T.nilable(Time),
|
|
99
|
+
cursor: T.nilable(String),
|
|
100
|
+
ending_before: T.nilable(Time),
|
|
101
|
+
limit: T.nilable(Integer),
|
|
102
|
+
starting_at: T.nilable(Time),
|
|
103
|
+
request_options: MetronomeSDK::RequestOptions
|
|
104
|
+
}
|
|
105
|
+
)
|
|
106
|
+
end
|
|
107
|
+
def to_hash
|
|
108
|
+
end
|
|
109
|
+
end
|
|
110
|
+
end
|
|
111
|
+
end
|
|
112
|
+
end
|