metronome-sdk 1.0.0 → 2.1.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 +91 -0
- data/README.md +1 -1
- data/lib/metronome_sdk/errors.rb +25 -11
- data/lib/metronome_sdk/file_part.rb +10 -7
- data/lib/metronome_sdk/internal/body_cursor_page.rb +1 -1
- data/lib/metronome_sdk/internal/cursor_page.rb +1 -1
- data/lib/metronome_sdk/internal/cursor_page_without_limit.rb +1 -1
- data/lib/metronome_sdk/internal/transport/base_client.rb +11 -7
- data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +34 -31
- data/lib/metronome_sdk/internal/type/base_page.rb +1 -1
- data/lib/metronome_sdk/internal/type/enum.rb +25 -0
- data/lib/metronome_sdk/internal/type/file_input.rb +7 -4
- data/lib/metronome_sdk/internal/util.rb +8 -7
- data/lib/metronome_sdk/models/contract.rb +1 -0
- data/lib/metronome_sdk/models/contract_v2.rb +275 -6
- data/lib/metronome_sdk/models/contract_without_amendments.rb +2 -2
- data/lib/metronome_sdk/models/hierarchy_configuration.rb +123 -2
- data/lib/metronome_sdk/models/payment_gate_config.rb +1 -0
- data/lib/metronome_sdk/models/payment_gate_config_v2.rb +1 -0
- data/lib/metronome_sdk/models/subscription.rb +95 -1
- data/lib/metronome_sdk/models/v1/alert_archive_params.rb +8 -4
- data/lib/metronome_sdk/models/v1/alert_create_params.rb +38 -36
- data/lib/metronome_sdk/models/v1/contract_amend_params.rb +1 -0
- data/lib/metronome_sdk/models/v1/contract_create_params.rb +157 -9
- data/lib/metronome_sdk/models/v1/contract_list_balances_params.rb +9 -1
- data/lib/metronome_sdk/models/v1/customer_create_params.rb +11 -1
- data/lib/metronome_sdk/models/v1/customer_detail.rb +9 -1
- data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +19 -25
- data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +3 -3
- data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb +1 -0
- data/lib/metronome_sdk/models/v1/customer_set_billing_configurations_params.rb +1 -0
- data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +3 -3
- data/lib/metronome_sdk/models/v1/customers/alert_reset_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +12 -12
- data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +6 -1
- data/lib/metronome_sdk/models/v1/customers/billing_config_delete_params.rb +1 -0
- data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rb +1 -0
- data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +6 -1
- data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +1 -1
- data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +41 -38
- data/lib/metronome_sdk/models/v1/customers/invoice.rb +256 -16
- data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rb +30 -0
- data/lib/metronome_sdk/models/v1/payment.rb +157 -0
- data/lib/metronome_sdk/models/v1/payment_attempt_params.rb +28 -0
- data/lib/metronome_sdk/models/v1/payment_attempt_response.rb +18 -0
- data/lib/metronome_sdk/models/v1/payment_cancel_params.rb +28 -0
- data/lib/metronome_sdk/models/v1/payment_cancel_response.rb +18 -0
- data/lib/metronome_sdk/models/v1/payment_list_params.rb +53 -0
- data/lib/metronome_sdk/models/v1/payment_status.rb +19 -0
- data/lib/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rb +65 -0
- data/lib/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rb +12 -0
- data/lib/metronome_sdk/models/v1/settings/billing_provider_create_params.rb +73 -0
- data/lib/metronome_sdk/models/v1/settings/billing_provider_create_response.rb +31 -0
- data/lib/metronome_sdk/models/v1/settings/billing_provider_list_params.rb +26 -0
- data/lib/metronome_sdk/models/v1/settings/billing_provider_list_response.rb +105 -0
- data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +9 -1
- data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +9 -1
- data/lib/metronome_sdk/models/v2/contract_edit_params.rb +219 -9
- data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +195 -8
- data/lib/metronome_sdk/resources/v1/alerts.rb +57 -53
- data/lib/metronome_sdk/resources/v1/contracts.rb +8 -5
- data/lib/metronome_sdk/resources/v1/credit_grants.rb +10 -5
- data/lib/metronome_sdk/resources/v1/customers/alerts.rb +70 -51
- data/lib/metronome_sdk/resources/v1/customers/billing_config.rb +7 -4
- data/lib/metronome_sdk/resources/v1/customers/commits.rb +2 -1
- data/lib/metronome_sdk/resources/v1/customers/invoices.rb +57 -1
- data/lib/metronome_sdk/resources/v1/customers/plans.rb +8 -4
- data/lib/metronome_sdk/resources/v1/customers.rb +13 -8
- data/lib/metronome_sdk/resources/v1/payments.rb +102 -0
- data/lib/metronome_sdk/resources/v1/plans.rb +8 -4
- data/lib/metronome_sdk/resources/v1/settings/billing_providers.rb +75 -0
- data/lib/metronome_sdk/resources/v1/settings.rb +55 -0
- data/lib/metronome_sdk/resources/v1/usage.rb +4 -2
- data/lib/metronome_sdk/resources/v1.rb +8 -0
- data/lib/metronome_sdk/resources/v2/contracts.rb +9 -3
- data/lib/metronome_sdk/version.rb +1 -1
- data/lib/metronome_sdk.rb +17 -0
- data/rbi/metronome_sdk/errors.rbi +29 -2
- data/rbi/metronome_sdk/file_part.rbi +1 -1
- data/rbi/metronome_sdk/internal/transport/base_client.rbi +4 -5
- data/rbi/metronome_sdk/internal/type/base_page.rbi +1 -1
- data/rbi/metronome_sdk/internal/util.rbi +1 -1
- data/rbi/metronome_sdk/models/contract.rbi +5 -0
- data/rbi/metronome_sdk/models/contract_v2.rbi +635 -10
- data/rbi/metronome_sdk/models/contract_without_amendments.rbi +2 -2
- data/rbi/metronome_sdk/models/hierarchy_configuration.rbi +286 -6
- data/rbi/metronome_sdk/models/payment_gate_config.rbi +5 -0
- data/rbi/metronome_sdk/models/payment_gate_config_v2.rbi +5 -0
- data/rbi/metronome_sdk/models/subscription.rbi +190 -0
- data/rbi/metronome_sdk/models/v1/alert_archive_params.rbi +6 -4
- data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +51 -47
- data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +5 -0
- data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +326 -10
- data/rbi/metronome_sdk/models/v1/contract_list_balances_params.rbi +11 -0
- data/rbi/metronome_sdk/models/v1/customer_create_params.rbi +11 -0
- data/rbi/metronome_sdk/models/v1/customer_detail.rbi +8 -0
- data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +24 -32
- data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +10 -9
- data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbi +5 -0
- data/rbi/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbi +5 -0
- data/rbi/metronome_sdk/models/v1/customers/alert_list_params.rbi +4 -4
- data/rbi/metronome_sdk/models/v1/customers/alert_reset_params.rbi +2 -2
- data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +14 -14
- data/rbi/metronome_sdk/models/v1/customers/billing_config_create_params.rbi +11 -0
- data/rbi/metronome_sdk/models/v1/customers/billing_config_delete_params.rbi +5 -0
- data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbi +5 -0
- data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +6 -0
- data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +2 -2
- data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +53 -44
- data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +462 -38
- data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbi +50 -0
- data/rbi/metronome_sdk/models/v1/payment.rbi +324 -0
- data/rbi/metronome_sdk/models/v1/payment_attempt_params.rbi +48 -0
- data/rbi/metronome_sdk/models/v1/payment_attempt_response.rbi +35 -0
- data/rbi/metronome_sdk/models/v1/payment_cancel_params.rbi +48 -0
- data/rbi/metronome_sdk/models/v1/payment_cancel_response.rbi +35 -0
- data/rbi/metronome_sdk/models/v1/payment_list_params.rbi +91 -0
- data/rbi/metronome_sdk/models/v1/payment_status.rbi +33 -0
- data/rbi/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rbi +115 -0
- data/rbi/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rbi +25 -0
- data/rbi/metronome_sdk/models/v1/settings/billing_provider_create_params.rbi +157 -0
- data/rbi/metronome_sdk/models/v1/settings/billing_provider_create_response.rbi +75 -0
- data/rbi/metronome_sdk/models/v1/settings/billing_provider_list_params.rbi +50 -0
- data/rbi/metronome_sdk/models/v1/settings/billing_provider_list_response.rbi +245 -0
- data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +18 -0
- data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +18 -0
- data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +536 -12
- data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +462 -14
- data/rbi/metronome_sdk/resources/v1/alerts.rbi +68 -64
- data/rbi/metronome_sdk/resources/v1/contracts.rbi +8 -4
- data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +10 -5
- data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +73 -54
- data/rbi/metronome_sdk/resources/v1/customers/billing_config.rbi +8 -4
- data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +3 -2
- data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +38 -1
- data/rbi/metronome_sdk/resources/v1/customers/plans.rbi +8 -4
- data/rbi/metronome_sdk/resources/v1/customers.rbi +17 -11
- data/rbi/metronome_sdk/resources/v1/payments.rbi +72 -0
- data/rbi/metronome_sdk/resources/v1/plans.rbi +8 -4
- data/rbi/metronome_sdk/resources/v1/settings/billing_providers.rbi +63 -0
- data/rbi/metronome_sdk/resources/v1/settings.rbi +47 -0
- data/rbi/metronome_sdk/resources/v1/usage.rbi +4 -2
- data/rbi/metronome_sdk/resources/v1.rbi +6 -0
- data/rbi/metronome_sdk/resources/v2/contracts.rbi +14 -0
- data/sig/metronome_sdk/errors.rbs +7 -0
- data/sig/metronome_sdk/file_part.rbs +1 -1
- data/sig/metronome_sdk/models/contract.rbs +2 -0
- data/sig/metronome_sdk/models/contract_v2.rbs +241 -12
- data/sig/metronome_sdk/models/hierarchy_configuration.rbs +87 -6
- data/sig/metronome_sdk/models/payment_gate_config.rbs +2 -1
- data/sig/metronome_sdk/models/payment_gate_config_v2.rbs +2 -1
- data/sig/metronome_sdk/models/subscription.rbs +80 -0
- data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +2 -1
- data/sig/metronome_sdk/models/v1/contract_create_params.rbs +91 -5
- data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/customer_create_params.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customer_detail.rbs +5 -0
- data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +0 -7
- data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +6 -4
- data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/billing_config_delete_params.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/invoice.rbs +244 -19
- data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbs +32 -0
- data/sig/metronome_sdk/models/v1/payment.rbs +198 -0
- data/sig/metronome_sdk/models/v1/payment_attempt_params.rbs +30 -0
- data/sig/metronome_sdk/models/v1/payment_attempt_response.rbs +15 -0
- data/sig/metronome_sdk/models/v1/payment_cancel_params.rbs +30 -0
- data/sig/metronome_sdk/models/v1/payment_cancel_response.rbs +15 -0
- data/sig/metronome_sdk/models/v1/payment_list_params.rbs +56 -0
- data/sig/metronome_sdk/models/v1/payment_status.rbs +19 -0
- data/sig/metronome_sdk/models/v1/setting_upsert_avalara_credentials_params.rbs +54 -0
- data/sig/metronome_sdk/models/v1/setting_upsert_avalara_credentials_response.rbs +13 -0
- data/sig/metronome_sdk/models/v1/settings/billing_provider_create_params.rbs +64 -0
- data/sig/metronome_sdk/models/v1/settings/billing_provider_create_response.rbs +34 -0
- data/sig/metronome_sdk/models/v1/settings/billing_provider_list_params.rbs +28 -0
- data/sig/metronome_sdk/models/v1/settings/billing_provider_list_response.rbs +102 -0
- data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +9 -0
- data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +9 -0
- data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +184 -7
- data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +221 -18
- data/sig/metronome_sdk/resources/v1/contracts.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +6 -0
- data/sig/metronome_sdk/resources/v1/payments.rbs +30 -0
- data/sig/metronome_sdk/resources/v1/settings/billing_providers.rbs +23 -0
- data/sig/metronome_sdk/resources/v1/settings.rbs +19 -0
- data/sig/metronome_sdk/resources/v1.rbs +4 -0
- data/sig/metronome_sdk/resources/v2/contracts.rbs +3 -0
- metadata +53 -2
|
@@ -104,8 +104,8 @@ module MetronomeSDK
|
|
|
104
104
|
# Either a **parent** configuration with a list of children or a **child**
|
|
105
105
|
# configuration with a single parent.
|
|
106
106
|
#
|
|
107
|
-
# @return [MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration, MetronomeSDK::Models::HierarchyConfiguration::
|
|
108
|
-
optional :hierarchy_configuration, union: -> { MetronomeSDK::HierarchyConfiguration }
|
|
107
|
+
# @return [MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration, MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2, nil]
|
|
108
|
+
optional :hierarchy_configuration, union: -> { MetronomeSDK::ContractV2::HierarchyConfiguration }
|
|
109
109
|
|
|
110
110
|
# @!attribute multiplier_override_prioritization
|
|
111
111
|
# Defaults to LOWEST_MULTIPLIER, which applies the greatest discount to list
|
|
@@ -254,7 +254,7 @@ module MetronomeSDK
|
|
|
254
254
|
#
|
|
255
255
|
# @param has_more [MetronomeSDK::Models::ContractV2::HasMore] Indicates whether there are more items than the limit for this endpoint. Use the
|
|
256
256
|
#
|
|
257
|
-
# @param hierarchy_configuration [MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration, MetronomeSDK::Models::HierarchyConfiguration::
|
|
257
|
+
# @param hierarchy_configuration [MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration, MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2] Either a **parent** configuration with a list of children or a **child** configu
|
|
258
258
|
#
|
|
259
259
|
# @param multiplier_override_prioritization [Symbol, MetronomeSDK::Models::ContractV2::MultiplierOverridePrioritization] Defaults to LOWEST_MULTIPLIER, which applies the greatest discount to list price
|
|
260
260
|
#
|
|
@@ -1264,8 +1264,8 @@ module MetronomeSDK
|
|
|
1264
1264
|
|
|
1265
1265
|
# @!attribute overwrite_rate
|
|
1266
1266
|
#
|
|
1267
|
-
# @return [MetronomeSDK::Models::OverwriteRate, nil]
|
|
1268
|
-
optional :overwrite_rate, -> { MetronomeSDK::OverwriteRate }
|
|
1267
|
+
# @return [MetronomeSDK::Models::ContractV2::Override::OverwriteRate, nil]
|
|
1268
|
+
optional :overwrite_rate, -> { MetronomeSDK::ContractV2::Override::OverwriteRate }
|
|
1269
1269
|
|
|
1270
1270
|
# @!attribute priority
|
|
1271
1271
|
#
|
|
@@ -1297,7 +1297,7 @@ module MetronomeSDK
|
|
|
1297
1297
|
# @param multiplier [Float]
|
|
1298
1298
|
# @param override_specifiers [Array<MetronomeSDK::Models::ContractV2::Override::OverrideSpecifier>]
|
|
1299
1299
|
# @param override_tiers [Array<MetronomeSDK::Models::OverrideTier>]
|
|
1300
|
-
# @param overwrite_rate [MetronomeSDK::Models::OverwriteRate]
|
|
1300
|
+
# @param overwrite_rate [MetronomeSDK::Models::ContractV2::Override::OverwriteRate]
|
|
1301
1301
|
# @param priority [Float]
|
|
1302
1302
|
# @param product [MetronomeSDK::Models::ContractV2::Override::Product]
|
|
1303
1303
|
# @param target [Symbol, MetronomeSDK::Models::ContractV2::Override::Target]
|
|
@@ -1369,6 +1369,84 @@ module MetronomeSDK
|
|
|
1369
1369
|
end
|
|
1370
1370
|
end
|
|
1371
1371
|
|
|
1372
|
+
# @see MetronomeSDK::Models::ContractV2::Override#overwrite_rate
|
|
1373
|
+
class OverwriteRate < MetronomeSDK::Internal::Type::BaseModel
|
|
1374
|
+
# @!attribute rate_type
|
|
1375
|
+
#
|
|
1376
|
+
# @return [Symbol, MetronomeSDK::Models::ContractV2::Override::OverwriteRate::RateType]
|
|
1377
|
+
required :rate_type, enum: -> { MetronomeSDK::ContractV2::Override::OverwriteRate::RateType }
|
|
1378
|
+
|
|
1379
|
+
# @!attribute credit_type
|
|
1380
|
+
#
|
|
1381
|
+
# @return [MetronomeSDK::Models::CreditTypeData, nil]
|
|
1382
|
+
optional :credit_type, -> { MetronomeSDK::CreditTypeData }
|
|
1383
|
+
|
|
1384
|
+
# @!attribute custom_rate
|
|
1385
|
+
# Only set for CUSTOM rate_type. This field is interpreted by custom rate
|
|
1386
|
+
# processors.
|
|
1387
|
+
#
|
|
1388
|
+
# @return [Hash{Symbol=>Object}, nil]
|
|
1389
|
+
optional :custom_rate, MetronomeSDK::Internal::Type::HashOf[MetronomeSDK::Internal::Type::Unknown]
|
|
1390
|
+
|
|
1391
|
+
# @!attribute is_prorated
|
|
1392
|
+
# Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
|
|
1393
|
+
# set to true.
|
|
1394
|
+
#
|
|
1395
|
+
# @return [Boolean, nil]
|
|
1396
|
+
optional :is_prorated, MetronomeSDK::Internal::Type::Boolean
|
|
1397
|
+
|
|
1398
|
+
# @!attribute price
|
|
1399
|
+
# Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type,
|
|
1400
|
+
# this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.
|
|
1401
|
+
#
|
|
1402
|
+
# @return [Float, nil]
|
|
1403
|
+
optional :price, Float
|
|
1404
|
+
|
|
1405
|
+
# @!attribute quantity
|
|
1406
|
+
# Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
|
|
1407
|
+
#
|
|
1408
|
+
# @return [Float, nil]
|
|
1409
|
+
optional :quantity, Float
|
|
1410
|
+
|
|
1411
|
+
# @!attribute tiers
|
|
1412
|
+
# Only set for TIERED rate_type.
|
|
1413
|
+
#
|
|
1414
|
+
# @return [Array<MetronomeSDK::Models::Tier>, nil]
|
|
1415
|
+
optional :tiers, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Tier] }
|
|
1416
|
+
|
|
1417
|
+
# @!method initialize(rate_type:, credit_type: nil, custom_rate: nil, is_prorated: nil, price: nil, quantity: nil, tiers: nil)
|
|
1418
|
+
# Some parameter documentations has been truncated, see
|
|
1419
|
+
# {MetronomeSDK::Models::ContractV2::Override::OverwriteRate} for more details.
|
|
1420
|
+
#
|
|
1421
|
+
# @param rate_type [Symbol, MetronomeSDK::Models::ContractV2::Override::OverwriteRate::RateType]
|
|
1422
|
+
#
|
|
1423
|
+
# @param credit_type [MetronomeSDK::Models::CreditTypeData]
|
|
1424
|
+
#
|
|
1425
|
+
# @param custom_rate [Hash{Symbol=>Object}] Only set for CUSTOM rate_type. This field is interpreted by custom rate processo
|
|
1426
|
+
#
|
|
1427
|
+
# @param is_prorated [Boolean] Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be
|
|
1428
|
+
#
|
|
1429
|
+
# @param price [Float] Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type, t
|
|
1430
|
+
#
|
|
1431
|
+
# @param quantity [Float] Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
|
|
1432
|
+
#
|
|
1433
|
+
# @param tiers [Array<MetronomeSDK::Models::Tier>] Only set for TIERED rate_type.
|
|
1434
|
+
|
|
1435
|
+
# @see MetronomeSDK::Models::ContractV2::Override::OverwriteRate#rate_type
|
|
1436
|
+
module RateType
|
|
1437
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
1438
|
+
|
|
1439
|
+
FLAT = :FLAT
|
|
1440
|
+
PERCENTAGE = :PERCENTAGE
|
|
1441
|
+
SUBSCRIPTION = :SUBSCRIPTION
|
|
1442
|
+
TIERED = :TIERED
|
|
1443
|
+
CUSTOM = :CUSTOM
|
|
1444
|
+
|
|
1445
|
+
# @!method self.values
|
|
1446
|
+
# @return [Array<Symbol>]
|
|
1447
|
+
end
|
|
1448
|
+
end
|
|
1449
|
+
|
|
1372
1450
|
# @see MetronomeSDK::Models::ContractV2::Override#product
|
|
1373
1451
|
class Product < MetronomeSDK::Internal::Type::BaseModel
|
|
1374
1452
|
# @!attribute id
|
|
@@ -2070,6 +2148,7 @@ module MetronomeSDK
|
|
|
2070
2148
|
QUICKBOOKS_ONLINE = :quickbooks_online
|
|
2071
2149
|
WORKDAY = :workday
|
|
2072
2150
|
GCP_MARKETPLACE = :gcp_marketplace
|
|
2151
|
+
METRONOME = :metronome
|
|
2073
2152
|
|
|
2074
2153
|
# @!method self.values
|
|
2075
2154
|
# @return [Array<Symbol>]
|
|
@@ -2119,6 +2198,196 @@ module MetronomeSDK
|
|
|
2119
2198
|
# @param credits [Boolean] Whether there are more credits on this contract than the limit for this endpoint
|
|
2120
2199
|
end
|
|
2121
2200
|
|
|
2201
|
+
# Either a **parent** configuration with a list of children or a **child**
|
|
2202
|
+
# configuration with a single parent.
|
|
2203
|
+
#
|
|
2204
|
+
# @see MetronomeSDK::Models::ContractV2#hierarchy_configuration
|
|
2205
|
+
module HierarchyConfiguration
|
|
2206
|
+
extend MetronomeSDK::Internal::Type::Union
|
|
2207
|
+
|
|
2208
|
+
variant -> { MetronomeSDK::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration }
|
|
2209
|
+
|
|
2210
|
+
variant -> { MetronomeSDK::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2 }
|
|
2211
|
+
|
|
2212
|
+
class ParentHierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
|
2213
|
+
# @!attribute children
|
|
2214
|
+
# List of contracts that belong to this parent.
|
|
2215
|
+
#
|
|
2216
|
+
# @return [Array<MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::Child>]
|
|
2217
|
+
required :children,
|
|
2218
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::Child] }
|
|
2219
|
+
|
|
2220
|
+
# @!attribute parent_behavior
|
|
2221
|
+
#
|
|
2222
|
+
# @return [MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior, nil]
|
|
2223
|
+
optional :parent_behavior,
|
|
2224
|
+
-> { MetronomeSDK::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior }
|
|
2225
|
+
|
|
2226
|
+
# @!method initialize(children:, parent_behavior: nil)
|
|
2227
|
+
# @param children [Array<MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::Child>] List of contracts that belong to this parent.
|
|
2228
|
+
#
|
|
2229
|
+
# @param parent_behavior [MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior]
|
|
2230
|
+
|
|
2231
|
+
class Child < MetronomeSDK::Internal::Type::BaseModel
|
|
2232
|
+
# @!attribute contract_id
|
|
2233
|
+
#
|
|
2234
|
+
# @return [String]
|
|
2235
|
+
required :contract_id, String
|
|
2236
|
+
|
|
2237
|
+
# @!attribute customer_id
|
|
2238
|
+
#
|
|
2239
|
+
# @return [String]
|
|
2240
|
+
required :customer_id, String
|
|
2241
|
+
|
|
2242
|
+
# @!method initialize(contract_id:, customer_id:)
|
|
2243
|
+
# @param contract_id [String]
|
|
2244
|
+
# @param customer_id [String]
|
|
2245
|
+
end
|
|
2246
|
+
|
|
2247
|
+
# @see MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration#parent_behavior
|
|
2248
|
+
class ParentBehavior < MetronomeSDK::Internal::Type::BaseModel
|
|
2249
|
+
# @!attribute invoice_consolidation_type
|
|
2250
|
+
# Account hierarchy M3 - Indicates the desired behavior of consolidated invoices
|
|
2251
|
+
# generated by the parent in a customer hierarchy
|
|
2252
|
+
#
|
|
2253
|
+
# **CONCATENATE**: Statements on the invoices of child customers will be appended
|
|
2254
|
+
# to the consolidated invoice
|
|
2255
|
+
#
|
|
2256
|
+
# **NONE**: Do not generate consolidated invoices
|
|
2257
|
+
#
|
|
2258
|
+
# @return [Symbol, MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::InvoiceConsolidationType, nil]
|
|
2259
|
+
optional :invoice_consolidation_type,
|
|
2260
|
+
enum: -> { MetronomeSDK::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::InvoiceConsolidationType }
|
|
2261
|
+
|
|
2262
|
+
# @!method initialize(invoice_consolidation_type: nil)
|
|
2263
|
+
# Some parameter documentations has been truncated, see
|
|
2264
|
+
# {MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior}
|
|
2265
|
+
# for more details.
|
|
2266
|
+
#
|
|
2267
|
+
# @param invoice_consolidation_type [Symbol, MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::InvoiceConsolidationType] Account hierarchy M3 - Indicates the desired behavior of consolidated invoices g
|
|
2268
|
+
|
|
2269
|
+
# Account hierarchy M3 - Indicates the desired behavior of consolidated invoices
|
|
2270
|
+
# generated by the parent in a customer hierarchy
|
|
2271
|
+
#
|
|
2272
|
+
# **CONCATENATE**: Statements on the invoices of child customers will be appended
|
|
2273
|
+
# to the consolidated invoice
|
|
2274
|
+
#
|
|
2275
|
+
# **NONE**: Do not generate consolidated invoices
|
|
2276
|
+
#
|
|
2277
|
+
# @see MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior#invoice_consolidation_type
|
|
2278
|
+
module InvoiceConsolidationType
|
|
2279
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
2280
|
+
|
|
2281
|
+
CONCATENATE = :CONCATENATE
|
|
2282
|
+
NONE = :NONE
|
|
2283
|
+
|
|
2284
|
+
# @!method self.values
|
|
2285
|
+
# @return [Array<Symbol>]
|
|
2286
|
+
end
|
|
2287
|
+
end
|
|
2288
|
+
end
|
|
2289
|
+
|
|
2290
|
+
class ChildHierarchyConfigurationV2 < MetronomeSDK::Internal::Type::BaseModel
|
|
2291
|
+
# @!attribute parent
|
|
2292
|
+
# The single parent contract/customer for this child.
|
|
2293
|
+
#
|
|
2294
|
+
# @return [MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::Parent]
|
|
2295
|
+
required :parent,
|
|
2296
|
+
-> { MetronomeSDK::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::Parent }
|
|
2297
|
+
|
|
2298
|
+
# @!attribute payer
|
|
2299
|
+
# Account hierarchy M3 - Indicates which customer should pay for the child's
|
|
2300
|
+
# invoice charges **SELF**: The child pays for its own invoice charges **PARENT**:
|
|
2301
|
+
# The parent pays for the child's invoice charges
|
|
2302
|
+
#
|
|
2303
|
+
# @return [Symbol, MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::Payer, nil]
|
|
2304
|
+
optional :payer,
|
|
2305
|
+
enum: -> { MetronomeSDK::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::Payer }
|
|
2306
|
+
|
|
2307
|
+
# @!attribute usage_statement_behavior
|
|
2308
|
+
# Account hierarchy M3 - Indicates the behavior of the child's invoice statements
|
|
2309
|
+
# on the parent's invoices.
|
|
2310
|
+
#
|
|
2311
|
+
# **CONSOLIDATE**: Child's invoice statements will be added to parent's
|
|
2312
|
+
# consolidated invoices
|
|
2313
|
+
#
|
|
2314
|
+
# **SEPARATE**: Child's invoice statements will appear not appear on parent's
|
|
2315
|
+
# consolidated invoices
|
|
2316
|
+
#
|
|
2317
|
+
# @return [Symbol, MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::UsageStatementBehavior, nil]
|
|
2318
|
+
optional :usage_statement_behavior,
|
|
2319
|
+
enum: -> { MetronomeSDK::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::UsageStatementBehavior }
|
|
2320
|
+
|
|
2321
|
+
# @!method initialize(parent:, payer: nil, usage_statement_behavior: nil)
|
|
2322
|
+
# Some parameter documentations has been truncated, see
|
|
2323
|
+
# {MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2}
|
|
2324
|
+
# for more details.
|
|
2325
|
+
#
|
|
2326
|
+
# @param parent [MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::Parent] The single parent contract/customer for this child.
|
|
2327
|
+
#
|
|
2328
|
+
# @param payer [Symbol, MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::Payer] Account hierarchy M3 - Indicates which customer should pay for the child's invoi
|
|
2329
|
+
#
|
|
2330
|
+
# @param usage_statement_behavior [Symbol, MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2::UsageStatementBehavior] Account hierarchy M3 - Indicates the behavior of the child's invoice statements
|
|
2331
|
+
|
|
2332
|
+
# @see MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2#parent
|
|
2333
|
+
class Parent < MetronomeSDK::Internal::Type::BaseModel
|
|
2334
|
+
# @!attribute contract_id
|
|
2335
|
+
#
|
|
2336
|
+
# @return [String]
|
|
2337
|
+
required :contract_id, String
|
|
2338
|
+
|
|
2339
|
+
# @!attribute customer_id
|
|
2340
|
+
#
|
|
2341
|
+
# @return [String]
|
|
2342
|
+
required :customer_id, String
|
|
2343
|
+
|
|
2344
|
+
# @!method initialize(contract_id:, customer_id:)
|
|
2345
|
+
# The single parent contract/customer for this child.
|
|
2346
|
+
#
|
|
2347
|
+
# @param contract_id [String]
|
|
2348
|
+
# @param customer_id [String]
|
|
2349
|
+
end
|
|
2350
|
+
|
|
2351
|
+
# Account hierarchy M3 - Indicates which customer should pay for the child's
|
|
2352
|
+
# invoice charges **SELF**: The child pays for its own invoice charges **PARENT**:
|
|
2353
|
+
# The parent pays for the child's invoice charges
|
|
2354
|
+
#
|
|
2355
|
+
# @see MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2#payer
|
|
2356
|
+
module Payer
|
|
2357
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
2358
|
+
|
|
2359
|
+
SELF = :SELF
|
|
2360
|
+
PARENT = :PARENT
|
|
2361
|
+
|
|
2362
|
+
# @!method self.values
|
|
2363
|
+
# @return [Array<Symbol>]
|
|
2364
|
+
end
|
|
2365
|
+
|
|
2366
|
+
# Account hierarchy M3 - Indicates the behavior of the child's invoice statements
|
|
2367
|
+
# on the parent's invoices.
|
|
2368
|
+
#
|
|
2369
|
+
# **CONSOLIDATE**: Child's invoice statements will be added to parent's
|
|
2370
|
+
# consolidated invoices
|
|
2371
|
+
#
|
|
2372
|
+
# **SEPARATE**: Child's invoice statements will appear not appear on parent's
|
|
2373
|
+
# consolidated invoices
|
|
2374
|
+
#
|
|
2375
|
+
# @see MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2#usage_statement_behavior
|
|
2376
|
+
module UsageStatementBehavior
|
|
2377
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
2378
|
+
|
|
2379
|
+
CONSOLIDATE = :CONSOLIDATE
|
|
2380
|
+
SEPARATE = :SEPARATE
|
|
2381
|
+
|
|
2382
|
+
# @!method self.values
|
|
2383
|
+
# @return [Array<Symbol>]
|
|
2384
|
+
end
|
|
2385
|
+
end
|
|
2386
|
+
|
|
2387
|
+
# @!method self.variants
|
|
2388
|
+
# @return [Array(MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ParentHierarchyConfiguration, MetronomeSDK::Models::ContractV2::HierarchyConfiguration::ChildHierarchyConfigurationV2)]
|
|
2389
|
+
end
|
|
2390
|
+
|
|
2122
2391
|
# Defaults to LOWEST_MULTIPLIER, which applies the greatest discount to list
|
|
2123
2392
|
# prices automatically. EXPLICIT prioritization requires specifying priorities for
|
|
2124
2393
|
# each multiplier; the one with the lowest priority value will be prioritized
|
|
@@ -50,7 +50,7 @@ module MetronomeSDK
|
|
|
50
50
|
optional :credits, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Credit] }
|
|
51
51
|
|
|
52
52
|
# @!attribute discounts
|
|
53
|
-
# This field's availability is dependent on your client's
|
|
53
|
+
# This field's availability is dependent on your client's
|
|
54
54
|
#
|
|
55
55
|
# @return [Array<MetronomeSDK::Models::Discount>, nil]
|
|
56
56
|
optional :discounts, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Discount] }
|
|
@@ -174,7 +174,7 @@ module MetronomeSDK
|
|
|
174
174
|
#
|
|
175
175
|
# @param credits [Array<MetronomeSDK::Models::Credit>]
|
|
176
176
|
#
|
|
177
|
-
# @param discounts [Array<MetronomeSDK::Models::Discount>] This field's availability is dependent on your client's
|
|
177
|
+
# @param discounts [Array<MetronomeSDK::Models::Discount>] This field's availability is dependent on your client's
|
|
178
178
|
#
|
|
179
179
|
# @param ending_before [Time]
|
|
180
180
|
#
|
|
@@ -19,8 +19,16 @@ module MetronomeSDK
|
|
|
19
19
|
required :children,
|
|
20
20
|
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::Child] }
|
|
21
21
|
|
|
22
|
-
# @!
|
|
22
|
+
# @!attribute parent_behavior
|
|
23
|
+
#
|
|
24
|
+
# @return [MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior, nil]
|
|
25
|
+
optional :parent_behavior,
|
|
26
|
+
-> { MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior }
|
|
27
|
+
|
|
28
|
+
# @!method initialize(children:, parent_behavior: nil)
|
|
23
29
|
# @param children [Array<MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration::Child>] List of contracts that belong to this parent.
|
|
30
|
+
#
|
|
31
|
+
# @param parent_behavior [MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior]
|
|
24
32
|
|
|
25
33
|
class Child < MetronomeSDK::Internal::Type::BaseModel
|
|
26
34
|
# @!attribute contract_id
|
|
@@ -37,6 +45,48 @@ module MetronomeSDK
|
|
|
37
45
|
# @param contract_id [String]
|
|
38
46
|
# @param customer_id [String]
|
|
39
47
|
end
|
|
48
|
+
|
|
49
|
+
# @see MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration#parent_behavior
|
|
50
|
+
class ParentBehavior < MetronomeSDK::Internal::Type::BaseModel
|
|
51
|
+
# @!attribute invoice_consolidation_type
|
|
52
|
+
# Account hierarchy M3 - Indicates the desired behavior of consolidated invoices
|
|
53
|
+
# generated by the parent in a customer hierarchy
|
|
54
|
+
#
|
|
55
|
+
# **CONCATENATE**: Statements on the invoices of child customers will be appended
|
|
56
|
+
# to the consolidated invoice
|
|
57
|
+
#
|
|
58
|
+
# **NONE**: Do not generate consolidated invoices
|
|
59
|
+
#
|
|
60
|
+
# @return [Symbol, MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::InvoiceConsolidationType, nil]
|
|
61
|
+
optional :invoice_consolidation_type,
|
|
62
|
+
enum: -> { MetronomeSDK::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::InvoiceConsolidationType }
|
|
63
|
+
|
|
64
|
+
# @!method initialize(invoice_consolidation_type: nil)
|
|
65
|
+
# Some parameter documentations has been truncated, see
|
|
66
|
+
# {MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior}
|
|
67
|
+
# for more details.
|
|
68
|
+
#
|
|
69
|
+
# @param invoice_consolidation_type [Symbol, MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior::InvoiceConsolidationType] Account hierarchy M3 - Indicates the desired behavior of consolidated invoices g
|
|
70
|
+
|
|
71
|
+
# Account hierarchy M3 - Indicates the desired behavior of consolidated invoices
|
|
72
|
+
# generated by the parent in a customer hierarchy
|
|
73
|
+
#
|
|
74
|
+
# **CONCATENATE**: Statements on the invoices of child customers will be appended
|
|
75
|
+
# to the consolidated invoice
|
|
76
|
+
#
|
|
77
|
+
# **NONE**: Do not generate consolidated invoices
|
|
78
|
+
#
|
|
79
|
+
# @see MetronomeSDK::Models::HierarchyConfiguration::ParentHierarchyConfiguration::ParentBehavior#invoice_consolidation_type
|
|
80
|
+
module InvoiceConsolidationType
|
|
81
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
82
|
+
|
|
83
|
+
CONCATENATE = :CONCATENATE
|
|
84
|
+
NONE = :NONE
|
|
85
|
+
|
|
86
|
+
# @!method self.values
|
|
87
|
+
# @return [Array<Symbol>]
|
|
88
|
+
end
|
|
89
|
+
end
|
|
40
90
|
end
|
|
41
91
|
|
|
42
92
|
class ChildHierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
|
@@ -46,8 +96,41 @@ module MetronomeSDK
|
|
|
46
96
|
# @return [MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::Parent]
|
|
47
97
|
required :parent, -> { MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Parent }
|
|
48
98
|
|
|
49
|
-
# @!
|
|
99
|
+
# @!attribute payer
|
|
100
|
+
# Account hierarchy M3 - Indicates which customer should pay for the child's
|
|
101
|
+
# invoice charges
|
|
102
|
+
#
|
|
103
|
+
# **SELF**: The child pays for its own invoice charges
|
|
104
|
+
#
|
|
105
|
+
# **PARENT**: The parent pays for the child's invoice charges
|
|
106
|
+
#
|
|
107
|
+
# @return [Symbol, MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::Payer, nil]
|
|
108
|
+
optional :payer, enum: -> { MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::Payer }
|
|
109
|
+
|
|
110
|
+
# @!attribute usage_statement_behavior
|
|
111
|
+
# Account hierarchy M3 - Indicates the behavior of the child's invoice statements
|
|
112
|
+
# on the parent's invoices.
|
|
113
|
+
#
|
|
114
|
+
# **CONSOLIDATE**: Child's invoice statements will be added to parent's
|
|
115
|
+
# consolidated invoices
|
|
116
|
+
#
|
|
117
|
+
# **SEPARATE**: Child's invoice statements will appear not appear on parent's
|
|
118
|
+
# consolidated invoices
|
|
119
|
+
#
|
|
120
|
+
# @return [Symbol, MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::UsageStatementBehavior, nil]
|
|
121
|
+
optional :usage_statement_behavior,
|
|
122
|
+
enum: -> { MetronomeSDK::HierarchyConfiguration::ChildHierarchyConfiguration::UsageStatementBehavior }
|
|
123
|
+
|
|
124
|
+
# @!method initialize(parent:, payer: nil, usage_statement_behavior: nil)
|
|
125
|
+
# Some parameter documentations has been truncated, see
|
|
126
|
+
# {MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration} for
|
|
127
|
+
# more details.
|
|
128
|
+
#
|
|
50
129
|
# @param parent [MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::Parent] The single parent contract/customer for this child.
|
|
130
|
+
#
|
|
131
|
+
# @param payer [Symbol, MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::Payer] Account hierarchy M3 - Indicates which customer should pay for the child's invoi
|
|
132
|
+
#
|
|
133
|
+
# @param usage_statement_behavior [Symbol, MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration::UsageStatementBehavior] Account hierarchy M3 - Indicates the behavior of the child's invoice statements
|
|
51
134
|
|
|
52
135
|
# @see MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration#parent
|
|
53
136
|
class Parent < MetronomeSDK::Internal::Type::BaseModel
|
|
@@ -67,6 +150,44 @@ module MetronomeSDK
|
|
|
67
150
|
# @param contract_id [String]
|
|
68
151
|
# @param customer_id [String]
|
|
69
152
|
end
|
|
153
|
+
|
|
154
|
+
# Account hierarchy M3 - Indicates which customer should pay for the child's
|
|
155
|
+
# invoice charges
|
|
156
|
+
#
|
|
157
|
+
# **SELF**: The child pays for its own invoice charges
|
|
158
|
+
#
|
|
159
|
+
# **PARENT**: The parent pays for the child's invoice charges
|
|
160
|
+
#
|
|
161
|
+
# @see MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration#payer
|
|
162
|
+
module Payer
|
|
163
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
164
|
+
|
|
165
|
+
SELF = :SELF
|
|
166
|
+
PARENT = :PARENT
|
|
167
|
+
|
|
168
|
+
# @!method self.values
|
|
169
|
+
# @return [Array<Symbol>]
|
|
170
|
+
end
|
|
171
|
+
|
|
172
|
+
# Account hierarchy M3 - Indicates the behavior of the child's invoice statements
|
|
173
|
+
# on the parent's invoices.
|
|
174
|
+
#
|
|
175
|
+
# **CONSOLIDATE**: Child's invoice statements will be added to parent's
|
|
176
|
+
# consolidated invoices
|
|
177
|
+
#
|
|
178
|
+
# **SEPARATE**: Child's invoice statements will appear not appear on parent's
|
|
179
|
+
# consolidated invoices
|
|
180
|
+
#
|
|
181
|
+
# @see MetronomeSDK::Models::HierarchyConfiguration::ChildHierarchyConfiguration#usage_statement_behavior
|
|
182
|
+
module UsageStatementBehavior
|
|
183
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
184
|
+
|
|
185
|
+
CONSOLIDATE = :CONSOLIDATE
|
|
186
|
+
SEPARATE = :SEPARATE
|
|
187
|
+
|
|
188
|
+
# @!method self.values
|
|
189
|
+
# @return [Array<Symbol>]
|
|
190
|
+
end
|
|
70
191
|
end
|
|
71
192
|
|
|
72
193
|
# @!method self.variants
|
|
@@ -3,6 +3,12 @@
|
|
|
3
3
|
module MetronomeSDK
|
|
4
4
|
module Models
|
|
5
5
|
class Subscription < MetronomeSDK::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute billing_periods
|
|
7
|
+
# Previous, current, and next billing periods for the subscription.
|
|
8
|
+
#
|
|
9
|
+
# @return [MetronomeSDK::Models::Subscription::BillingPeriods]
|
|
10
|
+
required :billing_periods, -> { MetronomeSDK::Subscription::BillingPeriods }
|
|
11
|
+
|
|
6
12
|
# @!attribute collection_schedule
|
|
7
13
|
#
|
|
8
14
|
# @return [Symbol, MetronomeSDK::Models::Subscription::CollectionSchedule]
|
|
@@ -18,6 +24,11 @@ module MetronomeSDK
|
|
|
18
24
|
# QUANTITY_ONLY. **QUANTITY_ONLY**: The subscription quantity is specified
|
|
19
25
|
# directly on the subscription. `initial_quantity` must be provided with this
|
|
20
26
|
# option. Compatible with recurring commits/credits that use POOLED allocation.
|
|
27
|
+
# **SEAT_BASED**: (BETA) Use when you want to pass specific seat identifiers (e.g.
|
|
28
|
+
# add user_123) to increment and decrement a subscription quantity, rather than
|
|
29
|
+
# directly providing the quantity. You must use a **SEAT_BASED** subscription to
|
|
30
|
+
# use a linked recurring credit with an allocation per seat. `seat_config` must be
|
|
31
|
+
# provided with this option.
|
|
21
32
|
#
|
|
22
33
|
# @return [Symbol, MetronomeSDK::Models::Subscription::QuantityManagementMode]
|
|
23
34
|
required :quantity_management_mode, enum: -> { MetronomeSDK::Subscription::QuantityManagementMode }
|
|
@@ -71,10 +82,12 @@ module MetronomeSDK
|
|
|
71
82
|
# @return [String, nil]
|
|
72
83
|
optional :name, String
|
|
73
84
|
|
|
74
|
-
# @!method initialize(collection_schedule:, proration:, quantity_management_mode:, quantity_schedule:, starting_at:, subscription_rate:, id: nil, custom_fields: nil, description: nil, ending_before: nil, fiat_credit_type_id: nil, name: nil)
|
|
85
|
+
# @!method initialize(billing_periods:, collection_schedule:, proration:, quantity_management_mode:, quantity_schedule:, starting_at:, subscription_rate:, id: nil, custom_fields: nil, description: nil, ending_before: nil, fiat_credit_type_id: nil, name: nil)
|
|
75
86
|
# Some parameter documentations has been truncated, see
|
|
76
87
|
# {MetronomeSDK::Models::Subscription} for more details.
|
|
77
88
|
#
|
|
89
|
+
# @param billing_periods [MetronomeSDK::Models::Subscription::BillingPeriods] Previous, current, and next billing periods for the subscription.
|
|
90
|
+
#
|
|
78
91
|
# @param collection_schedule [Symbol, MetronomeSDK::Models::Subscription::CollectionSchedule]
|
|
79
92
|
#
|
|
80
93
|
# @param proration [MetronomeSDK::Models::Subscription::Proration]
|
|
@@ -99,6 +112,82 @@ module MetronomeSDK
|
|
|
99
112
|
#
|
|
100
113
|
# @param name [String]
|
|
101
114
|
|
|
115
|
+
# @see MetronomeSDK::Models::Subscription#billing_periods
|
|
116
|
+
class BillingPeriods < MetronomeSDK::Internal::Type::BaseModel
|
|
117
|
+
# @!attribute current
|
|
118
|
+
#
|
|
119
|
+
# @return [MetronomeSDK::Models::Subscription::BillingPeriods::Current, nil]
|
|
120
|
+
optional :current, -> { MetronomeSDK::Subscription::BillingPeriods::Current }
|
|
121
|
+
|
|
122
|
+
# @!attribute next_
|
|
123
|
+
#
|
|
124
|
+
# @return [MetronomeSDK::Models::Subscription::BillingPeriods::Next, nil]
|
|
125
|
+
optional :next_, -> { MetronomeSDK::Subscription::BillingPeriods::Next }, api_name: :next
|
|
126
|
+
|
|
127
|
+
# @!attribute previous
|
|
128
|
+
#
|
|
129
|
+
# @return [MetronomeSDK::Models::Subscription::BillingPeriods::Previous, nil]
|
|
130
|
+
optional :previous, -> { MetronomeSDK::Subscription::BillingPeriods::Previous }
|
|
131
|
+
|
|
132
|
+
# @!method initialize(current: nil, next_: nil, previous: nil)
|
|
133
|
+
# Previous, current, and next billing periods for the subscription.
|
|
134
|
+
#
|
|
135
|
+
# @param current [MetronomeSDK::Models::Subscription::BillingPeriods::Current]
|
|
136
|
+
# @param next_ [MetronomeSDK::Models::Subscription::BillingPeriods::Next]
|
|
137
|
+
# @param previous [MetronomeSDK::Models::Subscription::BillingPeriods::Previous]
|
|
138
|
+
|
|
139
|
+
# @see MetronomeSDK::Models::Subscription::BillingPeriods#current
|
|
140
|
+
class Current < MetronomeSDK::Internal::Type::BaseModel
|
|
141
|
+
# @!attribute ending_before
|
|
142
|
+
#
|
|
143
|
+
# @return [Time]
|
|
144
|
+
required :ending_before, Time
|
|
145
|
+
|
|
146
|
+
# @!attribute starting_at
|
|
147
|
+
#
|
|
148
|
+
# @return [Time]
|
|
149
|
+
required :starting_at, Time
|
|
150
|
+
|
|
151
|
+
# @!method initialize(ending_before:, starting_at:)
|
|
152
|
+
# @param ending_before [Time]
|
|
153
|
+
# @param starting_at [Time]
|
|
154
|
+
end
|
|
155
|
+
|
|
156
|
+
# @see MetronomeSDK::Models::Subscription::BillingPeriods#next_
|
|
157
|
+
class Next < MetronomeSDK::Internal::Type::BaseModel
|
|
158
|
+
# @!attribute ending_before
|
|
159
|
+
#
|
|
160
|
+
# @return [Time]
|
|
161
|
+
required :ending_before, Time
|
|
162
|
+
|
|
163
|
+
# @!attribute starting_at
|
|
164
|
+
#
|
|
165
|
+
# @return [Time]
|
|
166
|
+
required :starting_at, Time
|
|
167
|
+
|
|
168
|
+
# @!method initialize(ending_before:, starting_at:)
|
|
169
|
+
# @param ending_before [Time]
|
|
170
|
+
# @param starting_at [Time]
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
# @see MetronomeSDK::Models::Subscription::BillingPeriods#previous
|
|
174
|
+
class Previous < MetronomeSDK::Internal::Type::BaseModel
|
|
175
|
+
# @!attribute ending_before
|
|
176
|
+
#
|
|
177
|
+
# @return [Time]
|
|
178
|
+
required :ending_before, Time
|
|
179
|
+
|
|
180
|
+
# @!attribute starting_at
|
|
181
|
+
#
|
|
182
|
+
# @return [Time]
|
|
183
|
+
required :starting_at, Time
|
|
184
|
+
|
|
185
|
+
# @!method initialize(ending_before:, starting_at:)
|
|
186
|
+
# @param ending_before [Time]
|
|
187
|
+
# @param starting_at [Time]
|
|
188
|
+
end
|
|
189
|
+
end
|
|
190
|
+
|
|
102
191
|
# @see MetronomeSDK::Models::Subscription#collection_schedule
|
|
103
192
|
module CollectionSchedule
|
|
104
193
|
extend MetronomeSDK::Internal::Type::Enum
|
|
@@ -142,6 +231,11 @@ module MetronomeSDK
|
|
|
142
231
|
# QUANTITY_ONLY. **QUANTITY_ONLY**: The subscription quantity is specified
|
|
143
232
|
# directly on the subscription. `initial_quantity` must be provided with this
|
|
144
233
|
# option. Compatible with recurring commits/credits that use POOLED allocation.
|
|
234
|
+
# **SEAT_BASED**: (BETA) Use when you want to pass specific seat identifiers (e.g.
|
|
235
|
+
# add user_123) to increment and decrement a subscription quantity, rather than
|
|
236
|
+
# directly providing the quantity. You must use a **SEAT_BASED** subscription to
|
|
237
|
+
# use a linked recurring credit with an allocation per seat. `seat_config` must be
|
|
238
|
+
# provided with this option.
|
|
145
239
|
#
|
|
146
240
|
# @see MetronomeSDK::Models::Subscription#quantity_management_mode
|
|
147
241
|
module QuantityManagementMode
|