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,311 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module MetronomeSDK
|
|
4
|
+
module Models
|
|
5
|
+
class Subscription < MetronomeSDK::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute billing_periods
|
|
7
|
+
# Previous, current, and next billing periods for the subscription.
|
|
8
|
+
#
|
|
9
|
+
# @return [MetronomeSDK::Models::Subscription::BillingPeriods]
|
|
10
|
+
required :billing_periods, -> { MetronomeSDK::Subscription::BillingPeriods }
|
|
11
|
+
|
|
12
|
+
# @!attribute collection_schedule
|
|
13
|
+
#
|
|
14
|
+
# @return [Symbol, MetronomeSDK::Models::Subscription::CollectionSchedule]
|
|
15
|
+
required :collection_schedule, enum: -> { MetronomeSDK::Subscription::CollectionSchedule }
|
|
16
|
+
|
|
17
|
+
# @!attribute proration
|
|
18
|
+
#
|
|
19
|
+
# @return [MetronomeSDK::Models::Subscription::Proration]
|
|
20
|
+
required :proration, -> { MetronomeSDK::Subscription::Proration }
|
|
21
|
+
|
|
22
|
+
# @!attribute quantity_management_mode
|
|
23
|
+
# Determines how the subscription's quantity is controlled. Defaults to
|
|
24
|
+
# QUANTITY_ONLY. **QUANTITY_ONLY**: The subscription quantity is specified
|
|
25
|
+
# directly on the subscription. `initial_quantity` must be provided with this
|
|
26
|
+
# option. Compatible with recurring commits/credits that use POOLED allocation.
|
|
27
|
+
#
|
|
28
|
+
# @return [Symbol, MetronomeSDK::Models::Subscription::QuantityManagementMode]
|
|
29
|
+
required :quantity_management_mode, enum: -> { MetronomeSDK::Subscription::QuantityManagementMode }
|
|
30
|
+
|
|
31
|
+
# @!attribute quantity_schedule
|
|
32
|
+
# List of quantity schedule items for the subscription. Only includes the current
|
|
33
|
+
# quantity and future quantity changes.
|
|
34
|
+
#
|
|
35
|
+
# @return [Array<MetronomeSDK::Models::Subscription::QuantitySchedule>]
|
|
36
|
+
required :quantity_schedule,
|
|
37
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Subscription::QuantitySchedule] }
|
|
38
|
+
|
|
39
|
+
# @!attribute starting_at
|
|
40
|
+
#
|
|
41
|
+
# @return [Time]
|
|
42
|
+
required :starting_at, Time
|
|
43
|
+
|
|
44
|
+
# @!attribute subscription_rate
|
|
45
|
+
#
|
|
46
|
+
# @return [MetronomeSDK::Models::Subscription::SubscriptionRate]
|
|
47
|
+
required :subscription_rate, -> { MetronomeSDK::Subscription::SubscriptionRate }
|
|
48
|
+
|
|
49
|
+
# @!attribute id
|
|
50
|
+
#
|
|
51
|
+
# @return [String, nil]
|
|
52
|
+
optional :id, String
|
|
53
|
+
|
|
54
|
+
# @!attribute custom_fields
|
|
55
|
+
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
|
56
|
+
#
|
|
57
|
+
# @return [Hash{Symbol=>String}, nil]
|
|
58
|
+
optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
|
|
59
|
+
|
|
60
|
+
# @!attribute description
|
|
61
|
+
#
|
|
62
|
+
# @return [String, nil]
|
|
63
|
+
optional :description, String
|
|
64
|
+
|
|
65
|
+
# @!attribute ending_before
|
|
66
|
+
#
|
|
67
|
+
# @return [Time, nil]
|
|
68
|
+
optional :ending_before, Time
|
|
69
|
+
|
|
70
|
+
# @!attribute fiat_credit_type_id
|
|
71
|
+
#
|
|
72
|
+
# @return [String, nil]
|
|
73
|
+
optional :fiat_credit_type_id, String
|
|
74
|
+
|
|
75
|
+
# @!attribute name
|
|
76
|
+
#
|
|
77
|
+
# @return [String, nil]
|
|
78
|
+
optional :name, String
|
|
79
|
+
|
|
80
|
+
# @!method initialize(billing_periods:, collection_schedule:, proration:, quantity_management_mode:, quantity_schedule:, starting_at:, subscription_rate:, id: nil, custom_fields: nil, description: nil, ending_before: nil, fiat_credit_type_id: nil, name: nil)
|
|
81
|
+
# Some parameter documentations has been truncated, see
|
|
82
|
+
# {MetronomeSDK::Models::Subscription} for more details.
|
|
83
|
+
#
|
|
84
|
+
# @param billing_periods [MetronomeSDK::Models::Subscription::BillingPeriods] Previous, current, and next billing periods for the subscription.
|
|
85
|
+
#
|
|
86
|
+
# @param collection_schedule [Symbol, MetronomeSDK::Models::Subscription::CollectionSchedule]
|
|
87
|
+
#
|
|
88
|
+
# @param proration [MetronomeSDK::Models::Subscription::Proration]
|
|
89
|
+
#
|
|
90
|
+
# @param quantity_management_mode [Symbol, MetronomeSDK::Models::Subscription::QuantityManagementMode] Determines how the subscription's quantity is controlled. Defaults to QUANTITY_O
|
|
91
|
+
#
|
|
92
|
+
# @param quantity_schedule [Array<MetronomeSDK::Models::Subscription::QuantitySchedule>] List of quantity schedule items for the subscription. Only includes the current
|
|
93
|
+
#
|
|
94
|
+
# @param starting_at [Time]
|
|
95
|
+
#
|
|
96
|
+
# @param subscription_rate [MetronomeSDK::Models::Subscription::SubscriptionRate]
|
|
97
|
+
#
|
|
98
|
+
# @param id [String]
|
|
99
|
+
#
|
|
100
|
+
# @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
|
101
|
+
#
|
|
102
|
+
# @param description [String]
|
|
103
|
+
#
|
|
104
|
+
# @param ending_before [Time]
|
|
105
|
+
#
|
|
106
|
+
# @param fiat_credit_type_id [String]
|
|
107
|
+
#
|
|
108
|
+
# @param name [String]
|
|
109
|
+
|
|
110
|
+
# @see MetronomeSDK::Models::Subscription#billing_periods
|
|
111
|
+
class BillingPeriods < MetronomeSDK::Internal::Type::BaseModel
|
|
112
|
+
# @!attribute current
|
|
113
|
+
#
|
|
114
|
+
# @return [MetronomeSDK::Models::Subscription::BillingPeriods::Current, nil]
|
|
115
|
+
optional :current, -> { MetronomeSDK::Subscription::BillingPeriods::Current }
|
|
116
|
+
|
|
117
|
+
# @!attribute next_
|
|
118
|
+
#
|
|
119
|
+
# @return [MetronomeSDK::Models::Subscription::BillingPeriods::Next, nil]
|
|
120
|
+
optional :next_, -> { MetronomeSDK::Subscription::BillingPeriods::Next }, api_name: :next
|
|
121
|
+
|
|
122
|
+
# @!attribute previous
|
|
123
|
+
#
|
|
124
|
+
# @return [MetronomeSDK::Models::Subscription::BillingPeriods::Previous, nil]
|
|
125
|
+
optional :previous, -> { MetronomeSDK::Subscription::BillingPeriods::Previous }
|
|
126
|
+
|
|
127
|
+
# @!method initialize(current: nil, next_: nil, previous: nil)
|
|
128
|
+
# Previous, current, and next billing periods for the subscription.
|
|
129
|
+
#
|
|
130
|
+
# @param current [MetronomeSDK::Models::Subscription::BillingPeriods::Current]
|
|
131
|
+
# @param next_ [MetronomeSDK::Models::Subscription::BillingPeriods::Next]
|
|
132
|
+
# @param previous [MetronomeSDK::Models::Subscription::BillingPeriods::Previous]
|
|
133
|
+
|
|
134
|
+
# @see MetronomeSDK::Models::Subscription::BillingPeriods#current
|
|
135
|
+
class Current < MetronomeSDK::Internal::Type::BaseModel
|
|
136
|
+
# @!attribute ending_before
|
|
137
|
+
#
|
|
138
|
+
# @return [Time]
|
|
139
|
+
required :ending_before, Time
|
|
140
|
+
|
|
141
|
+
# @!attribute starting_at
|
|
142
|
+
#
|
|
143
|
+
# @return [Time]
|
|
144
|
+
required :starting_at, Time
|
|
145
|
+
|
|
146
|
+
# @!method initialize(ending_before:, starting_at:)
|
|
147
|
+
# @param ending_before [Time]
|
|
148
|
+
# @param starting_at [Time]
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
# @see MetronomeSDK::Models::Subscription::BillingPeriods#next_
|
|
152
|
+
class Next < MetronomeSDK::Internal::Type::BaseModel
|
|
153
|
+
# @!attribute ending_before
|
|
154
|
+
#
|
|
155
|
+
# @return [Time]
|
|
156
|
+
required :ending_before, Time
|
|
157
|
+
|
|
158
|
+
# @!attribute starting_at
|
|
159
|
+
#
|
|
160
|
+
# @return [Time]
|
|
161
|
+
required :starting_at, Time
|
|
162
|
+
|
|
163
|
+
# @!method initialize(ending_before:, starting_at:)
|
|
164
|
+
# @param ending_before [Time]
|
|
165
|
+
# @param starting_at [Time]
|
|
166
|
+
end
|
|
167
|
+
|
|
168
|
+
# @see MetronomeSDK::Models::Subscription::BillingPeriods#previous
|
|
169
|
+
class Previous < MetronomeSDK::Internal::Type::BaseModel
|
|
170
|
+
# @!attribute ending_before
|
|
171
|
+
#
|
|
172
|
+
# @return [Time]
|
|
173
|
+
required :ending_before, Time
|
|
174
|
+
|
|
175
|
+
# @!attribute starting_at
|
|
176
|
+
#
|
|
177
|
+
# @return [Time]
|
|
178
|
+
required :starting_at, Time
|
|
179
|
+
|
|
180
|
+
# @!method initialize(ending_before:, starting_at:)
|
|
181
|
+
# @param ending_before [Time]
|
|
182
|
+
# @param starting_at [Time]
|
|
183
|
+
end
|
|
184
|
+
end
|
|
185
|
+
|
|
186
|
+
# @see MetronomeSDK::Models::Subscription#collection_schedule
|
|
187
|
+
module CollectionSchedule
|
|
188
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
189
|
+
|
|
190
|
+
ADVANCE = :ADVANCE
|
|
191
|
+
ARREARS = :ARREARS
|
|
192
|
+
|
|
193
|
+
# @!method self.values
|
|
194
|
+
# @return [Array<Symbol>]
|
|
195
|
+
end
|
|
196
|
+
|
|
197
|
+
# @see MetronomeSDK::Models::Subscription#proration
|
|
198
|
+
class Proration < MetronomeSDK::Internal::Type::BaseModel
|
|
199
|
+
# @!attribute invoice_behavior
|
|
200
|
+
#
|
|
201
|
+
# @return [Symbol, MetronomeSDK::Models::Subscription::Proration::InvoiceBehavior]
|
|
202
|
+
required :invoice_behavior, enum: -> { MetronomeSDK::Subscription::Proration::InvoiceBehavior }
|
|
203
|
+
|
|
204
|
+
# @!attribute is_prorated
|
|
205
|
+
#
|
|
206
|
+
# @return [Boolean]
|
|
207
|
+
required :is_prorated, MetronomeSDK::Internal::Type::Boolean
|
|
208
|
+
|
|
209
|
+
# @!method initialize(invoice_behavior:, is_prorated:)
|
|
210
|
+
# @param invoice_behavior [Symbol, MetronomeSDK::Models::Subscription::Proration::InvoiceBehavior]
|
|
211
|
+
# @param is_prorated [Boolean]
|
|
212
|
+
|
|
213
|
+
# @see MetronomeSDK::Models::Subscription::Proration#invoice_behavior
|
|
214
|
+
module InvoiceBehavior
|
|
215
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
216
|
+
|
|
217
|
+
BILL_IMMEDIATELY = :BILL_IMMEDIATELY
|
|
218
|
+
BILL_ON_NEXT_COLLECTION_DATE = :BILL_ON_NEXT_COLLECTION_DATE
|
|
219
|
+
|
|
220
|
+
# @!method self.values
|
|
221
|
+
# @return [Array<Symbol>]
|
|
222
|
+
end
|
|
223
|
+
end
|
|
224
|
+
|
|
225
|
+
# Determines how the subscription's quantity is controlled. Defaults to
|
|
226
|
+
# QUANTITY_ONLY. **QUANTITY_ONLY**: The subscription quantity is specified
|
|
227
|
+
# directly on the subscription. `initial_quantity` must be provided with this
|
|
228
|
+
# option. Compatible with recurring commits/credits that use POOLED allocation.
|
|
229
|
+
#
|
|
230
|
+
# @see MetronomeSDK::Models::Subscription#quantity_management_mode
|
|
231
|
+
module QuantityManagementMode
|
|
232
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
233
|
+
|
|
234
|
+
SEAT_BASED = :SEAT_BASED
|
|
235
|
+
QUANTITY_ONLY = :QUANTITY_ONLY
|
|
236
|
+
|
|
237
|
+
# @!method self.values
|
|
238
|
+
# @return [Array<Symbol>]
|
|
239
|
+
end
|
|
240
|
+
|
|
241
|
+
class QuantitySchedule < MetronomeSDK::Internal::Type::BaseModel
|
|
242
|
+
# @!attribute quantity
|
|
243
|
+
#
|
|
244
|
+
# @return [Float]
|
|
245
|
+
required :quantity, Float
|
|
246
|
+
|
|
247
|
+
# @!attribute starting_at
|
|
248
|
+
#
|
|
249
|
+
# @return [Time]
|
|
250
|
+
required :starting_at, Time
|
|
251
|
+
|
|
252
|
+
# @!attribute ending_before
|
|
253
|
+
#
|
|
254
|
+
# @return [Time, nil]
|
|
255
|
+
optional :ending_before, Time
|
|
256
|
+
|
|
257
|
+
# @!method initialize(quantity:, starting_at:, ending_before: nil)
|
|
258
|
+
# @param quantity [Float]
|
|
259
|
+
# @param starting_at [Time]
|
|
260
|
+
# @param ending_before [Time]
|
|
261
|
+
end
|
|
262
|
+
|
|
263
|
+
# @see MetronomeSDK::Models::Subscription#subscription_rate
|
|
264
|
+
class SubscriptionRate < MetronomeSDK::Internal::Type::BaseModel
|
|
265
|
+
# @!attribute billing_frequency
|
|
266
|
+
#
|
|
267
|
+
# @return [Symbol, MetronomeSDK::Models::Subscription::SubscriptionRate::BillingFrequency]
|
|
268
|
+
required :billing_frequency, enum: -> { MetronomeSDK::Subscription::SubscriptionRate::BillingFrequency }
|
|
269
|
+
|
|
270
|
+
# @!attribute product
|
|
271
|
+
#
|
|
272
|
+
# @return [MetronomeSDK::Models::Subscription::SubscriptionRate::Product]
|
|
273
|
+
required :product, -> { MetronomeSDK::Subscription::SubscriptionRate::Product }
|
|
274
|
+
|
|
275
|
+
# @!method initialize(billing_frequency:, product:)
|
|
276
|
+
# @param billing_frequency [Symbol, MetronomeSDK::Models::Subscription::SubscriptionRate::BillingFrequency]
|
|
277
|
+
# @param product [MetronomeSDK::Models::Subscription::SubscriptionRate::Product]
|
|
278
|
+
|
|
279
|
+
# @see MetronomeSDK::Models::Subscription::SubscriptionRate#billing_frequency
|
|
280
|
+
module BillingFrequency
|
|
281
|
+
extend MetronomeSDK::Internal::Type::Enum
|
|
282
|
+
|
|
283
|
+
MONTHLY = :MONTHLY
|
|
284
|
+
QUARTERLY = :QUARTERLY
|
|
285
|
+
ANNUAL = :ANNUAL
|
|
286
|
+
WEEKLY = :WEEKLY
|
|
287
|
+
|
|
288
|
+
# @!method self.values
|
|
289
|
+
# @return [Array<Symbol>]
|
|
290
|
+
end
|
|
291
|
+
|
|
292
|
+
# @see MetronomeSDK::Models::Subscription::SubscriptionRate#product
|
|
293
|
+
class Product < MetronomeSDK::Internal::Type::BaseModel
|
|
294
|
+
# @!attribute id
|
|
295
|
+
#
|
|
296
|
+
# @return [String]
|
|
297
|
+
required :id, String
|
|
298
|
+
|
|
299
|
+
# @!attribute name
|
|
300
|
+
#
|
|
301
|
+
# @return [String]
|
|
302
|
+
required :name, String
|
|
303
|
+
|
|
304
|
+
# @!method initialize(id:, name:)
|
|
305
|
+
# @param id [String]
|
|
306
|
+
# @param name [String]
|
|
307
|
+
end
|
|
308
|
+
end
|
|
309
|
+
end
|
|
310
|
+
end
|
|
311
|
+
end
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module MetronomeSDK
|
|
4
|
+
module Models
|
|
5
|
+
class UpdateBaseThresholdCommit < MetronomeSDK::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute description
|
|
7
|
+
#
|
|
8
|
+
# @return [String, nil]
|
|
9
|
+
optional :description, String
|
|
10
|
+
|
|
11
|
+
# @!attribute name
|
|
12
|
+
# Specify the name of the line item for the threshold charge. If left blank, it
|
|
13
|
+
# will default to the commit product name.
|
|
14
|
+
#
|
|
15
|
+
# @return [String, nil]
|
|
16
|
+
optional :name, String
|
|
17
|
+
|
|
18
|
+
# @!attribute product_id
|
|
19
|
+
# The commit product that will be used to generate the line item for commit
|
|
20
|
+
# payment.
|
|
21
|
+
#
|
|
22
|
+
# @return [String, nil]
|
|
23
|
+
optional :product_id, String
|
|
24
|
+
|
|
25
|
+
# @!method initialize(description: nil, name: nil, product_id: nil)
|
|
26
|
+
# Some parameter documentations has been truncated, see
|
|
27
|
+
# {MetronomeSDK::Models::UpdateBaseThresholdCommit} for more details.
|
|
28
|
+
#
|
|
29
|
+
# @param description [String]
|
|
30
|
+
#
|
|
31
|
+
# @param name [String] Specify the name of the line item for the threshold charge. If left blank, it wi
|
|
32
|
+
#
|
|
33
|
+
# @param product_id [String] The commit product that will be used to generate the line item for commit paymen
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -9,21 +9,25 @@ module MetronomeSDK
|
|
|
9
9
|
include MetronomeSDK::Internal::Type::RequestParameters
|
|
10
10
|
|
|
11
11
|
# @!attribute id
|
|
12
|
-
# The Metronome ID of the
|
|
12
|
+
# The Metronome ID of the threshold notification
|
|
13
13
|
#
|
|
14
14
|
# @return [String]
|
|
15
15
|
required :id, String
|
|
16
16
|
|
|
17
17
|
# @!attribute release_uniqueness_key
|
|
18
|
-
# If true, resets the uniqueness key on this
|
|
18
|
+
# If true, resets the uniqueness key on this threshold notification so it can be
|
|
19
|
+
# re-used
|
|
19
20
|
#
|
|
20
21
|
# @return [Boolean, nil]
|
|
21
22
|
optional :release_uniqueness_key, MetronomeSDK::Internal::Type::Boolean
|
|
22
23
|
|
|
23
24
|
# @!method initialize(id:, release_uniqueness_key: nil, request_options: {})
|
|
24
|
-
#
|
|
25
|
+
# Some parameter documentations has been truncated, see
|
|
26
|
+
# {MetronomeSDK::Models::V1::AlertArchiveParams} for more details.
|
|
25
27
|
#
|
|
26
|
-
# @param
|
|
28
|
+
# @param id [String] The Metronome ID of the threshold notification
|
|
29
|
+
#
|
|
30
|
+
# @param release_uniqueness_key [Boolean] If true, resets the uniqueness key on this threshold notification so it can be r
|
|
27
31
|
#
|
|
28
32
|
# @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}]
|
|
29
33
|
end
|
|
@@ -9,41 +9,43 @@ module MetronomeSDK
|
|
|
9
9
|
include MetronomeSDK::Internal::Type::RequestParameters
|
|
10
10
|
|
|
11
11
|
# @!attribute alert_type
|
|
12
|
-
# Type of the
|
|
12
|
+
# Type of the threshold notification
|
|
13
13
|
#
|
|
14
14
|
# @return [Symbol, MetronomeSDK::Models::V1::AlertCreateParams::AlertType]
|
|
15
15
|
required :alert_type, enum: -> { MetronomeSDK::V1::AlertCreateParams::AlertType }
|
|
16
16
|
|
|
17
17
|
# @!attribute name
|
|
18
|
-
# Name of the
|
|
18
|
+
# Name of the threshold notification
|
|
19
19
|
#
|
|
20
20
|
# @return [String]
|
|
21
21
|
required :name, String
|
|
22
22
|
|
|
23
23
|
# @!attribute threshold
|
|
24
|
-
# Threshold value of the
|
|
25
|
-
# may represent a financial amount, the days remaining, or a
|
|
24
|
+
# Threshold value of the notification policy. Depending upon the notification
|
|
25
|
+
# type, this number may represent a financial amount, the days remaining, or a
|
|
26
|
+
# percentage reached.
|
|
26
27
|
#
|
|
27
28
|
# @return [Float]
|
|
28
29
|
required :threshold, Float
|
|
29
30
|
|
|
30
31
|
# @!attribute billable_metric_id
|
|
31
|
-
# For
|
|
32
|
-
# track the usage for.
|
|
32
|
+
# For threshold notifications of type `usage_threshold_reached`, specifies which
|
|
33
|
+
# billable metric to track the usage for.
|
|
33
34
|
#
|
|
34
35
|
# @return [String, nil]
|
|
35
36
|
optional :billable_metric_id, String
|
|
36
37
|
|
|
37
38
|
# @!attribute credit_grant_type_filters
|
|
38
|
-
# An array of strings, representing a way to filter the credit grant this
|
|
39
|
-
# applies to, by looking at the credit_grant_type field on
|
|
40
|
-
# field is only defined for CreditPercentage and
|
|
39
|
+
# An array of strings, representing a way to filter the credit grant this
|
|
40
|
+
# threshold notification applies to, by looking at the credit_grant_type field on
|
|
41
|
+
# the credit grant. This field is only defined for CreditPercentage and
|
|
42
|
+
# CreditBalance notifications
|
|
41
43
|
#
|
|
42
44
|
# @return [Array<String>, nil]
|
|
43
45
|
optional :credit_grant_type_filters, MetronomeSDK::Internal::Type::ArrayOf[String]
|
|
44
46
|
|
|
45
47
|
# @!attribute credit_type_id
|
|
46
|
-
# ID of the credit's currency, defaults to USD. If the specific
|
|
48
|
+
# ID of the credit's currency, defaults to USD. If the specific notification type
|
|
47
49
|
# requires a pricing unit/currency, find the ID in the
|
|
48
50
|
# [Metronome app](https://app.metronome.com/offering/pricing-units).
|
|
49
51
|
#
|
|
@@ -51,48 +53,46 @@ module MetronomeSDK
|
|
|
51
53
|
optional :credit_type_id, String
|
|
52
54
|
|
|
53
55
|
# @!attribute custom_field_filters
|
|
54
|
-
# A list of custom field filters for
|
|
55
|
-
# Only present for contract invoices.
|
|
56
|
+
# A list of custom field filters for threshold notification types that support
|
|
57
|
+
# advanced filtering. Only present for contract invoices.
|
|
56
58
|
#
|
|
57
59
|
# @return [Array<MetronomeSDK::Models::V1::AlertCreateParams::CustomFieldFilter>, nil]
|
|
58
60
|
optional :custom_field_filters,
|
|
59
|
-
-> {
|
|
60
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::AlertCreateParams::CustomFieldFilter]
|
|
61
|
-
}
|
|
61
|
+
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::AlertCreateParams::CustomFieldFilter] }
|
|
62
62
|
|
|
63
63
|
# @!attribute customer_id
|
|
64
|
-
# If provided, will create this
|
|
65
|
-
#
|
|
64
|
+
# If provided, will create this threshold notification for this specific customer.
|
|
65
|
+
# To create a notification for all customers, do not specify a `customer_id`.
|
|
66
66
|
#
|
|
67
67
|
# @return [String, nil]
|
|
68
68
|
optional :customer_id, String
|
|
69
69
|
|
|
70
70
|
# @!attribute evaluate_on_create
|
|
71
|
-
# If true, the
|
|
72
|
-
#
|
|
73
|
-
# trigger the
|
|
71
|
+
# If true, the threshold notification will evaluate immediately on customers that
|
|
72
|
+
# already meet the notification threshold. If false, it will only evaluate on
|
|
73
|
+
# future customers that trigger the threshold. Defaults to true.
|
|
74
74
|
#
|
|
75
75
|
# @return [Boolean, nil]
|
|
76
76
|
optional :evaluate_on_create, MetronomeSDK::Internal::Type::Boolean
|
|
77
77
|
|
|
78
78
|
# @!attribute group_values
|
|
79
|
-
# Only present for `spend_threshold_reached`
|
|
80
|
-
# group key on individual line items.
|
|
79
|
+
# Only present for `spend_threshold_reached` notifications. Scope notification to
|
|
80
|
+
# a specific group key on individual line items.
|
|
81
81
|
#
|
|
82
82
|
# @return [Array<MetronomeSDK::Models::V1::AlertCreateParams::GroupValue>, nil]
|
|
83
83
|
optional :group_values,
|
|
84
84
|
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::AlertCreateParams::GroupValue] }
|
|
85
85
|
|
|
86
86
|
# @!attribute invoice_types_filter
|
|
87
|
-
# Only supported for invoice_total_reached
|
|
88
|
-
# evaluate.
|
|
87
|
+
# Only supported for invoice_total_reached threshold notifications. A list of
|
|
88
|
+
# invoice types to evaluate.
|
|
89
89
|
#
|
|
90
90
|
# @return [Array<String>, nil]
|
|
91
91
|
optional :invoice_types_filter, MetronomeSDK::Internal::Type::ArrayOf[String]
|
|
92
92
|
|
|
93
93
|
# @!attribute plan_id
|
|
94
|
-
# If provided, will create this
|
|
95
|
-
# for all customers, do not specify a `plan_id`.
|
|
94
|
+
# If provided, will create this threshold notification for this specific plan. To
|
|
95
|
+
# create a notification for all customers, do not specify a `plan_id`.
|
|
96
96
|
#
|
|
97
97
|
# @return [String, nil]
|
|
98
98
|
optional :plan_id, String
|
|
@@ -109,35 +109,35 @@ module MetronomeSDK
|
|
|
109
109
|
# Some parameter documentations has been truncated, see
|
|
110
110
|
# {MetronomeSDK::Models::V1::AlertCreateParams} for more details.
|
|
111
111
|
#
|
|
112
|
-
# @param alert_type [Symbol, MetronomeSDK::Models::V1::AlertCreateParams::AlertType] Type of the
|
|
112
|
+
# @param alert_type [Symbol, MetronomeSDK::Models::V1::AlertCreateParams::AlertType] Type of the threshold notification
|
|
113
113
|
#
|
|
114
|
-
# @param name [String] Name of the
|
|
114
|
+
# @param name [String] Name of the threshold notification
|
|
115
115
|
#
|
|
116
|
-
# @param threshold [Float] Threshold value of the
|
|
116
|
+
# @param threshold [Float] Threshold value of the notification policy. Depending upon the notification typ
|
|
117
117
|
#
|
|
118
|
-
# @param billable_metric_id [String] For
|
|
118
|
+
# @param billable_metric_id [String] For threshold notifications of type `usage_threshold_reached`, specifies which b
|
|
119
119
|
#
|
|
120
|
-
# @param credit_grant_type_filters [Array<String>] An array of strings, representing a way to filter the credit grant this
|
|
120
|
+
# @param credit_grant_type_filters [Array<String>] An array of strings, representing a way to filter the credit grant this threshol
|
|
121
121
|
#
|
|
122
|
-
# @param credit_type_id [String] ID of the credit's currency, defaults to USD. If the specific
|
|
122
|
+
# @param credit_type_id [String] ID of the credit's currency, defaults to USD. If the specific notification type
|
|
123
123
|
#
|
|
124
|
-
# @param custom_field_filters [Array<MetronomeSDK::Models::V1::AlertCreateParams::CustomFieldFilter>] A list of custom field filters for
|
|
124
|
+
# @param custom_field_filters [Array<MetronomeSDK::Models::V1::AlertCreateParams::CustomFieldFilter>] A list of custom field filters for threshold notification types that support adv
|
|
125
125
|
#
|
|
126
|
-
# @param customer_id [String] If provided, will create this
|
|
126
|
+
# @param customer_id [String] If provided, will create this threshold notification for this specific customer.
|
|
127
127
|
#
|
|
128
|
-
# @param evaluate_on_create [Boolean] If true, the
|
|
128
|
+
# @param evaluate_on_create [Boolean] If true, the threshold notification will evaluate immediately on customers that
|
|
129
129
|
#
|
|
130
|
-
# @param group_values [Array<MetronomeSDK::Models::V1::AlertCreateParams::GroupValue>] Only present for `spend_threshold_reached`
|
|
130
|
+
# @param group_values [Array<MetronomeSDK::Models::V1::AlertCreateParams::GroupValue>] Only present for `spend_threshold_reached` notifications. Scope notification to
|
|
131
131
|
#
|
|
132
|
-
# @param invoice_types_filter [Array<String>] Only supported for invoice_total_reached
|
|
132
|
+
# @param invoice_types_filter [Array<String>] Only supported for invoice_total_reached threshold notifications. A list of invo
|
|
133
133
|
#
|
|
134
|
-
# @param plan_id [String] If provided, will create this
|
|
134
|
+
# @param plan_id [String] If provided, will create this threshold notification for this specific plan. To
|
|
135
135
|
#
|
|
136
136
|
# @param uniqueness_key [String] Prevents the creation of duplicates. If a request to create a record is made wit
|
|
137
137
|
#
|
|
138
138
|
# @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}]
|
|
139
139
|
|
|
140
|
-
# Type of the
|
|
140
|
+
# Type of the threshold notification
|
|
141
141
|
module AlertType
|
|
142
142
|
extend MetronomeSDK::Internal::Type::Enum
|
|
143
143
|
|
|
@@ -204,10 +204,10 @@ module MetronomeSDK
|
|
|
204
204
|
|
|
205
205
|
# @!attribute value
|
|
206
206
|
#
|
|
207
|
-
# @return [String]
|
|
208
|
-
|
|
207
|
+
# @return [String, nil]
|
|
208
|
+
optional :value, String
|
|
209
209
|
|
|
210
|
-
# @!method initialize(key:, value:)
|
|
210
|
+
# @!method initialize(key:, value: nil)
|
|
211
211
|
# @param key [String]
|
|
212
212
|
# @param value [String]
|
|
213
213
|
end
|
|
@@ -44,8 +44,7 @@ module MetronomeSDK
|
|
|
44
44
|
# represents a set of properties used to slice events into distinct buckets.
|
|
45
45
|
#
|
|
46
46
|
# @return [Array<Array<String>>, nil]
|
|
47
|
-
optional :group_keys,
|
|
48
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Internal::Type::ArrayOf[String]]
|
|
47
|
+
optional :group_keys, MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Internal::Type::ArrayOf[String]]
|
|
49
48
|
|
|
50
49
|
# @!attribute property_filters
|
|
51
50
|
# A list of filters to match events to this billable metric. Each filter defines a
|
|
@@ -40,6 +40,7 @@ module MetronomeSDK
|
|
|
40
40
|
optional :archived_at, Time
|
|
41
41
|
|
|
42
42
|
# @!attribute custom_fields
|
|
43
|
+
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
|
43
44
|
#
|
|
44
45
|
# @return [Hash{Symbol=>String}, nil]
|
|
45
46
|
optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
|
|
@@ -55,8 +56,7 @@ module MetronomeSDK
|
|
|
55
56
|
# represents a set of properties used to slice events into distinct buckets.
|
|
56
57
|
#
|
|
57
58
|
# @return [Array<Array<String>>, nil]
|
|
58
|
-
optional :group_keys,
|
|
59
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Internal::Type::ArrayOf[String]]
|
|
59
|
+
optional :group_keys, MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Internal::Type::ArrayOf[String]]
|
|
60
60
|
|
|
61
61
|
# @!attribute property_filters
|
|
62
62
|
# A list of filters to match events to this billable metric. Each filter defines a
|
|
@@ -86,7 +86,7 @@ module MetronomeSDK
|
|
|
86
86
|
#
|
|
87
87
|
# @param archived_at [Time] RFC 3339 timestamp indicating when the billable metric was archived. If not prov
|
|
88
88
|
#
|
|
89
|
-
# @param custom_fields [Hash{Symbol=>String}]
|
|
89
|
+
# @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
|
90
90
|
#
|
|
91
91
|
# @param event_type_filter [MetronomeSDK::Models::EventTypeFilter] An optional filtering rule to match the 'event_type' property of an event.
|
|
92
92
|
#
|
|
@@ -50,6 +50,7 @@ module MetronomeSDK
|
|
|
50
50
|
optional :archived_at, Time
|
|
51
51
|
|
|
52
52
|
# @!attribute custom_fields
|
|
53
|
+
# Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
|
53
54
|
#
|
|
54
55
|
# @return [Hash{Symbol=>String}, nil]
|
|
55
56
|
optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
|
|
@@ -65,8 +66,7 @@ module MetronomeSDK
|
|
|
65
66
|
# represents a set of properties used to slice events into distinct buckets.
|
|
66
67
|
#
|
|
67
68
|
# @return [Array<Array<String>>, nil]
|
|
68
|
-
optional :group_keys,
|
|
69
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Internal::Type::ArrayOf[String]]
|
|
69
|
+
optional :group_keys, MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Internal::Type::ArrayOf[String]]
|
|
70
70
|
|
|
71
71
|
# @!attribute property_filters
|
|
72
72
|
# A list of filters to match events to this billable metric. Each filter defines a
|
|
@@ -74,10 +74,7 @@ module MetronomeSDK
|
|
|
74
74
|
# billable metric.
|
|
75
75
|
#
|
|
76
76
|
# @return [Array<MetronomeSDK::Models::PropertyFilter>, nil]
|
|
77
|
-
optional :property_filters,
|
|
78
|
-
-> {
|
|
79
|
-
MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::PropertyFilter]
|
|
80
|
-
}
|
|
77
|
+
optional :property_filters, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::PropertyFilter] }
|
|
81
78
|
|
|
82
79
|
# @!attribute sql
|
|
83
80
|
# The SQL query associated with the billable metric
|
|
@@ -100,7 +97,7 @@ module MetronomeSDK
|
|
|
100
97
|
#
|
|
101
98
|
# @param archived_at [Time] RFC 3339 timestamp indicating when the billable metric was archived. If not prov
|
|
102
99
|
#
|
|
103
|
-
# @param custom_fields [Hash{Symbol=>String}]
|
|
100
|
+
# @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
|
|
104
101
|
#
|
|
105
102
|
# @param event_type_filter [MetronomeSDK::Models::EventTypeFilter] An optional filtering rule to match the 'event_type' property of an event.
|
|
106
103
|
#
|