metronome-sdk 3.7.0 → 3.9.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 +46 -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.rb +46 -16
- data/lib/metronome_sdk/models/contract_v2.rb +645 -16
- 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 +243 -17
- 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 +517 -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.rbi +47 -22
- data/rbi/metronome_sdk/models/contract_v2.rbi +1472 -96
- 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 +523 -32
- 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 +1372 -69
- 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.rbs +22 -11
- data/sig/metronome_sdk/models/contract_v2.rbs +559 -8
- 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 +197 -17
- 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 +472 -7
- 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
|
@@ -173,7 +173,6 @@ module MetronomeSDK
|
|
|
173
173
|
sig { params(custom_fields: T::Hash[Symbol, String]).void }
|
|
174
174
|
attr_writer :custom_fields
|
|
175
175
|
|
|
176
|
-
# The billing provider configuration associated with the contract.
|
|
177
176
|
sig do
|
|
178
177
|
returns(
|
|
179
178
|
T.nilable(
|
|
@@ -463,7 +462,6 @@ module MetronomeSDK
|
|
|
463
462
|
credits: nil,
|
|
464
463
|
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
|
465
464
|
custom_fields: nil,
|
|
466
|
-
# The billing provider configuration associated with the contract.
|
|
467
465
|
customer_billing_provider_configuration: nil,
|
|
468
466
|
ending_before: nil,
|
|
469
467
|
# Indicates whether there are more items than the limit for this endpoint. Use the
|
|
@@ -792,73 +790,102 @@ module MetronomeSDK
|
|
|
792
790
|
)
|
|
793
791
|
end
|
|
794
792
|
|
|
795
|
-
|
|
796
|
-
|
|
793
|
+
# ID of this configuration; can be provided as the
|
|
794
|
+
# billing_provider_configuration_id when creating a contract.
|
|
795
|
+
sig { returns(String) }
|
|
796
|
+
attr_accessor :id
|
|
797
797
|
|
|
798
|
-
sig {
|
|
799
|
-
|
|
798
|
+
sig { returns(T.nilable(Time)) }
|
|
799
|
+
attr_accessor :archived_at
|
|
800
800
|
|
|
801
|
+
# The billing provider set for this configuration.
|
|
801
802
|
sig do
|
|
802
803
|
returns(
|
|
803
|
-
|
|
804
|
-
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
805
|
-
)
|
|
804
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::BillingProvider::TaggedSymbol
|
|
806
805
|
)
|
|
807
806
|
end
|
|
808
|
-
|
|
807
|
+
attr_accessor :billing_provider
|
|
809
808
|
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
).void
|
|
815
|
-
end
|
|
816
|
-
attr_writer :billing_provider
|
|
809
|
+
# Configuration for the billing provider. The structure of this object is specific
|
|
810
|
+
# to the billing provider.
|
|
811
|
+
sig { returns(T::Hash[Symbol, T.anything]) }
|
|
812
|
+
attr_accessor :configuration
|
|
817
813
|
|
|
814
|
+
sig { returns(String) }
|
|
815
|
+
attr_accessor :customer_id
|
|
816
|
+
|
|
817
|
+
# The method to use for delivering invoices to this customer.
|
|
818
818
|
sig do
|
|
819
819
|
returns(
|
|
820
|
-
|
|
821
|
-
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
822
|
-
)
|
|
820
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
823
821
|
)
|
|
824
822
|
end
|
|
825
|
-
|
|
823
|
+
attr_accessor :delivery_method
|
|
826
824
|
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
825
|
+
# Configuration for the delivery method. The structure of this object is specific
|
|
826
|
+
# to the delivery method.
|
|
827
|
+
sig { returns(T::Hash[Symbol, T.anything]) }
|
|
828
|
+
attr_accessor :delivery_method_configuration
|
|
829
|
+
|
|
830
|
+
# ID of the delivery method to use for this customer.
|
|
831
|
+
sig { returns(String) }
|
|
832
|
+
attr_accessor :delivery_method_id
|
|
834
833
|
|
|
835
|
-
# The billing provider configuration associated with the contract.
|
|
836
834
|
sig do
|
|
837
835
|
params(
|
|
838
836
|
id: String,
|
|
837
|
+
archived_at: T.nilable(Time),
|
|
839
838
|
billing_provider:
|
|
840
839
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::BillingProvider::OrSymbol,
|
|
840
|
+
configuration: T::Hash[Symbol, T.anything],
|
|
841
|
+
customer_id: String,
|
|
841
842
|
delivery_method:
|
|
842
|
-
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::DeliveryMethod::OrSymbol
|
|
843
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::DeliveryMethod::OrSymbol,
|
|
844
|
+
delivery_method_configuration: T::Hash[Symbol, T.anything],
|
|
845
|
+
delivery_method_id: String
|
|
843
846
|
).returns(T.attached_class)
|
|
844
847
|
end
|
|
845
|
-
def self.new(
|
|
848
|
+
def self.new(
|
|
849
|
+
# ID of this configuration; can be provided as the
|
|
850
|
+
# billing_provider_configuration_id when creating a contract.
|
|
851
|
+
id:,
|
|
852
|
+
archived_at:,
|
|
853
|
+
# The billing provider set for this configuration.
|
|
854
|
+
billing_provider:,
|
|
855
|
+
# Configuration for the billing provider. The structure of this object is specific
|
|
856
|
+
# to the billing provider.
|
|
857
|
+
configuration:,
|
|
858
|
+
customer_id:,
|
|
859
|
+
# The method to use for delivering invoices to this customer.
|
|
860
|
+
delivery_method:,
|
|
861
|
+
# Configuration for the delivery method. The structure of this object is specific
|
|
862
|
+
# to the delivery method.
|
|
863
|
+
delivery_method_configuration:,
|
|
864
|
+
# ID of the delivery method to use for this customer.
|
|
865
|
+
delivery_method_id:
|
|
866
|
+
)
|
|
846
867
|
end
|
|
847
868
|
|
|
848
869
|
sig do
|
|
849
870
|
override.returns(
|
|
850
871
|
{
|
|
851
872
|
id: String,
|
|
873
|
+
archived_at: T.nilable(Time),
|
|
852
874
|
billing_provider:
|
|
853
875
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::BillingProvider::TaggedSymbol,
|
|
876
|
+
configuration: T::Hash[Symbol, T.anything],
|
|
877
|
+
customer_id: String,
|
|
854
878
|
delivery_method:
|
|
855
|
-
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::DeliveryMethod::TaggedSymbol
|
|
879
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::CustomerBillingProviderConfiguration::DeliveryMethod::TaggedSymbol,
|
|
880
|
+
delivery_method_configuration: T::Hash[Symbol, T.anything],
|
|
881
|
+
delivery_method_id: String
|
|
856
882
|
}
|
|
857
883
|
)
|
|
858
884
|
end
|
|
859
885
|
def to_hash
|
|
860
886
|
end
|
|
861
887
|
|
|
888
|
+
# The billing provider set for this configuration.
|
|
862
889
|
module BillingProvider
|
|
863
890
|
extend MetronomeSDK::Internal::Type::Enum
|
|
864
891
|
|
|
@@ -928,6 +955,7 @@ module MetronomeSDK
|
|
|
928
955
|
end
|
|
929
956
|
end
|
|
930
957
|
|
|
958
|
+
# The method to use for delivering invoices to this customer.
|
|
931
959
|
module DeliveryMethod
|
|
932
960
|
extend MetronomeSDK::Internal::Type::Enum
|
|
933
961
|
|
|
@@ -1243,6 +1271,26 @@ module MetronomeSDK
|
|
|
1243
1271
|
end
|
|
1244
1272
|
attr_writer :proration
|
|
1245
1273
|
|
|
1274
|
+
# Rounding configuration for prorated recurring commit amounts.
|
|
1275
|
+
sig do
|
|
1276
|
+
returns(
|
|
1277
|
+
T.nilable(
|
|
1278
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding
|
|
1279
|
+
)
|
|
1280
|
+
)
|
|
1281
|
+
end
|
|
1282
|
+
attr_reader :proration_rounding
|
|
1283
|
+
|
|
1284
|
+
sig do
|
|
1285
|
+
params(
|
|
1286
|
+
proration_rounding:
|
|
1287
|
+
T.nilable(
|
|
1288
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::OrHash
|
|
1289
|
+
)
|
|
1290
|
+
).void
|
|
1291
|
+
end
|
|
1292
|
+
attr_writer :proration_rounding
|
|
1293
|
+
|
|
1246
1294
|
# The frequency at which the recurring commits will be created. If not provided: -
|
|
1247
1295
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
1248
1296
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
@@ -1332,6 +1380,10 @@ module MetronomeSDK
|
|
|
1332
1380
|
netsuite_sales_order_id: String,
|
|
1333
1381
|
proration:
|
|
1334
1382
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::Proration::OrSymbol,
|
|
1383
|
+
proration_rounding:
|
|
1384
|
+
T.nilable(
|
|
1385
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::OrHash
|
|
1386
|
+
),
|
|
1335
1387
|
recurrence_frequency:
|
|
1336
1388
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::RecurrenceFrequency::OrSymbol,
|
|
1337
1389
|
rollover_fraction: Float,
|
|
@@ -1373,6 +1425,8 @@ module MetronomeSDK
|
|
|
1373
1425
|
# Determines whether the first and last commit will be prorated. If not provided,
|
|
1374
1426
|
# the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).
|
|
1375
1427
|
proration: nil,
|
|
1428
|
+
# Rounding configuration for prorated recurring commit amounts.
|
|
1429
|
+
proration_rounding: nil,
|
|
1376
1430
|
# The frequency at which the recurring commits will be created. If not provided: -
|
|
1377
1431
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
1378
1432
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
@@ -1420,6 +1474,10 @@ module MetronomeSDK
|
|
|
1420
1474
|
netsuite_sales_order_id: String,
|
|
1421
1475
|
proration:
|
|
1422
1476
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::Proration::TaggedSymbol,
|
|
1477
|
+
proration_rounding:
|
|
1478
|
+
T.nilable(
|
|
1479
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding
|
|
1480
|
+
),
|
|
1423
1481
|
recurrence_frequency:
|
|
1424
1482
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::RecurrenceFrequency::TaggedSymbol,
|
|
1425
1483
|
rollover_fraction: Float,
|
|
@@ -1729,6 +1787,259 @@ module MetronomeSDK
|
|
|
1729
1787
|
end
|
|
1730
1788
|
end
|
|
1731
1789
|
|
|
1790
|
+
class ProrationRounding < MetronomeSDK::Internal::Type::BaseModel
|
|
1791
|
+
OrHash =
|
|
1792
|
+
T.type_alias do
|
|
1793
|
+
T.any(
|
|
1794
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding,
|
|
1795
|
+
MetronomeSDK::Internal::AnyHash
|
|
1796
|
+
)
|
|
1797
|
+
end
|
|
1798
|
+
|
|
1799
|
+
sig do
|
|
1800
|
+
returns(
|
|
1801
|
+
T.nilable(
|
|
1802
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access
|
|
1803
|
+
)
|
|
1804
|
+
)
|
|
1805
|
+
end
|
|
1806
|
+
attr_reader :access
|
|
1807
|
+
|
|
1808
|
+
sig do
|
|
1809
|
+
params(
|
|
1810
|
+
access:
|
|
1811
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::OrHash
|
|
1812
|
+
).void
|
|
1813
|
+
end
|
|
1814
|
+
attr_writer :access
|
|
1815
|
+
|
|
1816
|
+
sig do
|
|
1817
|
+
returns(
|
|
1818
|
+
T.nilable(
|
|
1819
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice
|
|
1820
|
+
)
|
|
1821
|
+
)
|
|
1822
|
+
end
|
|
1823
|
+
attr_reader :invoice
|
|
1824
|
+
|
|
1825
|
+
sig do
|
|
1826
|
+
params(
|
|
1827
|
+
invoice:
|
|
1828
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::OrHash
|
|
1829
|
+
).void
|
|
1830
|
+
end
|
|
1831
|
+
attr_writer :invoice
|
|
1832
|
+
|
|
1833
|
+
# Rounding configuration for prorated recurring commit amounts.
|
|
1834
|
+
sig do
|
|
1835
|
+
params(
|
|
1836
|
+
access:
|
|
1837
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::OrHash,
|
|
1838
|
+
invoice:
|
|
1839
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::OrHash
|
|
1840
|
+
).returns(T.attached_class)
|
|
1841
|
+
end
|
|
1842
|
+
def self.new(access: nil, invoice: nil)
|
|
1843
|
+
end
|
|
1844
|
+
|
|
1845
|
+
sig do
|
|
1846
|
+
override.returns(
|
|
1847
|
+
{
|
|
1848
|
+
access:
|
|
1849
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access,
|
|
1850
|
+
invoice:
|
|
1851
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice
|
|
1852
|
+
}
|
|
1853
|
+
)
|
|
1854
|
+
end
|
|
1855
|
+
def to_hash
|
|
1856
|
+
end
|
|
1857
|
+
|
|
1858
|
+
class Access < MetronomeSDK::Internal::Type::BaseModel
|
|
1859
|
+
OrHash =
|
|
1860
|
+
T.type_alias do
|
|
1861
|
+
T.any(
|
|
1862
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access,
|
|
1863
|
+
MetronomeSDK::Internal::AnyHash
|
|
1864
|
+
)
|
|
1865
|
+
end
|
|
1866
|
+
|
|
1867
|
+
# Number of decimal places to round to. Applied directly to the stored monetary
|
|
1868
|
+
# representation. Negative values round to powers of 10 (e.g., -2 rounds to
|
|
1869
|
+
# nearest 100 in the stored unit. For USD, this means rounding to the nearest
|
|
1870
|
+
# dollar).
|
|
1871
|
+
sig { returns(Float) }
|
|
1872
|
+
attr_accessor :decimal_places
|
|
1873
|
+
|
|
1874
|
+
sig do
|
|
1875
|
+
returns(
|
|
1876
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
1877
|
+
)
|
|
1878
|
+
end
|
|
1879
|
+
attr_accessor :rounding_method
|
|
1880
|
+
|
|
1881
|
+
sig do
|
|
1882
|
+
params(
|
|
1883
|
+
decimal_places: Float,
|
|
1884
|
+
rounding_method:
|
|
1885
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::RoundingMethod::OrSymbol
|
|
1886
|
+
).returns(T.attached_class)
|
|
1887
|
+
end
|
|
1888
|
+
def self.new(
|
|
1889
|
+
# Number of decimal places to round to. Applied directly to the stored monetary
|
|
1890
|
+
# representation. Negative values round to powers of 10 (e.g., -2 rounds to
|
|
1891
|
+
# nearest 100 in the stored unit. For USD, this means rounding to the nearest
|
|
1892
|
+
# dollar).
|
|
1893
|
+
decimal_places:,
|
|
1894
|
+
rounding_method:
|
|
1895
|
+
)
|
|
1896
|
+
end
|
|
1897
|
+
|
|
1898
|
+
sig do
|
|
1899
|
+
override.returns(
|
|
1900
|
+
{
|
|
1901
|
+
decimal_places: Float,
|
|
1902
|
+
rounding_method:
|
|
1903
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
1904
|
+
}
|
|
1905
|
+
)
|
|
1906
|
+
end
|
|
1907
|
+
def to_hash
|
|
1908
|
+
end
|
|
1909
|
+
|
|
1910
|
+
module RoundingMethod
|
|
1911
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
1912
|
+
|
|
1913
|
+
TaggedSymbol =
|
|
1914
|
+
T.type_alias do
|
|
1915
|
+
T.all(
|
|
1916
|
+
Symbol,
|
|
1917
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::RoundingMethod
|
|
1918
|
+
)
|
|
1919
|
+
end
|
|
1920
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
1921
|
+
|
|
1922
|
+
HALF_UP =
|
|
1923
|
+
T.let(
|
|
1924
|
+
:HALF_UP,
|
|
1925
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
1926
|
+
)
|
|
1927
|
+
FLOOR =
|
|
1928
|
+
T.let(
|
|
1929
|
+
:FLOOR,
|
|
1930
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
1931
|
+
)
|
|
1932
|
+
CEILING =
|
|
1933
|
+
T.let(
|
|
1934
|
+
:CEILING,
|
|
1935
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
1936
|
+
)
|
|
1937
|
+
|
|
1938
|
+
sig do
|
|
1939
|
+
override.returns(
|
|
1940
|
+
T::Array[
|
|
1941
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
1942
|
+
]
|
|
1943
|
+
)
|
|
1944
|
+
end
|
|
1945
|
+
def self.values
|
|
1946
|
+
end
|
|
1947
|
+
end
|
|
1948
|
+
end
|
|
1949
|
+
|
|
1950
|
+
class Invoice < MetronomeSDK::Internal::Type::BaseModel
|
|
1951
|
+
OrHash =
|
|
1952
|
+
T.type_alias do
|
|
1953
|
+
T.any(
|
|
1954
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice,
|
|
1955
|
+
MetronomeSDK::Internal::AnyHash
|
|
1956
|
+
)
|
|
1957
|
+
end
|
|
1958
|
+
|
|
1959
|
+
# Number of decimal places to round to. Applied directly to the stored monetary
|
|
1960
|
+
# representation. Negative values round to powers of 10 (e.g., -2 rounds to
|
|
1961
|
+
# nearest 100 in the stored unit. For USD, this means rounding to the nearest
|
|
1962
|
+
# dollar).
|
|
1963
|
+
sig { returns(Float) }
|
|
1964
|
+
attr_accessor :decimal_places
|
|
1965
|
+
|
|
1966
|
+
sig do
|
|
1967
|
+
returns(
|
|
1968
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::RoundingMethod::TaggedSymbol
|
|
1969
|
+
)
|
|
1970
|
+
end
|
|
1971
|
+
attr_accessor :rounding_method
|
|
1972
|
+
|
|
1973
|
+
sig do
|
|
1974
|
+
params(
|
|
1975
|
+
decimal_places: Float,
|
|
1976
|
+
rounding_method:
|
|
1977
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::RoundingMethod::OrSymbol
|
|
1978
|
+
).returns(T.attached_class)
|
|
1979
|
+
end
|
|
1980
|
+
def self.new(
|
|
1981
|
+
# Number of decimal places to round to. Applied directly to the stored monetary
|
|
1982
|
+
# representation. Negative values round to powers of 10 (e.g., -2 rounds to
|
|
1983
|
+
# nearest 100 in the stored unit. For USD, this means rounding to the nearest
|
|
1984
|
+
# dollar).
|
|
1985
|
+
decimal_places:,
|
|
1986
|
+
rounding_method:
|
|
1987
|
+
)
|
|
1988
|
+
end
|
|
1989
|
+
|
|
1990
|
+
sig do
|
|
1991
|
+
override.returns(
|
|
1992
|
+
{
|
|
1993
|
+
decimal_places: Float,
|
|
1994
|
+
rounding_method:
|
|
1995
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::RoundingMethod::TaggedSymbol
|
|
1996
|
+
}
|
|
1997
|
+
)
|
|
1998
|
+
end
|
|
1999
|
+
def to_hash
|
|
2000
|
+
end
|
|
2001
|
+
|
|
2002
|
+
module RoundingMethod
|
|
2003
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
2004
|
+
|
|
2005
|
+
TaggedSymbol =
|
|
2006
|
+
T.type_alias do
|
|
2007
|
+
T.all(
|
|
2008
|
+
Symbol,
|
|
2009
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::RoundingMethod
|
|
2010
|
+
)
|
|
2011
|
+
end
|
|
2012
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
2013
|
+
|
|
2014
|
+
HALF_UP =
|
|
2015
|
+
T.let(
|
|
2016
|
+
:HALF_UP,
|
|
2017
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::RoundingMethod::TaggedSymbol
|
|
2018
|
+
)
|
|
2019
|
+
FLOOR =
|
|
2020
|
+
T.let(
|
|
2021
|
+
:FLOOR,
|
|
2022
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::RoundingMethod::TaggedSymbol
|
|
2023
|
+
)
|
|
2024
|
+
CEILING =
|
|
2025
|
+
T.let(
|
|
2026
|
+
:CEILING,
|
|
2027
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::RoundingMethod::TaggedSymbol
|
|
2028
|
+
)
|
|
2029
|
+
|
|
2030
|
+
sig do
|
|
2031
|
+
override.returns(
|
|
2032
|
+
T::Array[
|
|
2033
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::ProrationRounding::Invoice::RoundingMethod::TaggedSymbol
|
|
2034
|
+
]
|
|
2035
|
+
)
|
|
2036
|
+
end
|
|
2037
|
+
def self.values
|
|
2038
|
+
end
|
|
2039
|
+
end
|
|
2040
|
+
end
|
|
2041
|
+
end
|
|
2042
|
+
|
|
1732
2043
|
# The frequency at which the recurring commits will be created. If not provided: -
|
|
1733
2044
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
1734
2045
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
@@ -1766,6 +2077,11 @@ module MetronomeSDK
|
|
|
1766
2077
|
:WEEKLY,
|
|
1767
2078
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::RecurrenceFrequency::TaggedSymbol
|
|
1768
2079
|
)
|
|
2080
|
+
DAILY =
|
|
2081
|
+
T.let(
|
|
2082
|
+
:DAILY,
|
|
2083
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCommit::RecurrenceFrequency::TaggedSymbol
|
|
2084
|
+
)
|
|
1769
2085
|
|
|
1770
2086
|
sig do
|
|
1771
2087
|
override.returns(
|
|
@@ -1946,6 +2262,26 @@ module MetronomeSDK
|
|
|
1946
2262
|
end
|
|
1947
2263
|
attr_writer :proration
|
|
1948
2264
|
|
|
2265
|
+
# Rounding configuration for prorated recurring credit amounts.
|
|
2266
|
+
sig do
|
|
2267
|
+
returns(
|
|
2268
|
+
T.nilable(
|
|
2269
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding
|
|
2270
|
+
)
|
|
2271
|
+
)
|
|
2272
|
+
end
|
|
2273
|
+
attr_reader :proration_rounding
|
|
2274
|
+
|
|
2275
|
+
sig do
|
|
2276
|
+
params(
|
|
2277
|
+
proration_rounding:
|
|
2278
|
+
T.nilable(
|
|
2279
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::OrHash
|
|
2280
|
+
)
|
|
2281
|
+
).void
|
|
2282
|
+
end
|
|
2283
|
+
attr_writer :proration_rounding
|
|
2284
|
+
|
|
1949
2285
|
# The frequency at which the recurring commits will be created. If not provided: -
|
|
1950
2286
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
1951
2287
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
@@ -2033,6 +2369,10 @@ module MetronomeSDK
|
|
|
2033
2369
|
netsuite_sales_order_id: String,
|
|
2034
2370
|
proration:
|
|
2035
2371
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::Proration::OrSymbol,
|
|
2372
|
+
proration_rounding:
|
|
2373
|
+
T.nilable(
|
|
2374
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::OrHash
|
|
2375
|
+
),
|
|
2036
2376
|
recurrence_frequency:
|
|
2037
2377
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::RecurrenceFrequency::OrSymbol,
|
|
2038
2378
|
rollover_fraction: Float,
|
|
@@ -2072,6 +2412,8 @@ module MetronomeSDK
|
|
|
2072
2412
|
# Determines whether the first and last commit will be prorated. If not provided,
|
|
2073
2413
|
# the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).
|
|
2074
2414
|
proration: nil,
|
|
2415
|
+
# Rounding configuration for prorated recurring credit amounts.
|
|
2416
|
+
proration_rounding: nil,
|
|
2075
2417
|
# The frequency at which the recurring commits will be created. If not provided: -
|
|
2076
2418
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
2077
2419
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
@@ -2117,6 +2459,10 @@ module MetronomeSDK
|
|
|
2117
2459
|
netsuite_sales_order_id: String,
|
|
2118
2460
|
proration:
|
|
2119
2461
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::Proration::TaggedSymbol,
|
|
2462
|
+
proration_rounding:
|
|
2463
|
+
T.nilable(
|
|
2464
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding
|
|
2465
|
+
),
|
|
2120
2466
|
recurrence_frequency:
|
|
2121
2467
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::RecurrenceFrequency::TaggedSymbol,
|
|
2122
2468
|
rollover_fraction: Float,
|
|
@@ -2384,6 +2730,146 @@ module MetronomeSDK
|
|
|
2384
2730
|
end
|
|
2385
2731
|
end
|
|
2386
2732
|
|
|
2733
|
+
class ProrationRounding < MetronomeSDK::Internal::Type::BaseModel
|
|
2734
|
+
OrHash =
|
|
2735
|
+
T.type_alias do
|
|
2736
|
+
T.any(
|
|
2737
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding,
|
|
2738
|
+
MetronomeSDK::Internal::AnyHash
|
|
2739
|
+
)
|
|
2740
|
+
end
|
|
2741
|
+
|
|
2742
|
+
sig do
|
|
2743
|
+
returns(
|
|
2744
|
+
T.nilable(
|
|
2745
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access
|
|
2746
|
+
)
|
|
2747
|
+
)
|
|
2748
|
+
end
|
|
2749
|
+
attr_reader :access
|
|
2750
|
+
|
|
2751
|
+
sig do
|
|
2752
|
+
params(
|
|
2753
|
+
access:
|
|
2754
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::OrHash
|
|
2755
|
+
).void
|
|
2756
|
+
end
|
|
2757
|
+
attr_writer :access
|
|
2758
|
+
|
|
2759
|
+
# Rounding configuration for prorated recurring credit amounts.
|
|
2760
|
+
sig do
|
|
2761
|
+
params(
|
|
2762
|
+
access:
|
|
2763
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::OrHash
|
|
2764
|
+
).returns(T.attached_class)
|
|
2765
|
+
end
|
|
2766
|
+
def self.new(access: nil)
|
|
2767
|
+
end
|
|
2768
|
+
|
|
2769
|
+
sig do
|
|
2770
|
+
override.returns(
|
|
2771
|
+
{
|
|
2772
|
+
access:
|
|
2773
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access
|
|
2774
|
+
}
|
|
2775
|
+
)
|
|
2776
|
+
end
|
|
2777
|
+
def to_hash
|
|
2778
|
+
end
|
|
2779
|
+
|
|
2780
|
+
class Access < MetronomeSDK::Internal::Type::BaseModel
|
|
2781
|
+
OrHash =
|
|
2782
|
+
T.type_alias do
|
|
2783
|
+
T.any(
|
|
2784
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access,
|
|
2785
|
+
MetronomeSDK::Internal::AnyHash
|
|
2786
|
+
)
|
|
2787
|
+
end
|
|
2788
|
+
|
|
2789
|
+
# Number of decimal places to round to. Applied directly to the stored monetary
|
|
2790
|
+
# representation. Negative values round to powers of 10 (e.g., -2 rounds to
|
|
2791
|
+
# nearest 100 in the stored unit. For USD, this means rounding to the nearest
|
|
2792
|
+
# dollar).
|
|
2793
|
+
sig { returns(Float) }
|
|
2794
|
+
attr_accessor :decimal_places
|
|
2795
|
+
|
|
2796
|
+
sig do
|
|
2797
|
+
returns(
|
|
2798
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
2799
|
+
)
|
|
2800
|
+
end
|
|
2801
|
+
attr_accessor :rounding_method
|
|
2802
|
+
|
|
2803
|
+
sig do
|
|
2804
|
+
params(
|
|
2805
|
+
decimal_places: Float,
|
|
2806
|
+
rounding_method:
|
|
2807
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::RoundingMethod::OrSymbol
|
|
2808
|
+
).returns(T.attached_class)
|
|
2809
|
+
end
|
|
2810
|
+
def self.new(
|
|
2811
|
+
# Number of decimal places to round to. Applied directly to the stored monetary
|
|
2812
|
+
# representation. Negative values round to powers of 10 (e.g., -2 rounds to
|
|
2813
|
+
# nearest 100 in the stored unit. For USD, this means rounding to the nearest
|
|
2814
|
+
# dollar).
|
|
2815
|
+
decimal_places:,
|
|
2816
|
+
rounding_method:
|
|
2817
|
+
)
|
|
2818
|
+
end
|
|
2819
|
+
|
|
2820
|
+
sig do
|
|
2821
|
+
override.returns(
|
|
2822
|
+
{
|
|
2823
|
+
decimal_places: Float,
|
|
2824
|
+
rounding_method:
|
|
2825
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
2826
|
+
}
|
|
2827
|
+
)
|
|
2828
|
+
end
|
|
2829
|
+
def to_hash
|
|
2830
|
+
end
|
|
2831
|
+
|
|
2832
|
+
module RoundingMethod
|
|
2833
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
2834
|
+
|
|
2835
|
+
TaggedSymbol =
|
|
2836
|
+
T.type_alias do
|
|
2837
|
+
T.all(
|
|
2838
|
+
Symbol,
|
|
2839
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::RoundingMethod
|
|
2840
|
+
)
|
|
2841
|
+
end
|
|
2842
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
2843
|
+
|
|
2844
|
+
HALF_UP =
|
|
2845
|
+
T.let(
|
|
2846
|
+
:HALF_UP,
|
|
2847
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
2848
|
+
)
|
|
2849
|
+
FLOOR =
|
|
2850
|
+
T.let(
|
|
2851
|
+
:FLOOR,
|
|
2852
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
2853
|
+
)
|
|
2854
|
+
CEILING =
|
|
2855
|
+
T.let(
|
|
2856
|
+
:CEILING,
|
|
2857
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
2858
|
+
)
|
|
2859
|
+
|
|
2860
|
+
sig do
|
|
2861
|
+
override.returns(
|
|
2862
|
+
T::Array[
|
|
2863
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::ProrationRounding::Access::RoundingMethod::TaggedSymbol
|
|
2864
|
+
]
|
|
2865
|
+
)
|
|
2866
|
+
end
|
|
2867
|
+
def self.values
|
|
2868
|
+
end
|
|
2869
|
+
end
|
|
2870
|
+
end
|
|
2871
|
+
end
|
|
2872
|
+
|
|
2387
2873
|
# The frequency at which the recurring commits will be created. If not provided: -
|
|
2388
2874
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
|
2389
2875
|
# period defined in the duration will correspond to this frequency. - Commits will
|
|
@@ -2421,6 +2907,11 @@ module MetronomeSDK
|
|
|
2421
2907
|
:WEEKLY,
|
|
2422
2908
|
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::RecurrenceFrequency::TaggedSymbol
|
|
2423
2909
|
)
|
|
2910
|
+
DAILY =
|
|
2911
|
+
T.let(
|
|
2912
|
+
:DAILY,
|
|
2913
|
+
MetronomeSDK::Models::V1::ContractCreateResponse::Data::Contract::RecurringCredit::RecurrenceFrequency::TaggedSymbol
|
|
2914
|
+
)
|
|
2424
2915
|
|
|
2425
2916
|
sig do
|
|
2426
2917
|
override.returns(
|