metronome-sdk 0.2.0 → 1.0.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 +61 -0
- data/README.md +9 -9
- data/lib/metronome_sdk/internal/body_cursor_page.rb +86 -0
- data/lib/metronome_sdk/internal/cursor_page_without_limit.rb +86 -0
- data/lib/metronome_sdk/internal/transport/base_client.rb +1 -4
- data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +1 -9
- data/lib/metronome_sdk/internal/type/array_of.rb +1 -0
- data/lib/metronome_sdk/internal/type/base_model.rb +9 -14
- data/lib/metronome_sdk/internal/type/converter.rb +27 -0
- data/lib/metronome_sdk/internal/type/hash_of.rb +1 -0
- data/lib/metronome_sdk/internal/type/union.rb +20 -7
- data/lib/metronome_sdk/internal/util.rb +1 -1
- data/lib/metronome_sdk/models/base_threshold_commit.rb +36 -0
- data/lib/metronome_sdk/models/commit.rb +26 -170
- data/lib/metronome_sdk/models/commit_hierarchy_configuration.rb +98 -0
- data/lib/metronome_sdk/models/commit_rate.rb +48 -0
- data/lib/metronome_sdk/models/commit_specifier.rb +42 -0
- data/lib/metronome_sdk/models/commit_specifier_input.rb +42 -0
- data/lib/metronome_sdk/models/contract.rb +404 -0
- data/lib/metronome_sdk/models/contract_v2.rb +2919 -0
- data/lib/metronome_sdk/models/contract_without_amendments.rb +36 -1126
- data/lib/metronome_sdk/models/credit.rb +9 -156
- data/lib/metronome_sdk/models/discount.rb +2 -1
- data/lib/metronome_sdk/models/hierarchy_configuration.rb +76 -0
- data/lib/metronome_sdk/models/override.rb +6 -101
- data/lib/metronome_sdk/models/override_tier.rb +21 -0
- data/lib/metronome_sdk/models/overwrite_rate.rb +82 -0
- data/lib/metronome_sdk/models/payment_gate_config.rb +149 -0
- data/lib/metronome_sdk/models/payment_gate_config_v2.rb +149 -0
- data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration.rb +100 -0
- data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +102 -0
- data/lib/metronome_sdk/models/pro_service.rb +2 -1
- data/lib/metronome_sdk/models/recurring_commit_subscription_config.rb +51 -0
- data/lib/metronome_sdk/models/schedule_point_in_time.rb +14 -1
- data/lib/metronome_sdk/models/scheduled_charge.rb +2 -1
- data/lib/metronome_sdk/models/spend_threshold_configuration.rb +44 -0
- data/lib/metronome_sdk/models/spend_threshold_configuration_v2.rb +44 -0
- data/lib/metronome_sdk/models/subscription.rb +227 -0
- data/lib/metronome_sdk/models/update_base_threshold_commit.rb +36 -0
- data/lib/metronome_sdk/models/v1/alert_create_params.rb +4 -6
- data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +1 -2
- data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +3 -3
- data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +4 -7
- data/lib/metronome_sdk/models/v1/contract_amend_params.rb +110 -415
- data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_params.rb +7 -16
- data/lib/metronome_sdk/models/v1/contract_create_params.rb +287 -1480
- data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +6 -23
- data/lib/metronome_sdk/models/v1/contract_list_response.rb +3 -1153
- data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rb +2 -6
- data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +5 -50
- data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +3 -1154
- data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb +1 -3
- data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +9 -1
- data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +8 -1
- data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +8 -1
- data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +1 -4
- data/lib/metronome_sdk/models/v1/contracts/rate_card_create_params.rb +4 -7
- data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +10 -1
- data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rb +2 -6
- data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +5 -50
- data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +10 -1
- data/lib/metronome_sdk/models/v1/contracts/rate_card_update_params.rb +1 -3
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rb +1 -3
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +6 -61
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +3 -49
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +4 -51
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rb +2 -6
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +5 -49
- data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +103 -123
- data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +3 -5
- data/lib/metronome_sdk/models/v1/custom_field_list_keys_params.rb +1 -3
- data/lib/metronome_sdk/models/v1/custom_field_list_keys_response.rb +41 -58
- data/lib/metronome_sdk/models/v1/custom_field_set_values_params.rb +5 -1
- data/lib/metronome_sdk/models/v1/customer.rb +2 -1
- data/lib/metronome_sdk/models/v1/customer_create_params.rb +37 -11
- data/lib/metronome_sdk/models/v1/customer_detail.rb +2 -1
- data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +3 -3
- data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +1 -3
- data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rb +28 -0
- data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb +128 -0
- data/lib/metronome_sdk/models/v1/customer_set_billing_configurations_params.rb +143 -0
- data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +1 -3
- data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +30 -1
- data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +2 -0
- data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +2 -0
- data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +20 -61
- data/lib/metronome_sdk/models/v1/customers/credit_create_params.rb +6 -48
- data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +8 -16
- data/lib/metronome_sdk/models/v1/customers/invoice.rb +68 -43
- data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rb +1 -4
- data/lib/metronome_sdk/models/v1/customers/plan_add_params.rb +2 -6
- data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +2 -1
- data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +4 -11
- data/lib/metronome_sdk/models/v1/plan_detail.rb +9 -5
- data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +2 -1
- data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +2 -1
- data/lib/metronome_sdk/models/v1/plan_list_response.rb +5 -1
- data/lib/metronome_sdk/models/v1/usage_ingest_params.rb +1 -4
- data/lib/metronome_sdk/models/v1/usage_list_params.rb +1 -3
- data/lib/metronome_sdk/models/v1/usage_list_response.rb +45 -62
- data/lib/metronome_sdk/models/v1/usage_search_response.rb +4 -7
- data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +38 -58
- data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +35 -49
- data/lib/metronome_sdk/models/v2/contract_edit_params.rb +469 -2302
- data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +358 -2414
- data/lib/metronome_sdk/models/v2/contract_list_response.rb +3 -4520
- data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +3 -4528
- data/lib/metronome_sdk/models.rb +38 -0
- data/lib/metronome_sdk/resources/v1/alerts.rb +72 -2
- data/lib/metronome_sdk/resources/v1/audit_logs.rb +39 -4
- data/lib/metronome_sdk/resources/v1/billable_metrics.rb +54 -4
- data/lib/metronome_sdk/resources/v1/contracts/products.rb +27 -6
- data/lib/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rb +7 -2
- data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +10 -2
- data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +109 -10
- data/lib/metronome_sdk/resources/v1/contracts.rb +254 -18
- data/lib/metronome_sdk/resources/v1/credit_grants.rb +2 -1
- data/lib/metronome_sdk/resources/v1/custom_fields.rb +51 -14
- data/lib/metronome_sdk/resources/v1/customers/alerts.rb +103 -8
- data/lib/metronome_sdk/resources/v1/customers/commits.rb +119 -9
- data/lib/metronome_sdk/resources/v1/customers/credits.rb +104 -8
- data/lib/metronome_sdk/resources/v1/customers/invoices.rb +124 -8
- data/lib/metronome_sdk/resources/v1/customers.rb +169 -12
- data/lib/metronome_sdk/resources/v1/dashboards.rb +29 -3
- data/lib/metronome_sdk/resources/v1/invoices.rb +23 -2
- data/lib/metronome_sdk/resources/v1/pricing_units.rb +6 -1
- data/lib/metronome_sdk/resources/v1/services.rb +6 -4
- data/lib/metronome_sdk/resources/v1/usage.rb +185 -12
- data/lib/metronome_sdk/resources/v2/contracts.rb +118 -18
- data/lib/metronome_sdk/version.rb +1 -1
- data/lib/metronome_sdk.rb +24 -3
- data/rbi/metronome_sdk/errors.rbi +2 -2
- data/rbi/metronome_sdk/internal/body_cursor_page.rbi +22 -0
- data/rbi/metronome_sdk/internal/cursor_page_without_limit.rbi +22 -0
- data/rbi/metronome_sdk/internal/type/converter.rbi +58 -0
- data/rbi/metronome_sdk/internal/type/union.rbi +9 -2
- data/rbi/metronome_sdk/models/base_threshold_commit.rbi +58 -0
- data/rbi/metronome_sdk/models/commit.rbi +26 -348
- data/rbi/metronome_sdk/models/commit_hierarchy_configuration.rbi +280 -0
- data/rbi/metronome_sdk/models/commit_rate.rbi +85 -0
- data/rbi/metronome_sdk/models/commit_specifier.rbi +71 -0
- data/rbi/metronome_sdk/models/commit_specifier_input.rbi +74 -0
- data/rbi/metronome_sdk/models/contract.rbi +768 -0
- data/rbi/metronome_sdk/models/contract_v2.rbi +5822 -0
- data/rbi/metronome_sdk/models/contract_without_amendments.rbi +184 -2507
- data/rbi/metronome_sdk/models/credit.rbi +10 -348
- data/rbi/metronome_sdk/models/discount.rbi +2 -0
- data/rbi/metronome_sdk/models/hierarchy_configuration.rbi +180 -0
- data/rbi/metronome_sdk/models/override.rbi +8 -193
- data/rbi/metronome_sdk/models/override_tier.rbi +29 -0
- data/rbi/metronome_sdk/models/overwrite_rate.rbi +137 -0
- data/rbi/metronome_sdk/models/payment_gate_config.rbi +312 -0
- data/rbi/metronome_sdk/models/payment_gate_config_v2.rbi +321 -0
- data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration.rbi +183 -0
- data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +188 -0
- data/rbi/metronome_sdk/models/pro_service.rbi +2 -0
- data/rbi/metronome_sdk/models/recurring_commit_subscription_config.rbi +125 -0
- data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +17 -1
- data/rbi/metronome_sdk/models/scheduled_charge.rbi +2 -0
- data/rbi/metronome_sdk/models/spend_threshold_configuration.rbi +76 -0
- data/rbi/metronome_sdk/models/spend_threshold_configuration_v2.rbi +78 -0
- data/rbi/metronome_sdk/models/subscription.rbi +460 -0
- data/rbi/metronome_sdk/models/update_base_threshold_commit.rbi +61 -0
- data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +6 -3
- data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +120 -771
- data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_params.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1613 -4069
- data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +8 -59
- data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +5 -2420
- data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +6 -129
- data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +4 -2419
- data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +11 -0
- data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_params.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +6 -129
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +4 -129
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +4 -129
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +4 -129
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +6 -129
- data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +147 -198
- data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/custom_field_list_keys_response.rbi +117 -165
- data/rbi/metronome_sdk/models/v1/custom_field_set_values_params.rbi +8 -1
- data/rbi/metronome_sdk/models/v1/customer.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/customer_create_params.rbi +88 -3
- data/rbi/metronome_sdk/models/v1/customer_detail.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rbi +51 -0
- data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbi +265 -0
- data/rbi/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbi +348 -0
- data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +60 -0
- data/rbi/metronome_sdk/models/v1/customers/billing_config_create_params.rbi +10 -0
- data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +10 -0
- data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +19 -90
- data/rbi/metronome_sdk/models/v1/customers/credit_create_params.rbi +6 -90
- data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +6 -3
- data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +76 -0
- data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/plan_detail.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/plan_list_response.rbi +8 -1
- data/rbi/metronome_sdk/models/v1/usage_list_response.rbi +45 -86
- data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +2 -0
- data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +66 -76
- data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +66 -76
- data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +3563 -7329
- data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1181 -6070
- data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +5 -9867
- data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +6 -9866
- data/rbi/metronome_sdk/models.rbi +44 -0
- data/rbi/metronome_sdk/resources/v1/alerts.rbi +72 -2
- data/rbi/metronome_sdk/resources/v1/audit_logs.rbi +39 -4
- data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +54 -4
- data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +27 -5
- data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rbi +7 -2
- data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +10 -3
- data/rbi/metronome_sdk/resources/v1/contracts/rate_cards.rbi +109 -9
- data/rbi/metronome_sdk/resources/v1/contracts.rbi +257 -16
- data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +5 -1
- data/rbi/metronome_sdk/resources/v1/custom_fields.rbi +57 -14
- data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +108 -5
- data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +119 -10
- data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +104 -9
- data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +123 -7
- data/rbi/metronome_sdk/resources/v1/customers.rbi +156 -11
- data/rbi/metronome_sdk/resources/v1/dashboards.rbi +29 -3
- data/rbi/metronome_sdk/resources/v1/invoices.rbi +23 -2
- data/rbi/metronome_sdk/resources/v1/pricing_units.rbi +6 -1
- data/rbi/metronome_sdk/resources/v1/services.rbi +6 -4
- data/rbi/metronome_sdk/resources/v1/usage.rbi +188 -12
- data/rbi/metronome_sdk/resources/v2/contracts.rbi +128 -23
- data/sig/metronome_sdk/internal/body_cursor_page.rbs +13 -0
- data/sig/metronome_sdk/internal/cursor_page_without_limit.rbs +13 -0
- data/sig/metronome_sdk/internal/type/converter.rbs +17 -0
- data/sig/metronome_sdk/internal/type/union.rbs +2 -2
- data/sig/metronome_sdk/models/base_threshold_commit.rbs +26 -0
- data/sig/metronome_sdk/models/commit.rbs +17 -170
- data/sig/metronome_sdk/models/commit_hierarchy_configuration.rbs +117 -0
- data/sig/metronome_sdk/models/commit_rate.rbs +48 -0
- data/sig/metronome_sdk/models/commit_specifier.rbs +47 -0
- data/sig/metronome_sdk/models/commit_specifier_input.rbs +47 -0
- data/sig/metronome_sdk/models/contract.rbs +398 -0
- data/sig/metronome_sdk/models/contract_v2.rbs +2881 -0
- data/sig/metronome_sdk/models/contract_without_amendments.rbs +54 -976
- data/sig/metronome_sdk/models/credit.rbs +12 -170
- data/sig/metronome_sdk/models/hierarchy_configuration.rbs +71 -0
- data/sig/metronome_sdk/models/override.rbs +12 -101
- data/sig/metronome_sdk/models/override_tier.rbs +17 -0
- data/sig/metronome_sdk/models/overwrite_rate.rbs +78 -0
- data/sig/metronome_sdk/models/payment_gate_config.rbs +123 -0
- data/sig/metronome_sdk/models/payment_gate_config_v2.rbs +123 -0
- data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration.rbs +82 -0
- data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbs +82 -0
- data/sig/metronome_sdk/models/recurring_commit_subscription_config.rbs +51 -0
- data/sig/metronome_sdk/models/schedule_point_in_time.rbs +7 -0
- data/sig/metronome_sdk/models/spend_threshold_configuration.rbs +35 -0
- data/sig/metronome_sdk/models/spend_threshold_configuration_v2.rbs +35 -0
- data/sig/metronome_sdk/models/subscription.rbs +215 -0
- data/sig/metronome_sdk/models/update_base_threshold_commit.rbs +28 -0
- data/sig/metronome_sdk/models/v1/alert_create_params.rbs +4 -2
- data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +62 -343
- data/sig/metronome_sdk/models/v1/contract_create_params.rbs +218 -1234
- data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +4 -25
- data/sig/metronome_sdk/models/v1/contract_list_response.rbs +4 -1041
- data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +6 -54
- data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +4 -1041
- data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +6 -54
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +6 -54
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +6 -54
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +6 -54
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +6 -54
- data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +72 -94
- data/sig/metronome_sdk/models/v1/custom_field_list_keys_response.rbs +53 -75
- data/sig/metronome_sdk/models/v1/customer_create_params.rbs +31 -4
- data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rbs +32 -0
- data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbs +113 -0
- data/sig/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbs +133 -0
- data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +21 -0
- data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +7 -1
- data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +6 -1
- data/sig/metronome_sdk/models/v1/customers/commit_create_params.rbs +13 -50
- data/sig/metronome_sdk/models/v1/customers/credit_create_params.rbs +6 -50
- data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +4 -2
- data/sig/metronome_sdk/models/v1/customers/invoice.rbs +5 -0
- data/sig/metronome_sdk/models/v1/usage_list_response.rbs +33 -55
- data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +24 -43
- data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +24 -43
- data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +400 -1911
- data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +256 -2249
- data/sig/metronome_sdk/models/v2/contract_list_response.rbs +4 -4426
- data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +4 -4426
- data/sig/metronome_sdk/models.rbs +38 -0
- data/sig/metronome_sdk/resources/v1/contracts/products.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -1
- data/sig/metronome_sdk/resources/v1/contracts.rbs +3 -3
- data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -1
- data/sig/metronome_sdk/resources/v1/custom_fields.rbs +1 -1
- data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +2 -1
- data/sig/metronome_sdk/resources/v1/customers/commits.rbs +2 -2
- data/sig/metronome_sdk/resources/v1/customers/credits.rbs +2 -2
- data/sig/metronome_sdk/resources/v1/customers.rbs +11 -0
- data/sig/metronome_sdk/resources/v1/usage.rbs +1 -1
- data/sig/metronome_sdk/resources/v2/contracts.rbs +9 -4
- metadata +74 -11
- data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +0 -29
- data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +0 -26
- data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +0 -26
- data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +0 -46
- data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +0 -45
- data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +0 -45
- data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +0 -29
- data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +0 -26
- data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +0 -26
@@ -40,6 +40,7 @@ module MetronomeSDK
|
|
40
40
|
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Credit] }
|
41
41
|
|
42
42
|
# @!attribute custom_fields
|
43
|
+
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
43
44
|
#
|
44
45
|
# @return [Hash{Symbol=>String}, nil]
|
45
46
|
optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
|
@@ -49,9 +50,7 @@ module MetronomeSDK
|
|
49
50
|
#
|
50
51
|
# @return [Array<MetronomeSDK::Models::V1::ContractCreateParams::Discount>, nil]
|
51
52
|
optional :discounts,
|
52
|
-
-> {
|
53
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Discount]
|
54
|
-
}
|
53
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Discount] }
|
55
54
|
|
56
55
|
# @!attribute ending_before
|
57
56
|
# exclusive contract end time
|
@@ -62,10 +61,7 @@ module MetronomeSDK
|
|
62
61
|
# @!attribute hierarchy_configuration
|
63
62
|
#
|
64
63
|
# @return [MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration, nil]
|
65
|
-
optional :hierarchy_configuration,
|
66
|
-
-> {
|
67
|
-
MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration
|
68
|
-
}
|
64
|
+
optional :hierarchy_configuration, -> { MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration }
|
69
65
|
|
70
66
|
# @!attribute multiplier_override_prioritization
|
71
67
|
# Defaults to LOWEST_MULTIPLIER, which applies the greatest discount to list
|
@@ -97,15 +93,13 @@ module MetronomeSDK
|
|
97
93
|
#
|
98
94
|
# @return [Array<MetronomeSDK::Models::V1::ContractCreateParams::Override>, nil]
|
99
95
|
optional :overrides,
|
100
|
-
-> {
|
101
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Override]
|
102
|
-
}
|
96
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Override] }
|
103
97
|
|
104
98
|
# @!attribute prepaid_balance_threshold_configuration
|
105
99
|
#
|
106
|
-
# @return [MetronomeSDK::Models::
|
100
|
+
# @return [MetronomeSDK::Models::PrepaidBalanceThresholdConfiguration, nil]
|
107
101
|
optional :prepaid_balance_threshold_configuration,
|
108
|
-
-> { MetronomeSDK::
|
102
|
+
-> { MetronomeSDK::PrepaidBalanceThresholdConfiguration }
|
109
103
|
|
110
104
|
# @!attribute priority
|
111
105
|
# Priority of the contract.
|
@@ -118,9 +112,7 @@ module MetronomeSDK
|
|
118
112
|
#
|
119
113
|
# @return [Array<MetronomeSDK::Models::V1::ContractCreateParams::ProfessionalService>, nil]
|
120
114
|
optional :professional_services,
|
121
|
-
-> {
|
122
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::ProfessionalService]
|
123
|
-
}
|
115
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::ProfessionalService] }
|
124
116
|
|
125
117
|
# @!attribute rate_card_alias
|
126
118
|
# Selects the rate card linked to the specified alias as of the contract's start
|
@@ -138,26 +130,20 @@ module MetronomeSDK
|
|
138
130
|
#
|
139
131
|
# @return [Array<MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit>, nil]
|
140
132
|
optional :recurring_commits,
|
141
|
-
-> {
|
142
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::RecurringCommit]
|
143
|
-
}
|
133
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::RecurringCommit] }
|
144
134
|
|
145
135
|
# @!attribute recurring_credits
|
146
136
|
#
|
147
137
|
# @return [Array<MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit>, nil]
|
148
138
|
optional :recurring_credits,
|
149
|
-
-> {
|
150
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::RecurringCredit]
|
151
|
-
}
|
139
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::RecurringCredit] }
|
152
140
|
|
153
141
|
# @!attribute reseller_royalties
|
154
142
|
# This field's availability is dependent on your client's configuration.
|
155
143
|
#
|
156
144
|
# @return [Array<MetronomeSDK::Models::V1::ContractCreateParams::ResellerRoyalty>, nil]
|
157
145
|
optional :reseller_royalties,
|
158
|
-
-> {
|
159
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::ResellerRoyalty]
|
160
|
-
}
|
146
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::ResellerRoyalty] }
|
161
147
|
|
162
148
|
# @!attribute salesforce_opportunity_id
|
163
149
|
# This field's availability is dependent on your client's configuration.
|
@@ -169,9 +155,7 @@ module MetronomeSDK
|
|
169
155
|
#
|
170
156
|
# @return [Array<MetronomeSDK::Models::V1::ContractCreateParams::ScheduledCharge>, nil]
|
171
157
|
optional :scheduled_charges,
|
172
|
-
-> {
|
173
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::ScheduledCharge]
|
174
|
-
}
|
158
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::ScheduledCharge] }
|
175
159
|
|
176
160
|
# @!attribute scheduled_charges_on_usage_invoices
|
177
161
|
# Determines which scheduled and commit charges to consolidate onto the Contract's
|
@@ -186,9 +170,8 @@ module MetronomeSDK
|
|
186
170
|
|
187
171
|
# @!attribute spend_threshold_configuration
|
188
172
|
#
|
189
|
-
# @return [MetronomeSDK::Models::
|
190
|
-
optional :spend_threshold_configuration,
|
191
|
-
-> { MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration }
|
173
|
+
# @return [MetronomeSDK::Models::SpendThresholdConfiguration, nil]
|
174
|
+
optional :spend_threshold_configuration, -> { MetronomeSDK::SpendThresholdConfiguration }
|
192
175
|
|
193
176
|
# @!attribute subscriptions
|
194
177
|
# Optional list of
|
@@ -197,9 +180,7 @@ module MetronomeSDK
|
|
197
180
|
#
|
198
181
|
# @return [Array<MetronomeSDK::Models::V1::ContractCreateParams::Subscription>, nil]
|
199
182
|
optional :subscriptions,
|
200
|
-
-> {
|
201
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Subscription]
|
202
|
-
}
|
183
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Subscription] }
|
203
184
|
|
204
185
|
# @!attribute total_contract_value
|
205
186
|
# This field's availability is dependent on your client's configuration.
|
@@ -228,10 +209,7 @@ module MetronomeSDK
|
|
228
209
|
# @!attribute usage_statement_schedule
|
229
210
|
#
|
230
211
|
# @return [MetronomeSDK::Models::V1::ContractCreateParams::UsageStatementSchedule, nil]
|
231
|
-
optional :usage_statement_schedule,
|
232
|
-
-> {
|
233
|
-
MetronomeSDK::V1::ContractCreateParams::UsageStatementSchedule
|
234
|
-
}
|
212
|
+
optional :usage_statement_schedule, -> { MetronomeSDK::V1::ContractCreateParams::UsageStatementSchedule }
|
235
213
|
|
236
214
|
# @!method initialize(customer_id:, starting_at:, billing_provider_configuration: nil, commits: nil, credits: nil, custom_fields: nil, discounts: nil, ending_before: nil, hierarchy_configuration: nil, multiplier_override_prioritization: nil, name: nil, net_payment_terms_days: nil, netsuite_sales_order_id: nil, overrides: nil, prepaid_balance_threshold_configuration: nil, priority: nil, professional_services: nil, rate_card_alias: nil, rate_card_id: nil, recurring_commits: nil, recurring_credits: nil, reseller_royalties: nil, salesforce_opportunity_id: nil, scheduled_charges: nil, scheduled_charges_on_usage_invoices: nil, spend_threshold_configuration: nil, subscriptions: nil, total_contract_value: nil, transition: nil, uniqueness_key: nil, usage_filter: nil, usage_statement_schedule: nil, request_options: {})
|
237
215
|
# Some parameter documentations has been truncated, see
|
@@ -247,7 +225,7 @@ module MetronomeSDK
|
|
247
225
|
#
|
248
226
|
# @param credits [Array<MetronomeSDK::Models::V1::ContractCreateParams::Credit>]
|
249
227
|
#
|
250
|
-
# @param custom_fields [Hash{Symbol=>String}]
|
228
|
+
# @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
251
229
|
#
|
252
230
|
# @param discounts [Array<MetronomeSDK::Models::V1::ContractCreateParams::Discount>] This field's availability is dependent on your client's configuration.
|
253
231
|
#
|
@@ -265,7 +243,7 @@ module MetronomeSDK
|
|
265
243
|
#
|
266
244
|
# @param overrides [Array<MetronomeSDK::Models::V1::ContractCreateParams::Override>]
|
267
245
|
#
|
268
|
-
# @param prepaid_balance_threshold_configuration [MetronomeSDK::Models::
|
246
|
+
# @param prepaid_balance_threshold_configuration [MetronomeSDK::Models::PrepaidBalanceThresholdConfiguration]
|
269
247
|
#
|
270
248
|
# @param priority [Float] Priority of the contract.
|
271
249
|
#
|
@@ -287,7 +265,7 @@ module MetronomeSDK
|
|
287
265
|
#
|
288
266
|
# @param scheduled_charges_on_usage_invoices [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::ScheduledChargesOnUsageInvoices] Determines which scheduled and commit charges to consolidate onto the Contract's
|
289
267
|
#
|
290
|
-
# @param spend_threshold_configuration [MetronomeSDK::Models::
|
268
|
+
# @param spend_threshold_configuration [MetronomeSDK::Models::SpendThresholdConfiguration]
|
291
269
|
#
|
292
270
|
# @param subscriptions [Array<MetronomeSDK::Models::V1::ContractCreateParams::Subscription>] Optional list of [subscriptions](https://docs.metronome.com/manage-product-acces
|
293
271
|
#
|
@@ -309,9 +287,7 @@ module MetronomeSDK
|
|
309
287
|
#
|
310
288
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::BillingProviderConfiguration::BillingProvider, nil]
|
311
289
|
optional :billing_provider,
|
312
|
-
enum: -> {
|
313
|
-
MetronomeSDK::V1::ContractCreateParams::BillingProviderConfiguration::BillingProvider
|
314
|
-
}
|
290
|
+
enum: -> { MetronomeSDK::V1::ContractCreateParams::BillingProviderConfiguration::BillingProvider }
|
315
291
|
|
316
292
|
# @!attribute billing_provider_configuration_id
|
317
293
|
# The Metronome ID of the billing provider configuration. Use when a customer has
|
@@ -326,9 +302,7 @@ module MetronomeSDK
|
|
326
302
|
#
|
327
303
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::BillingProviderConfiguration::DeliveryMethod, nil]
|
328
304
|
optional :delivery_method,
|
329
|
-
enum: -> {
|
330
|
-
MetronomeSDK::V1::ContractCreateParams::BillingProviderConfiguration::DeliveryMethod
|
331
|
-
}
|
305
|
+
enum: -> { MetronomeSDK::V1::ContractCreateParams::BillingProviderConfiguration::DeliveryMethod }
|
332
306
|
|
333
307
|
# @!method initialize(billing_provider: nil, billing_provider_configuration_id: nil, delivery_method: nil)
|
334
308
|
# Some parameter documentations has been truncated, see
|
@@ -418,6 +392,7 @@ module MetronomeSDK
|
|
418
392
|
optional :applicable_product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
|
419
393
|
|
420
394
|
# @!attribute custom_fields
|
395
|
+
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
421
396
|
#
|
422
397
|
# @return [Hash{Symbol=>String}, nil]
|
423
398
|
optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
|
@@ -431,9 +406,8 @@ module MetronomeSDK
|
|
431
406
|
# @!attribute hierarchy_configuration
|
432
407
|
# Optional configuration for commit hierarchy access control
|
433
408
|
#
|
434
|
-
# @return [MetronomeSDK::Models::
|
435
|
-
optional :hierarchy_configuration,
|
436
|
-
-> { MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration }
|
409
|
+
# @return [MetronomeSDK::Models::CommitHierarchyConfiguration, nil]
|
410
|
+
optional :hierarchy_configuration, -> { MetronomeSDK::CommitHierarchyConfiguration }
|
437
411
|
|
438
412
|
# @!attribute invoice_schedule
|
439
413
|
# Required for "POSTPAID" commits: the true up invoice will be generated at this
|
@@ -460,10 +434,7 @@ module MetronomeSDK
|
|
460
434
|
# optionally payment gate this commit
|
461
435
|
#
|
462
436
|
# @return [MetronomeSDK::Models::V1::ContractCreateParams::Commit::PaymentGateConfig, nil]
|
463
|
-
optional :payment_gate_config,
|
464
|
-
-> {
|
465
|
-
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig
|
466
|
-
}
|
437
|
+
optional :payment_gate_config, -> { MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig }
|
467
438
|
|
468
439
|
# @!attribute priority
|
469
440
|
# If multiple commits are applicable, the one with the lower priority will apply
|
@@ -489,11 +460,8 @@ module MetronomeSDK
|
|
489
460
|
# specifiers to contribute to a commit's or credit's drawdown. This field cannot
|
490
461
|
# be used together with `applicable_product_ids` or `applicable_product_tags`.
|
491
462
|
#
|
492
|
-
# @return [Array<MetronomeSDK::Models::
|
493
|
-
optional :specifiers,
|
494
|
-
-> {
|
495
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Commit::Specifier]
|
496
|
-
}
|
463
|
+
# @return [Array<MetronomeSDK::Models::CommitSpecifierInput>, nil]
|
464
|
+
optional :specifiers, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::CommitSpecifierInput] }
|
497
465
|
|
498
466
|
# @!attribute temporary_id
|
499
467
|
# A temporary ID for the commit that can be used to reference the commit for
|
@@ -518,11 +486,11 @@ module MetronomeSDK
|
|
518
486
|
#
|
519
487
|
# @param applicable_product_tags [Array<String>] Which tags the commit applies to. If applicable*product_ids, applicable_product*
|
520
488
|
#
|
521
|
-
# @param custom_fields [Hash{Symbol=>String}]
|
489
|
+
# @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
522
490
|
#
|
523
491
|
# @param description [String] Used only in UI/API. It is not exposed to end customers.
|
524
492
|
#
|
525
|
-
# @param hierarchy_configuration [MetronomeSDK::Models::
|
493
|
+
# @param hierarchy_configuration [MetronomeSDK::Models::CommitHierarchyConfiguration] Optional configuration for commit hierarchy access control
|
526
494
|
#
|
527
495
|
# @param invoice_schedule [MetronomeSDK::Models::V1::ContractCreateParams::Commit::InvoiceSchedule] Required for "POSTPAID" commits: the true up invoice will be generated at this t
|
528
496
|
#
|
@@ -538,7 +506,7 @@ module MetronomeSDK
|
|
538
506
|
#
|
539
507
|
# @param rollover_fraction [Float] Fraction of unused segments that will be rolled over. Must be between 0 and 1.
|
540
508
|
#
|
541
|
-
# @param specifiers [Array<MetronomeSDK::Models::
|
509
|
+
# @param specifiers [Array<MetronomeSDK::Models::CommitSpecifierInput>] List of filters that determine what kind of customer usage draws down a commit o
|
542
510
|
#
|
543
511
|
# @param temporary_id [String] A temporary ID for the commit that can be used to reference the commit for commi
|
544
512
|
|
@@ -559,9 +527,7 @@ module MetronomeSDK
|
|
559
527
|
#
|
560
528
|
# @return [Array<MetronomeSDK::Models::V1::ContractCreateParams::Commit::AccessSchedule::ScheduleItem>]
|
561
529
|
required :schedule_items,
|
562
|
-
-> {
|
563
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Commit::AccessSchedule::ScheduleItem]
|
564
|
-
}
|
530
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Commit::AccessSchedule::ScheduleItem] }
|
565
531
|
|
566
532
|
# @!attribute credit_type_id
|
567
533
|
# Defaults to USD (cents) if not passed
|
@@ -605,117 +571,6 @@ module MetronomeSDK
|
|
605
571
|
end
|
606
572
|
end
|
607
573
|
|
608
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::Commit#hierarchy_configuration
|
609
|
-
class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
610
|
-
# @!attribute child_access
|
611
|
-
#
|
612
|
-
# @return [MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs]
|
613
|
-
required :child_access,
|
614
|
-
union: -> {
|
615
|
-
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess
|
616
|
-
}
|
617
|
-
|
618
|
-
# @!method initialize(child_access:)
|
619
|
-
# Optional configuration for commit hierarchy access control
|
620
|
-
#
|
621
|
-
# @param child_access [MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs]
|
622
|
-
|
623
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration#child_access
|
624
|
-
module ChildAccess
|
625
|
-
extend MetronomeSDK::Internal::Type::Union
|
626
|
-
|
627
|
-
variant -> {
|
628
|
-
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll
|
629
|
-
}
|
630
|
-
|
631
|
-
variant -> {
|
632
|
-
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone
|
633
|
-
}
|
634
|
-
|
635
|
-
variant -> {
|
636
|
-
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
|
637
|
-
}
|
638
|
-
|
639
|
-
class CommitHierarchyChildAccessAll < MetronomeSDK::Internal::Type::BaseModel
|
640
|
-
# @!attribute type
|
641
|
-
#
|
642
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type]
|
643
|
-
required :type,
|
644
|
-
enum: -> {
|
645
|
-
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type
|
646
|
-
}
|
647
|
-
|
648
|
-
# @!method initialize(type:)
|
649
|
-
# @param type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type]
|
650
|
-
|
651
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll#type
|
652
|
-
module Type
|
653
|
-
extend MetronomeSDK::Internal::Type::Enum
|
654
|
-
|
655
|
-
ALL = :ALL
|
656
|
-
|
657
|
-
# @!method self.values
|
658
|
-
# @return [Array<Symbol>]
|
659
|
-
end
|
660
|
-
end
|
661
|
-
|
662
|
-
class CommitHierarchyChildAccessNone < MetronomeSDK::Internal::Type::BaseModel
|
663
|
-
# @!attribute type
|
664
|
-
#
|
665
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type]
|
666
|
-
required :type,
|
667
|
-
enum: -> {
|
668
|
-
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type
|
669
|
-
}
|
670
|
-
|
671
|
-
# @!method initialize(type:)
|
672
|
-
# @param type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type]
|
673
|
-
|
674
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone#type
|
675
|
-
module Type
|
676
|
-
extend MetronomeSDK::Internal::Type::Enum
|
677
|
-
|
678
|
-
NONE = :NONE
|
679
|
-
|
680
|
-
# @!method self.values
|
681
|
-
# @return [Array<Symbol>]
|
682
|
-
end
|
683
|
-
end
|
684
|
-
|
685
|
-
class CommitHierarchyChildAccessContractIDs < MetronomeSDK::Internal::Type::BaseModel
|
686
|
-
# @!attribute contract_ids
|
687
|
-
#
|
688
|
-
# @return [Array<String>]
|
689
|
-
required :contract_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
|
690
|
-
|
691
|
-
# @!attribute type
|
692
|
-
#
|
693
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type]
|
694
|
-
required :type,
|
695
|
-
enum: -> {
|
696
|
-
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type
|
697
|
-
}
|
698
|
-
|
699
|
-
# @!method initialize(contract_ids:, type:)
|
700
|
-
# @param contract_ids [Array<String>]
|
701
|
-
# @param type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type]
|
702
|
-
|
703
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs#type
|
704
|
-
module Type
|
705
|
-
extend MetronomeSDK::Internal::Type::Enum
|
706
|
-
|
707
|
-
CONTRACT_IDS = :CONTRACT_IDS
|
708
|
-
|
709
|
-
# @!method self.values
|
710
|
-
# @return [Array<Symbol>]
|
711
|
-
end
|
712
|
-
end
|
713
|
-
|
714
|
-
# @!method self.variants
|
715
|
-
# @return [Array(MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs)]
|
716
|
-
end
|
717
|
-
end
|
718
|
-
|
719
574
|
# @see MetronomeSDK::Models::V1::ContractCreateParams::Commit#invoice_schedule
|
720
575
|
class InvoiceSchedule < MetronomeSDK::Internal::Type::BaseModel
|
721
576
|
# @!attribute credit_type_id
|
@@ -724,6 +579,13 @@ module MetronomeSDK
|
|
724
579
|
# @return [String, nil]
|
725
580
|
optional :credit_type_id, String
|
726
581
|
|
582
|
+
# @!attribute do_not_invoice
|
583
|
+
# This field is only applicable to commit invoice schedules. If true, this
|
584
|
+
# schedule will not generate an invoice.
|
585
|
+
#
|
586
|
+
# @return [Boolean, nil]
|
587
|
+
optional :do_not_invoice, MetronomeSDK::Internal::Type::Boolean
|
588
|
+
|
727
589
|
# @!attribute recurring_schedule
|
728
590
|
# Enter the unit price and quantity for the charge or instead only send the
|
729
591
|
# amount. If amount is sent, the unit price is assumed to be the amount and
|
@@ -738,11 +600,9 @@ module MetronomeSDK
|
|
738
600
|
#
|
739
601
|
# @return [Array<MetronomeSDK::Models::V1::ContractCreateParams::Commit::InvoiceSchedule::ScheduleItem>, nil]
|
740
602
|
optional :schedule_items,
|
741
|
-
-> {
|
742
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Commit::InvoiceSchedule::ScheduleItem]
|
743
|
-
}
|
603
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Commit::InvoiceSchedule::ScheduleItem] }
|
744
604
|
|
745
|
-
# @!method initialize(credit_type_id: nil, recurring_schedule: nil, schedule_items: nil)
|
605
|
+
# @!method initialize(credit_type_id: nil, do_not_invoice: nil, recurring_schedule: nil, schedule_items: nil)
|
746
606
|
# Some parameter documentations has been truncated, see
|
747
607
|
# {MetronomeSDK::Models::V1::ContractCreateParams::Commit::InvoiceSchedule} for
|
748
608
|
# more details.
|
@@ -754,6 +614,8 @@ module MetronomeSDK
|
|
754
614
|
#
|
755
615
|
# @param credit_type_id [String] Defaults to USD (cents) if not passed.
|
756
616
|
#
|
617
|
+
# @param do_not_invoice [Boolean] This field is only applicable to commit invoice schedules. If true, this schedul
|
618
|
+
#
|
757
619
|
# @param recurring_schedule [MetronomeSDK::Models::V1::ContractCreateParams::Commit::InvoiceSchedule::RecurringSchedule] Enter the unit price and quantity for the charge or instead only send the amount
|
758
620
|
#
|
759
621
|
# @param schedule_items [Array<MetronomeSDK::Models::V1::ContractCreateParams::Commit::InvoiceSchedule::ScheduleItem>] Either provide amount or provide both unit_price and quantity.
|
@@ -764,9 +626,7 @@ module MetronomeSDK
|
|
764
626
|
#
|
765
627
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution]
|
766
628
|
required :amount_distribution,
|
767
|
-
enum: -> {
|
768
|
-
MetronomeSDK::V1::ContractCreateParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution
|
769
|
-
}
|
629
|
+
enum: -> { MetronomeSDK::V1::ContractCreateParams::Commit::InvoiceSchedule::RecurringSchedule::AmountDistribution }
|
770
630
|
|
771
631
|
# @!attribute ending_before
|
772
632
|
# RFC 3339 timestamp (exclusive).
|
@@ -778,9 +638,7 @@ module MetronomeSDK
|
|
778
638
|
#
|
779
639
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency]
|
780
640
|
required :frequency,
|
781
|
-
enum: -> {
|
782
|
-
MetronomeSDK::V1::ContractCreateParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency
|
783
|
-
}
|
641
|
+
enum: -> { MetronomeSDK::V1::ContractCreateParams::Commit::InvoiceSchedule::RecurringSchedule::Frequency }
|
784
642
|
|
785
643
|
# @!attribute starting_at
|
786
644
|
# RFC 3339 timestamp (inclusive).
|
@@ -917,18 +775,14 @@ module MetronomeSDK
|
|
917
775
|
#
|
918
776
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Commit::PaymentGateConfig::PaymentGateType]
|
919
777
|
required :payment_gate_type,
|
920
|
-
enum: -> {
|
921
|
-
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::PaymentGateType
|
922
|
-
}
|
778
|
+
enum: -> { MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::PaymentGateType }
|
923
779
|
|
924
780
|
# @!attribute precalculated_tax_config
|
925
781
|
# Only applicable if using PRECALCULATED as your tax type.
|
926
782
|
#
|
927
783
|
# @return [MetronomeSDK::Models::V1::ContractCreateParams::Commit::PaymentGateConfig::PrecalculatedTaxConfig, nil]
|
928
784
|
optional :precalculated_tax_config,
|
929
|
-
-> {
|
930
|
-
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::PrecalculatedTaxConfig
|
931
|
-
}
|
785
|
+
-> { MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::PrecalculatedTaxConfig }
|
932
786
|
|
933
787
|
# @!attribute stripe_config
|
934
788
|
# Only applicable if using STRIPE as your payment gate type.
|
@@ -1013,9 +867,7 @@ module MetronomeSDK
|
|
1013
867
|
#
|
1014
868
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Commit::PaymentGateConfig::StripeConfig::PaymentType]
|
1015
869
|
required :payment_type,
|
1016
|
-
enum: -> {
|
1017
|
-
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::StripeConfig::PaymentType
|
1018
|
-
}
|
870
|
+
enum: -> { MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::StripeConfig::PaymentType }
|
1019
871
|
|
1020
872
|
# @!attribute invoice_metadata
|
1021
873
|
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
@@ -1024,7 +876,20 @@ module MetronomeSDK
|
|
1024
876
|
# @return [Hash{Symbol=>String}, nil]
|
1025
877
|
optional :invoice_metadata, MetronomeSDK::Internal::Type::HashOf[String]
|
1026
878
|
|
1027
|
-
# @!
|
879
|
+
# @!attribute on_session_payment
|
880
|
+
# If true, the payment will be made assuming the customer is present (i.e. on
|
881
|
+
# session).
|
882
|
+
#
|
883
|
+
# If false, the payment will be made assuming the customer is not present (i.e.
|
884
|
+
# off session). For cardholders from a country with an e-mandate requirement (e.g.
|
885
|
+
# India), the payment may be declined.
|
886
|
+
#
|
887
|
+
# If left blank, will default to false.
|
888
|
+
#
|
889
|
+
# @return [Boolean, nil]
|
890
|
+
optional :on_session_payment, MetronomeSDK::Internal::Type::Boolean
|
891
|
+
|
892
|
+
# @!method initialize(payment_type:, invoice_metadata: nil, on_session_payment: nil)
|
1028
893
|
# Some parameter documentations has been truncated, see
|
1029
894
|
# {MetronomeSDK::Models::V1::ContractCreateParams::Commit::PaymentGateConfig::StripeConfig}
|
1030
895
|
# for more details.
|
@@ -1034,6 +899,8 @@ module MetronomeSDK
|
|
1034
899
|
# @param payment_type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Commit::PaymentGateConfig::StripeConfig::PaymentType] If left blank, will default to INVOICE
|
1035
900
|
#
|
1036
901
|
# @param invoice_metadata [Hash{Symbol=>String}] Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
902
|
+
#
|
903
|
+
# @param on_session_payment [Boolean] If true, the payment will be made assuming the customer is present (i.e. on sess
|
1037
904
|
|
1038
905
|
# If left blank, will default to INVOICE
|
1039
906
|
#
|
@@ -1077,44 +944,6 @@ module MetronomeSDK
|
|
1077
944
|
# @!method self.values
|
1078
945
|
# @return [Array<Symbol>]
|
1079
946
|
end
|
1080
|
-
|
1081
|
-
class Specifier < MetronomeSDK::Internal::Type::BaseModel
|
1082
|
-
# @!attribute presentation_group_values
|
1083
|
-
#
|
1084
|
-
# @return [Hash{Symbol=>String}, nil]
|
1085
|
-
optional :presentation_group_values, MetronomeSDK::Internal::Type::HashOf[String]
|
1086
|
-
|
1087
|
-
# @!attribute pricing_group_values
|
1088
|
-
#
|
1089
|
-
# @return [Hash{Symbol=>String}, nil]
|
1090
|
-
optional :pricing_group_values, MetronomeSDK::Internal::Type::HashOf[String]
|
1091
|
-
|
1092
|
-
# @!attribute product_id
|
1093
|
-
# If provided, the specifier will only apply to the product with the specified ID.
|
1094
|
-
#
|
1095
|
-
# @return [String, nil]
|
1096
|
-
optional :product_id, String
|
1097
|
-
|
1098
|
-
# @!attribute product_tags
|
1099
|
-
# If provided, the specifier will only apply to products with all the specified
|
1100
|
-
# tags.
|
1101
|
-
#
|
1102
|
-
# @return [Array<String>, nil]
|
1103
|
-
optional :product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
|
1104
|
-
|
1105
|
-
# @!method initialize(presentation_group_values: nil, pricing_group_values: nil, product_id: nil, product_tags: nil)
|
1106
|
-
# Some parameter documentations has been truncated, see
|
1107
|
-
# {MetronomeSDK::Models::V1::ContractCreateParams::Commit::Specifier} for more
|
1108
|
-
# details.
|
1109
|
-
#
|
1110
|
-
# @param presentation_group_values [Hash{Symbol=>String}]
|
1111
|
-
#
|
1112
|
-
# @param pricing_group_values [Hash{Symbol=>String}]
|
1113
|
-
#
|
1114
|
-
# @param product_id [String] If provided, the specifier will only apply to the product with the specified ID.
|
1115
|
-
#
|
1116
|
-
# @param product_tags [Array<String>] If provided, the specifier will only apply to products with all the specified ta
|
1117
|
-
end
|
1118
947
|
end
|
1119
948
|
|
1120
949
|
class Credit < MetronomeSDK::Internal::Type::BaseModel
|
@@ -1144,6 +973,7 @@ module MetronomeSDK
|
|
1144
973
|
optional :applicable_product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
|
1145
974
|
|
1146
975
|
# @!attribute custom_fields
|
976
|
+
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
1147
977
|
#
|
1148
978
|
# @return [Hash{Symbol=>String}, nil]
|
1149
979
|
optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
|
@@ -1157,9 +987,8 @@ module MetronomeSDK
|
|
1157
987
|
# @!attribute hierarchy_configuration
|
1158
988
|
# Optional configuration for credit hierarchy access control
|
1159
989
|
#
|
1160
|
-
# @return [MetronomeSDK::Models::
|
1161
|
-
optional :hierarchy_configuration,
|
1162
|
-
-> { MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration }
|
990
|
+
# @return [MetronomeSDK::Models::CommitHierarchyConfiguration, nil]
|
991
|
+
optional :hierarchy_configuration, -> { MetronomeSDK::CommitHierarchyConfiguration }
|
1163
992
|
|
1164
993
|
# @!attribute name
|
1165
994
|
# displayed on invoices
|
@@ -1191,11 +1020,8 @@ module MetronomeSDK
|
|
1191
1020
|
# specifiers to contribute to a commit's or credit's drawdown. This field cannot
|
1192
1021
|
# be used together with `applicable_product_ids` or `applicable_product_tags`.
|
1193
1022
|
#
|
1194
|
-
# @return [Array<MetronomeSDK::Models::
|
1195
|
-
optional :specifiers,
|
1196
|
-
-> {
|
1197
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Credit::Specifier]
|
1198
|
-
}
|
1023
|
+
# @return [Array<MetronomeSDK::Models::CommitSpecifierInput>, nil]
|
1024
|
+
optional :specifiers, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::CommitSpecifierInput] }
|
1199
1025
|
|
1200
1026
|
# @!method initialize(access_schedule:, product_id:, applicable_product_ids: nil, applicable_product_tags: nil, custom_fields: nil, description: nil, hierarchy_configuration: nil, name: nil, netsuite_sales_order_id: nil, priority: nil, rate_type: nil, specifiers: nil)
|
1201
1027
|
# Some parameter documentations has been truncated, see
|
@@ -1209,11 +1035,11 @@ module MetronomeSDK
|
|
1209
1035
|
#
|
1210
1036
|
# @param applicable_product_tags [Array<String>] Which tags the credit applies to. If both applicable*product_ids and applicable*
|
1211
1037
|
#
|
1212
|
-
# @param custom_fields [Hash{Symbol=>String}]
|
1038
|
+
# @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
1213
1039
|
#
|
1214
1040
|
# @param description [String] Used only in UI/API. It is not exposed to end customers.
|
1215
1041
|
#
|
1216
|
-
# @param hierarchy_configuration [MetronomeSDK::Models::
|
1042
|
+
# @param hierarchy_configuration [MetronomeSDK::Models::CommitHierarchyConfiguration] Optional configuration for credit hierarchy access control
|
1217
1043
|
#
|
1218
1044
|
# @param name [String] displayed on invoices
|
1219
1045
|
#
|
@@ -1223,7 +1049,7 @@ module MetronomeSDK
|
|
1223
1049
|
#
|
1224
1050
|
# @param rate_type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Credit::RateType]
|
1225
1051
|
#
|
1226
|
-
# @param specifiers [Array<MetronomeSDK::Models::
|
1052
|
+
# @param specifiers [Array<MetronomeSDK::Models::CommitSpecifierInput>] List of filters that determine what kind of customer usage draws down a commit o
|
1227
1053
|
|
1228
1054
|
# @see MetronomeSDK::Models::V1::ContractCreateParams::Credit#access_schedule
|
1229
1055
|
class AccessSchedule < MetronomeSDK::Internal::Type::BaseModel
|
@@ -1231,9 +1057,7 @@ module MetronomeSDK
|
|
1231
1057
|
#
|
1232
1058
|
# @return [Array<MetronomeSDK::Models::V1::ContractCreateParams::Credit::AccessSchedule::ScheduleItem>]
|
1233
1059
|
required :schedule_items,
|
1234
|
-
-> {
|
1235
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Credit::AccessSchedule::ScheduleItem]
|
1236
|
-
}
|
1060
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Credit::AccessSchedule::ScheduleItem] }
|
1237
1061
|
|
1238
1062
|
# @!attribute credit_type_id
|
1239
1063
|
# Defaults to USD (cents) if not passed
|
@@ -1275,117 +1099,6 @@ module MetronomeSDK
|
|
1275
1099
|
end
|
1276
1100
|
end
|
1277
1101
|
|
1278
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::Credit#hierarchy_configuration
|
1279
|
-
class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
1280
|
-
# @!attribute child_access
|
1281
|
-
#
|
1282
|
-
# @return [MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs]
|
1283
|
-
required :child_access,
|
1284
|
-
union: -> {
|
1285
|
-
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess
|
1286
|
-
}
|
1287
|
-
|
1288
|
-
# @!method initialize(child_access:)
|
1289
|
-
# Optional configuration for credit hierarchy access control
|
1290
|
-
#
|
1291
|
-
# @param child_access [MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs]
|
1292
|
-
|
1293
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration#child_access
|
1294
|
-
module ChildAccess
|
1295
|
-
extend MetronomeSDK::Internal::Type::Union
|
1296
|
-
|
1297
|
-
variant -> {
|
1298
|
-
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll
|
1299
|
-
}
|
1300
|
-
|
1301
|
-
variant -> {
|
1302
|
-
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone
|
1303
|
-
}
|
1304
|
-
|
1305
|
-
variant -> {
|
1306
|
-
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
|
1307
|
-
}
|
1308
|
-
|
1309
|
-
class CommitHierarchyChildAccessAll < MetronomeSDK::Internal::Type::BaseModel
|
1310
|
-
# @!attribute type
|
1311
|
-
#
|
1312
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type]
|
1313
|
-
required :type,
|
1314
|
-
enum: -> {
|
1315
|
-
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type
|
1316
|
-
}
|
1317
|
-
|
1318
|
-
# @!method initialize(type:)
|
1319
|
-
# @param type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type]
|
1320
|
-
|
1321
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll#type
|
1322
|
-
module Type
|
1323
|
-
extend MetronomeSDK::Internal::Type::Enum
|
1324
|
-
|
1325
|
-
ALL = :ALL
|
1326
|
-
|
1327
|
-
# @!method self.values
|
1328
|
-
# @return [Array<Symbol>]
|
1329
|
-
end
|
1330
|
-
end
|
1331
|
-
|
1332
|
-
class CommitHierarchyChildAccessNone < MetronomeSDK::Internal::Type::BaseModel
|
1333
|
-
# @!attribute type
|
1334
|
-
#
|
1335
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type]
|
1336
|
-
required :type,
|
1337
|
-
enum: -> {
|
1338
|
-
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type
|
1339
|
-
}
|
1340
|
-
|
1341
|
-
# @!method initialize(type:)
|
1342
|
-
# @param type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type]
|
1343
|
-
|
1344
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone#type
|
1345
|
-
module Type
|
1346
|
-
extend MetronomeSDK::Internal::Type::Enum
|
1347
|
-
|
1348
|
-
NONE = :NONE
|
1349
|
-
|
1350
|
-
# @!method self.values
|
1351
|
-
# @return [Array<Symbol>]
|
1352
|
-
end
|
1353
|
-
end
|
1354
|
-
|
1355
|
-
class CommitHierarchyChildAccessContractIDs < MetronomeSDK::Internal::Type::BaseModel
|
1356
|
-
# @!attribute contract_ids
|
1357
|
-
#
|
1358
|
-
# @return [Array<String>]
|
1359
|
-
required :contract_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
|
1360
|
-
|
1361
|
-
# @!attribute type
|
1362
|
-
#
|
1363
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type]
|
1364
|
-
required :type,
|
1365
|
-
enum: -> {
|
1366
|
-
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type
|
1367
|
-
}
|
1368
|
-
|
1369
|
-
# @!method initialize(contract_ids:, type:)
|
1370
|
-
# @param contract_ids [Array<String>]
|
1371
|
-
# @param type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type]
|
1372
|
-
|
1373
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs#type
|
1374
|
-
module Type
|
1375
|
-
extend MetronomeSDK::Internal::Type::Enum
|
1376
|
-
|
1377
|
-
CONTRACT_IDS = :CONTRACT_IDS
|
1378
|
-
|
1379
|
-
# @!method self.values
|
1380
|
-
# @return [Array<Symbol>]
|
1381
|
-
end
|
1382
|
-
end
|
1383
|
-
|
1384
|
-
# @!method self.variants
|
1385
|
-
# @return [Array(MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs)]
|
1386
|
-
end
|
1387
|
-
end
|
1388
|
-
|
1389
1102
|
# @see MetronomeSDK::Models::V1::ContractCreateParams::Credit#rate_type
|
1390
1103
|
module RateType
|
1391
1104
|
extend MetronomeSDK::Internal::Type::Enum
|
@@ -1396,44 +1109,6 @@ module MetronomeSDK
|
|
1396
1109
|
# @!method self.values
|
1397
1110
|
# @return [Array<Symbol>]
|
1398
1111
|
end
|
1399
|
-
|
1400
|
-
class Specifier < MetronomeSDK::Internal::Type::BaseModel
|
1401
|
-
# @!attribute presentation_group_values
|
1402
|
-
#
|
1403
|
-
# @return [Hash{Symbol=>String}, nil]
|
1404
|
-
optional :presentation_group_values, MetronomeSDK::Internal::Type::HashOf[String]
|
1405
|
-
|
1406
|
-
# @!attribute pricing_group_values
|
1407
|
-
#
|
1408
|
-
# @return [Hash{Symbol=>String}, nil]
|
1409
|
-
optional :pricing_group_values, MetronomeSDK::Internal::Type::HashOf[String]
|
1410
|
-
|
1411
|
-
# @!attribute product_id
|
1412
|
-
# If provided, the specifier will only apply to the product with the specified ID.
|
1413
|
-
#
|
1414
|
-
# @return [String, nil]
|
1415
|
-
optional :product_id, String
|
1416
|
-
|
1417
|
-
# @!attribute product_tags
|
1418
|
-
# If provided, the specifier will only apply to products with all the specified
|
1419
|
-
# tags.
|
1420
|
-
#
|
1421
|
-
# @return [Array<String>, nil]
|
1422
|
-
optional :product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
|
1423
|
-
|
1424
|
-
# @!method initialize(presentation_group_values: nil, pricing_group_values: nil, product_id: nil, product_tags: nil)
|
1425
|
-
# Some parameter documentations has been truncated, see
|
1426
|
-
# {MetronomeSDK::Models::V1::ContractCreateParams::Credit::Specifier} for more
|
1427
|
-
# details.
|
1428
|
-
#
|
1429
|
-
# @param presentation_group_values [Hash{Symbol=>String}]
|
1430
|
-
#
|
1431
|
-
# @param pricing_group_values [Hash{Symbol=>String}]
|
1432
|
-
#
|
1433
|
-
# @param product_id [String] If provided, the specifier will only apply to the product with the specified ID.
|
1434
|
-
#
|
1435
|
-
# @param product_tags [Array<String>] If provided, the specifier will only apply to products with all the specified ta
|
1436
|
-
end
|
1437
1112
|
end
|
1438
1113
|
|
1439
1114
|
class Discount < MetronomeSDK::Internal::Type::BaseModel
|
@@ -1449,6 +1124,7 @@ module MetronomeSDK
|
|
1449
1124
|
required :schedule, -> { MetronomeSDK::V1::ContractCreateParams::Discount::Schedule }
|
1450
1125
|
|
1451
1126
|
# @!attribute custom_fields
|
1127
|
+
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
1452
1128
|
#
|
1453
1129
|
# @return [Hash{Symbol=>String}, nil]
|
1454
1130
|
optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
|
@@ -1470,7 +1146,7 @@ module MetronomeSDK
|
|
1470
1146
|
#
|
1471
1147
|
# @param schedule [MetronomeSDK::Models::V1::ContractCreateParams::Discount::Schedule] Must provide either schedule_items or recurring_schedule.
|
1472
1148
|
#
|
1473
|
-
# @param custom_fields [Hash{Symbol=>String}]
|
1149
|
+
# @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
1474
1150
|
#
|
1475
1151
|
# @param name [String] displayed on invoices
|
1476
1152
|
#
|
@@ -1484,6 +1160,13 @@ module MetronomeSDK
|
|
1484
1160
|
# @return [String, nil]
|
1485
1161
|
optional :credit_type_id, String
|
1486
1162
|
|
1163
|
+
# @!attribute do_not_invoice
|
1164
|
+
# This field is only applicable to commit invoice schedules. If true, this
|
1165
|
+
# schedule will not generate an invoice.
|
1166
|
+
#
|
1167
|
+
# @return [Boolean, nil]
|
1168
|
+
optional :do_not_invoice, MetronomeSDK::Internal::Type::Boolean
|
1169
|
+
|
1487
1170
|
# @!attribute recurring_schedule
|
1488
1171
|
# Enter the unit price and quantity for the charge or instead only send the
|
1489
1172
|
# amount. If amount is sent, the unit price is assumed to be the amount and
|
@@ -1498,11 +1181,9 @@ module MetronomeSDK
|
|
1498
1181
|
#
|
1499
1182
|
# @return [Array<MetronomeSDK::Models::V1::ContractCreateParams::Discount::Schedule::ScheduleItem>, nil]
|
1500
1183
|
optional :schedule_items,
|
1501
|
-
-> {
|
1502
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Discount::Schedule::ScheduleItem]
|
1503
|
-
}
|
1184
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Discount::Schedule::ScheduleItem] }
|
1504
1185
|
|
1505
|
-
# @!method initialize(credit_type_id: nil, recurring_schedule: nil, schedule_items: nil)
|
1186
|
+
# @!method initialize(credit_type_id: nil, do_not_invoice: nil, recurring_schedule: nil, schedule_items: nil)
|
1506
1187
|
# Some parameter documentations has been truncated, see
|
1507
1188
|
# {MetronomeSDK::Models::V1::ContractCreateParams::Discount::Schedule} for more
|
1508
1189
|
# details.
|
@@ -1511,6 +1192,8 @@ module MetronomeSDK
|
|
1511
1192
|
#
|
1512
1193
|
# @param credit_type_id [String] Defaults to USD (cents) if not passed.
|
1513
1194
|
#
|
1195
|
+
# @param do_not_invoice [Boolean] This field is only applicable to commit invoice schedules. If true, this schedul
|
1196
|
+
#
|
1514
1197
|
# @param recurring_schedule [MetronomeSDK::Models::V1::ContractCreateParams::Discount::Schedule::RecurringSchedule] Enter the unit price and quantity for the charge or instead only send the amount
|
1515
1198
|
#
|
1516
1199
|
# @param schedule_items [Array<MetronomeSDK::Models::V1::ContractCreateParams::Discount::Schedule::ScheduleItem>] Either provide amount or provide both unit_price and quantity.
|
@@ -1521,9 +1204,7 @@ module MetronomeSDK
|
|
1521
1204
|
#
|
1522
1205
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Discount::Schedule::RecurringSchedule::AmountDistribution]
|
1523
1206
|
required :amount_distribution,
|
1524
|
-
enum: -> {
|
1525
|
-
MetronomeSDK::V1::ContractCreateParams::Discount::Schedule::RecurringSchedule::AmountDistribution
|
1526
|
-
}
|
1207
|
+
enum: -> { MetronomeSDK::V1::ContractCreateParams::Discount::Schedule::RecurringSchedule::AmountDistribution }
|
1527
1208
|
|
1528
1209
|
# @!attribute ending_before
|
1529
1210
|
# RFC 3339 timestamp (exclusive).
|
@@ -1535,9 +1216,7 @@ module MetronomeSDK
|
|
1535
1216
|
#
|
1536
1217
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Discount::Schedule::RecurringSchedule::Frequency]
|
1537
1218
|
required :frequency,
|
1538
|
-
enum: -> {
|
1539
|
-
MetronomeSDK::V1::ContractCreateParams::Discount::Schedule::RecurringSchedule::Frequency
|
1540
|
-
}
|
1219
|
+
enum: -> { MetronomeSDK::V1::ContractCreateParams::Discount::Schedule::RecurringSchedule::Frequency }
|
1541
1220
|
|
1542
1221
|
# @!attribute starting_at
|
1543
1222
|
# RFC 3339 timestamp (inclusive).
|
@@ -1752,9 +1431,7 @@ module MetronomeSDK
|
|
1752
1431
|
#
|
1753
1432
|
# @return [Array<MetronomeSDK::Models::V1::ContractCreateParams::Override::OverrideSpecifier>, nil]
|
1754
1433
|
optional :override_specifiers,
|
1755
|
-
-> {
|
1756
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Override::OverrideSpecifier]
|
1757
|
-
}
|
1434
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Override::OverrideSpecifier] }
|
1758
1435
|
|
1759
1436
|
# @!attribute overwrite_rate
|
1760
1437
|
# Required for OVERWRITE type.
|
@@ -1791,9 +1468,7 @@ module MetronomeSDK
|
|
1791
1468
|
#
|
1792
1469
|
# @return [Array<MetronomeSDK::Models::V1::ContractCreateParams::Override::Tier>, nil]
|
1793
1470
|
optional :tiers,
|
1794
|
-
-> {
|
1795
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Override::Tier]
|
1796
|
-
}
|
1471
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::Override::Tier] }
|
1797
1472
|
|
1798
1473
|
# @!attribute type
|
1799
1474
|
# Overwrites are prioritized over multipliers and tiered overrides.
|
@@ -1836,14 +1511,12 @@ module MetronomeSDK
|
|
1836
1511
|
#
|
1837
1512
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Override::OverrideSpecifier::BillingFrequency, nil]
|
1838
1513
|
optional :billing_frequency,
|
1839
|
-
enum: -> {
|
1840
|
-
MetronomeSDK::V1::ContractCreateParams::Override::OverrideSpecifier::BillingFrequency
|
1841
|
-
}
|
1514
|
+
enum: -> { MetronomeSDK::V1::ContractCreateParams::Override::OverrideSpecifier::BillingFrequency }
|
1842
1515
|
|
1843
1516
|
# @!attribute commit_ids
|
1844
1517
|
# Can only be used for commit specific overrides. Must be used in conjunction with
|
1845
|
-
# one of product_id
|
1846
|
-
# presentation_group_values
|
1518
|
+
# one of `product_id`, `product_tags`, `pricing_group_values`, or
|
1519
|
+
# `presentation_group_values`. If provided, the override will only apply to the
|
1847
1520
|
# specified commits. If not provided, the override will apply to all commits.
|
1848
1521
|
#
|
1849
1522
|
# @return [Array<String>, nil]
|
@@ -1878,18 +1551,18 @@ module MetronomeSDK
|
|
1878
1551
|
|
1879
1552
|
# @!attribute recurring_commit_ids
|
1880
1553
|
# Can only be used for commit specific overrides. Must be used in conjunction with
|
1881
|
-
# one of product_id
|
1882
|
-
# presentation_group_values
|
1883
|
-
# created by the specified recurring commit ids.
|
1554
|
+
# one of `product_id`, `product_tags`, `pricing_group_values`, or
|
1555
|
+
# `presentation_group_values`. If provided, the override will only apply to
|
1556
|
+
# commits created by the specified recurring commit ids.
|
1884
1557
|
#
|
1885
1558
|
# @return [Array<String>, nil]
|
1886
1559
|
optional :recurring_commit_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
|
1887
1560
|
|
1888
1561
|
# @!attribute recurring_credit_ids
|
1889
1562
|
# Can only be used for commit specific overrides. Must be used in conjunction with
|
1890
|
-
# one of product_id
|
1891
|
-
# presentation_group_values
|
1892
|
-
# created by the specified recurring credit ids.
|
1563
|
+
# one of `product_id`, `product_tags`, `pricing_group_values`, or
|
1564
|
+
# `presentation_group_values`. If provided, the override will only apply to
|
1565
|
+
# credits created by the specified recurring credit ids.
|
1893
1566
|
#
|
1894
1567
|
# @return [Array<String>, nil]
|
1895
1568
|
optional :recurring_credit_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
|
@@ -2057,473 +1730,136 @@ module MetronomeSDK
|
|
2057
1730
|
end
|
2058
1731
|
end
|
2059
1732
|
|
2060
|
-
class
|
2061
|
-
# @!attribute
|
1733
|
+
class ProfessionalService < MetronomeSDK::Internal::Type::BaseModel
|
1734
|
+
# @!attribute max_amount
|
1735
|
+
# Maximum amount for the term.
|
2062
1736
|
#
|
2063
|
-
# @return [
|
2064
|
-
required :
|
2065
|
-
-> { MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::Commit }
|
1737
|
+
# @return [Float]
|
1738
|
+
required :max_amount, Float
|
2066
1739
|
|
2067
|
-
# @!attribute
|
2068
|
-
# When set to false, the contract will not be evaluated against the
|
2069
|
-
# threshold_amount. Toggling to true will result an immediate evaluation,
|
2070
|
-
# regardless of prior state.
|
1740
|
+
# @!attribute product_id
|
2071
1741
|
#
|
2072
|
-
# @return [
|
2073
|
-
required :
|
1742
|
+
# @return [String]
|
1743
|
+
required :product_id, String
|
2074
1744
|
|
2075
|
-
# @!attribute
|
1745
|
+
# @!attribute quantity
|
1746
|
+
# Quantity for the charge. Will be multiplied by unit_price to determine the
|
1747
|
+
# amount.
|
2076
1748
|
#
|
2077
|
-
# @return [
|
2078
|
-
required :
|
2079
|
-
-> {
|
2080
|
-
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig
|
2081
|
-
}
|
1749
|
+
# @return [Float]
|
1750
|
+
required :quantity, Float
|
2082
1751
|
|
2083
|
-
# @!attribute
|
2084
|
-
#
|
1752
|
+
# @!attribute unit_price
|
1753
|
+
# Unit price for the charge. Will be multiplied by quantity to determine the
|
1754
|
+
# amount and must be specified.
|
2085
1755
|
#
|
2086
1756
|
# @return [Float]
|
2087
|
-
required :
|
1757
|
+
required :unit_price, Float
|
2088
1758
|
|
2089
|
-
# @!attribute
|
2090
|
-
#
|
2091
|
-
# balance lowers to this amount, a threshold charge will be initiated.
|
1759
|
+
# @!attribute custom_fields
|
1760
|
+
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
2092
1761
|
#
|
2093
|
-
# @return [
|
2094
|
-
|
1762
|
+
# @return [Hash{Symbol=>String}, nil]
|
1763
|
+
optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
|
1764
|
+
|
1765
|
+
# @!attribute description
|
1766
|
+
#
|
1767
|
+
# @return [String, nil]
|
1768
|
+
optional :description, String
|
2095
1769
|
|
2096
|
-
# @!attribute
|
2097
|
-
#
|
2098
|
-
# commit amount will be in terms of this credit type instead of the fiat currency.
|
1770
|
+
# @!attribute netsuite_sales_order_id
|
1771
|
+
# This field's availability is dependent on your client's configuration.
|
2099
1772
|
#
|
2100
1773
|
# @return [String, nil]
|
2101
|
-
optional :
|
1774
|
+
optional :netsuite_sales_order_id, String
|
2102
1775
|
|
2103
|
-
# @!method initialize(
|
1776
|
+
# @!method initialize(max_amount:, product_id:, quantity:, unit_price:, custom_fields: nil, description: nil, netsuite_sales_order_id: nil)
|
2104
1777
|
# Some parameter documentations has been truncated, see
|
2105
|
-
# {MetronomeSDK::Models::V1::ContractCreateParams::
|
2106
|
-
#
|
1778
|
+
# {MetronomeSDK::Models::V1::ContractCreateParams::ProfessionalService} for more
|
1779
|
+
# details.
|
1780
|
+
#
|
1781
|
+
# @param max_amount [Float] Maximum amount for the term.
|
2107
1782
|
#
|
2108
|
-
# @param
|
1783
|
+
# @param product_id [String]
|
2109
1784
|
#
|
2110
|
-
# @param
|
1785
|
+
# @param quantity [Float] Quantity for the charge. Will be multiplied by unit_price to determine the amoun
|
2111
1786
|
#
|
2112
|
-
# @param
|
1787
|
+
# @param unit_price [Float] Unit price for the charge. Will be multiplied by quantity to determine the amoun
|
2113
1788
|
#
|
2114
|
-
# @param
|
1789
|
+
# @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
2115
1790
|
#
|
2116
|
-
# @param
|
1791
|
+
# @param description [String]
|
2117
1792
|
#
|
2118
|
-
# @param
|
2119
|
-
|
2120
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration#commit
|
2121
|
-
class Commit < MetronomeSDK::Internal::Type::BaseModel
|
2122
|
-
# @!attribute product_id
|
2123
|
-
# The commit product that will be used to generate the line item for commit
|
2124
|
-
# payment.
|
2125
|
-
#
|
2126
|
-
# @return [String]
|
2127
|
-
required :product_id, String
|
1793
|
+
# @param netsuite_sales_order_id [String] This field's availability is dependent on your client's configuration.
|
1794
|
+
end
|
2128
1795
|
|
2129
|
-
|
2130
|
-
|
2131
|
-
|
2132
|
-
|
2133
|
-
|
2134
|
-
|
2135
|
-
optional :applicable_product_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
|
1796
|
+
class RecurringCommit < MetronomeSDK::Internal::Type::BaseModel
|
1797
|
+
# @!attribute access_amount
|
1798
|
+
# The amount of commit to grant.
|
1799
|
+
#
|
1800
|
+
# @return [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::AccessAmount]
|
1801
|
+
required :access_amount, -> { MetronomeSDK::V1::ContractCreateParams::RecurringCommit::AccessAmount }
|
2136
1802
|
|
2137
|
-
|
2138
|
-
|
2139
|
-
|
2140
|
-
|
2141
|
-
|
2142
|
-
|
2143
|
-
|
1803
|
+
# @!attribute commit_duration
|
1804
|
+
# Defines the length of the access schedule for each created commit/credit. The
|
1805
|
+
# value represents the number of units. Unit defaults to "PERIODS", where the
|
1806
|
+
# length of a period is determined by the recurrence_frequency.
|
1807
|
+
#
|
1808
|
+
# @return [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::CommitDuration]
|
1809
|
+
required :commit_duration, -> { MetronomeSDK::V1::ContractCreateParams::RecurringCommit::CommitDuration }
|
2144
1810
|
|
2145
|
-
|
2146
|
-
|
2147
|
-
|
2148
|
-
|
1811
|
+
# @!attribute priority
|
1812
|
+
# Will be passed down to the individual commits
|
1813
|
+
#
|
1814
|
+
# @return [Float]
|
1815
|
+
required :priority, Float
|
2149
1816
|
|
2150
|
-
|
2151
|
-
|
2152
|
-
|
2153
|
-
|
2154
|
-
# @return [String, nil]
|
2155
|
-
optional :name, String
|
1817
|
+
# @!attribute product_id
|
1818
|
+
#
|
1819
|
+
# @return [String]
|
1820
|
+
required :product_id, String
|
2156
1821
|
|
2157
|
-
|
2158
|
-
|
2159
|
-
|
2160
|
-
|
2161
|
-
|
2162
|
-
#
|
2163
|
-
# @return [Array<MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::Commit::Specifier>, nil]
|
2164
|
-
optional :specifiers,
|
2165
|
-
-> {
|
2166
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::Commit::Specifier]
|
2167
|
-
}
|
1822
|
+
# @!attribute starting_at
|
1823
|
+
# determines the start time for the first commit
|
1824
|
+
#
|
1825
|
+
# @return [Time]
|
1826
|
+
required :starting_at, Time
|
2168
1827
|
|
2169
|
-
|
2170
|
-
|
2171
|
-
|
2172
|
-
|
2173
|
-
|
2174
|
-
# @param product_id [String] The commit product that will be used to generate the line item for commit paymen
|
2175
|
-
#
|
2176
|
-
# @param applicable_product_ids [Array<String>] Which products the threshold commit applies to. If applicable_product_ids, appli
|
2177
|
-
#
|
2178
|
-
# @param applicable_product_tags [Array<String>] Which tags the threshold commit applies to. If applicable_product_ids, applicabl
|
2179
|
-
#
|
2180
|
-
# @param description [String]
|
2181
|
-
#
|
2182
|
-
# @param name [String] Specify the name of the line item for the threshold charge. If left blank, it wi
|
2183
|
-
#
|
2184
|
-
# @param specifiers [Array<MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::Commit::Specifier>] List of filters that determine what kind of customer usage draws down a commit o
|
1828
|
+
# @!attribute applicable_product_ids
|
1829
|
+
# Will be passed down to the individual commits
|
1830
|
+
#
|
1831
|
+
# @return [Array<String>, nil]
|
1832
|
+
optional :applicable_product_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
|
2185
1833
|
|
2186
|
-
|
2187
|
-
|
2188
|
-
|
2189
|
-
|
2190
|
-
|
1834
|
+
# @!attribute applicable_product_tags
|
1835
|
+
# Will be passed down to the individual commits
|
1836
|
+
#
|
1837
|
+
# @return [Array<String>, nil]
|
1838
|
+
optional :applicable_product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
|
2191
1839
|
|
2192
|
-
|
2193
|
-
|
2194
|
-
|
2195
|
-
|
1840
|
+
# @!attribute description
|
1841
|
+
# Will be passed down to the individual commits
|
1842
|
+
#
|
1843
|
+
# @return [String, nil]
|
1844
|
+
optional :description, String
|
2196
1845
|
|
2197
|
-
|
2198
|
-
|
2199
|
-
|
2200
|
-
|
2201
|
-
|
1846
|
+
# @!attribute ending_before
|
1847
|
+
# Determines when the contract will stop creating recurring commits. optional
|
1848
|
+
#
|
1849
|
+
# @return [Time, nil]
|
1850
|
+
optional :ending_before, Time
|
2202
1851
|
|
2203
|
-
|
2204
|
-
|
2205
|
-
|
2206
|
-
|
2207
|
-
|
2208
|
-
optional :product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
|
1852
|
+
# @!attribute hierarchy_configuration
|
1853
|
+
# Optional configuration for recurring commit/credit hierarchy access control
|
1854
|
+
#
|
1855
|
+
# @return [MetronomeSDK::Models::CommitHierarchyConfiguration, nil]
|
1856
|
+
optional :hierarchy_configuration, -> { MetronomeSDK::CommitHierarchyConfiguration }
|
2209
1857
|
|
2210
|
-
|
2211
|
-
|
2212
|
-
|
2213
|
-
|
2214
|
-
|
2215
|
-
# @param presentation_group_values [Hash{Symbol=>String}]
|
2216
|
-
#
|
2217
|
-
# @param pricing_group_values [Hash{Symbol=>String}]
|
2218
|
-
#
|
2219
|
-
# @param product_id [String] If provided, the specifier will only apply to the product with the specified ID.
|
2220
|
-
#
|
2221
|
-
# @param product_tags [Array<String>] If provided, the specifier will only apply to products with all the specified ta
|
2222
|
-
end
|
2223
|
-
end
|
2224
|
-
|
2225
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration#payment_gate_config
|
2226
|
-
class PaymentGateConfig < MetronomeSDK::Internal::Type::BaseModel
|
2227
|
-
# @!attribute payment_gate_type
|
2228
|
-
# Gate access to the commit balance based on successful collection of payment.
|
2229
|
-
# Select STRIPE for Metronome to facilitate payment via Stripe. Select EXTERNAL to
|
2230
|
-
# facilitate payment using your own payment integration. Select NONE if you do not
|
2231
|
-
# wish to payment gate the commit balance.
|
2232
|
-
#
|
2233
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PaymentGateType]
|
2234
|
-
required :payment_gate_type,
|
2235
|
-
enum: -> {
|
2236
|
-
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PaymentGateType
|
2237
|
-
}
|
2238
|
-
|
2239
|
-
# @!attribute precalculated_tax_config
|
2240
|
-
# Only applicable if using PRECALCULATED as your tax type.
|
2241
|
-
#
|
2242
|
-
# @return [MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig, nil]
|
2243
|
-
optional :precalculated_tax_config,
|
2244
|
-
-> {
|
2245
|
-
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
|
2246
|
-
}
|
2247
|
-
|
2248
|
-
# @!attribute stripe_config
|
2249
|
-
# Only applicable if using STRIPE as your payment gate type.
|
2250
|
-
#
|
2251
|
-
# @return [MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig, nil]
|
2252
|
-
optional :stripe_config,
|
2253
|
-
-> {
|
2254
|
-
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig
|
2255
|
-
}
|
2256
|
-
|
2257
|
-
# @!attribute tax_type
|
2258
|
-
# Stripe tax is only supported for Stripe payment gateway. Select NONE if you do
|
2259
|
-
# not wish Metronome to calculate tax on your behalf. Leaving this field blank
|
2260
|
-
# will default to NONE.
|
2261
|
-
#
|
2262
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::TaxType, nil]
|
2263
|
-
optional :tax_type,
|
2264
|
-
enum: -> {
|
2265
|
-
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::TaxType
|
2266
|
-
}
|
2267
|
-
|
2268
|
-
# @!method initialize(payment_gate_type:, precalculated_tax_config: nil, stripe_config: nil, tax_type: nil)
|
2269
|
-
# Some parameter documentations has been truncated, see
|
2270
|
-
# {MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig}
|
2271
|
-
# for more details.
|
2272
|
-
#
|
2273
|
-
# @param payment_gate_type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PaymentGateType] Gate access to the commit balance based on successful collection of payment. Sel
|
2274
|
-
#
|
2275
|
-
# @param precalculated_tax_config [MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig] Only applicable if using PRECALCULATED as your tax type.
|
2276
|
-
#
|
2277
|
-
# @param stripe_config [MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig] Only applicable if using STRIPE as your payment gate type.
|
2278
|
-
#
|
2279
|
-
# @param tax_type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::TaxType] Stripe tax is only supported for Stripe payment gateway. Select NONE if you do n
|
2280
|
-
|
2281
|
-
# Gate access to the commit balance based on successful collection of payment.
|
2282
|
-
# Select STRIPE for Metronome to facilitate payment via Stripe. Select EXTERNAL to
|
2283
|
-
# facilitate payment using your own payment integration. Select NONE if you do not
|
2284
|
-
# wish to payment gate the commit balance.
|
2285
|
-
#
|
2286
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig#payment_gate_type
|
2287
|
-
module PaymentGateType
|
2288
|
-
extend MetronomeSDK::Internal::Type::Enum
|
2289
|
-
|
2290
|
-
NONE = :NONE
|
2291
|
-
STRIPE = :STRIPE
|
2292
|
-
EXTERNAL = :EXTERNAL
|
2293
|
-
|
2294
|
-
# @!method self.values
|
2295
|
-
# @return [Array<Symbol>]
|
2296
|
-
end
|
2297
|
-
|
2298
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig#precalculated_tax_config
|
2299
|
-
class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
|
2300
|
-
# @!attribute tax_amount
|
2301
|
-
# Amount of tax to be applied. This should be in the same currency and
|
2302
|
-
# denomination as the commit's invoice schedule
|
2303
|
-
#
|
2304
|
-
# @return [Float]
|
2305
|
-
required :tax_amount, Float
|
2306
|
-
|
2307
|
-
# @!attribute tax_name
|
2308
|
-
# Name of the tax to be applied. This may be used in an invoice line item
|
2309
|
-
# description.
|
2310
|
-
#
|
2311
|
-
# @return [String, nil]
|
2312
|
-
optional :tax_name, String
|
2313
|
-
|
2314
|
-
# @!method initialize(tax_amount:, tax_name: nil)
|
2315
|
-
# Some parameter documentations has been truncated, see
|
2316
|
-
# {MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig}
|
2317
|
-
# for more details.
|
2318
|
-
#
|
2319
|
-
# Only applicable if using PRECALCULATED as your tax type.
|
2320
|
-
#
|
2321
|
-
# @param tax_amount [Float] Amount of tax to be applied. This should be in the same currency and denominatio
|
2322
|
-
#
|
2323
|
-
# @param tax_name [String] Name of the tax to be applied. This may be used in an invoice line item descript
|
2324
|
-
end
|
2325
|
-
|
2326
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig#stripe_config
|
2327
|
-
class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
|
2328
|
-
# @!attribute payment_type
|
2329
|
-
# If left blank, will default to INVOICE
|
2330
|
-
#
|
2331
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType]
|
2332
|
-
required :payment_type,
|
2333
|
-
enum: -> {
|
2334
|
-
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType
|
2335
|
-
}
|
2336
|
-
|
2337
|
-
# @!attribute invoice_metadata
|
2338
|
-
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
2339
|
-
# your payment type.
|
2340
|
-
#
|
2341
|
-
# @return [Hash{Symbol=>String}, nil]
|
2342
|
-
optional :invoice_metadata, MetronomeSDK::Internal::Type::HashOf[String]
|
2343
|
-
|
2344
|
-
# @!method initialize(payment_type:, invoice_metadata: nil)
|
2345
|
-
# Some parameter documentations has been truncated, see
|
2346
|
-
# {MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig}
|
2347
|
-
# for more details.
|
2348
|
-
#
|
2349
|
-
# Only applicable if using STRIPE as your payment gate type.
|
2350
|
-
#
|
2351
|
-
# @param payment_type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType] If left blank, will default to INVOICE
|
2352
|
-
#
|
2353
|
-
# @param invoice_metadata [Hash{Symbol=>String}] Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
2354
|
-
|
2355
|
-
# If left blank, will default to INVOICE
|
2356
|
-
#
|
2357
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig#payment_type
|
2358
|
-
module PaymentType
|
2359
|
-
extend MetronomeSDK::Internal::Type::Enum
|
2360
|
-
|
2361
|
-
INVOICE = :INVOICE
|
2362
|
-
PAYMENT_INTENT = :PAYMENT_INTENT
|
2363
|
-
|
2364
|
-
# @!method self.values
|
2365
|
-
# @return [Array<Symbol>]
|
2366
|
-
end
|
2367
|
-
end
|
2368
|
-
|
2369
|
-
# Stripe tax is only supported for Stripe payment gateway. Select NONE if you do
|
2370
|
-
# not wish Metronome to calculate tax on your behalf. Leaving this field blank
|
2371
|
-
# will default to NONE.
|
2372
|
-
#
|
2373
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig#tax_type
|
2374
|
-
module TaxType
|
2375
|
-
extend MetronomeSDK::Internal::Type::Enum
|
2376
|
-
|
2377
|
-
NONE = :NONE
|
2378
|
-
STRIPE = :STRIPE
|
2379
|
-
ANROK = :ANROK
|
2380
|
-
PRECALCULATED = :PRECALCULATED
|
2381
|
-
|
2382
|
-
# @!method self.values
|
2383
|
-
# @return [Array<Symbol>]
|
2384
|
-
end
|
2385
|
-
end
|
2386
|
-
end
|
2387
|
-
|
2388
|
-
class ProfessionalService < MetronomeSDK::Internal::Type::BaseModel
|
2389
|
-
# @!attribute max_amount
|
2390
|
-
# Maximum amount for the term.
|
2391
|
-
#
|
2392
|
-
# @return [Float]
|
2393
|
-
required :max_amount, Float
|
2394
|
-
|
2395
|
-
# @!attribute product_id
|
2396
|
-
#
|
2397
|
-
# @return [String]
|
2398
|
-
required :product_id, String
|
2399
|
-
|
2400
|
-
# @!attribute quantity
|
2401
|
-
# Quantity for the charge. Will be multiplied by unit_price to determine the
|
2402
|
-
# amount.
|
2403
|
-
#
|
2404
|
-
# @return [Float]
|
2405
|
-
required :quantity, Float
|
2406
|
-
|
2407
|
-
# @!attribute unit_price
|
2408
|
-
# Unit price for the charge. Will be multiplied by quantity to determine the
|
2409
|
-
# amount and must be specified.
|
2410
|
-
#
|
2411
|
-
# @return [Float]
|
2412
|
-
required :unit_price, Float
|
2413
|
-
|
2414
|
-
# @!attribute custom_fields
|
2415
|
-
#
|
2416
|
-
# @return [Hash{Symbol=>String}, nil]
|
2417
|
-
optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
|
2418
|
-
|
2419
|
-
# @!attribute description
|
2420
|
-
#
|
2421
|
-
# @return [String, nil]
|
2422
|
-
optional :description, String
|
2423
|
-
|
2424
|
-
# @!attribute netsuite_sales_order_id
|
2425
|
-
# This field's availability is dependent on your client's configuration.
|
2426
|
-
#
|
2427
|
-
# @return [String, nil]
|
2428
|
-
optional :netsuite_sales_order_id, String
|
2429
|
-
|
2430
|
-
# @!method initialize(max_amount:, product_id:, quantity:, unit_price:, custom_fields: nil, description: nil, netsuite_sales_order_id: nil)
|
2431
|
-
# Some parameter documentations has been truncated, see
|
2432
|
-
# {MetronomeSDK::Models::V1::ContractCreateParams::ProfessionalService} for more
|
2433
|
-
# details.
|
2434
|
-
#
|
2435
|
-
# @param max_amount [Float] Maximum amount for the term.
|
2436
|
-
#
|
2437
|
-
# @param product_id [String]
|
2438
|
-
#
|
2439
|
-
# @param quantity [Float] Quantity for the charge. Will be multiplied by unit_price to determine the amoun
|
2440
|
-
#
|
2441
|
-
# @param unit_price [Float] Unit price for the charge. Will be multiplied by quantity to determine the amoun
|
2442
|
-
#
|
2443
|
-
# @param custom_fields [Hash{Symbol=>String}]
|
2444
|
-
#
|
2445
|
-
# @param description [String]
|
2446
|
-
#
|
2447
|
-
# @param netsuite_sales_order_id [String] This field's availability is dependent on your client's configuration.
|
2448
|
-
end
|
2449
|
-
|
2450
|
-
class RecurringCommit < MetronomeSDK::Internal::Type::BaseModel
|
2451
|
-
# @!attribute access_amount
|
2452
|
-
# The amount of commit to grant.
|
2453
|
-
#
|
2454
|
-
# @return [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::AccessAmount]
|
2455
|
-
required :access_amount,
|
2456
|
-
-> {
|
2457
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCommit::AccessAmount
|
2458
|
-
}
|
2459
|
-
|
2460
|
-
# @!attribute commit_duration
|
2461
|
-
# Defines the length of the access schedule for each created commit/credit. The
|
2462
|
-
# value represents the number of units. Unit defaults to "PERIODS", where the
|
2463
|
-
# length of a period is determined by the recurrence_frequency.
|
2464
|
-
#
|
2465
|
-
# @return [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::CommitDuration]
|
2466
|
-
required :commit_duration,
|
2467
|
-
-> {
|
2468
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCommit::CommitDuration
|
2469
|
-
}
|
2470
|
-
|
2471
|
-
# @!attribute priority
|
2472
|
-
# Will be passed down to the individual commits
|
2473
|
-
#
|
2474
|
-
# @return [Float]
|
2475
|
-
required :priority, Float
|
2476
|
-
|
2477
|
-
# @!attribute product_id
|
2478
|
-
#
|
2479
|
-
# @return [String]
|
2480
|
-
required :product_id, String
|
2481
|
-
|
2482
|
-
# @!attribute starting_at
|
2483
|
-
# determines the start time for the first commit
|
2484
|
-
#
|
2485
|
-
# @return [Time]
|
2486
|
-
required :starting_at, Time
|
2487
|
-
|
2488
|
-
# @!attribute applicable_product_ids
|
2489
|
-
# Will be passed down to the individual commits
|
2490
|
-
#
|
2491
|
-
# @return [Array<String>, nil]
|
2492
|
-
optional :applicable_product_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
|
2493
|
-
|
2494
|
-
# @!attribute applicable_product_tags
|
2495
|
-
# Will be passed down to the individual commits
|
2496
|
-
#
|
2497
|
-
# @return [Array<String>, nil]
|
2498
|
-
optional :applicable_product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
|
2499
|
-
|
2500
|
-
# @!attribute description
|
2501
|
-
# Will be passed down to the individual commits
|
2502
|
-
#
|
2503
|
-
# @return [String, nil]
|
2504
|
-
optional :description, String
|
2505
|
-
|
2506
|
-
# @!attribute ending_before
|
2507
|
-
# Determines when the contract will stop creating recurring commits. optional
|
2508
|
-
#
|
2509
|
-
# @return [Time, nil]
|
2510
|
-
optional :ending_before, Time
|
2511
|
-
|
2512
|
-
# @!attribute hierarchy_configuration
|
2513
|
-
# Optional configuration for recurring commit/credit hierarchy access control
|
2514
|
-
#
|
2515
|
-
# @return [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration, nil]
|
2516
|
-
optional :hierarchy_configuration,
|
2517
|
-
-> { MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration }
|
2518
|
-
|
2519
|
-
# @!attribute invoice_amount
|
2520
|
-
# The amount the customer should be billed for the commit. Not required.
|
2521
|
-
#
|
2522
|
-
# @return [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::InvoiceAmount, nil]
|
2523
|
-
optional :invoice_amount,
|
2524
|
-
-> {
|
2525
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCommit::InvoiceAmount
|
2526
|
-
}
|
1858
|
+
# @!attribute invoice_amount
|
1859
|
+
# The amount the customer should be billed for the commit. Not required.
|
1860
|
+
#
|
1861
|
+
# @return [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::InvoiceAmount, nil]
|
1862
|
+
optional :invoice_amount, -> { MetronomeSDK::V1::ContractCreateParams::RecurringCommit::InvoiceAmount }
|
2527
1863
|
|
2528
1864
|
# @!attribute name
|
2529
1865
|
# displayed on invoices. will be passed through to the individual commits
|
@@ -2575,11 +1911,8 @@ module MetronomeSDK
|
|
2575
1911
|
# specifiers to contribute to a commit's or credit's drawdown. This field cannot
|
2576
1912
|
# be used together with `applicable_product_ids` or `applicable_product_tags`.
|
2577
1913
|
#
|
2578
|
-
# @return [Array<MetronomeSDK::Models::
|
2579
|
-
optional :specifiers,
|
2580
|
-
-> {
|
2581
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::RecurringCommit::Specifier]
|
2582
|
-
}
|
1914
|
+
# @return [Array<MetronomeSDK::Models::CommitSpecifierInput>, nil]
|
1915
|
+
optional :specifiers, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::CommitSpecifierInput] }
|
2583
1916
|
|
2584
1917
|
# @!attribute subscription_config
|
2585
1918
|
# Attach a subscription to the recurring commit/credit.
|
@@ -2618,7 +1951,7 @@ module MetronomeSDK
|
|
2618
1951
|
#
|
2619
1952
|
# @param ending_before [Time] Determines when the contract will stop creating recurring commits. optional
|
2620
1953
|
#
|
2621
|
-
# @param hierarchy_configuration [MetronomeSDK::Models::
|
1954
|
+
# @param hierarchy_configuration [MetronomeSDK::Models::CommitHierarchyConfiguration] Optional configuration for recurring commit/credit hierarchy access control
|
2622
1955
|
#
|
2623
1956
|
# @param invoice_amount [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::InvoiceAmount] The amount the customer should be billed for the commit. Not required.
|
2624
1957
|
#
|
@@ -2634,7 +1967,7 @@ module MetronomeSDK
|
|
2634
1967
|
#
|
2635
1968
|
# @param rollover_fraction [Float] Will be passed down to the individual commits. This controls how much of an indi
|
2636
1969
|
#
|
2637
|
-
# @param specifiers [Array<MetronomeSDK::Models::
|
1970
|
+
# @param specifiers [Array<MetronomeSDK::Models::CommitSpecifierInput>] List of filters that determine what kind of customer usage draws down a commit o
|
2638
1971
|
#
|
2639
1972
|
# @param subscription_config [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::SubscriptionConfig] Attach a subscription to the recurring commit/credit.
|
2640
1973
|
#
|
@@ -2653,8 +1986,8 @@ module MetronomeSDK
|
|
2653
1986
|
required :unit_price, Float
|
2654
1987
|
|
2655
1988
|
# @!attribute quantity
|
2656
|
-
# This field is
|
2657
|
-
#
|
1989
|
+
# This field is required unless a subscription is attached via
|
1990
|
+
# `subscription_config`.
|
2658
1991
|
#
|
2659
1992
|
# @return [Float, nil]
|
2660
1993
|
optional :quantity, Float
|
@@ -2670,7 +2003,7 @@ module MetronomeSDK
|
|
2670
2003
|
#
|
2671
2004
|
# @param unit_price [Float]
|
2672
2005
|
#
|
2673
|
-
# @param quantity [Float] This field is
|
2006
|
+
# @param quantity [Float] This field is required unless a subscription is attached via `subscription_confi
|
2674
2007
|
end
|
2675
2008
|
|
2676
2009
|
# @see MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit#commit_duration
|
@@ -2683,10 +2016,7 @@ module MetronomeSDK
|
|
2683
2016
|
# @!attribute unit
|
2684
2017
|
#
|
2685
2018
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::CommitDuration::Unit, nil]
|
2686
|
-
optional :unit,
|
2687
|
-
enum: -> {
|
2688
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCommit::CommitDuration::Unit
|
2689
|
-
}
|
2019
|
+
optional :unit, enum: -> { MetronomeSDK::V1::ContractCreateParams::RecurringCommit::CommitDuration::Unit }
|
2690
2020
|
|
2691
2021
|
# @!method initialize(value:, unit: nil)
|
2692
2022
|
# Defines the length of the access schedule for each created commit/credit. The
|
@@ -2707,117 +2037,6 @@ module MetronomeSDK
|
|
2707
2037
|
end
|
2708
2038
|
end
|
2709
2039
|
|
2710
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit#hierarchy_configuration
|
2711
|
-
class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
2712
|
-
# @!attribute child_access
|
2713
|
-
#
|
2714
|
-
# @return [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs]
|
2715
|
-
required :child_access,
|
2716
|
-
union: -> {
|
2717
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess
|
2718
|
-
}
|
2719
|
-
|
2720
|
-
# @!method initialize(child_access:)
|
2721
|
-
# Optional configuration for recurring commit/credit hierarchy access control
|
2722
|
-
#
|
2723
|
-
# @param child_access [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs]
|
2724
|
-
|
2725
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration#child_access
|
2726
|
-
module ChildAccess
|
2727
|
-
extend MetronomeSDK::Internal::Type::Union
|
2728
|
-
|
2729
|
-
variant -> {
|
2730
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll
|
2731
|
-
}
|
2732
|
-
|
2733
|
-
variant -> {
|
2734
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone
|
2735
|
-
}
|
2736
|
-
|
2737
|
-
variant -> {
|
2738
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
|
2739
|
-
}
|
2740
|
-
|
2741
|
-
class CommitHierarchyChildAccessAll < MetronomeSDK::Internal::Type::BaseModel
|
2742
|
-
# @!attribute type
|
2743
|
-
#
|
2744
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type]
|
2745
|
-
required :type,
|
2746
|
-
enum: -> {
|
2747
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type
|
2748
|
-
}
|
2749
|
-
|
2750
|
-
# @!method initialize(type:)
|
2751
|
-
# @param type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type]
|
2752
|
-
|
2753
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll#type
|
2754
|
-
module Type
|
2755
|
-
extend MetronomeSDK::Internal::Type::Enum
|
2756
|
-
|
2757
|
-
ALL = :ALL
|
2758
|
-
|
2759
|
-
# @!method self.values
|
2760
|
-
# @return [Array<Symbol>]
|
2761
|
-
end
|
2762
|
-
end
|
2763
|
-
|
2764
|
-
class CommitHierarchyChildAccessNone < MetronomeSDK::Internal::Type::BaseModel
|
2765
|
-
# @!attribute type
|
2766
|
-
#
|
2767
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type]
|
2768
|
-
required :type,
|
2769
|
-
enum: -> {
|
2770
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type
|
2771
|
-
}
|
2772
|
-
|
2773
|
-
# @!method initialize(type:)
|
2774
|
-
# @param type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type]
|
2775
|
-
|
2776
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone#type
|
2777
|
-
module Type
|
2778
|
-
extend MetronomeSDK::Internal::Type::Enum
|
2779
|
-
|
2780
|
-
NONE = :NONE
|
2781
|
-
|
2782
|
-
# @!method self.values
|
2783
|
-
# @return [Array<Symbol>]
|
2784
|
-
end
|
2785
|
-
end
|
2786
|
-
|
2787
|
-
class CommitHierarchyChildAccessContractIDs < MetronomeSDK::Internal::Type::BaseModel
|
2788
|
-
# @!attribute contract_ids
|
2789
|
-
#
|
2790
|
-
# @return [Array<String>]
|
2791
|
-
required :contract_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
|
2792
|
-
|
2793
|
-
# @!attribute type
|
2794
|
-
#
|
2795
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type]
|
2796
|
-
required :type,
|
2797
|
-
enum: -> {
|
2798
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type
|
2799
|
-
}
|
2800
|
-
|
2801
|
-
# @!method initialize(contract_ids:, type:)
|
2802
|
-
# @param contract_ids [Array<String>]
|
2803
|
-
# @param type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type]
|
2804
|
-
|
2805
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs#type
|
2806
|
-
module Type
|
2807
|
-
extend MetronomeSDK::Internal::Type::Enum
|
2808
|
-
|
2809
|
-
CONTRACT_IDS = :CONTRACT_IDS
|
2810
|
-
|
2811
|
-
# @!method self.values
|
2812
|
-
# @return [Array<Symbol>]
|
2813
|
-
end
|
2814
|
-
end
|
2815
|
-
|
2816
|
-
# @!method self.variants
|
2817
|
-
# @return [Array(MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs)]
|
2818
|
-
end
|
2819
|
-
end
|
2820
|
-
|
2821
2040
|
# @see MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit#invoice_amount
|
2822
2041
|
class InvoiceAmount < MetronomeSDK::Internal::Type::BaseModel
|
2823
2042
|
# @!attribute credit_type_id
|
@@ -2891,53 +2110,13 @@ module MetronomeSDK
|
|
2891
2110
|
# @return [Array<Symbol>]
|
2892
2111
|
end
|
2893
2112
|
|
2894
|
-
class Specifier < MetronomeSDK::Internal::Type::BaseModel
|
2895
|
-
# @!attribute presentation_group_values
|
2896
|
-
#
|
2897
|
-
# @return [Hash{Symbol=>String}, nil]
|
2898
|
-
optional :presentation_group_values, MetronomeSDK::Internal::Type::HashOf[String]
|
2899
|
-
|
2900
|
-
# @!attribute pricing_group_values
|
2901
|
-
#
|
2902
|
-
# @return [Hash{Symbol=>String}, nil]
|
2903
|
-
optional :pricing_group_values, MetronomeSDK::Internal::Type::HashOf[String]
|
2904
|
-
|
2905
|
-
# @!attribute product_id
|
2906
|
-
# If provided, the specifier will only apply to the product with the specified ID.
|
2907
|
-
#
|
2908
|
-
# @return [String, nil]
|
2909
|
-
optional :product_id, String
|
2910
|
-
|
2911
|
-
# @!attribute product_tags
|
2912
|
-
# If provided, the specifier will only apply to products with all the specified
|
2913
|
-
# tags.
|
2914
|
-
#
|
2915
|
-
# @return [Array<String>, nil]
|
2916
|
-
optional :product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
|
2917
|
-
|
2918
|
-
# @!method initialize(presentation_group_values: nil, pricing_group_values: nil, product_id: nil, product_tags: nil)
|
2919
|
-
# Some parameter documentations has been truncated, see
|
2920
|
-
# {MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::Specifier} for
|
2921
|
-
# more details.
|
2922
|
-
#
|
2923
|
-
# @param presentation_group_values [Hash{Symbol=>String}]
|
2924
|
-
#
|
2925
|
-
# @param pricing_group_values [Hash{Symbol=>String}]
|
2926
|
-
#
|
2927
|
-
# @param product_id [String] If provided, the specifier will only apply to the product with the specified ID.
|
2928
|
-
#
|
2929
|
-
# @param product_tags [Array<String>] If provided, the specifier will only apply to products with all the specified ta
|
2930
|
-
end
|
2931
|
-
|
2932
2113
|
# @see MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit#subscription_config
|
2933
2114
|
class SubscriptionConfig < MetronomeSDK::Internal::Type::BaseModel
|
2934
2115
|
# @!attribute apply_seat_increase_config
|
2935
2116
|
#
|
2936
2117
|
# @return [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::SubscriptionConfig::ApplySeatIncreaseConfig]
|
2937
2118
|
required :apply_seat_increase_config,
|
2938
|
-
-> {
|
2939
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCommit::SubscriptionConfig::ApplySeatIncreaseConfig
|
2940
|
-
}
|
2119
|
+
-> { MetronomeSDK::V1::ContractCreateParams::RecurringCommit::SubscriptionConfig::ApplySeatIncreaseConfig }
|
2941
2120
|
|
2942
2121
|
# @!attribute subscription_id
|
2943
2122
|
# ID of the subscription to configure on the recurring commit/credit.
|
@@ -2950,9 +2129,7 @@ module MetronomeSDK
|
|
2950
2129
|
#
|
2951
2130
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCommit::SubscriptionConfig::Allocation, nil]
|
2952
2131
|
optional :allocation,
|
2953
|
-
enum: -> {
|
2954
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCommit::SubscriptionConfig::Allocation
|
2955
|
-
}
|
2132
|
+
enum: -> { MetronomeSDK::V1::ContractCreateParams::RecurringCommit::SubscriptionConfig::Allocation }
|
2956
2133
|
|
2957
2134
|
# @!method initialize(apply_seat_increase_config:, subscription_id:, allocation: nil)
|
2958
2135
|
# Attach a subscription to the recurring commit/credit.
|
@@ -2981,6 +2158,7 @@ module MetronomeSDK
|
|
2981
2158
|
module Allocation
|
2982
2159
|
extend MetronomeSDK::Internal::Type::Enum
|
2983
2160
|
|
2161
|
+
INDIVIDUAL = :INDIVIDUAL
|
2984
2162
|
POOLED = :POOLED
|
2985
2163
|
|
2986
2164
|
# @!method self.values
|
@@ -2994,10 +2172,7 @@ module MetronomeSDK
|
|
2994
2172
|
# The amount of commit to grant.
|
2995
2173
|
#
|
2996
2174
|
# @return [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::AccessAmount]
|
2997
|
-
required :access_amount,
|
2998
|
-
-> {
|
2999
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCredit::AccessAmount
|
3000
|
-
}
|
2175
|
+
required :access_amount, -> { MetronomeSDK::V1::ContractCreateParams::RecurringCredit::AccessAmount }
|
3001
2176
|
|
3002
2177
|
# @!attribute commit_duration
|
3003
2178
|
# Defines the length of the access schedule for each created commit/credit. The
|
@@ -3005,10 +2180,7 @@ module MetronomeSDK
|
|
3005
2180
|
# length of a period is determined by the recurrence_frequency.
|
3006
2181
|
#
|
3007
2182
|
# @return [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::CommitDuration]
|
3008
|
-
required :commit_duration,
|
3009
|
-
-> {
|
3010
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCredit::CommitDuration
|
3011
|
-
}
|
2183
|
+
required :commit_duration, -> { MetronomeSDK::V1::ContractCreateParams::RecurringCredit::CommitDuration }
|
3012
2184
|
|
3013
2185
|
# @!attribute priority
|
3014
2186
|
# Will be passed down to the individual commits
|
@@ -3054,9 +2226,8 @@ module MetronomeSDK
|
|
3054
2226
|
# @!attribute hierarchy_configuration
|
3055
2227
|
# Optional configuration for recurring commit/credit hierarchy access control
|
3056
2228
|
#
|
3057
|
-
# @return [MetronomeSDK::Models::
|
3058
|
-
optional :hierarchy_configuration,
|
3059
|
-
-> { MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration }
|
2229
|
+
# @return [MetronomeSDK::Models::CommitHierarchyConfiguration, nil]
|
2230
|
+
optional :hierarchy_configuration, -> { MetronomeSDK::CommitHierarchyConfiguration }
|
3060
2231
|
|
3061
2232
|
# @!attribute name
|
3062
2233
|
# displayed on invoices. will be passed through to the individual commits
|
@@ -3108,11 +2279,8 @@ module MetronomeSDK
|
|
3108
2279
|
# specifiers to contribute to a commit's or credit's drawdown. This field cannot
|
3109
2280
|
# be used together with `applicable_product_ids` or `applicable_product_tags`.
|
3110
2281
|
#
|
3111
|
-
# @return [Array<MetronomeSDK::Models::
|
3112
|
-
optional :specifiers,
|
3113
|
-
-> {
|
3114
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::RecurringCredit::Specifier]
|
3115
|
-
}
|
2282
|
+
# @return [Array<MetronomeSDK::Models::CommitSpecifierInput>, nil]
|
2283
|
+
optional :specifiers, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::CommitSpecifierInput] }
|
3116
2284
|
|
3117
2285
|
# @!attribute subscription_config
|
3118
2286
|
# Attach a subscription to the recurring commit/credit.
|
@@ -3151,7 +2319,7 @@ module MetronomeSDK
|
|
3151
2319
|
#
|
3152
2320
|
# @param ending_before [Time] Determines when the contract will stop creating recurring commits. optional
|
3153
2321
|
#
|
3154
|
-
# @param hierarchy_configuration [MetronomeSDK::Models::
|
2322
|
+
# @param hierarchy_configuration [MetronomeSDK::Models::CommitHierarchyConfiguration] Optional configuration for recurring commit/credit hierarchy access control
|
3155
2323
|
#
|
3156
2324
|
# @param name [String] displayed on invoices. will be passed through to the individual commits
|
3157
2325
|
#
|
@@ -3165,7 +2333,7 @@ module MetronomeSDK
|
|
3165
2333
|
#
|
3166
2334
|
# @param rollover_fraction [Float] Will be passed down to the individual commits. This controls how much of an indi
|
3167
2335
|
#
|
3168
|
-
# @param specifiers [Array<MetronomeSDK::Models::
|
2336
|
+
# @param specifiers [Array<MetronomeSDK::Models::CommitSpecifierInput>] List of filters that determine what kind of customer usage draws down a commit o
|
3169
2337
|
#
|
3170
2338
|
# @param subscription_config [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::SubscriptionConfig] Attach a subscription to the recurring commit/credit.
|
3171
2339
|
#
|
@@ -3184,8 +2352,8 @@ module MetronomeSDK
|
|
3184
2352
|
required :unit_price, Float
|
3185
2353
|
|
3186
2354
|
# @!attribute quantity
|
3187
|
-
# This field is
|
3188
|
-
#
|
2355
|
+
# This field is required unless a subscription is attached via
|
2356
|
+
# `subscription_config`.
|
3189
2357
|
#
|
3190
2358
|
# @return [Float, nil]
|
3191
2359
|
optional :quantity, Float
|
@@ -3201,7 +2369,7 @@ module MetronomeSDK
|
|
3201
2369
|
#
|
3202
2370
|
# @param unit_price [Float]
|
3203
2371
|
#
|
3204
|
-
# @param quantity [Float] This field is
|
2372
|
+
# @param quantity [Float] This field is required unless a subscription is attached via `subscription_confi
|
3205
2373
|
end
|
3206
2374
|
|
3207
2375
|
# @see MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit#commit_duration
|
@@ -3214,10 +2382,7 @@ module MetronomeSDK
|
|
3214
2382
|
# @!attribute unit
|
3215
2383
|
#
|
3216
2384
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::CommitDuration::Unit, nil]
|
3217
|
-
optional :unit,
|
3218
|
-
enum: -> {
|
3219
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCredit::CommitDuration::Unit
|
3220
|
-
}
|
2385
|
+
optional :unit, enum: -> { MetronomeSDK::V1::ContractCreateParams::RecurringCredit::CommitDuration::Unit }
|
3221
2386
|
|
3222
2387
|
# @!method initialize(value:, unit: nil)
|
3223
2388
|
# Defines the length of the access schedule for each created commit/credit. The
|
@@ -3238,117 +2403,6 @@ module MetronomeSDK
|
|
3238
2403
|
end
|
3239
2404
|
end
|
3240
2405
|
|
3241
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit#hierarchy_configuration
|
3242
|
-
class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
3243
|
-
# @!attribute child_access
|
3244
|
-
#
|
3245
|
-
# @return [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs]
|
3246
|
-
required :child_access,
|
3247
|
-
union: -> {
|
3248
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess
|
3249
|
-
}
|
3250
|
-
|
3251
|
-
# @!method initialize(child_access:)
|
3252
|
-
# Optional configuration for recurring commit/credit hierarchy access control
|
3253
|
-
#
|
3254
|
-
# @param child_access [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs]
|
3255
|
-
|
3256
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration#child_access
|
3257
|
-
module ChildAccess
|
3258
|
-
extend MetronomeSDK::Internal::Type::Union
|
3259
|
-
|
3260
|
-
variant -> {
|
3261
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll
|
3262
|
-
}
|
3263
|
-
|
3264
|
-
variant -> {
|
3265
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone
|
3266
|
-
}
|
3267
|
-
|
3268
|
-
variant -> {
|
3269
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
|
3270
|
-
}
|
3271
|
-
|
3272
|
-
class CommitHierarchyChildAccessAll < MetronomeSDK::Internal::Type::BaseModel
|
3273
|
-
# @!attribute type
|
3274
|
-
#
|
3275
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type]
|
3276
|
-
required :type,
|
3277
|
-
enum: -> {
|
3278
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type
|
3279
|
-
}
|
3280
|
-
|
3281
|
-
# @!method initialize(type:)
|
3282
|
-
# @param type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type]
|
3283
|
-
|
3284
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll#type
|
3285
|
-
module Type
|
3286
|
-
extend MetronomeSDK::Internal::Type::Enum
|
3287
|
-
|
3288
|
-
ALL = :ALL
|
3289
|
-
|
3290
|
-
# @!method self.values
|
3291
|
-
# @return [Array<Symbol>]
|
3292
|
-
end
|
3293
|
-
end
|
3294
|
-
|
3295
|
-
class CommitHierarchyChildAccessNone < MetronomeSDK::Internal::Type::BaseModel
|
3296
|
-
# @!attribute type
|
3297
|
-
#
|
3298
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type]
|
3299
|
-
required :type,
|
3300
|
-
enum: -> {
|
3301
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type
|
3302
|
-
}
|
3303
|
-
|
3304
|
-
# @!method initialize(type:)
|
3305
|
-
# @param type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type]
|
3306
|
-
|
3307
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone#type
|
3308
|
-
module Type
|
3309
|
-
extend MetronomeSDK::Internal::Type::Enum
|
3310
|
-
|
3311
|
-
NONE = :NONE
|
3312
|
-
|
3313
|
-
# @!method self.values
|
3314
|
-
# @return [Array<Symbol>]
|
3315
|
-
end
|
3316
|
-
end
|
3317
|
-
|
3318
|
-
class CommitHierarchyChildAccessContractIDs < MetronomeSDK::Internal::Type::BaseModel
|
3319
|
-
# @!attribute contract_ids
|
3320
|
-
#
|
3321
|
-
# @return [Array<String>]
|
3322
|
-
required :contract_ids, MetronomeSDK::Internal::Type::ArrayOf[String]
|
3323
|
-
|
3324
|
-
# @!attribute type
|
3325
|
-
#
|
3326
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type]
|
3327
|
-
required :type,
|
3328
|
-
enum: -> {
|
3329
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type
|
3330
|
-
}
|
3331
|
-
|
3332
|
-
# @!method initialize(contract_ids:, type:)
|
3333
|
-
# @param contract_ids [Array<String>]
|
3334
|
-
# @param type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type]
|
3335
|
-
|
3336
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs#type
|
3337
|
-
module Type
|
3338
|
-
extend MetronomeSDK::Internal::Type::Enum
|
3339
|
-
|
3340
|
-
CONTRACT_IDS = :CONTRACT_IDS
|
3341
|
-
|
3342
|
-
# @!method self.values
|
3343
|
-
# @return [Array<Symbol>]
|
3344
|
-
end
|
3345
|
-
end
|
3346
|
-
|
3347
|
-
# @!method self.variants
|
3348
|
-
# @return [Array(MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs)]
|
3349
|
-
end
|
3350
|
-
end
|
3351
|
-
|
3352
2406
|
# Determines whether the first and last commit will be prorated. If not provided,
|
3353
2407
|
# the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).
|
3354
2408
|
#
|
@@ -3397,53 +2451,13 @@ module MetronomeSDK
|
|
3397
2451
|
# @return [Array<Symbol>]
|
3398
2452
|
end
|
3399
2453
|
|
3400
|
-
class Specifier < MetronomeSDK::Internal::Type::BaseModel
|
3401
|
-
# @!attribute presentation_group_values
|
3402
|
-
#
|
3403
|
-
# @return [Hash{Symbol=>String}, nil]
|
3404
|
-
optional :presentation_group_values, MetronomeSDK::Internal::Type::HashOf[String]
|
3405
|
-
|
3406
|
-
# @!attribute pricing_group_values
|
3407
|
-
#
|
3408
|
-
# @return [Hash{Symbol=>String}, nil]
|
3409
|
-
optional :pricing_group_values, MetronomeSDK::Internal::Type::HashOf[String]
|
3410
|
-
|
3411
|
-
# @!attribute product_id
|
3412
|
-
# If provided, the specifier will only apply to the product with the specified ID.
|
3413
|
-
#
|
3414
|
-
# @return [String, nil]
|
3415
|
-
optional :product_id, String
|
3416
|
-
|
3417
|
-
# @!attribute product_tags
|
3418
|
-
# If provided, the specifier will only apply to products with all the specified
|
3419
|
-
# tags.
|
3420
|
-
#
|
3421
|
-
# @return [Array<String>, nil]
|
3422
|
-
optional :product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
|
3423
|
-
|
3424
|
-
# @!method initialize(presentation_group_values: nil, pricing_group_values: nil, product_id: nil, product_tags: nil)
|
3425
|
-
# Some parameter documentations has been truncated, see
|
3426
|
-
# {MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::Specifier} for
|
3427
|
-
# more details.
|
3428
|
-
#
|
3429
|
-
# @param presentation_group_values [Hash{Symbol=>String}]
|
3430
|
-
#
|
3431
|
-
# @param pricing_group_values [Hash{Symbol=>String}]
|
3432
|
-
#
|
3433
|
-
# @param product_id [String] If provided, the specifier will only apply to the product with the specified ID.
|
3434
|
-
#
|
3435
|
-
# @param product_tags [Array<String>] If provided, the specifier will only apply to products with all the specified ta
|
3436
|
-
end
|
3437
|
-
|
3438
2454
|
# @see MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit#subscription_config
|
3439
2455
|
class SubscriptionConfig < MetronomeSDK::Internal::Type::BaseModel
|
3440
2456
|
# @!attribute apply_seat_increase_config
|
3441
2457
|
#
|
3442
2458
|
# @return [MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::SubscriptionConfig::ApplySeatIncreaseConfig]
|
3443
2459
|
required :apply_seat_increase_config,
|
3444
|
-
-> {
|
3445
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCredit::SubscriptionConfig::ApplySeatIncreaseConfig
|
3446
|
-
}
|
2460
|
+
-> { MetronomeSDK::V1::ContractCreateParams::RecurringCredit::SubscriptionConfig::ApplySeatIncreaseConfig }
|
3447
2461
|
|
3448
2462
|
# @!attribute subscription_id
|
3449
2463
|
# ID of the subscription to configure on the recurring commit/credit.
|
@@ -3456,9 +2470,7 @@ module MetronomeSDK
|
|
3456
2470
|
#
|
3457
2471
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::RecurringCredit::SubscriptionConfig::Allocation, nil]
|
3458
2472
|
optional :allocation,
|
3459
|
-
enum: -> {
|
3460
|
-
MetronomeSDK::V1::ContractCreateParams::RecurringCredit::SubscriptionConfig::Allocation
|
3461
|
-
}
|
2473
|
+
enum: -> { MetronomeSDK::V1::ContractCreateParams::RecurringCredit::SubscriptionConfig::Allocation }
|
3462
2474
|
|
3463
2475
|
# @!method initialize(apply_seat_increase_config:, subscription_id:, allocation: nil)
|
3464
2476
|
# Attach a subscription to the recurring commit/credit.
|
@@ -3487,6 +2499,7 @@ module MetronomeSDK
|
|
3487
2499
|
module Allocation
|
3488
2500
|
extend MetronomeSDK::Internal::Type::Enum
|
3489
2501
|
|
2502
|
+
INDIVIDUAL = :INDIVIDUAL
|
3490
2503
|
POOLED = :POOLED
|
3491
2504
|
|
3492
2505
|
# @!method self.values
|
@@ -3636,6 +2649,12 @@ module MetronomeSDK
|
|
3636
2649
|
# @return [MetronomeSDK::Models::V1::ContractCreateParams::ScheduledCharge::Schedule]
|
3637
2650
|
required :schedule, -> { MetronomeSDK::V1::ContractCreateParams::ScheduledCharge::Schedule }
|
3638
2651
|
|
2652
|
+
# @!attribute custom_fields
|
2653
|
+
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
2654
|
+
#
|
2655
|
+
# @return [Hash{Symbol=>String}, nil]
|
2656
|
+
optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
|
2657
|
+
|
3639
2658
|
# @!attribute name
|
3640
2659
|
# displayed on invoices
|
3641
2660
|
#
|
@@ -3648,11 +2667,13 @@ module MetronomeSDK
|
|
3648
2667
|
# @return [String, nil]
|
3649
2668
|
optional :netsuite_sales_order_id, String
|
3650
2669
|
|
3651
|
-
# @!method initialize(product_id:, schedule:, name: nil, netsuite_sales_order_id: nil)
|
2670
|
+
# @!method initialize(product_id:, schedule:, custom_fields: nil, name: nil, netsuite_sales_order_id: nil)
|
3652
2671
|
# @param product_id [String]
|
3653
2672
|
#
|
3654
2673
|
# @param schedule [MetronomeSDK::Models::V1::ContractCreateParams::ScheduledCharge::Schedule] Must provide either schedule_items or recurring_schedule.
|
3655
2674
|
#
|
2675
|
+
# @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
2676
|
+
#
|
3656
2677
|
# @param name [String] displayed on invoices
|
3657
2678
|
#
|
3658
2679
|
# @param netsuite_sales_order_id [String] This field's availability is dependent on your client's configuration.
|
@@ -3665,6 +2686,13 @@ module MetronomeSDK
|
|
3665
2686
|
# @return [String, nil]
|
3666
2687
|
optional :credit_type_id, String
|
3667
2688
|
|
2689
|
+
# @!attribute do_not_invoice
|
2690
|
+
# This field is only applicable to commit invoice schedules. If true, this
|
2691
|
+
# schedule will not generate an invoice.
|
2692
|
+
#
|
2693
|
+
# @return [Boolean, nil]
|
2694
|
+
optional :do_not_invoice, MetronomeSDK::Internal::Type::Boolean
|
2695
|
+
|
3668
2696
|
# @!attribute recurring_schedule
|
3669
2697
|
# Enter the unit price and quantity for the charge or instead only send the
|
3670
2698
|
# amount. If amount is sent, the unit price is assumed to be the amount and
|
@@ -3672,20 +2700,16 @@ module MetronomeSDK
|
|
3672
2700
|
#
|
3673
2701
|
# @return [MetronomeSDK::Models::V1::ContractCreateParams::ScheduledCharge::Schedule::RecurringSchedule, nil]
|
3674
2702
|
optional :recurring_schedule,
|
3675
|
-
-> {
|
3676
|
-
MetronomeSDK::V1::ContractCreateParams::ScheduledCharge::Schedule::RecurringSchedule
|
3677
|
-
}
|
2703
|
+
-> { MetronomeSDK::V1::ContractCreateParams::ScheduledCharge::Schedule::RecurringSchedule }
|
3678
2704
|
|
3679
2705
|
# @!attribute schedule_items
|
3680
2706
|
# Either provide amount or provide both unit_price and quantity.
|
3681
2707
|
#
|
3682
2708
|
# @return [Array<MetronomeSDK::Models::V1::ContractCreateParams::ScheduledCharge::Schedule::ScheduleItem>, nil]
|
3683
2709
|
optional :schedule_items,
|
3684
|
-
-> {
|
3685
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::ScheduledCharge::Schedule::ScheduleItem]
|
3686
|
-
}
|
2710
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::ContractCreateParams::ScheduledCharge::Schedule::ScheduleItem] }
|
3687
2711
|
|
3688
|
-
# @!method initialize(credit_type_id: nil, recurring_schedule: nil, schedule_items: nil)
|
2712
|
+
# @!method initialize(credit_type_id: nil, do_not_invoice: nil, recurring_schedule: nil, schedule_items: nil)
|
3689
2713
|
# Some parameter documentations has been truncated, see
|
3690
2714
|
# {MetronomeSDK::Models::V1::ContractCreateParams::ScheduledCharge::Schedule} for
|
3691
2715
|
# more details.
|
@@ -3694,6 +2718,8 @@ module MetronomeSDK
|
|
3694
2718
|
#
|
3695
2719
|
# @param credit_type_id [String] Defaults to USD (cents) if not passed.
|
3696
2720
|
#
|
2721
|
+
# @param do_not_invoice [Boolean] This field is only applicable to commit invoice schedules. If true, this schedul
|
2722
|
+
#
|
3697
2723
|
# @param recurring_schedule [MetronomeSDK::Models::V1::ContractCreateParams::ScheduledCharge::Schedule::RecurringSchedule] Enter the unit price and quantity for the charge or instead only send the amount
|
3698
2724
|
#
|
3699
2725
|
# @param schedule_items [Array<MetronomeSDK::Models::V1::ContractCreateParams::ScheduledCharge::Schedule::ScheduleItem>] Either provide amount or provide both unit_price and quantity.
|
@@ -3704,9 +2730,7 @@ module MetronomeSDK
|
|
3704
2730
|
#
|
3705
2731
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution]
|
3706
2732
|
required :amount_distribution,
|
3707
|
-
enum: -> {
|
3708
|
-
MetronomeSDK::V1::ContractCreateParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution
|
3709
|
-
}
|
2733
|
+
enum: -> { MetronomeSDK::V1::ContractCreateParams::ScheduledCharge::Schedule::RecurringSchedule::AmountDistribution }
|
3710
2734
|
|
3711
2735
|
# @!attribute ending_before
|
3712
2736
|
# RFC 3339 timestamp (exclusive).
|
@@ -3718,9 +2742,7 @@ module MetronomeSDK
|
|
3718
2742
|
#
|
3719
2743
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency]
|
3720
2744
|
required :frequency,
|
3721
|
-
enum: -> {
|
3722
|
-
MetronomeSDK::V1::ContractCreateParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency
|
3723
|
-
}
|
2745
|
+
enum: -> { MetronomeSDK::V1::ContractCreateParams::ScheduledCharge::Schedule::RecurringSchedule::Frequency }
|
3724
2746
|
|
3725
2747
|
# @!attribute starting_at
|
3726
2748
|
# RFC 3339 timestamp (inclusive).
|
@@ -3862,244 +2884,6 @@ module MetronomeSDK
|
|
3862
2884
|
# @return [Array<Symbol>]
|
3863
2885
|
end
|
3864
2886
|
|
3865
|
-
class SpendThresholdConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
3866
|
-
# @!attribute commit
|
3867
|
-
#
|
3868
|
-
# @return [MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::Commit]
|
3869
|
-
required :commit, -> { MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::Commit }
|
3870
|
-
|
3871
|
-
# @!attribute is_enabled
|
3872
|
-
# When set to false, the contract will not be evaluated against the
|
3873
|
-
# threshold_amount. Toggling to true will result an immediate evaluation,
|
3874
|
-
# regardless of prior state.
|
3875
|
-
#
|
3876
|
-
# @return [Boolean]
|
3877
|
-
required :is_enabled, MetronomeSDK::Internal::Type::Boolean
|
3878
|
-
|
3879
|
-
# @!attribute payment_gate_config
|
3880
|
-
#
|
3881
|
-
# @return [MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig]
|
3882
|
-
required :payment_gate_config,
|
3883
|
-
-> {
|
3884
|
-
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig
|
3885
|
-
}
|
3886
|
-
|
3887
|
-
# @!attribute threshold_amount
|
3888
|
-
# Specify the threshold amount for the contract. Each time the contract's usage
|
3889
|
-
# hits this amount, a threshold charge will be initiated.
|
3890
|
-
#
|
3891
|
-
# @return [Float]
|
3892
|
-
required :threshold_amount, Float
|
3893
|
-
|
3894
|
-
# @!method initialize(commit:, is_enabled:, payment_gate_config:, threshold_amount:)
|
3895
|
-
# Some parameter documentations has been truncated, see
|
3896
|
-
# {MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration}
|
3897
|
-
# for more details.
|
3898
|
-
#
|
3899
|
-
# @param commit [MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::Commit]
|
3900
|
-
#
|
3901
|
-
# @param is_enabled [Boolean] When set to false, the contract will not be evaluated against the threshold_amou
|
3902
|
-
#
|
3903
|
-
# @param payment_gate_config [MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig]
|
3904
|
-
#
|
3905
|
-
# @param threshold_amount [Float] Specify the threshold amount for the contract. Each time the contract's usage hi
|
3906
|
-
|
3907
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration#commit
|
3908
|
-
class Commit < MetronomeSDK::Internal::Type::BaseModel
|
3909
|
-
# @!attribute product_id
|
3910
|
-
# The commit product that will be used to generate the line item for commit
|
3911
|
-
# payment.
|
3912
|
-
#
|
3913
|
-
# @return [String]
|
3914
|
-
required :product_id, String
|
3915
|
-
|
3916
|
-
# @!attribute description
|
3917
|
-
#
|
3918
|
-
# @return [String, nil]
|
3919
|
-
optional :description, String
|
3920
|
-
|
3921
|
-
# @!attribute name
|
3922
|
-
# Specify the name of the line item for the threshold charge. If left blank, it
|
3923
|
-
# will default to the commit product name.
|
3924
|
-
#
|
3925
|
-
# @return [String, nil]
|
3926
|
-
optional :name, String
|
3927
|
-
|
3928
|
-
# @!method initialize(product_id:, description: nil, name: nil)
|
3929
|
-
# Some parameter documentations has been truncated, see
|
3930
|
-
# {MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::Commit}
|
3931
|
-
# for more details.
|
3932
|
-
#
|
3933
|
-
# @param product_id [String] The commit product that will be used to generate the line item for commit paymen
|
3934
|
-
#
|
3935
|
-
# @param description [String]
|
3936
|
-
#
|
3937
|
-
# @param name [String] Specify the name of the line item for the threshold charge. If left blank, it wi
|
3938
|
-
end
|
3939
|
-
|
3940
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration#payment_gate_config
|
3941
|
-
class PaymentGateConfig < MetronomeSDK::Internal::Type::BaseModel
|
3942
|
-
# @!attribute payment_gate_type
|
3943
|
-
# Gate access to the commit balance based on successful collection of payment.
|
3944
|
-
# Select STRIPE for Metronome to facilitate payment via Stripe. Select EXTERNAL to
|
3945
|
-
# facilitate payment using your own payment integration. Select NONE if you do not
|
3946
|
-
# wish to payment gate the commit balance.
|
3947
|
-
#
|
3948
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PaymentGateType]
|
3949
|
-
required :payment_gate_type,
|
3950
|
-
enum: -> {
|
3951
|
-
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PaymentGateType
|
3952
|
-
}
|
3953
|
-
|
3954
|
-
# @!attribute precalculated_tax_config
|
3955
|
-
# Only applicable if using PRECALCULATED as your tax type.
|
3956
|
-
#
|
3957
|
-
# @return [MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig, nil]
|
3958
|
-
optional :precalculated_tax_config,
|
3959
|
-
-> {
|
3960
|
-
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
|
3961
|
-
}
|
3962
|
-
|
3963
|
-
# @!attribute stripe_config
|
3964
|
-
# Only applicable if using STRIPE as your payment gate type.
|
3965
|
-
#
|
3966
|
-
# @return [MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig, nil]
|
3967
|
-
optional :stripe_config,
|
3968
|
-
-> {
|
3969
|
-
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig
|
3970
|
-
}
|
3971
|
-
|
3972
|
-
# @!attribute tax_type
|
3973
|
-
# Stripe tax is only supported for Stripe payment gateway. Select NONE if you do
|
3974
|
-
# not wish Metronome to calculate tax on your behalf. Leaving this field blank
|
3975
|
-
# will default to NONE.
|
3976
|
-
#
|
3977
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::TaxType, nil]
|
3978
|
-
optional :tax_type,
|
3979
|
-
enum: -> {
|
3980
|
-
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::TaxType
|
3981
|
-
}
|
3982
|
-
|
3983
|
-
# @!method initialize(payment_gate_type:, precalculated_tax_config: nil, stripe_config: nil, tax_type: nil)
|
3984
|
-
# Some parameter documentations has been truncated, see
|
3985
|
-
# {MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig}
|
3986
|
-
# for more details.
|
3987
|
-
#
|
3988
|
-
# @param payment_gate_type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PaymentGateType] Gate access to the commit balance based on successful collection of payment. Sel
|
3989
|
-
#
|
3990
|
-
# @param precalculated_tax_config [MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig] Only applicable if using PRECALCULATED as your tax type.
|
3991
|
-
#
|
3992
|
-
# @param stripe_config [MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig] Only applicable if using STRIPE as your payment gate type.
|
3993
|
-
#
|
3994
|
-
# @param tax_type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::TaxType] Stripe tax is only supported for Stripe payment gateway. Select NONE if you do n
|
3995
|
-
|
3996
|
-
# Gate access to the commit balance based on successful collection of payment.
|
3997
|
-
# Select STRIPE for Metronome to facilitate payment via Stripe. Select EXTERNAL to
|
3998
|
-
# facilitate payment using your own payment integration. Select NONE if you do not
|
3999
|
-
# wish to payment gate the commit balance.
|
4000
|
-
#
|
4001
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig#payment_gate_type
|
4002
|
-
module PaymentGateType
|
4003
|
-
extend MetronomeSDK::Internal::Type::Enum
|
4004
|
-
|
4005
|
-
NONE = :NONE
|
4006
|
-
STRIPE = :STRIPE
|
4007
|
-
EXTERNAL = :EXTERNAL
|
4008
|
-
|
4009
|
-
# @!method self.values
|
4010
|
-
# @return [Array<Symbol>]
|
4011
|
-
end
|
4012
|
-
|
4013
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig#precalculated_tax_config
|
4014
|
-
class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
|
4015
|
-
# @!attribute tax_amount
|
4016
|
-
# Amount of tax to be applied. This should be in the same currency and
|
4017
|
-
# denomination as the commit's invoice schedule
|
4018
|
-
#
|
4019
|
-
# @return [Float]
|
4020
|
-
required :tax_amount, Float
|
4021
|
-
|
4022
|
-
# @!attribute tax_name
|
4023
|
-
# Name of the tax to be applied. This may be used in an invoice line item
|
4024
|
-
# description.
|
4025
|
-
#
|
4026
|
-
# @return [String, nil]
|
4027
|
-
optional :tax_name, String
|
4028
|
-
|
4029
|
-
# @!method initialize(tax_amount:, tax_name: nil)
|
4030
|
-
# Some parameter documentations has been truncated, see
|
4031
|
-
# {MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig}
|
4032
|
-
# for more details.
|
4033
|
-
#
|
4034
|
-
# Only applicable if using PRECALCULATED as your tax type.
|
4035
|
-
#
|
4036
|
-
# @param tax_amount [Float] Amount of tax to be applied. This should be in the same currency and denominatio
|
4037
|
-
#
|
4038
|
-
# @param tax_name [String] Name of the tax to be applied. This may be used in an invoice line item descript
|
4039
|
-
end
|
4040
|
-
|
4041
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig#stripe_config
|
4042
|
-
class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
|
4043
|
-
# @!attribute payment_type
|
4044
|
-
# If left blank, will default to INVOICE
|
4045
|
-
#
|
4046
|
-
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType]
|
4047
|
-
required :payment_type,
|
4048
|
-
enum: -> {
|
4049
|
-
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType
|
4050
|
-
}
|
4051
|
-
|
4052
|
-
# @!attribute invoice_metadata
|
4053
|
-
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
4054
|
-
# your payment type.
|
4055
|
-
#
|
4056
|
-
# @return [Hash{Symbol=>String}, nil]
|
4057
|
-
optional :invoice_metadata, MetronomeSDK::Internal::Type::HashOf[String]
|
4058
|
-
|
4059
|
-
# @!method initialize(payment_type:, invoice_metadata: nil)
|
4060
|
-
# Some parameter documentations has been truncated, see
|
4061
|
-
# {MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig}
|
4062
|
-
# for more details.
|
4063
|
-
#
|
4064
|
-
# Only applicable if using STRIPE as your payment gate type.
|
4065
|
-
#
|
4066
|
-
# @param payment_type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType] If left blank, will default to INVOICE
|
4067
|
-
#
|
4068
|
-
# @param invoice_metadata [Hash{Symbol=>String}] Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
4069
|
-
|
4070
|
-
# If left blank, will default to INVOICE
|
4071
|
-
#
|
4072
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig#payment_type
|
4073
|
-
module PaymentType
|
4074
|
-
extend MetronomeSDK::Internal::Type::Enum
|
4075
|
-
|
4076
|
-
INVOICE = :INVOICE
|
4077
|
-
PAYMENT_INTENT = :PAYMENT_INTENT
|
4078
|
-
|
4079
|
-
# @!method self.values
|
4080
|
-
# @return [Array<Symbol>]
|
4081
|
-
end
|
4082
|
-
end
|
4083
|
-
|
4084
|
-
# Stripe tax is only supported for Stripe payment gateway. Select NONE if you do
|
4085
|
-
# not wish Metronome to calculate tax on your behalf. Leaving this field blank
|
4086
|
-
# will default to NONE.
|
4087
|
-
#
|
4088
|
-
# @see MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig#tax_type
|
4089
|
-
module TaxType
|
4090
|
-
extend MetronomeSDK::Internal::Type::Enum
|
4091
|
-
|
4092
|
-
NONE = :NONE
|
4093
|
-
STRIPE = :STRIPE
|
4094
|
-
ANROK = :ANROK
|
4095
|
-
PRECALCULATED = :PRECALCULATED
|
4096
|
-
|
4097
|
-
# @!method self.values
|
4098
|
-
# @return [Array<Symbol>]
|
4099
|
-
end
|
4100
|
-
end
|
4101
|
-
end
|
4102
|
-
|
4103
2887
|
class Subscription < MetronomeSDK::Internal::Type::BaseModel
|
4104
2888
|
# @!attribute collection_schedule
|
4105
2889
|
#
|
@@ -4107,12 +2891,6 @@ module MetronomeSDK
|
|
4107
2891
|
required :collection_schedule,
|
4108
2892
|
enum: -> { MetronomeSDK::V1::ContractCreateParams::Subscription::CollectionSchedule }
|
4109
2893
|
|
4110
|
-
# @!attribute initial_quantity
|
4111
|
-
# The initial quantity for the subscription. It must be non-negative value.
|
4112
|
-
#
|
4113
|
-
# @return [Float]
|
4114
|
-
required :initial_quantity, Float
|
4115
|
-
|
4116
2894
|
# @!attribute proration
|
4117
2895
|
#
|
4118
2896
|
# @return [MetronomeSDK::Models::V1::ContractCreateParams::Subscription::Proration]
|
@@ -4121,12 +2899,10 @@ module MetronomeSDK
|
|
4121
2899
|
# @!attribute subscription_rate
|
4122
2900
|
#
|
4123
2901
|
# @return [MetronomeSDK::Models::V1::ContractCreateParams::Subscription::SubscriptionRate]
|
4124
|
-
required :subscription_rate,
|
4125
|
-
-> {
|
4126
|
-
MetronomeSDK::V1::ContractCreateParams::Subscription::SubscriptionRate
|
4127
|
-
}
|
2902
|
+
required :subscription_rate, -> { MetronomeSDK::V1::ContractCreateParams::Subscription::SubscriptionRate }
|
4128
2903
|
|
4129
2904
|
# @!attribute custom_fields
|
2905
|
+
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
4130
2906
|
#
|
4131
2907
|
# @return [Hash{Symbol=>String}, nil]
|
4132
2908
|
optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
|
@@ -4143,11 +2919,28 @@ module MetronomeSDK
|
|
4143
2919
|
# @return [Time, nil]
|
4144
2920
|
optional :ending_before, Time
|
4145
2921
|
|
2922
|
+
# @!attribute initial_quantity
|
2923
|
+
# The initial quantity for the subscription. It must be non-negative value.
|
2924
|
+
# Required if quantity_management_mode is QUANTITY_ONLY.
|
2925
|
+
#
|
2926
|
+
# @return [Float, nil]
|
2927
|
+
optional :initial_quantity, Float
|
2928
|
+
|
4146
2929
|
# @!attribute name
|
4147
2930
|
#
|
4148
2931
|
# @return [String, nil]
|
4149
2932
|
optional :name, String
|
4150
2933
|
|
2934
|
+
# @!attribute quantity_management_mode
|
2935
|
+
# Determines how the subscription's quantity is controlled. Defaults to
|
2936
|
+
# QUANTITY_ONLY. **QUANTITY_ONLY**: The subscription quantity is specified
|
2937
|
+
# directly on the subscription. `initial_quantity` must be provided with this
|
2938
|
+
# option. Compatible with recurring commits/credits that use POOLED allocation.
|
2939
|
+
#
|
2940
|
+
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Subscription::QuantityManagementMode, nil]
|
2941
|
+
optional :quantity_management_mode,
|
2942
|
+
enum: -> { MetronomeSDK::V1::ContractCreateParams::Subscription::QuantityManagementMode }
|
2943
|
+
|
4151
2944
|
# @!attribute starting_at
|
4152
2945
|
# Inclusive start time for the subscription. If not provided, defaults to contract
|
4153
2946
|
# start date
|
@@ -4162,26 +2955,28 @@ module MetronomeSDK
|
|
4162
2955
|
# @return [String, nil]
|
4163
2956
|
optional :temporary_id, String
|
4164
2957
|
|
4165
|
-
# @!method initialize(collection_schedule:,
|
2958
|
+
# @!method initialize(collection_schedule:, proration:, subscription_rate:, custom_fields: nil, description: nil, ending_before: nil, initial_quantity: nil, name: nil, quantity_management_mode: nil, starting_at: nil, temporary_id: nil)
|
4166
2959
|
# Some parameter documentations has been truncated, see
|
4167
2960
|
# {MetronomeSDK::Models::V1::ContractCreateParams::Subscription} for more details.
|
4168
2961
|
#
|
4169
2962
|
# @param collection_schedule [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Subscription::CollectionSchedule]
|
4170
2963
|
#
|
4171
|
-
# @param initial_quantity [Float] The initial quantity for the subscription. It must be non-negative value.
|
4172
|
-
#
|
4173
2964
|
# @param proration [MetronomeSDK::Models::V1::ContractCreateParams::Subscription::Proration]
|
4174
2965
|
#
|
4175
2966
|
# @param subscription_rate [MetronomeSDK::Models::V1::ContractCreateParams::Subscription::SubscriptionRate]
|
4176
2967
|
#
|
4177
|
-
# @param custom_fields [Hash{Symbol=>String}]
|
2968
|
+
# @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
4178
2969
|
#
|
4179
2970
|
# @param description [String]
|
4180
2971
|
#
|
4181
2972
|
# @param ending_before [Time] Exclusive end time for the subscription. If not provided, subscription inherits
|
4182
2973
|
#
|
2974
|
+
# @param initial_quantity [Float] The initial quantity for the subscription. It must be non-negative value. Requir
|
2975
|
+
#
|
4183
2976
|
# @param name [String]
|
4184
2977
|
#
|
2978
|
+
# @param quantity_management_mode [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Subscription::QuantityManagementMode] Determines how the subscription's quantity is controlled. Defaults to QUANTITY_O
|
2979
|
+
#
|
4185
2980
|
# @param starting_at [Time] Inclusive start time for the subscription. If not provided, defaults to contract
|
4186
2981
|
#
|
4187
2982
|
# @param temporary_id [String] A temporary ID used to reference the subscription in recurring commit/credit sub
|
@@ -4208,9 +3003,7 @@ module MetronomeSDK
|
|
4208
3003
|
#
|
4209
3004
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Subscription::Proration::InvoiceBehavior, nil]
|
4210
3005
|
optional :invoice_behavior,
|
4211
|
-
enum: -> {
|
4212
|
-
MetronomeSDK::V1::ContractCreateParams::Subscription::Proration::InvoiceBehavior
|
4213
|
-
}
|
3006
|
+
enum: -> { MetronomeSDK::V1::ContractCreateParams::Subscription::Proration::InvoiceBehavior }
|
4214
3007
|
|
4215
3008
|
# @!attribute is_prorated
|
4216
3009
|
# Indicates if the partial period will be prorated or charged a full amount.
|
@@ -4253,9 +3046,7 @@ module MetronomeSDK
|
|
4253
3046
|
#
|
4254
3047
|
# @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::Subscription::SubscriptionRate::BillingFrequency]
|
4255
3048
|
required :billing_frequency,
|
4256
|
-
enum: -> {
|
4257
|
-
MetronomeSDK::V1::ContractCreateParams::Subscription::SubscriptionRate::BillingFrequency
|
4258
|
-
}
|
3049
|
+
enum: -> { MetronomeSDK::V1::ContractCreateParams::Subscription::SubscriptionRate::BillingFrequency }
|
4259
3050
|
|
4260
3051
|
# @!attribute product_id
|
4261
3052
|
# Must be subscription type product
|
@@ -4288,6 +3079,22 @@ module MetronomeSDK
|
|
4288
3079
|
# @return [Array<Symbol>]
|
4289
3080
|
end
|
4290
3081
|
end
|
3082
|
+
|
3083
|
+
# Determines how the subscription's quantity is controlled. Defaults to
|
3084
|
+
# QUANTITY_ONLY. **QUANTITY_ONLY**: The subscription quantity is specified
|
3085
|
+
# directly on the subscription. `initial_quantity` must be provided with this
|
3086
|
+
# option. Compatible with recurring commits/credits that use POOLED allocation.
|
3087
|
+
#
|
3088
|
+
# @see MetronomeSDK::Models::V1::ContractCreateParams::Subscription#quantity_management_mode
|
3089
|
+
module QuantityManagementMode
|
3090
|
+
extend MetronomeSDK::Internal::Type::Enum
|
3091
|
+
|
3092
|
+
SEAT_BASED = :SEAT_BASED
|
3093
|
+
QUANTITY_ONLY = :QUANTITY_ONLY
|
3094
|
+
|
3095
|
+
# @!method self.values
|
3096
|
+
# @return [Array<Symbol>]
|
3097
|
+
end
|
4291
3098
|
end
|
4292
3099
|
|
4293
3100
|
class Transition < MetronomeSDK::Internal::Type::BaseModel
|