metronome-sdk 0.3.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 +36 -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/base_model.rb +6 -13
- data/lib/metronome_sdk/internal/type/union.rb +11 -0
- 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/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 +57 -411
- data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_params.rb +7 -16
- data/lib/metronome_sdk/models/v1/contract_create_params.rb +236 -1478
- 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 +2 -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 +10 -60
- 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 +61 -48
- 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 +29 -58
- data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +26 -49
- data/lib/metronome_sdk/models/v2/contract_edit_params.rb +414 -2310
- data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +337 -2424
- 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 +25 -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 +114 -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/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/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 +44 -768
- data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_params.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1550 -4079
- 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 +2 -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 +6 -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 +70 -10
- 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 +56 -76
- data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +56 -76
- data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +3419 -7270
- data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1140 -6062
- 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 +25 -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 +120 -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/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/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 +24 -340
- data/sig/metronome_sdk/models/v1/contract_create_params.rbs +168 -1219
- 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/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 +6 -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/usage_list_response.rbs +33 -55
- data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +19 -43
- data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +19 -43
- data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +361 -1917
- data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +242 -2252
- 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/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 +7 -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
@@ -0,0 +1,183 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module MetronomeSDK
|
4
|
+
module Models
|
5
|
+
class PrepaidBalanceThresholdConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
6
|
+
OrHash =
|
7
|
+
T.type_alias do
|
8
|
+
T.any(
|
9
|
+
MetronomeSDK::PrepaidBalanceThresholdConfiguration,
|
10
|
+
MetronomeSDK::Internal::AnyHash
|
11
|
+
)
|
12
|
+
end
|
13
|
+
|
14
|
+
sig do
|
15
|
+
returns(MetronomeSDK::PrepaidBalanceThresholdConfiguration::Commit)
|
16
|
+
end
|
17
|
+
attr_reader :commit
|
18
|
+
|
19
|
+
sig do
|
20
|
+
params(
|
21
|
+
commit:
|
22
|
+
MetronomeSDK::PrepaidBalanceThresholdConfiguration::Commit::OrHash
|
23
|
+
).void
|
24
|
+
end
|
25
|
+
attr_writer :commit
|
26
|
+
|
27
|
+
# When set to false, the contract will not be evaluated against the
|
28
|
+
# threshold_amount. Toggling to true will result an immediate evaluation,
|
29
|
+
# regardless of prior state.
|
30
|
+
sig { returns(T::Boolean) }
|
31
|
+
attr_accessor :is_enabled
|
32
|
+
|
33
|
+
sig { returns(MetronomeSDK::PaymentGateConfig) }
|
34
|
+
attr_reader :payment_gate_config
|
35
|
+
|
36
|
+
sig do
|
37
|
+
params(
|
38
|
+
payment_gate_config: MetronomeSDK::PaymentGateConfig::OrHash
|
39
|
+
).void
|
40
|
+
end
|
41
|
+
attr_writer :payment_gate_config
|
42
|
+
|
43
|
+
# Specify the amount the balance should be recharged to.
|
44
|
+
sig { returns(Float) }
|
45
|
+
attr_accessor :recharge_to_amount
|
46
|
+
|
47
|
+
# Specify the threshold amount for the contract. Each time the contract's prepaid
|
48
|
+
# balance lowers to this amount, a threshold charge will be initiated.
|
49
|
+
sig { returns(Float) }
|
50
|
+
attr_accessor :threshold_amount
|
51
|
+
|
52
|
+
# If provided, the threshold, recharge-to amount, and the resulting threshold
|
53
|
+
# commit amount will be in terms of this credit type instead of the fiat currency.
|
54
|
+
sig { returns(T.nilable(String)) }
|
55
|
+
attr_reader :custom_credit_type_id
|
56
|
+
|
57
|
+
sig { params(custom_credit_type_id: String).void }
|
58
|
+
attr_writer :custom_credit_type_id
|
59
|
+
|
60
|
+
sig do
|
61
|
+
params(
|
62
|
+
commit:
|
63
|
+
MetronomeSDK::PrepaidBalanceThresholdConfiguration::Commit::OrHash,
|
64
|
+
is_enabled: T::Boolean,
|
65
|
+
payment_gate_config: MetronomeSDK::PaymentGateConfig::OrHash,
|
66
|
+
recharge_to_amount: Float,
|
67
|
+
threshold_amount: Float,
|
68
|
+
custom_credit_type_id: String
|
69
|
+
).returns(T.attached_class)
|
70
|
+
end
|
71
|
+
def self.new(
|
72
|
+
commit:,
|
73
|
+
# When set to false, the contract will not be evaluated against the
|
74
|
+
# threshold_amount. Toggling to true will result an immediate evaluation,
|
75
|
+
# regardless of prior state.
|
76
|
+
is_enabled:,
|
77
|
+
payment_gate_config:,
|
78
|
+
# Specify the amount the balance should be recharged to.
|
79
|
+
recharge_to_amount:,
|
80
|
+
# Specify the threshold amount for the contract. Each time the contract's prepaid
|
81
|
+
# balance lowers to this amount, a threshold charge will be initiated.
|
82
|
+
threshold_amount:,
|
83
|
+
# If provided, the threshold, recharge-to amount, and the resulting threshold
|
84
|
+
# commit amount will be in terms of this credit type instead of the fiat currency.
|
85
|
+
custom_credit_type_id: nil
|
86
|
+
)
|
87
|
+
end
|
88
|
+
|
89
|
+
sig do
|
90
|
+
override.returns(
|
91
|
+
{
|
92
|
+
commit: MetronomeSDK::PrepaidBalanceThresholdConfiguration::Commit,
|
93
|
+
is_enabled: T::Boolean,
|
94
|
+
payment_gate_config: MetronomeSDK::PaymentGateConfig,
|
95
|
+
recharge_to_amount: Float,
|
96
|
+
threshold_amount: Float,
|
97
|
+
custom_credit_type_id: String
|
98
|
+
}
|
99
|
+
)
|
100
|
+
end
|
101
|
+
def to_hash
|
102
|
+
end
|
103
|
+
|
104
|
+
class Commit < MetronomeSDK::Models::BaseThresholdCommit
|
105
|
+
OrHash =
|
106
|
+
T.type_alias do
|
107
|
+
T.any(
|
108
|
+
MetronomeSDK::PrepaidBalanceThresholdConfiguration::Commit,
|
109
|
+
MetronomeSDK::Internal::AnyHash
|
110
|
+
)
|
111
|
+
end
|
112
|
+
|
113
|
+
# Which products the threshold commit applies to. If applicable_product_ids,
|
114
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
115
|
+
# all products.
|
116
|
+
sig { returns(T.nilable(T::Array[String])) }
|
117
|
+
attr_reader :applicable_product_ids
|
118
|
+
|
119
|
+
sig { params(applicable_product_ids: T::Array[String]).void }
|
120
|
+
attr_writer :applicable_product_ids
|
121
|
+
|
122
|
+
# Which tags the threshold commit applies to. If applicable_product_ids,
|
123
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
124
|
+
# all products.
|
125
|
+
sig { returns(T.nilable(T::Array[String])) }
|
126
|
+
attr_reader :applicable_product_tags
|
127
|
+
|
128
|
+
sig { params(applicable_product_tags: T::Array[String]).void }
|
129
|
+
attr_writer :applicable_product_tags
|
130
|
+
|
131
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
132
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
133
|
+
# specifiers to contribute to a commit's or credit's drawdown. This field cannot
|
134
|
+
# be used together with `applicable_product_ids` or `applicable_product_tags`.
|
135
|
+
sig { returns(T.nilable(T::Array[MetronomeSDK::CommitSpecifierInput])) }
|
136
|
+
attr_reader :specifiers
|
137
|
+
|
138
|
+
sig do
|
139
|
+
params(
|
140
|
+
specifiers: T::Array[MetronomeSDK::CommitSpecifierInput::OrHash]
|
141
|
+
).void
|
142
|
+
end
|
143
|
+
attr_writer :specifiers
|
144
|
+
|
145
|
+
sig do
|
146
|
+
params(
|
147
|
+
applicable_product_ids: T::Array[String],
|
148
|
+
applicable_product_tags: T::Array[String],
|
149
|
+
specifiers: T::Array[MetronomeSDK::CommitSpecifierInput::OrHash]
|
150
|
+
).returns(T.attached_class)
|
151
|
+
end
|
152
|
+
def self.new(
|
153
|
+
# Which products the threshold commit applies to. If applicable_product_ids,
|
154
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
155
|
+
# all products.
|
156
|
+
applicable_product_ids: nil,
|
157
|
+
# Which tags the threshold commit applies to. If applicable_product_ids,
|
158
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
159
|
+
# all products.
|
160
|
+
applicable_product_tags: nil,
|
161
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
162
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
163
|
+
# specifiers to contribute to a commit's or credit's drawdown. This field cannot
|
164
|
+
# be used together with `applicable_product_ids` or `applicable_product_tags`.
|
165
|
+
specifiers: nil
|
166
|
+
)
|
167
|
+
end
|
168
|
+
|
169
|
+
sig do
|
170
|
+
override.returns(
|
171
|
+
{
|
172
|
+
applicable_product_ids: T::Array[String],
|
173
|
+
applicable_product_tags: T::Array[String],
|
174
|
+
specifiers: T::Array[MetronomeSDK::CommitSpecifierInput]
|
175
|
+
}
|
176
|
+
)
|
177
|
+
end
|
178
|
+
def to_hash
|
179
|
+
end
|
180
|
+
end
|
181
|
+
end
|
182
|
+
end
|
183
|
+
end
|
@@ -0,0 +1,188 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module MetronomeSDK
|
4
|
+
module Models
|
5
|
+
class PrepaidBalanceThresholdConfigurationV2 < MetronomeSDK::Internal::Type::BaseModel
|
6
|
+
OrHash =
|
7
|
+
T.type_alias do
|
8
|
+
T.any(
|
9
|
+
MetronomeSDK::PrepaidBalanceThresholdConfigurationV2,
|
10
|
+
MetronomeSDK::Internal::AnyHash
|
11
|
+
)
|
12
|
+
end
|
13
|
+
|
14
|
+
sig do
|
15
|
+
returns(MetronomeSDK::PrepaidBalanceThresholdConfigurationV2::Commit)
|
16
|
+
end
|
17
|
+
attr_reader :commit
|
18
|
+
|
19
|
+
sig do
|
20
|
+
params(
|
21
|
+
commit:
|
22
|
+
MetronomeSDK::PrepaidBalanceThresholdConfigurationV2::Commit::OrHash
|
23
|
+
).void
|
24
|
+
end
|
25
|
+
attr_writer :commit
|
26
|
+
|
27
|
+
# When set to false, the contract will not be evaluated against the
|
28
|
+
# threshold_amount. Toggling to true will result an immediate evaluation,
|
29
|
+
# regardless of prior state.
|
30
|
+
sig { returns(T::Boolean) }
|
31
|
+
attr_accessor :is_enabled
|
32
|
+
|
33
|
+
sig { returns(MetronomeSDK::PaymentGateConfigV2) }
|
34
|
+
attr_reader :payment_gate_config
|
35
|
+
|
36
|
+
sig do
|
37
|
+
params(
|
38
|
+
payment_gate_config: MetronomeSDK::PaymentGateConfigV2::OrHash
|
39
|
+
).void
|
40
|
+
end
|
41
|
+
attr_writer :payment_gate_config
|
42
|
+
|
43
|
+
# Specify the amount the balance should be recharged to.
|
44
|
+
sig { returns(Float) }
|
45
|
+
attr_accessor :recharge_to_amount
|
46
|
+
|
47
|
+
# Specify the threshold amount for the contract. Each time the contract's balance
|
48
|
+
# lowers to this amount, a threshold charge will be initiated.
|
49
|
+
sig { returns(Float) }
|
50
|
+
attr_accessor :threshold_amount
|
51
|
+
|
52
|
+
# If provided, the threshold, recharge-to amount, and the resulting threshold
|
53
|
+
# commit amount will be in terms of this credit type instead of the fiat currency.
|
54
|
+
sig { returns(T.nilable(String)) }
|
55
|
+
attr_reader :custom_credit_type_id
|
56
|
+
|
57
|
+
sig { params(custom_credit_type_id: String).void }
|
58
|
+
attr_writer :custom_credit_type_id
|
59
|
+
|
60
|
+
sig do
|
61
|
+
params(
|
62
|
+
commit:
|
63
|
+
MetronomeSDK::PrepaidBalanceThresholdConfigurationV2::Commit::OrHash,
|
64
|
+
is_enabled: T::Boolean,
|
65
|
+
payment_gate_config: MetronomeSDK::PaymentGateConfigV2::OrHash,
|
66
|
+
recharge_to_amount: Float,
|
67
|
+
threshold_amount: Float,
|
68
|
+
custom_credit_type_id: String
|
69
|
+
).returns(T.attached_class)
|
70
|
+
end
|
71
|
+
def self.new(
|
72
|
+
commit:,
|
73
|
+
# When set to false, the contract will not be evaluated against the
|
74
|
+
# threshold_amount. Toggling to true will result an immediate evaluation,
|
75
|
+
# regardless of prior state.
|
76
|
+
is_enabled:,
|
77
|
+
payment_gate_config:,
|
78
|
+
# Specify the amount the balance should be recharged to.
|
79
|
+
recharge_to_amount:,
|
80
|
+
# Specify the threshold amount for the contract. Each time the contract's balance
|
81
|
+
# lowers to this amount, a threshold charge will be initiated.
|
82
|
+
threshold_amount:,
|
83
|
+
# If provided, the threshold, recharge-to amount, and the resulting threshold
|
84
|
+
# commit amount will be in terms of this credit type instead of the fiat currency.
|
85
|
+
custom_credit_type_id: nil
|
86
|
+
)
|
87
|
+
end
|
88
|
+
|
89
|
+
sig do
|
90
|
+
override.returns(
|
91
|
+
{
|
92
|
+
commit:
|
93
|
+
MetronomeSDK::PrepaidBalanceThresholdConfigurationV2::Commit,
|
94
|
+
is_enabled: T::Boolean,
|
95
|
+
payment_gate_config: MetronomeSDK::PaymentGateConfigV2,
|
96
|
+
recharge_to_amount: Float,
|
97
|
+
threshold_amount: Float,
|
98
|
+
custom_credit_type_id: String
|
99
|
+
}
|
100
|
+
)
|
101
|
+
end
|
102
|
+
def to_hash
|
103
|
+
end
|
104
|
+
|
105
|
+
class Commit < MetronomeSDK::Models::UpdateBaseThresholdCommit
|
106
|
+
OrHash =
|
107
|
+
T.type_alias do
|
108
|
+
T.any(
|
109
|
+
MetronomeSDK::PrepaidBalanceThresholdConfigurationV2::Commit,
|
110
|
+
MetronomeSDK::Internal::AnyHash
|
111
|
+
)
|
112
|
+
end
|
113
|
+
|
114
|
+
# Which products the threshold commit applies to. If applicable_product_ids,
|
115
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
116
|
+
# all products.
|
117
|
+
sig { returns(T.nilable(T::Array[String])) }
|
118
|
+
attr_reader :applicable_product_ids
|
119
|
+
|
120
|
+
sig { params(applicable_product_ids: T::Array[String]).void }
|
121
|
+
attr_writer :applicable_product_ids
|
122
|
+
|
123
|
+
# Which tags the threshold commit applies to. If applicable_product_ids,
|
124
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
125
|
+
# all products.
|
126
|
+
sig { returns(T.nilable(T::Array[String])) }
|
127
|
+
attr_reader :applicable_product_tags
|
128
|
+
|
129
|
+
sig { params(applicable_product_tags: T::Array[String]).void }
|
130
|
+
attr_writer :applicable_product_tags
|
131
|
+
|
132
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
133
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
134
|
+
# specifiers to contribute to a commit's or credit's drawdown. This field cannot
|
135
|
+
# be used together with `applicable_product_ids` or `applicable_product_tags`.
|
136
|
+
# Instead, to target usage by product or product tag, pass those values in the
|
137
|
+
# body of `specifiers`.
|
138
|
+
sig { returns(T.nilable(T::Array[MetronomeSDK::CommitSpecifierInput])) }
|
139
|
+
attr_reader :specifiers
|
140
|
+
|
141
|
+
sig do
|
142
|
+
params(
|
143
|
+
specifiers: T::Array[MetronomeSDK::CommitSpecifierInput::OrHash]
|
144
|
+
).void
|
145
|
+
end
|
146
|
+
attr_writer :specifiers
|
147
|
+
|
148
|
+
sig do
|
149
|
+
params(
|
150
|
+
applicable_product_ids: T::Array[String],
|
151
|
+
applicable_product_tags: T::Array[String],
|
152
|
+
specifiers: T::Array[MetronomeSDK::CommitSpecifierInput::OrHash]
|
153
|
+
).returns(T.attached_class)
|
154
|
+
end
|
155
|
+
def self.new(
|
156
|
+
# Which products the threshold commit applies to. If applicable_product_ids,
|
157
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
158
|
+
# all products.
|
159
|
+
applicable_product_ids: nil,
|
160
|
+
# Which tags the threshold commit applies to. If applicable_product_ids,
|
161
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
162
|
+
# all products.
|
163
|
+
applicable_product_tags: nil,
|
164
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
165
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
166
|
+
# specifiers to contribute to a commit's or credit's drawdown. This field cannot
|
167
|
+
# be used together with `applicable_product_ids` or `applicable_product_tags`.
|
168
|
+
# Instead, to target usage by product or product tag, pass those values in the
|
169
|
+
# body of `specifiers`.
|
170
|
+
specifiers: nil
|
171
|
+
)
|
172
|
+
end
|
173
|
+
|
174
|
+
sig do
|
175
|
+
override.returns(
|
176
|
+
{
|
177
|
+
applicable_product_ids: T::Array[String],
|
178
|
+
applicable_product_tags: T::Array[String],
|
179
|
+
specifiers: T::Array[MetronomeSDK::CommitSpecifierInput]
|
180
|
+
}
|
181
|
+
)
|
182
|
+
end
|
183
|
+
def to_hash
|
184
|
+
end
|
185
|
+
end
|
186
|
+
end
|
187
|
+
end
|
188
|
+
end
|
@@ -28,6 +28,7 @@ module MetronomeSDK
|
|
28
28
|
sig { returns(Float) }
|
29
29
|
attr_accessor :unit_price
|
30
30
|
|
31
|
+
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
31
32
|
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
32
33
|
attr_reader :custom_fields
|
33
34
|
|
@@ -70,6 +71,7 @@ module MetronomeSDK
|
|
70
71
|
# Unit price for the charge. Will be multiplied by quantity to determine the
|
71
72
|
# amount and must be specified.
|
72
73
|
unit_price:,
|
74
|
+
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
73
75
|
custom_fields: nil,
|
74
76
|
description: nil,
|
75
77
|
# This field's availability is dependent on your client's configuration.
|
@@ -0,0 +1,125 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module MetronomeSDK
|
4
|
+
module Models
|
5
|
+
class RecurringCommitSubscriptionConfig < MetronomeSDK::Internal::Type::BaseModel
|
6
|
+
OrHash =
|
7
|
+
T.type_alias do
|
8
|
+
T.any(
|
9
|
+
MetronomeSDK::RecurringCommitSubscriptionConfig,
|
10
|
+
MetronomeSDK::Internal::AnyHash
|
11
|
+
)
|
12
|
+
end
|
13
|
+
|
14
|
+
sig do
|
15
|
+
returns(
|
16
|
+
MetronomeSDK::RecurringCommitSubscriptionConfig::Allocation::TaggedSymbol
|
17
|
+
)
|
18
|
+
end
|
19
|
+
attr_accessor :allocation
|
20
|
+
|
21
|
+
sig do
|
22
|
+
returns(
|
23
|
+
MetronomeSDK::RecurringCommitSubscriptionConfig::ApplySeatIncreaseConfig
|
24
|
+
)
|
25
|
+
end
|
26
|
+
attr_reader :apply_seat_increase_config
|
27
|
+
|
28
|
+
sig do
|
29
|
+
params(
|
30
|
+
apply_seat_increase_config:
|
31
|
+
MetronomeSDK::RecurringCommitSubscriptionConfig::ApplySeatIncreaseConfig::OrHash
|
32
|
+
).void
|
33
|
+
end
|
34
|
+
attr_writer :apply_seat_increase_config
|
35
|
+
|
36
|
+
sig { returns(String) }
|
37
|
+
attr_accessor :subscription_id
|
38
|
+
|
39
|
+
sig do
|
40
|
+
params(
|
41
|
+
allocation:
|
42
|
+
MetronomeSDK::RecurringCommitSubscriptionConfig::Allocation::OrSymbol,
|
43
|
+
apply_seat_increase_config:
|
44
|
+
MetronomeSDK::RecurringCommitSubscriptionConfig::ApplySeatIncreaseConfig::OrHash,
|
45
|
+
subscription_id: String
|
46
|
+
).returns(T.attached_class)
|
47
|
+
end
|
48
|
+
def self.new(allocation:, apply_seat_increase_config:, subscription_id:)
|
49
|
+
end
|
50
|
+
|
51
|
+
sig do
|
52
|
+
override.returns(
|
53
|
+
{
|
54
|
+
allocation:
|
55
|
+
MetronomeSDK::RecurringCommitSubscriptionConfig::Allocation::TaggedSymbol,
|
56
|
+
apply_seat_increase_config:
|
57
|
+
MetronomeSDK::RecurringCommitSubscriptionConfig::ApplySeatIncreaseConfig,
|
58
|
+
subscription_id: String
|
59
|
+
}
|
60
|
+
)
|
61
|
+
end
|
62
|
+
def to_hash
|
63
|
+
end
|
64
|
+
|
65
|
+
module Allocation
|
66
|
+
extend MetronomeSDK::Internal::Type::Enum
|
67
|
+
|
68
|
+
TaggedSymbol =
|
69
|
+
T.type_alias do
|
70
|
+
T.all(
|
71
|
+
Symbol,
|
72
|
+
MetronomeSDK::RecurringCommitSubscriptionConfig::Allocation
|
73
|
+
)
|
74
|
+
end
|
75
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
76
|
+
|
77
|
+
INDIVIDUAL =
|
78
|
+
T.let(
|
79
|
+
:INDIVIDUAL,
|
80
|
+
MetronomeSDK::RecurringCommitSubscriptionConfig::Allocation::TaggedSymbol
|
81
|
+
)
|
82
|
+
POOLED =
|
83
|
+
T.let(
|
84
|
+
:POOLED,
|
85
|
+
MetronomeSDK::RecurringCommitSubscriptionConfig::Allocation::TaggedSymbol
|
86
|
+
)
|
87
|
+
|
88
|
+
sig do
|
89
|
+
override.returns(
|
90
|
+
T::Array[
|
91
|
+
MetronomeSDK::RecurringCommitSubscriptionConfig::Allocation::TaggedSymbol
|
92
|
+
]
|
93
|
+
)
|
94
|
+
end
|
95
|
+
def self.values
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
99
|
+
class ApplySeatIncreaseConfig < MetronomeSDK::Internal::Type::BaseModel
|
100
|
+
OrHash =
|
101
|
+
T.type_alias do
|
102
|
+
T.any(
|
103
|
+
MetronomeSDK::RecurringCommitSubscriptionConfig::ApplySeatIncreaseConfig,
|
104
|
+
MetronomeSDK::Internal::AnyHash
|
105
|
+
)
|
106
|
+
end
|
107
|
+
|
108
|
+
# Indicates whether a mid-period seat increase should be prorated.
|
109
|
+
sig { returns(T::Boolean) }
|
110
|
+
attr_accessor :is_prorated
|
111
|
+
|
112
|
+
sig { params(is_prorated: T::Boolean).returns(T.attached_class) }
|
113
|
+
def self.new(
|
114
|
+
# Indicates whether a mid-period seat increase should be prorated.
|
115
|
+
is_prorated:
|
116
|
+
)
|
117
|
+
end
|
118
|
+
|
119
|
+
sig { override.returns({ is_prorated: T::Boolean }) }
|
120
|
+
def to_hash
|
121
|
+
end
|
122
|
+
end
|
123
|
+
end
|
124
|
+
end
|
125
|
+
end
|
@@ -31,6 +31,7 @@ module MetronomeSDK
|
|
31
31
|
sig { params(archived_at: Time).void }
|
32
32
|
attr_writer :archived_at
|
33
33
|
|
34
|
+
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
34
35
|
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
35
36
|
attr_reader :custom_fields
|
36
37
|
|
@@ -67,6 +68,7 @@ module MetronomeSDK
|
|
67
68
|
product:,
|
68
69
|
schedule:,
|
69
70
|
archived_at: nil,
|
71
|
+
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
70
72
|
custom_fields: nil,
|
71
73
|
# displayed on invoices
|
72
74
|
name: nil,
|
@@ -0,0 +1,76 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module MetronomeSDK
|
4
|
+
module Models
|
5
|
+
class SpendThresholdConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
6
|
+
OrHash =
|
7
|
+
T.type_alias do
|
8
|
+
T.any(
|
9
|
+
MetronomeSDK::SpendThresholdConfiguration,
|
10
|
+
MetronomeSDK::Internal::AnyHash
|
11
|
+
)
|
12
|
+
end
|
13
|
+
|
14
|
+
sig { returns(MetronomeSDK::BaseThresholdCommit) }
|
15
|
+
attr_reader :commit
|
16
|
+
|
17
|
+
sig { params(commit: MetronomeSDK::BaseThresholdCommit::OrHash).void }
|
18
|
+
attr_writer :commit
|
19
|
+
|
20
|
+
# When set to false, the contract will not be evaluated against the
|
21
|
+
# threshold_amount. Toggling to true will result an immediate evaluation,
|
22
|
+
# regardless of prior state.
|
23
|
+
sig { returns(T::Boolean) }
|
24
|
+
attr_accessor :is_enabled
|
25
|
+
|
26
|
+
sig { returns(MetronomeSDK::PaymentGateConfig) }
|
27
|
+
attr_reader :payment_gate_config
|
28
|
+
|
29
|
+
sig do
|
30
|
+
params(
|
31
|
+
payment_gate_config: MetronomeSDK::PaymentGateConfig::OrHash
|
32
|
+
).void
|
33
|
+
end
|
34
|
+
attr_writer :payment_gate_config
|
35
|
+
|
36
|
+
# Specify the threshold amount for the contract. Each time the contract's usage
|
37
|
+
# hits this amount, a threshold charge will be initiated.
|
38
|
+
sig { returns(Float) }
|
39
|
+
attr_accessor :threshold_amount
|
40
|
+
|
41
|
+
sig do
|
42
|
+
params(
|
43
|
+
commit: MetronomeSDK::BaseThresholdCommit::OrHash,
|
44
|
+
is_enabled: T::Boolean,
|
45
|
+
payment_gate_config: MetronomeSDK::PaymentGateConfig::OrHash,
|
46
|
+
threshold_amount: Float
|
47
|
+
).returns(T.attached_class)
|
48
|
+
end
|
49
|
+
def self.new(
|
50
|
+
commit:,
|
51
|
+
# When set to false, the contract will not be evaluated against the
|
52
|
+
# threshold_amount. Toggling to true will result an immediate evaluation,
|
53
|
+
# regardless of prior state.
|
54
|
+
is_enabled:,
|
55
|
+
payment_gate_config:,
|
56
|
+
# Specify the threshold amount for the contract. Each time the contract's usage
|
57
|
+
# hits this amount, a threshold charge will be initiated.
|
58
|
+
threshold_amount:
|
59
|
+
)
|
60
|
+
end
|
61
|
+
|
62
|
+
sig do
|
63
|
+
override.returns(
|
64
|
+
{
|
65
|
+
commit: MetronomeSDK::BaseThresholdCommit,
|
66
|
+
is_enabled: T::Boolean,
|
67
|
+
payment_gate_config: MetronomeSDK::PaymentGateConfig,
|
68
|
+
threshold_amount: Float
|
69
|
+
}
|
70
|
+
)
|
71
|
+
end
|
72
|
+
def to_hash
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
76
|
+
end
|
@@ -0,0 +1,78 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module MetronomeSDK
|
4
|
+
module Models
|
5
|
+
class SpendThresholdConfigurationV2 < MetronomeSDK::Internal::Type::BaseModel
|
6
|
+
OrHash =
|
7
|
+
T.type_alias do
|
8
|
+
T.any(
|
9
|
+
MetronomeSDK::SpendThresholdConfigurationV2,
|
10
|
+
MetronomeSDK::Internal::AnyHash
|
11
|
+
)
|
12
|
+
end
|
13
|
+
|
14
|
+
sig { returns(MetronomeSDK::UpdateBaseThresholdCommit) }
|
15
|
+
attr_reader :commit
|
16
|
+
|
17
|
+
sig do
|
18
|
+
params(commit: MetronomeSDK::UpdateBaseThresholdCommit::OrHash).void
|
19
|
+
end
|
20
|
+
attr_writer :commit
|
21
|
+
|
22
|
+
# When set to false, the contract will not be evaluated against the
|
23
|
+
# threshold_amount. Toggling to true will result an immediate evaluation,
|
24
|
+
# regardless of prior state.
|
25
|
+
sig { returns(T::Boolean) }
|
26
|
+
attr_accessor :is_enabled
|
27
|
+
|
28
|
+
sig { returns(MetronomeSDK::PaymentGateConfigV2) }
|
29
|
+
attr_reader :payment_gate_config
|
30
|
+
|
31
|
+
sig do
|
32
|
+
params(
|
33
|
+
payment_gate_config: MetronomeSDK::PaymentGateConfigV2::OrHash
|
34
|
+
).void
|
35
|
+
end
|
36
|
+
attr_writer :payment_gate_config
|
37
|
+
|
38
|
+
# Specify the threshold amount for the contract. Each time the contract's usage
|
39
|
+
# hits this amount, a threshold charge will be initiated.
|
40
|
+
sig { returns(Float) }
|
41
|
+
attr_accessor :threshold_amount
|
42
|
+
|
43
|
+
sig do
|
44
|
+
params(
|
45
|
+
commit: MetronomeSDK::UpdateBaseThresholdCommit::OrHash,
|
46
|
+
is_enabled: T::Boolean,
|
47
|
+
payment_gate_config: MetronomeSDK::PaymentGateConfigV2::OrHash,
|
48
|
+
threshold_amount: Float
|
49
|
+
).returns(T.attached_class)
|
50
|
+
end
|
51
|
+
def self.new(
|
52
|
+
commit:,
|
53
|
+
# When set to false, the contract will not be evaluated against the
|
54
|
+
# threshold_amount. Toggling to true will result an immediate evaluation,
|
55
|
+
# regardless of prior state.
|
56
|
+
is_enabled:,
|
57
|
+
payment_gate_config:,
|
58
|
+
# Specify the threshold amount for the contract. Each time the contract's usage
|
59
|
+
# hits this amount, a threshold charge will be initiated.
|
60
|
+
threshold_amount:
|
61
|
+
)
|
62
|
+
end
|
63
|
+
|
64
|
+
sig do
|
65
|
+
override.returns(
|
66
|
+
{
|
67
|
+
commit: MetronomeSDK::UpdateBaseThresholdCommit,
|
68
|
+
is_enabled: T::Boolean,
|
69
|
+
payment_gate_config: MetronomeSDK::PaymentGateConfigV2,
|
70
|
+
threshold_amount: Float
|
71
|
+
}
|
72
|
+
)
|
73
|
+
end
|
74
|
+
def to_hash
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|