metronome-sdk 0.3.0 → 2.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 +91 -0
- data/README.md +9 -9
- data/lib/metronome_sdk/errors.rb +25 -11
- data/lib/metronome_sdk/file_part.rb +10 -7
- data/lib/metronome_sdk/internal/body_cursor_page.rb +86 -0
- data/lib/metronome_sdk/internal/cursor_page.rb +1 -1
- data/lib/metronome_sdk/internal/cursor_page_without_limit.rb +86 -0
- data/lib/metronome_sdk/internal/transport/base_client.rb +12 -11
- data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +8 -19
- data/lib/metronome_sdk/internal/type/base_model.rb +6 -13
- data/lib/metronome_sdk/internal/type/base_page.rb +1 -1
- data/lib/metronome_sdk/internal/type/enum.rb +25 -0
- data/lib/metronome_sdk/internal/type/file_input.rb +7 -4
- data/lib/metronome_sdk/internal/type/union.rb +11 -0
- data/lib/metronome_sdk/internal/util.rb +9 -8
- 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 +3169 -0
- data/lib/metronome_sdk/models/contract_without_amendments.rb +38 -1128
- 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 +173 -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 +150 -0
- data/lib/metronome_sdk/models/payment_gate_config_v2.rb +150 -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 +311 -0
- data/lib/metronome_sdk/models/update_base_threshold_commit.rb +36 -0
- data/lib/metronome_sdk/models/v1/alert_archive_params.rb +8 -4
- data/lib/metronome_sdk/models/v1/alert_create_params.rb +42 -42
- 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 +58 -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 +315 -1459
- 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 +11 -2
- 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 +6 -18
- data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +3 -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 +4 -6
- data/lib/metronome_sdk/models/v1/customers/alert_reset_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +37 -8
- 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 +48 -54
- data/lib/metronome_sdk/models/v1/customers/invoice.rb +197 -66
- data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rb +1 -4
- data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rb +30 -0
- 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/payment.rb +151 -0
- data/lib/metronome_sdk/models/v1/payment_attempt_params.rb +28 -0
- data/lib/metronome_sdk/models/v1/payment_attempt_response.rb +18 -0
- data/lib/metronome_sdk/models/v1/payment_cancel_params.rb +28 -0
- data/lib/metronome_sdk/models/v1/payment_cancel_response.rb +18 -0
- data/lib/metronome_sdk/models/v1/payment_list_params.rb +53 -0
- data/lib/metronome_sdk/models/v1/payment_status.rb +19 -0
- data/lib/metronome_sdk/models/v1/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 +37 -58
- data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +34 -49
- data/lib/metronome_sdk/models/v2/contract_edit_params.rb +552 -2265
- data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +417 -2317
- 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 +90 -16
- 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 +255 -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 +127 -13
- 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 +179 -8
- data/lib/metronome_sdk/resources/v1/customers.rb +175 -15
- 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/payments.rb +102 -0
- 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 +188 -13
- data/lib/metronome_sdk/resources/v1.rb +4 -0
- data/lib/metronome_sdk/resources/v2/contracts.rb +120 -18
- data/lib/metronome_sdk/version.rb +1 -1
- data/lib/metronome_sdk.rb +33 -3
- data/rbi/metronome_sdk/errors.rbi +31 -4
- data/rbi/metronome_sdk/file_part.rbi +1 -1
- 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/transport/base_client.rbi +4 -5
- data/rbi/metronome_sdk/internal/type/base_page.rbi +1 -1
- data/rbi/metronome_sdk/internal/util.rbi +1 -1
- data/rbi/metronome_sdk/models/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 +6415 -0
- data/rbi/metronome_sdk/models/contract_without_amendments.rbi +186 -2509
- 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 +424 -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 +317 -0
- data/rbi/metronome_sdk/models/payment_gate_config_v2.rbi +326 -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 +635 -0
- data/rbi/metronome_sdk/models/update_base_threshold_commit.rbi +61 -0
- data/rbi/metronome_sdk/models/v1/alert_archive_params.rbi +6 -4
- data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +57 -50
- 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 +49 -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 +1843 -4119
- 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 +10 -0
- data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +6 -21
- data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +10 -9
- 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_list_params.rbi +4 -4
- data/rbi/metronome_sdk/models/v1/customers/alert_reset_params.rbi +2 -2
- data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +68 -8
- 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 +54 -47
- data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +316 -68
- data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbi +50 -0
- data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +2 -0
- data/rbi/metronome_sdk/models/v1/payment.rbi +316 -0
- data/rbi/metronome_sdk/models/v1/payment_attempt_params.rbi +48 -0
- data/rbi/metronome_sdk/models/v1/payment_attempt_response.rbi +35 -0
- data/rbi/metronome_sdk/models/v1/payment_cancel_params.rbi +48 -0
- data/rbi/metronome_sdk/models/v1/payment_cancel_response.rbi +35 -0
- data/rbi/metronome_sdk/models/v1/payment_list_params.rbi +91 -0
- data/rbi/metronome_sdk/models/v1/payment_status.rbi +33 -0
- data/rbi/metronome_sdk/models/v1/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 +74 -76
- data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +74 -76
- data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +3875 -7234
- data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1733 -6207
- 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 +101 -27
- 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 +258 -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 +133 -11
- 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 +159 -7
- data/rbi/metronome_sdk/resources/v1/customers.rbi +162 -14
- 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/payments.rbi +72 -0
- 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 +191 -13
- data/rbi/metronome_sdk/resources/v1.rbi +3 -0
- data/rbi/metronome_sdk/resources/v2/contracts.rbi +134 -23
- data/sig/metronome_sdk/errors.rbs +7 -0
- data/sig/metronome_sdk/file_part.rbs +1 -1
- 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 +3108 -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 +152 -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 +124 -0
- data/sig/metronome_sdk/models/payment_gate_config_v2.rbs +124 -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 +295 -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 +26 -341
- data/sig/metronome_sdk/models/v1/contract_create_params.rbs +219 -1184
- 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_detail.rbs +5 -0
- data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +0 -7
- data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +6 -4
- data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_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/customers/invoice.rbs +137 -24
- data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_pdf_params.rbs +32 -0
- data/sig/metronome_sdk/models/v1/payment.rbs +191 -0
- data/sig/metronome_sdk/models/v1/payment_attempt_params.rbs +30 -0
- data/sig/metronome_sdk/models/v1/payment_attempt_response.rbs +15 -0
- data/sig/metronome_sdk/models/v1/payment_cancel_params.rbs +30 -0
- data/sig/metronome_sdk/models/v1/payment_cancel_response.rbs +15 -0
- data/sig/metronome_sdk/models/v1/payment_list_params.rbs +56 -0
- data/sig/metronome_sdk/models/v1/payment_status.rbs +19 -0
- data/sig/metronome_sdk/models/v1/usage_list_response.rbs +33 -55
- data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +28 -43
- data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +28 -43
- data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +412 -1793
- data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +342 -2149
- 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/invoices.rbs +6 -0
- data/sig/metronome_sdk/resources/v1/customers.rbs +11 -0
- data/sig/metronome_sdk/resources/v1/payments.rbs +30 -0
- data/sig/metronome_sdk/resources/v1/usage.rbs +1 -1
- data/sig/metronome_sdk/resources/v1.rbs +2 -0
- data/sig/metronome_sdk/resources/v2/contracts.rbs +10 -4
- metadata +101 -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,326 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module MetronomeSDK
|
|
4
|
+
module Models
|
|
5
|
+
class PaymentGateConfigV2 < MetronomeSDK::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(
|
|
9
|
+
MetronomeSDK::PaymentGateConfigV2,
|
|
10
|
+
MetronomeSDK::Internal::AnyHash
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# Gate access to the commit balance based on successful collection of payment.
|
|
15
|
+
# Select STRIPE for Metronome to facilitate payment via Stripe. Select EXTERNAL to
|
|
16
|
+
# facilitate payment using your own payment integration. Select NONE if you do not
|
|
17
|
+
# wish to payment gate the commit balance.
|
|
18
|
+
sig do
|
|
19
|
+
returns(MetronomeSDK::PaymentGateConfigV2::PaymentGateType::OrSymbol)
|
|
20
|
+
end
|
|
21
|
+
attr_accessor :payment_gate_type
|
|
22
|
+
|
|
23
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
|
24
|
+
sig do
|
|
25
|
+
returns(
|
|
26
|
+
T.nilable(MetronomeSDK::PaymentGateConfigV2::PrecalculatedTaxConfig)
|
|
27
|
+
)
|
|
28
|
+
end
|
|
29
|
+
attr_reader :precalculated_tax_config
|
|
30
|
+
|
|
31
|
+
sig do
|
|
32
|
+
params(
|
|
33
|
+
precalculated_tax_config:
|
|
34
|
+
MetronomeSDK::PaymentGateConfigV2::PrecalculatedTaxConfig::OrHash
|
|
35
|
+
).void
|
|
36
|
+
end
|
|
37
|
+
attr_writer :precalculated_tax_config
|
|
38
|
+
|
|
39
|
+
# Only applicable if using STRIPE as your payment gateway type.
|
|
40
|
+
sig do
|
|
41
|
+
returns(T.nilable(MetronomeSDK::PaymentGateConfigV2::StripeConfig))
|
|
42
|
+
end
|
|
43
|
+
attr_reader :stripe_config
|
|
44
|
+
|
|
45
|
+
sig do
|
|
46
|
+
params(
|
|
47
|
+
stripe_config: MetronomeSDK::PaymentGateConfigV2::StripeConfig::OrHash
|
|
48
|
+
).void
|
|
49
|
+
end
|
|
50
|
+
attr_writer :stripe_config
|
|
51
|
+
|
|
52
|
+
# Stripe tax is only supported for Stripe payment gateway. Select NONE if you do
|
|
53
|
+
# not wish Metronome to calculate tax on your behalf. Leaving this field blank
|
|
54
|
+
# will default to NONE.
|
|
55
|
+
sig do
|
|
56
|
+
returns(T.nilable(MetronomeSDK::PaymentGateConfigV2::TaxType::OrSymbol))
|
|
57
|
+
end
|
|
58
|
+
attr_reader :tax_type
|
|
59
|
+
|
|
60
|
+
sig do
|
|
61
|
+
params(
|
|
62
|
+
tax_type: MetronomeSDK::PaymentGateConfigV2::TaxType::OrSymbol
|
|
63
|
+
).void
|
|
64
|
+
end
|
|
65
|
+
attr_writer :tax_type
|
|
66
|
+
|
|
67
|
+
sig do
|
|
68
|
+
params(
|
|
69
|
+
payment_gate_type:
|
|
70
|
+
MetronomeSDK::PaymentGateConfigV2::PaymentGateType::OrSymbol,
|
|
71
|
+
precalculated_tax_config:
|
|
72
|
+
MetronomeSDK::PaymentGateConfigV2::PrecalculatedTaxConfig::OrHash,
|
|
73
|
+
stripe_config:
|
|
74
|
+
MetronomeSDK::PaymentGateConfigV2::StripeConfig::OrHash,
|
|
75
|
+
tax_type: MetronomeSDK::PaymentGateConfigV2::TaxType::OrSymbol
|
|
76
|
+
).returns(T.attached_class)
|
|
77
|
+
end
|
|
78
|
+
def self.new(
|
|
79
|
+
# Gate access to the commit balance based on successful collection of payment.
|
|
80
|
+
# Select STRIPE for Metronome to facilitate payment via Stripe. Select EXTERNAL to
|
|
81
|
+
# facilitate payment using your own payment integration. Select NONE if you do not
|
|
82
|
+
# wish to payment gate the commit balance.
|
|
83
|
+
payment_gate_type:,
|
|
84
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
|
85
|
+
precalculated_tax_config: nil,
|
|
86
|
+
# Only applicable if using STRIPE as your payment gateway type.
|
|
87
|
+
stripe_config: nil,
|
|
88
|
+
# Stripe tax is only supported for Stripe payment gateway. Select NONE if you do
|
|
89
|
+
# not wish Metronome to calculate tax on your behalf. Leaving this field blank
|
|
90
|
+
# will default to NONE.
|
|
91
|
+
tax_type: nil
|
|
92
|
+
)
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
sig do
|
|
96
|
+
override.returns(
|
|
97
|
+
{
|
|
98
|
+
payment_gate_type:
|
|
99
|
+
MetronomeSDK::PaymentGateConfigV2::PaymentGateType::OrSymbol,
|
|
100
|
+
precalculated_tax_config:
|
|
101
|
+
MetronomeSDK::PaymentGateConfigV2::PrecalculatedTaxConfig,
|
|
102
|
+
stripe_config: MetronomeSDK::PaymentGateConfigV2::StripeConfig,
|
|
103
|
+
tax_type: MetronomeSDK::PaymentGateConfigV2::TaxType::OrSymbol
|
|
104
|
+
}
|
|
105
|
+
)
|
|
106
|
+
end
|
|
107
|
+
def to_hash
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
# Gate access to the commit balance based on successful collection of payment.
|
|
111
|
+
# Select STRIPE for Metronome to facilitate payment via Stripe. Select EXTERNAL to
|
|
112
|
+
# facilitate payment using your own payment integration. Select NONE if you do not
|
|
113
|
+
# wish to payment gate the commit balance.
|
|
114
|
+
module PaymentGateType
|
|
115
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
116
|
+
|
|
117
|
+
TaggedSymbol =
|
|
118
|
+
T.type_alias do
|
|
119
|
+
T.all(Symbol, MetronomeSDK::PaymentGateConfigV2::PaymentGateType)
|
|
120
|
+
end
|
|
121
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
122
|
+
|
|
123
|
+
NONE =
|
|
124
|
+
T.let(
|
|
125
|
+
:NONE,
|
|
126
|
+
MetronomeSDK::PaymentGateConfigV2::PaymentGateType::TaggedSymbol
|
|
127
|
+
)
|
|
128
|
+
STRIPE =
|
|
129
|
+
T.let(
|
|
130
|
+
:STRIPE,
|
|
131
|
+
MetronomeSDK::PaymentGateConfigV2::PaymentGateType::TaggedSymbol
|
|
132
|
+
)
|
|
133
|
+
EXTERNAL =
|
|
134
|
+
T.let(
|
|
135
|
+
:EXTERNAL,
|
|
136
|
+
MetronomeSDK::PaymentGateConfigV2::PaymentGateType::TaggedSymbol
|
|
137
|
+
)
|
|
138
|
+
|
|
139
|
+
sig do
|
|
140
|
+
override.returns(
|
|
141
|
+
T::Array[
|
|
142
|
+
MetronomeSDK::PaymentGateConfigV2::PaymentGateType::TaggedSymbol
|
|
143
|
+
]
|
|
144
|
+
)
|
|
145
|
+
end
|
|
146
|
+
def self.values
|
|
147
|
+
end
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
|
|
151
|
+
OrHash =
|
|
152
|
+
T.type_alias do
|
|
153
|
+
T.any(
|
|
154
|
+
MetronomeSDK::PaymentGateConfigV2::PrecalculatedTaxConfig,
|
|
155
|
+
MetronomeSDK::Internal::AnyHash
|
|
156
|
+
)
|
|
157
|
+
end
|
|
158
|
+
|
|
159
|
+
# Amount of tax to be applied. This should be in the same currency and
|
|
160
|
+
# denomination as the commit's invoice schedule
|
|
161
|
+
sig { returns(Float) }
|
|
162
|
+
attr_accessor :tax_amount
|
|
163
|
+
|
|
164
|
+
# Name of the tax to be applied. This may be used in an invoice line item
|
|
165
|
+
# description.
|
|
166
|
+
sig { returns(T.nilable(String)) }
|
|
167
|
+
attr_reader :tax_name
|
|
168
|
+
|
|
169
|
+
sig { params(tax_name: String).void }
|
|
170
|
+
attr_writer :tax_name
|
|
171
|
+
|
|
172
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
|
173
|
+
sig do
|
|
174
|
+
params(tax_amount: Float, tax_name: String).returns(T.attached_class)
|
|
175
|
+
end
|
|
176
|
+
def self.new(
|
|
177
|
+
# Amount of tax to be applied. This should be in the same currency and
|
|
178
|
+
# denomination as the commit's invoice schedule
|
|
179
|
+
tax_amount:,
|
|
180
|
+
# Name of the tax to be applied. This may be used in an invoice line item
|
|
181
|
+
# description.
|
|
182
|
+
tax_name: nil
|
|
183
|
+
)
|
|
184
|
+
end
|
|
185
|
+
|
|
186
|
+
sig { override.returns({ tax_amount: Float, tax_name: String }) }
|
|
187
|
+
def to_hash
|
|
188
|
+
end
|
|
189
|
+
end
|
|
190
|
+
|
|
191
|
+
class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
|
|
192
|
+
OrHash =
|
|
193
|
+
T.type_alias do
|
|
194
|
+
T.any(
|
|
195
|
+
MetronomeSDK::PaymentGateConfigV2::StripeConfig,
|
|
196
|
+
MetronomeSDK::Internal::AnyHash
|
|
197
|
+
)
|
|
198
|
+
end
|
|
199
|
+
|
|
200
|
+
# If left blank, will default to INVOICE
|
|
201
|
+
sig do
|
|
202
|
+
returns(
|
|
203
|
+
MetronomeSDK::PaymentGateConfigV2::StripeConfig::PaymentType::OrSymbol
|
|
204
|
+
)
|
|
205
|
+
end
|
|
206
|
+
attr_accessor :payment_type
|
|
207
|
+
|
|
208
|
+
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
|
209
|
+
# your payment type.
|
|
210
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
211
|
+
attr_reader :invoice_metadata
|
|
212
|
+
|
|
213
|
+
sig { params(invoice_metadata: T::Hash[Symbol, String]).void }
|
|
214
|
+
attr_writer :invoice_metadata
|
|
215
|
+
|
|
216
|
+
# Only applicable if using STRIPE as your payment gateway type.
|
|
217
|
+
sig do
|
|
218
|
+
params(
|
|
219
|
+
payment_type:
|
|
220
|
+
MetronomeSDK::PaymentGateConfigV2::StripeConfig::PaymentType::OrSymbol,
|
|
221
|
+
invoice_metadata: T::Hash[Symbol, String]
|
|
222
|
+
).returns(T.attached_class)
|
|
223
|
+
end
|
|
224
|
+
def self.new(
|
|
225
|
+
# If left blank, will default to INVOICE
|
|
226
|
+
payment_type:,
|
|
227
|
+
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
|
228
|
+
# your payment type.
|
|
229
|
+
invoice_metadata: nil
|
|
230
|
+
)
|
|
231
|
+
end
|
|
232
|
+
|
|
233
|
+
sig do
|
|
234
|
+
override.returns(
|
|
235
|
+
{
|
|
236
|
+
payment_type:
|
|
237
|
+
MetronomeSDK::PaymentGateConfigV2::StripeConfig::PaymentType::OrSymbol,
|
|
238
|
+
invoice_metadata: T::Hash[Symbol, String]
|
|
239
|
+
}
|
|
240
|
+
)
|
|
241
|
+
end
|
|
242
|
+
def to_hash
|
|
243
|
+
end
|
|
244
|
+
|
|
245
|
+
# If left blank, will default to INVOICE
|
|
246
|
+
module PaymentType
|
|
247
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
248
|
+
|
|
249
|
+
TaggedSymbol =
|
|
250
|
+
T.type_alias do
|
|
251
|
+
T.all(
|
|
252
|
+
Symbol,
|
|
253
|
+
MetronomeSDK::PaymentGateConfigV2::StripeConfig::PaymentType
|
|
254
|
+
)
|
|
255
|
+
end
|
|
256
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
257
|
+
|
|
258
|
+
INVOICE =
|
|
259
|
+
T.let(
|
|
260
|
+
:INVOICE,
|
|
261
|
+
MetronomeSDK::PaymentGateConfigV2::StripeConfig::PaymentType::TaggedSymbol
|
|
262
|
+
)
|
|
263
|
+
PAYMENT_INTENT =
|
|
264
|
+
T.let(
|
|
265
|
+
:PAYMENT_INTENT,
|
|
266
|
+
MetronomeSDK::PaymentGateConfigV2::StripeConfig::PaymentType::TaggedSymbol
|
|
267
|
+
)
|
|
268
|
+
|
|
269
|
+
sig do
|
|
270
|
+
override.returns(
|
|
271
|
+
T::Array[
|
|
272
|
+
MetronomeSDK::PaymentGateConfigV2::StripeConfig::PaymentType::TaggedSymbol
|
|
273
|
+
]
|
|
274
|
+
)
|
|
275
|
+
end
|
|
276
|
+
def self.values
|
|
277
|
+
end
|
|
278
|
+
end
|
|
279
|
+
end
|
|
280
|
+
|
|
281
|
+
# Stripe tax is only supported for Stripe payment gateway. Select NONE if you do
|
|
282
|
+
# not wish Metronome to calculate tax on your behalf. Leaving this field blank
|
|
283
|
+
# will default to NONE.
|
|
284
|
+
module TaxType
|
|
285
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
286
|
+
|
|
287
|
+
TaggedSymbol =
|
|
288
|
+
T.type_alias do
|
|
289
|
+
T.all(Symbol, MetronomeSDK::PaymentGateConfigV2::TaxType)
|
|
290
|
+
end
|
|
291
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
292
|
+
|
|
293
|
+
NONE =
|
|
294
|
+
T.let(:NONE, MetronomeSDK::PaymentGateConfigV2::TaxType::TaggedSymbol)
|
|
295
|
+
STRIPE =
|
|
296
|
+
T.let(
|
|
297
|
+
:STRIPE,
|
|
298
|
+
MetronomeSDK::PaymentGateConfigV2::TaxType::TaggedSymbol
|
|
299
|
+
)
|
|
300
|
+
ANROK =
|
|
301
|
+
T.let(
|
|
302
|
+
:ANROK,
|
|
303
|
+
MetronomeSDK::PaymentGateConfigV2::TaxType::TaggedSymbol
|
|
304
|
+
)
|
|
305
|
+
AVALARA =
|
|
306
|
+
T.let(
|
|
307
|
+
:AVALARA,
|
|
308
|
+
MetronomeSDK::PaymentGateConfigV2::TaxType::TaggedSymbol
|
|
309
|
+
)
|
|
310
|
+
PRECALCULATED =
|
|
311
|
+
T.let(
|
|
312
|
+
:PRECALCULATED,
|
|
313
|
+
MetronomeSDK::PaymentGateConfigV2::TaxType::TaggedSymbol
|
|
314
|
+
)
|
|
315
|
+
|
|
316
|
+
sig do
|
|
317
|
+
override.returns(
|
|
318
|
+
T::Array[MetronomeSDK::PaymentGateConfigV2::TaxType::TaggedSymbol]
|
|
319
|
+
)
|
|
320
|
+
end
|
|
321
|
+
def self.values
|
|
322
|
+
end
|
|
323
|
+
end
|
|
324
|
+
end
|
|
325
|
+
end
|
|
326
|
+
end
|
|
@@ -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
|