metronome-sdk 0.1.0.pre.alpha.2 → 0.1.0.pre.alpha.4
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 +85 -0
- data/README.md +120 -74
- data/SECURITY.md +2 -2
- data/lib/metronome_sdk/client.rb +4 -4
- data/lib/metronome_sdk/errors.rb +22 -0
- data/lib/metronome_sdk/internal/transport/base_client.rb +10 -2
- data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +3 -1
- data/lib/metronome_sdk/internal/type/array_of.rb +14 -1
- data/lib/metronome_sdk/internal/type/base_model.rb +92 -23
- data/lib/metronome_sdk/internal/type/boolean.rb +15 -1
- data/lib/metronome_sdk/internal/type/converter.rb +42 -34
- data/lib/metronome_sdk/internal/type/enum.rb +25 -2
- data/lib/metronome_sdk/internal/type/file_input.rb +13 -1
- data/lib/metronome_sdk/internal/type/hash_of.rb +14 -1
- data/lib/metronome_sdk/internal/type/union.rb +27 -7
- data/lib/metronome_sdk/internal/type/unknown.rb +15 -1
- data/lib/metronome_sdk/internal/util.rb +62 -10
- data/lib/metronome_sdk/internal.rb +3 -0
- data/lib/metronome_sdk/models/commit.rb +230 -87
- data/lib/metronome_sdk/models/contract_without_amendments.rb +551 -185
- data/lib/metronome_sdk/models/credit.rb +201 -51
- data/lib/metronome_sdk/models/discount.rb +5 -5
- data/lib/metronome_sdk/models/event_type_filter.rb +1 -1
- data/lib/metronome_sdk/models/override.rb +53 -34
- data/lib/metronome_sdk/models/pro_service.rb +2 -2
- data/lib/metronome_sdk/models/property_filter.rb +1 -1
- data/lib/metronome_sdk/models/rate.rb +9 -9
- data/lib/metronome_sdk/models/schedule_duration.rb +4 -4
- data/lib/metronome_sdk/models/schedule_point_in_time.rb +11 -11
- data/lib/metronome_sdk/models/scheduled_charge.rb +5 -5
- data/lib/metronome_sdk/models/v1/alert_archive_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/alert_create_params.rb +15 -12
- data/lib/metronome_sdk/models/v1/alert_create_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/audit_log_list_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/billable_metric_archive_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +6 -6
- data/lib/metronome_sdk/models/v1/billable_metric_create_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +4 -4
- data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +4 -4
- data/lib/metronome_sdk/models/v1/contract_amend_params.rb +577 -152
- data/lib/metronome_sdk/models/v1/contract_amend_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/contract_archive_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_params.rb +12 -12
- data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/contract_create_params.rb +1317 -341
- data/lib/metronome_sdk/models/v1/contract_create_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +3 -7
- data/lib/metronome_sdk/models/v1/contract_list_response.rb +421 -36
- data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rb +33 -5
- data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +28 -7
- data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +422 -36
- data/lib/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_params.rb +34 -0
- data/lib/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_response.rb +81 -0
- data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb +4 -4
- data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/contract_update_end_date_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/contracts/product_archive_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +6 -6
- data/lib/metronome_sdk/models/v1/contracts/product_create_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb +5 -5
- data/lib/metronome_sdk/models/v1/contracts/product_list_params.rb +4 -4
- data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +8 -8
- data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +8 -8
- data/lib/metronome_sdk/models/v1/contracts/product_update_params.rb +4 -4
- data/lib/metronome_sdk/models/v1/contracts/product_update_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/contracts/quantity_conversion.rb +3 -3
- data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +3 -3
- data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/contracts/rate_card_create_params.rb +4 -4
- data/lib/metronome_sdk/models/v1/contracts/rate_card_create_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +4 -4
- data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rb +33 -5
- data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +26 -5
- data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +4 -4
- data/lib/metronome_sdk/models/v1/contracts/rate_card_update_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/contracts/rate_card_update_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +46 -18
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +36 -12
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +6 -6
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rb +33 -5
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +26 -5
- data/lib/metronome_sdk/models/v1/credit_grant_create_params.rb +12 -20
- data/lib/metronome_sdk/models/v1/credit_grant_create_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/credit_grant_edit_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/credit_grant_list_entries_params.rb +20 -1
- data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +6 -6
- data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +8 -8
- data/lib/metronome_sdk/models/v1/credit_grant_void_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/credit_ledger_entry.rb +1 -1
- data/lib/metronome_sdk/models/v1/custom_field_add_key_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/custom_field_delete_values_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/custom_field_list_keys_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/custom_field_remove_key_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/custom_field_set_values_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/customer.rb +1 -1
- data/lib/metronome_sdk/models/v1/customer_archive_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/customer_create_params.rb +20 -20
- data/lib/metronome_sdk/models/v1/customer_create_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/customer_detail.rb +10 -10
- data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +4 -4
- data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +115 -0
- data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +18 -0
- data/lib/metronome_sdk/models/v1/customer_retrieve_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/customer_set_name_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/alert_retrieve_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +6 -6
- data/lib/metronome_sdk/models/v1/customers/billing_config_delete_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +9 -1
- data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +86 -32
- data/lib/metronome_sdk/models/v1/customers/commit_create_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/commit_update_end_date_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/credit_create_params.rb +59 -7
- data/lib/metronome_sdk/models/v1/customers/credit_create_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/credit_update_end_date_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +24 -24
- data/lib/metronome_sdk/models/v1/customers/invoice.rb +74 -73
- data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rb +4 -4
- data/lib/metronome_sdk/models/v1/customers/invoice_list_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/plan_add_params.rb +16 -15
- data/lib/metronome_sdk/models/v1/customers/plan_add_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +14 -13
- data/lib/metronome_sdk/models/v1/plan_detail.rb +18 -18
- data/lib/metronome_sdk/models/v1/plan_get_details_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/plan_list_customers_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +2 -2
- data/lib/metronome_sdk/models/v1/rollover_amount_max_amount.rb +3 -3
- data/lib/metronome_sdk/models/v1/rollover_amount_max_percentage.rb +3 -3
- data/lib/metronome_sdk/models/v1/usage_ingest_params.rb +2 -2
- data/lib/metronome_sdk/models/v1/usage_list_params.rb +9 -8
- data/lib/metronome_sdk/models/v1/usage_list_with_groups_params.rb +5 -5
- data/lib/metronome_sdk/models/v1/usage_search_params.rb +24 -0
- data/lib/metronome_sdk/models/v1/usage_search_response.rb +249 -0
- data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +78 -23
- data/lib/metronome_sdk/models/v2/contract_edit_commit_response.rb +2 -2
- data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +62 -9
- data/lib/metronome_sdk/models/v2/contract_edit_credit_response.rb +2 -2
- data/lib/metronome_sdk/models/v2/contract_edit_params.rb +1995 -443
- data/lib/metronome_sdk/models/v2/contract_edit_response.rb +2 -2
- data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +1959 -140
- data/lib/metronome_sdk/models/v2/contract_list_response.rb +963 -91
- data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +964 -91
- data/lib/metronome_sdk/models.rb +30 -19
- data/lib/metronome_sdk/resources/v1/alerts.rb +4 -4
- data/lib/metronome_sdk/resources/v1/audit_logs.rb +1 -1
- data/lib/metronome_sdk/resources/v1/billable_metrics.rb +3 -3
- data/lib/metronome_sdk/resources/v1/contracts/products.rb +9 -6
- data/lib/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rb +1 -1
- data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +8 -6
- data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +4 -4
- data/lib/metronome_sdk/resources/v1/contracts.rb +59 -28
- data/lib/metronome_sdk/resources/v1/credit_grants.rb +7 -5
- data/lib/metronome_sdk/resources/v1/custom_fields.rb +5 -5
- data/lib/metronome_sdk/resources/v1/customers/alerts.rb +2 -2
- data/lib/metronome_sdk/resources/v1/customers/billing_config.rb +5 -5
- data/lib/metronome_sdk/resources/v1/customers/commits.rb +9 -7
- data/lib/metronome_sdk/resources/v1/customers/credits.rb +5 -3
- data/lib/metronome_sdk/resources/v1/customers/invoices.rb +4 -4
- data/lib/metronome_sdk/resources/v1/customers/plans.rb +3 -3
- data/lib/metronome_sdk/resources/v1/customers.rb +43 -4
- data/lib/metronome_sdk/resources/v1/dashboards.rb +4 -4
- data/lib/metronome_sdk/resources/v1/plans.rb +1 -1
- data/lib/metronome_sdk/resources/v1/usage.rb +30 -5
- data/lib/metronome_sdk/resources/v2/contracts.rb +45 -31
- data/lib/metronome_sdk/version.rb +1 -1
- data/lib/metronome_sdk.rb +9 -1
- data/rbi/metronome_sdk/errors.rbi +16 -0
- data/rbi/metronome_sdk/internal/transport/pooled_net_requester.rbi +5 -1
- data/rbi/metronome_sdk/internal/type/array_of.rbi +6 -0
- data/rbi/metronome_sdk/internal/type/base_model.rbi +5 -0
- data/rbi/metronome_sdk/internal/type/boolean.rbi +8 -0
- data/rbi/metronome_sdk/internal/type/converter.rbi +15 -15
- data/rbi/metronome_sdk/internal/type/enum.rbi +5 -0
- data/rbi/metronome_sdk/internal/type/file_input.rbi +5 -0
- data/rbi/metronome_sdk/internal/type/hash_of.rbi +6 -0
- data/rbi/metronome_sdk/internal/type/union.rbi +10 -0
- data/rbi/metronome_sdk/internal/type/unknown.rbi +8 -0
- data/rbi/metronome_sdk/internal/util.rbi +36 -0
- data/rbi/metronome_sdk/internal.rbi +5 -0
- data/rbi/metronome_sdk/models/commit.rbi +376 -39
- data/rbi/metronome_sdk/models/contract_without_amendments.rbi +791 -54
- data/rbi/metronome_sdk/models/credit.rbi +376 -25
- data/rbi/metronome_sdk/models/override.rbi +66 -0
- data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +9 -9
- data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +10 -4
- data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +995 -17
- data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +2220 -136
- data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +9 -2
- data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +820 -28
- data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rbi +72 -0
- data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +66 -0
- data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +820 -28
- data/rbi/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_params.rbi +58 -0
- data/rbi/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_response.rbi +212 -0
- data/rbi/metronome_sdk/models/v1/contracts/product_list_params.rbi +3 -3
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rbi +72 -0
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +66 -0
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +72 -0
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +72 -0
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rbi +72 -0
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +66 -0
- data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_params.rbi +58 -0
- data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +214 -0
- data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +35 -0
- data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +11 -0
- data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +121 -8
- data/rbi/metronome_sdk/models/v1/customers/credit_create_params.rbi +109 -0
- data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +5 -0
- data/rbi/metronome_sdk/models/v1/usage_search_params.rbi +48 -0
- data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +438 -0
- data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +113 -8
- data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +101 -0
- data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +3667 -315
- data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +5965 -2014
- data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +2279 -226
- data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +2279 -226
- data/rbi/metronome_sdk/resources/v1/alerts.rbi +5 -2
- data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +2 -1
- data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +5 -0
- data/rbi/metronome_sdk/resources/v1/contracts.rbi +36 -1
- data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +4 -0
- data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +15 -4
- data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +9 -0
- data/rbi/metronome_sdk/resources/v1/customers.rbi +35 -1
- data/rbi/metronome_sdk/resources/v1/usage.rbi +17 -0
- data/rbi/metronome_sdk/resources/v2/contracts.rbi +65 -7
- data/sig/metronome_sdk/errors.rbs +9 -0
- data/sig/metronome_sdk/internal/transport/pooled_net_requester.rbs +2 -0
- data/sig/metronome_sdk/internal/type/array_of.rbs +3 -0
- data/sig/metronome_sdk/internal/type/base_model.rbs +2 -0
- data/sig/metronome_sdk/internal/type/boolean.rbs +3 -0
- data/sig/metronome_sdk/internal/type/converter.rbs +7 -1
- data/sig/metronome_sdk/internal/type/enum.rbs +2 -0
- data/sig/metronome_sdk/internal/type/file_input.rbs +2 -0
- data/sig/metronome_sdk/internal/type/hash_of.rbs +3 -0
- data/sig/metronome_sdk/internal/type/union.rbs +2 -0
- data/sig/metronome_sdk/internal/type/unknown.rbs +3 -0
- data/sig/metronome_sdk/internal/util.rbs +12 -0
- data/sig/metronome_sdk/internal.rbs +2 -0
- data/sig/metronome_sdk/models/base_usage_filter.rbs +6 -0
- data/sig/metronome_sdk/models/commit.rbs +374 -68
- data/sig/metronome_sdk/models/contract_without_amendments.rbs +620 -110
- data/sig/metronome_sdk/models/credit.rbs +286 -40
- data/sig/metronome_sdk/models/credit_type_data.rbs +2 -0
- data/sig/metronome_sdk/models/discount.rbs +11 -0
- data/sig/metronome_sdk/models/event_type_filter.rbs +5 -0
- data/sig/metronome_sdk/models/id.rbs +2 -0
- data/sig/metronome_sdk/models/override.rbs +92 -22
- data/sig/metronome_sdk/models/pro_service.rbs +11 -0
- data/sig/metronome_sdk/models/property_filter.rbs +7 -0
- data/sig/metronome_sdk/models/rate.rbs +16 -4
- data/sig/metronome_sdk/models/schedule_duration.rbs +12 -0
- data/sig/metronome_sdk/models/schedule_point_in_time.rbs +20 -6
- data/sig/metronome_sdk/models/scheduled_charge.rbs +12 -0
- data/sig/metronome_sdk/models/tier.rbs +2 -0
- data/sig/metronome_sdk/models/v1/alert_archive_params.rbs +6 -0
- data/sig/metronome_sdk/models/v1/alert_archive_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/alert_create_params.rbs +29 -4
- data/sig/metronome_sdk/models/v1/alert_create_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/audit_log_list_params.rbs +11 -0
- data/sig/metronome_sdk/models/v1/audit_log_list_response.rbs +16 -0
- data/sig/metronome_sdk/models/v1/billable_metric_archive_params.rbs +2 -0
- data/sig/metronome_sdk/models/v1/billable_metric_archive_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/billable_metric_create_params.rbs +12 -0
- data/sig/metronome_sdk/models/v1/billable_metric_create_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/billable_metric_list_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/billable_metric_list_response.rbs +13 -0
- data/sig/metronome_sdk/models/v1/billable_metric_retrieve_params.rbs +5 -0
- data/sig/metronome_sdk/models/v1/billable_metric_retrieve_response.rbs +17 -0
- data/sig/metronome_sdk/models/v1/contract_add_manual_balance_entry_params.rbs +11 -0
- data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +719 -75
- data/sig/metronome_sdk/models/v1/contract_amend_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contract_archive_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/contract_archive_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_params.rbs +47 -12
- data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contract_create_params.rbs +1503 -250
- data/sig/metronome_sdk/models/v1/contract_create_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +14 -0
- data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +5 -0
- data/sig/metronome_sdk/models/v1/contract_list_params.rbs +10 -0
- data/sig/metronome_sdk/models/v1/contract_list_response.rbs +459 -10
- data/sig/metronome_sdk/models/v1/contract_retrieve_params.rbs +8 -0
- data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rbs +39 -0
- data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +48 -0
- data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +459 -10
- data/sig/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_params.rbs +34 -0
- data/sig/metronome_sdk/models/v1/contract_retrieve_subscription_quantity_history_response.rbs +101 -0
- data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rbs +21 -0
- data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contract_set_usage_filter_params.rbs +9 -0
- data/sig/metronome_sdk/models/v1/contract_update_end_date_params.rbs +8 -0
- data/sig/metronome_sdk/models/v1/contract_update_end_date_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contracts/named_schedule_retrieve_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/contracts/named_schedule_retrieve_response.rbs +10 -0
- data/sig/metronome_sdk/models/v1/contracts/named_schedule_update_params.rbs +9 -0
- data/sig/metronome_sdk/models/v1/contracts/product_archive_params.rbs +5 -0
- data/sig/metronome_sdk/models/v1/contracts/product_archive_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +18 -0
- data/sig/metronome_sdk/models/v1/contracts/product_create_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contracts/product_list_item_state.rbs +19 -0
- data/sig/metronome_sdk/models/v1/contracts/product_list_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/contracts/product_list_response.rbs +29 -0
- data/sig/metronome_sdk/models/v1/contracts/product_retrieve_params.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contracts/product_retrieve_response.rbs +33 -0
- data/sig/metronome_sdk/models/v1/contracts/product_update_params.rbs +19 -0
- data/sig/metronome_sdk/models/v1/contracts/product_update_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contracts/quantity_conversion.rbs +10 -4
- data/sig/metronome_sdk/models/v1/contracts/quantity_rounding.rbs +9 -4
- data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_card_create_params.rbs +21 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_card_create_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_card_list_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_card_list_response.rbs +23 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rbs +38 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +46 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbs +27 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_card_update_params.rbs +14 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_card_update_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_retrieve_params.rbs +8 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_retrieve_response.rbs +10 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/named_schedule_update_params.rbs +10 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_params.rbs +6 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rbs +8 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +59 -8
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +51 -4
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +23 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rbs +38 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +41 -0
- data/sig/metronome_sdk/models/v1/credit_grant_create_params.rbs +32 -4
- data/sig/metronome_sdk/models/v1/credit_grant_create_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/credit_grant_edit_params.rbs +8 -0
- data/sig/metronome_sdk/models/v1/credit_grant_edit_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/credit_grant_list_entries_params.rbs +29 -0
- data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +30 -0
- data/sig/metronome_sdk/models/v1/credit_grant_list_params.rbs +11 -0
- data/sig/metronome_sdk/models/v1/credit_grant_list_response.rbs +38 -0
- data/sig/metronome_sdk/models/v1/credit_grant_void_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/credit_grant_void_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/credit_ledger_entry.rbs +10 -0
- data/sig/metronome_sdk/models/v1/custom_field_add_key_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/custom_field_delete_values_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/custom_field_list_keys_params.rbs +12 -6
- data/sig/metronome_sdk/models/v1/custom_field_list_keys_response.rbs +11 -0
- data/sig/metronome_sdk/models/v1/custom_field_remove_key_params.rbs +6 -0
- data/sig/metronome_sdk/models/v1/custom_field_set_values_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/customer.rbs +8 -0
- data/sig/metronome_sdk/models/v1/customer_archive_params.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customer_archive_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customer_create_params.rbs +52 -26
- data/sig/metronome_sdk/models/v1/customer_create_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customer_detail.rbs +23 -4
- data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_params.rbs +9 -0
- data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbs +17 -0
- data/sig/metronome_sdk/models/v1/customer_list_costs_params.rbs +9 -0
- data/sig/metronome_sdk/models/v1/customer_list_costs_response.rbs +19 -0
- data/sig/metronome_sdk/models/v1/customer_list_params.rbs +10 -0
- data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +105 -0
- data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +16 -0
- data/sig/metronome_sdk/models/v1/customer_retrieve_params.rbs +5 -0
- data/sig/metronome_sdk/models/v1/customer_retrieve_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customer_set_ingest_aliases_params.rbs +6 -0
- data/sig/metronome_sdk/models/v1/customer_set_name_params.rbs +6 -0
- data/sig/metronome_sdk/models/v1/customer_set_name_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customer_update_config_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/customers/alert_list_params.rbs +13 -6
- data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +5 -0
- data/sig/metronome_sdk/models/v1/customers/alert_reset_params.rbs +6 -0
- data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/customers/alert_retrieve_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +10 -0
- data/sig/metronome_sdk/models/v1/customers/billing_config_delete_params.rbs +6 -0
- data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_params.rbs +6 -0
- data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +23 -0
- data/sig/metronome_sdk/models/v1/customers/commit_create_params.rbs +116 -8
- data/sig/metronome_sdk/models/v1/customers/commit_create_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/commit_list_params.rbs +14 -0
- data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +5 -0
- data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_params.rbs +8 -0
- data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/credit_create_params.rbs +82 -0
- data/sig/metronome_sdk/models/v1/customers/credit_create_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/credit_list_params.rbs +14 -0
- data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +5 -0
- data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +45 -16
- data/sig/metronome_sdk/models/v1/customers/invoice.rbs +195 -40
- data/sig/metronome_sdk/models/v1/customers/invoice_add_charge_params.rbs +11 -0
- data/sig/metronome_sdk/models/v1/customers/invoice_add_charge_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rbs +14 -0
- data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbs +5 -0
- data/sig/metronome_sdk/models/v1/customers/invoice_list_params.rbs +13 -0
- data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/named_schedule_retrieve_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/customers/named_schedule_retrieve_response.rbs +10 -0
- data/sig/metronome_sdk/models/v1/customers/named_schedule_update_params.rbs +9 -0
- data/sig/metronome_sdk/models/v1/customers/plan_add_params.rbs +38 -4
- data/sig/metronome_sdk/models/v1/customers/plan_add_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/plan_end_params.rbs +9 -0
- data/sig/metronome_sdk/models/v1/customers/plan_end_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/customers/plan_list_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/customers/plan_list_price_adjustments_params.rbs +8 -0
- data/sig/metronome_sdk/models/v1/customers/plan_list_price_adjustments_response.rbs +14 -0
- data/sig/metronome_sdk/models/v1/customers/plan_list_response.rbs +23 -0
- data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +30 -7
- data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_response.rbs +6 -0
- data/sig/metronome_sdk/models/v1/invoice_regenerate_params.rbs +5 -0
- data/sig/metronome_sdk/models/v1/invoice_regenerate_response.rbs +6 -0
- data/sig/metronome_sdk/models/v1/invoice_void_params.rbs +5 -0
- data/sig/metronome_sdk/models/v1/invoice_void_response.rbs +6 -0
- data/sig/metronome_sdk/models/v1/plan_detail.rbs +38 -0
- data/sig/metronome_sdk/models/v1/plan_get_details_params.rbs +5 -0
- data/sig/metronome_sdk/models/v1/plan_get_details_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/plan_list_charges_params.rbs +7 -0
- data/sig/metronome_sdk/models/v1/plan_list_charges_response.rbs +28 -0
- data/sig/metronome_sdk/models/v1/plan_list_customers_params.rbs +8 -0
- data/sig/metronome_sdk/models/v1/plan_list_customers_response.rbs +14 -0
- data/sig/metronome_sdk/models/v1/plan_list_params.rbs +6 -0
- data/sig/metronome_sdk/models/v1/plan_list_response.rbs +7 -0
- data/sig/metronome_sdk/models/v1/pricing_unit_list_params.rbs +6 -0
- data/sig/metronome_sdk/models/v1/pricing_unit_list_response.rbs +2 -0
- data/sig/metronome_sdk/models/v1/rollover_amount_max_amount.rbs +12 -4
- data/sig/metronome_sdk/models/v1/rollover_amount_max_percentage.rbs +9 -4
- data/sig/metronome_sdk/models/v1/service_list_params.rbs +2 -0
- data/sig/metronome_sdk/models/v1/service_list_response.rbs +10 -0
- data/sig/metronome_sdk/models/v1/usage_ingest_params.rbs +13 -0
- data/sig/metronome_sdk/models/v1/usage_list_params.rbs +17 -0
- data/sig/metronome_sdk/models/v1/usage_list_response.rbs +15 -0
- data/sig/metronome_sdk/models/v1/usage_list_with_groups_params.rbs +15 -0
- data/sig/metronome_sdk/models/v1/usage_list_with_groups_response.rbs +8 -0
- data/sig/metronome_sdk/models/v1/usage_search_params.rbs +26 -0
- data/sig/metronome_sdk/models/v1/usage_search_response.rbs +230 -0
- data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +106 -1
- data/sig/metronome_sdk/models/v2/contract_edit_commit_response.rbs +2 -0
- data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +81 -1
- data/sig/metronome_sdk/models/v2/contract_edit_credit_response.rbs +2 -0
- data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +2233 -303
- data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +2 -0
- data/sig/metronome_sdk/models/v2/contract_get_edit_history_params.rbs +6 -0
- data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +2475 -453
- data/sig/metronome_sdk/models/v2/contract_list_params.rbs +10 -0
- data/sig/metronome_sdk/models/v2/contract_list_response.rbs +1400 -43
- data/sig/metronome_sdk/models/v2/contract_retrieve_params.rbs +9 -0
- data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +1400 -43
- data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/contracts.rbs +10 -0
- data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/custom_fields.rbs +1 -1
- data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +1 -1
- data/sig/metronome_sdk/resources/v1/customers/commits.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/customers/credits.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/customers.rbs +8 -0
- data/sig/metronome_sdk/resources/v1/usage.rbs +5 -0
- data/sig/metronome_sdk/resources/v2/contracts.rbs +8 -1
- metadata +20 -2
@@ -66,6 +66,28 @@ module MetronomeSDK
|
|
66
66
|
sig { params(ending_before: Time).void }
|
67
67
|
attr_writer :ending_before
|
68
68
|
|
69
|
+
# Either a **parent** configuration with a list of children or a **child**
|
70
|
+
# configuration with a single parent.
|
71
|
+
sig do
|
72
|
+
returns(
|
73
|
+
T.nilable(
|
74
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::Variants
|
75
|
+
)
|
76
|
+
)
|
77
|
+
end
|
78
|
+
attr_reader :hierarchy_configuration
|
79
|
+
|
80
|
+
sig do
|
81
|
+
params(
|
82
|
+
hierarchy_configuration:
|
83
|
+
T.any(
|
84
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ParentHierarchyConfiguration::OrHash,
|
85
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ChildHierarchyConfiguration::OrHash
|
86
|
+
)
|
87
|
+
).void
|
88
|
+
end
|
89
|
+
attr_writer :hierarchy_configuration
|
90
|
+
|
69
91
|
sig { returns(T.nilable(String)) }
|
70
92
|
attr_reader :name
|
71
93
|
|
@@ -260,6 +282,11 @@ module MetronomeSDK
|
|
260
282
|
credits: T::Array[MetronomeSDK::Credit::OrHash],
|
261
283
|
discounts: T::Array[MetronomeSDK::Discount::OrHash],
|
262
284
|
ending_before: Time,
|
285
|
+
hierarchy_configuration:
|
286
|
+
T.any(
|
287
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ParentHierarchyConfiguration::OrHash,
|
288
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ChildHierarchyConfiguration::OrHash
|
289
|
+
),
|
263
290
|
name: String,
|
264
291
|
net_payment_terms_days: Float,
|
265
292
|
netsuite_sales_order_id: String,
|
@@ -302,6 +329,9 @@ module MetronomeSDK
|
|
302
329
|
# This field's availability is dependent on your client's configuration.
|
303
330
|
discounts: nil,
|
304
331
|
ending_before: nil,
|
332
|
+
# Either a **parent** configuration with a list of children or a **child**
|
333
|
+
# configuration with a single parent.
|
334
|
+
hierarchy_configuration: nil,
|
305
335
|
name: nil,
|
306
336
|
net_payment_terms_days: nil,
|
307
337
|
# This field's availability is dependent on your client's configuration.
|
@@ -345,6 +375,8 @@ module MetronomeSDK
|
|
345
375
|
credits: T::Array[MetronomeSDK::Credit],
|
346
376
|
discounts: T::Array[MetronomeSDK::Discount],
|
347
377
|
ending_before: Time,
|
378
|
+
hierarchy_configuration:
|
379
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::Variants,
|
348
380
|
name: String,
|
349
381
|
net_payment_terms_days: Float,
|
350
382
|
netsuite_sales_order_id: String,
|
@@ -549,6 +581,187 @@ module MetronomeSDK
|
|
549
581
|
end
|
550
582
|
end
|
551
583
|
|
584
|
+
# Either a **parent** configuration with a list of children or a **child**
|
585
|
+
# configuration with a single parent.
|
586
|
+
module HierarchyConfiguration
|
587
|
+
extend MetronomeSDK::Internal::Type::Union
|
588
|
+
|
589
|
+
Variants =
|
590
|
+
T.type_alias do
|
591
|
+
T.any(
|
592
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ParentHierarchyConfiguration,
|
593
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ChildHierarchyConfiguration
|
594
|
+
)
|
595
|
+
end
|
596
|
+
|
597
|
+
class ParentHierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
598
|
+
OrHash =
|
599
|
+
T.type_alias do
|
600
|
+
T.any(
|
601
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ParentHierarchyConfiguration,
|
602
|
+
MetronomeSDK::Internal::AnyHash
|
603
|
+
)
|
604
|
+
end
|
605
|
+
|
606
|
+
# List of contracts that belong to this parent.
|
607
|
+
sig do
|
608
|
+
returns(
|
609
|
+
T::Array[
|
610
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ParentHierarchyConfiguration::Child
|
611
|
+
]
|
612
|
+
)
|
613
|
+
end
|
614
|
+
attr_accessor :children
|
615
|
+
|
616
|
+
sig do
|
617
|
+
params(
|
618
|
+
children:
|
619
|
+
T::Array[
|
620
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ParentHierarchyConfiguration::Child::OrHash
|
621
|
+
]
|
622
|
+
).returns(T.attached_class)
|
623
|
+
end
|
624
|
+
def self.new(
|
625
|
+
# List of contracts that belong to this parent.
|
626
|
+
children:
|
627
|
+
)
|
628
|
+
end
|
629
|
+
|
630
|
+
sig do
|
631
|
+
override.returns(
|
632
|
+
{
|
633
|
+
children:
|
634
|
+
T::Array[
|
635
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ParentHierarchyConfiguration::Child
|
636
|
+
]
|
637
|
+
}
|
638
|
+
)
|
639
|
+
end
|
640
|
+
def to_hash
|
641
|
+
end
|
642
|
+
|
643
|
+
class Child < MetronomeSDK::Internal::Type::BaseModel
|
644
|
+
OrHash =
|
645
|
+
T.type_alias do
|
646
|
+
T.any(
|
647
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ParentHierarchyConfiguration::Child,
|
648
|
+
MetronomeSDK::Internal::AnyHash
|
649
|
+
)
|
650
|
+
end
|
651
|
+
|
652
|
+
sig { returns(String) }
|
653
|
+
attr_accessor :contract_id
|
654
|
+
|
655
|
+
sig { returns(String) }
|
656
|
+
attr_accessor :customer_id
|
657
|
+
|
658
|
+
sig do
|
659
|
+
params(contract_id: String, customer_id: String).returns(
|
660
|
+
T.attached_class
|
661
|
+
)
|
662
|
+
end
|
663
|
+
def self.new(contract_id:, customer_id:)
|
664
|
+
end
|
665
|
+
|
666
|
+
sig do
|
667
|
+
override.returns({ contract_id: String, customer_id: String })
|
668
|
+
end
|
669
|
+
def to_hash
|
670
|
+
end
|
671
|
+
end
|
672
|
+
end
|
673
|
+
|
674
|
+
class ChildHierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
675
|
+
OrHash =
|
676
|
+
T.type_alias do
|
677
|
+
T.any(
|
678
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ChildHierarchyConfiguration,
|
679
|
+
MetronomeSDK::Internal::AnyHash
|
680
|
+
)
|
681
|
+
end
|
682
|
+
|
683
|
+
# The single parent contract/customer for this child.
|
684
|
+
sig do
|
685
|
+
returns(
|
686
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ChildHierarchyConfiguration::Parent
|
687
|
+
)
|
688
|
+
end
|
689
|
+
attr_reader :parent
|
690
|
+
|
691
|
+
sig do
|
692
|
+
params(
|
693
|
+
parent:
|
694
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ChildHierarchyConfiguration::Parent::OrHash
|
695
|
+
).void
|
696
|
+
end
|
697
|
+
attr_writer :parent
|
698
|
+
|
699
|
+
sig do
|
700
|
+
params(
|
701
|
+
parent:
|
702
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ChildHierarchyConfiguration::Parent::OrHash
|
703
|
+
).returns(T.attached_class)
|
704
|
+
end
|
705
|
+
def self.new(
|
706
|
+
# The single parent contract/customer for this child.
|
707
|
+
parent:
|
708
|
+
)
|
709
|
+
end
|
710
|
+
|
711
|
+
sig do
|
712
|
+
override.returns(
|
713
|
+
{
|
714
|
+
parent:
|
715
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ChildHierarchyConfiguration::Parent
|
716
|
+
}
|
717
|
+
)
|
718
|
+
end
|
719
|
+
def to_hash
|
720
|
+
end
|
721
|
+
|
722
|
+
class Parent < MetronomeSDK::Internal::Type::BaseModel
|
723
|
+
OrHash =
|
724
|
+
T.type_alias do
|
725
|
+
T.any(
|
726
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::ChildHierarchyConfiguration::Parent,
|
727
|
+
MetronomeSDK::Internal::AnyHash
|
728
|
+
)
|
729
|
+
end
|
730
|
+
|
731
|
+
sig { returns(String) }
|
732
|
+
attr_accessor :contract_id
|
733
|
+
|
734
|
+
sig { returns(String) }
|
735
|
+
attr_accessor :customer_id
|
736
|
+
|
737
|
+
# The single parent contract/customer for this child.
|
738
|
+
sig do
|
739
|
+
params(contract_id: String, customer_id: String).returns(
|
740
|
+
T.attached_class
|
741
|
+
)
|
742
|
+
end
|
743
|
+
def self.new(contract_id:, customer_id:)
|
744
|
+
end
|
745
|
+
|
746
|
+
sig do
|
747
|
+
override.returns({ contract_id: String, customer_id: String })
|
748
|
+
end
|
749
|
+
def to_hash
|
750
|
+
end
|
751
|
+
end
|
752
|
+
end
|
753
|
+
|
754
|
+
sig do
|
755
|
+
override.returns(
|
756
|
+
T::Array[
|
757
|
+
MetronomeSDK::ContractWithoutAmendments::HierarchyConfiguration::Variants
|
758
|
+
]
|
759
|
+
)
|
760
|
+
end
|
761
|
+
def self.variants
|
762
|
+
end
|
763
|
+
end
|
764
|
+
|
552
765
|
class PrepaidBalanceThresholdConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
553
766
|
OrHash =
|
554
767
|
T.type_alias do
|
@@ -603,6 +816,14 @@ module MetronomeSDK
|
|
603
816
|
sig { returns(Float) }
|
604
817
|
attr_accessor :threshold_amount
|
605
818
|
|
819
|
+
# If provided, the threshold, recharge-to amount, and the resulting threshold
|
820
|
+
# commit amount will be in terms of this credit type instead of the fiat currency.
|
821
|
+
sig { returns(T.nilable(String)) }
|
822
|
+
attr_reader :custom_credit_type_id
|
823
|
+
|
824
|
+
sig { params(custom_credit_type_id: String).void }
|
825
|
+
attr_writer :custom_credit_type_id
|
826
|
+
|
606
827
|
sig do
|
607
828
|
params(
|
608
829
|
commit:
|
@@ -611,7 +832,8 @@ module MetronomeSDK
|
|
611
832
|
payment_gate_config:
|
612
833
|
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::OrHash,
|
613
834
|
recharge_to_amount: Float,
|
614
|
-
threshold_amount: Float
|
835
|
+
threshold_amount: Float,
|
836
|
+
custom_credit_type_id: String
|
615
837
|
).returns(T.attached_class)
|
616
838
|
end
|
617
839
|
def self.new(
|
@@ -625,7 +847,10 @@ module MetronomeSDK
|
|
625
847
|
recharge_to_amount:,
|
626
848
|
# Specify the threshold amount for the contract. Each time the contract's prepaid
|
627
849
|
# balance lowers to this amount, a threshold charge will be initiated.
|
628
|
-
threshold_amount
|
850
|
+
threshold_amount:,
|
851
|
+
# If provided, the threshold, recharge-to amount, and the resulting threshold
|
852
|
+
# commit amount will be in terms of this credit type instead of the fiat currency.
|
853
|
+
custom_credit_type_id: nil
|
629
854
|
)
|
630
855
|
end
|
631
856
|
|
@@ -638,7 +863,8 @@ module MetronomeSDK
|
|
638
863
|
payment_gate_config:
|
639
864
|
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig,
|
640
865
|
recharge_to_amount: Float,
|
641
|
-
threshold_amount: Float
|
866
|
+
threshold_amount: Float,
|
867
|
+
custom_credit_type_id: String
|
642
868
|
}
|
643
869
|
)
|
644
870
|
end
|
@@ -659,17 +885,18 @@ module MetronomeSDK
|
|
659
885
|
sig { returns(String) }
|
660
886
|
attr_accessor :product_id
|
661
887
|
|
662
|
-
# Which products the threshold commit applies to. If
|
663
|
-
#
|
664
|
-
# products.
|
888
|
+
# Which products the threshold commit applies to. If applicable_product_ids,
|
889
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
890
|
+
# all products.
|
665
891
|
sig { returns(T.nilable(T::Array[String])) }
|
666
892
|
attr_reader :applicable_product_ids
|
667
893
|
|
668
894
|
sig { params(applicable_product_ids: T::Array[String]).void }
|
669
895
|
attr_writer :applicable_product_ids
|
670
896
|
|
671
|
-
# Which tags the threshold commit applies to. If
|
672
|
-
# applicable_product_tags are not provided, the commit applies to
|
897
|
+
# Which tags the threshold commit applies to. If applicable_product_ids,
|
898
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
899
|
+
# all products.
|
673
900
|
sig { returns(T.nilable(T::Array[String])) }
|
674
901
|
attr_reader :applicable_product_tags
|
675
902
|
|
@@ -690,30 +917,65 @@ module MetronomeSDK
|
|
690
917
|
sig { params(name: String).void }
|
691
918
|
attr_writer :name
|
692
919
|
|
920
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
921
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
922
|
+
# specifiers to contribute to a commit's or credit's drawdown. This field cannot
|
923
|
+
# be used together with `applicable_product_ids` or `applicable_product_tags`.
|
924
|
+
sig do
|
925
|
+
returns(
|
926
|
+
T.nilable(
|
927
|
+
T::Array[
|
928
|
+
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::Commit::Specifier
|
929
|
+
]
|
930
|
+
)
|
931
|
+
)
|
932
|
+
end
|
933
|
+
attr_reader :specifiers
|
934
|
+
|
935
|
+
sig do
|
936
|
+
params(
|
937
|
+
specifiers:
|
938
|
+
T::Array[
|
939
|
+
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::Commit::Specifier::OrHash
|
940
|
+
]
|
941
|
+
).void
|
942
|
+
end
|
943
|
+
attr_writer :specifiers
|
944
|
+
|
693
945
|
sig do
|
694
946
|
params(
|
695
947
|
product_id: String,
|
696
948
|
applicable_product_ids: T::Array[String],
|
697
949
|
applicable_product_tags: T::Array[String],
|
698
950
|
description: String,
|
699
|
-
name: String
|
951
|
+
name: String,
|
952
|
+
specifiers:
|
953
|
+
T::Array[
|
954
|
+
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::Commit::Specifier::OrHash
|
955
|
+
]
|
700
956
|
).returns(T.attached_class)
|
701
957
|
end
|
702
958
|
def self.new(
|
703
959
|
# The commit product that will be used to generate the line item for commit
|
704
960
|
# payment.
|
705
961
|
product_id:,
|
706
|
-
# Which products the threshold commit applies to. If
|
707
|
-
#
|
708
|
-
# products.
|
962
|
+
# Which products the threshold commit applies to. If applicable_product_ids,
|
963
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
964
|
+
# all products.
|
709
965
|
applicable_product_ids: nil,
|
710
|
-
# Which tags the threshold commit applies to. If
|
711
|
-
# applicable_product_tags are not provided, the commit applies to
|
966
|
+
# Which tags the threshold commit applies to. If applicable_product_ids,
|
967
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
968
|
+
# all products.
|
712
969
|
applicable_product_tags: nil,
|
713
970
|
description: nil,
|
714
971
|
# Specify the name of the line item for the threshold charge. If left blank, it
|
715
972
|
# will default to the commit product name.
|
716
|
-
name: nil
|
973
|
+
name: nil,
|
974
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
975
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
976
|
+
# specifiers to contribute to a commit's or credit's drawdown. This field cannot
|
977
|
+
# be used together with `applicable_product_ids` or `applicable_product_tags`.
|
978
|
+
specifiers: nil
|
717
979
|
)
|
718
980
|
end
|
719
981
|
|
@@ -724,12 +986,87 @@ module MetronomeSDK
|
|
724
986
|
applicable_product_ids: T::Array[String],
|
725
987
|
applicable_product_tags: T::Array[String],
|
726
988
|
description: String,
|
727
|
-
name: String
|
989
|
+
name: String,
|
990
|
+
specifiers:
|
991
|
+
T::Array[
|
992
|
+
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::Commit::Specifier
|
993
|
+
]
|
728
994
|
}
|
729
995
|
)
|
730
996
|
end
|
731
997
|
def to_hash
|
732
998
|
end
|
999
|
+
|
1000
|
+
class Specifier < MetronomeSDK::Internal::Type::BaseModel
|
1001
|
+
OrHash =
|
1002
|
+
T.type_alias do
|
1003
|
+
T.any(
|
1004
|
+
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::Commit::Specifier,
|
1005
|
+
MetronomeSDK::Internal::AnyHash
|
1006
|
+
)
|
1007
|
+
end
|
1008
|
+
|
1009
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
1010
|
+
attr_reader :presentation_group_values
|
1011
|
+
|
1012
|
+
sig do
|
1013
|
+
params(presentation_group_values: T::Hash[Symbol, String]).void
|
1014
|
+
end
|
1015
|
+
attr_writer :presentation_group_values
|
1016
|
+
|
1017
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
1018
|
+
attr_reader :pricing_group_values
|
1019
|
+
|
1020
|
+
sig { params(pricing_group_values: T::Hash[Symbol, String]).void }
|
1021
|
+
attr_writer :pricing_group_values
|
1022
|
+
|
1023
|
+
# If provided, the specifier will only apply to the product with the specified ID.
|
1024
|
+
sig { returns(T.nilable(String)) }
|
1025
|
+
attr_reader :product_id
|
1026
|
+
|
1027
|
+
sig { params(product_id: String).void }
|
1028
|
+
attr_writer :product_id
|
1029
|
+
|
1030
|
+
# If provided, the specifier will only apply to products with all the specified
|
1031
|
+
# tags.
|
1032
|
+
sig { returns(T.nilable(T::Array[String])) }
|
1033
|
+
attr_reader :product_tags
|
1034
|
+
|
1035
|
+
sig { params(product_tags: T::Array[String]).void }
|
1036
|
+
attr_writer :product_tags
|
1037
|
+
|
1038
|
+
sig do
|
1039
|
+
params(
|
1040
|
+
presentation_group_values: T::Hash[Symbol, String],
|
1041
|
+
pricing_group_values: T::Hash[Symbol, String],
|
1042
|
+
product_id: String,
|
1043
|
+
product_tags: T::Array[String]
|
1044
|
+
).returns(T.attached_class)
|
1045
|
+
end
|
1046
|
+
def self.new(
|
1047
|
+
presentation_group_values: nil,
|
1048
|
+
pricing_group_values: nil,
|
1049
|
+
# If provided, the specifier will only apply to the product with the specified ID.
|
1050
|
+
product_id: nil,
|
1051
|
+
# If provided, the specifier will only apply to products with all the specified
|
1052
|
+
# tags.
|
1053
|
+
product_tags: nil
|
1054
|
+
)
|
1055
|
+
end
|
1056
|
+
|
1057
|
+
sig do
|
1058
|
+
override.returns(
|
1059
|
+
{
|
1060
|
+
presentation_group_values: T::Hash[Symbol, String],
|
1061
|
+
pricing_group_values: T::Hash[Symbol, String],
|
1062
|
+
product_id: String,
|
1063
|
+
product_tags: T::Array[String]
|
1064
|
+
}
|
1065
|
+
)
|
1066
|
+
end
|
1067
|
+
def to_hash
|
1068
|
+
end
|
1069
|
+
end
|
733
1070
|
end
|
734
1071
|
|
735
1072
|
class PaymentGateConfig < MetronomeSDK::Internal::Type::BaseModel
|
@@ -752,7 +1089,25 @@ module MetronomeSDK
|
|
752
1089
|
end
|
753
1090
|
attr_accessor :payment_gate_type
|
754
1091
|
|
755
|
-
# Only applicable if using
|
1092
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
1093
|
+
sig do
|
1094
|
+
returns(
|
1095
|
+
T.nilable(
|
1096
|
+
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
|
1097
|
+
)
|
1098
|
+
)
|
1099
|
+
end
|
1100
|
+
attr_reader :precalculated_tax_config
|
1101
|
+
|
1102
|
+
sig do
|
1103
|
+
params(
|
1104
|
+
precalculated_tax_config:
|
1105
|
+
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig::OrHash
|
1106
|
+
).void
|
1107
|
+
end
|
1108
|
+
attr_writer :precalculated_tax_config
|
1109
|
+
|
1110
|
+
# Only applicable if using STRIPE as your payment gate type.
|
756
1111
|
sig do
|
757
1112
|
returns(
|
758
1113
|
T.nilable(
|
@@ -794,6 +1149,8 @@ module MetronomeSDK
|
|
794
1149
|
params(
|
795
1150
|
payment_gate_type:
|
796
1151
|
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PaymentGateType::OrSymbol,
|
1152
|
+
precalculated_tax_config:
|
1153
|
+
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig::OrHash,
|
797
1154
|
stripe_config:
|
798
1155
|
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::OrHash,
|
799
1156
|
tax_type:
|
@@ -806,7 +1163,9 @@ module MetronomeSDK
|
|
806
1163
|
# facilitate payment using your own payment integration. Select NONE if you do not
|
807
1164
|
# wish to payment gate the commit balance.
|
808
1165
|
payment_gate_type:,
|
809
|
-
# Only applicable if using
|
1166
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
1167
|
+
precalculated_tax_config: nil,
|
1168
|
+
# Only applicable if using STRIPE as your payment gate type.
|
810
1169
|
stripe_config: nil,
|
811
1170
|
# Stripe tax is only supported for Stripe payment gateway. Select NONE if you do
|
812
1171
|
# not wish Metronome to calculate tax on your behalf. Leaving this field blank
|
@@ -820,6 +1179,8 @@ module MetronomeSDK
|
|
820
1179
|
{
|
821
1180
|
payment_gate_type:
|
822
1181
|
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PaymentGateType::TaggedSymbol,
|
1182
|
+
precalculated_tax_config:
|
1183
|
+
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
|
823
1184
|
stripe_config:
|
824
1185
|
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig,
|
825
1186
|
tax_type:
|
@@ -873,6 +1234,49 @@ module MetronomeSDK
|
|
873
1234
|
end
|
874
1235
|
end
|
875
1236
|
|
1237
|
+
class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
|
1238
|
+
OrHash =
|
1239
|
+
T.type_alias do
|
1240
|
+
T.any(
|
1241
|
+
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
|
1242
|
+
MetronomeSDK::Internal::AnyHash
|
1243
|
+
)
|
1244
|
+
end
|
1245
|
+
|
1246
|
+
# Amount of tax to be applied. This should be in the same currency and
|
1247
|
+
# denomination as the commit's invoice schedule
|
1248
|
+
sig { returns(Float) }
|
1249
|
+
attr_accessor :tax_amount
|
1250
|
+
|
1251
|
+
# Name of the tax to be applied. This may be used in an invoice line item
|
1252
|
+
# description.
|
1253
|
+
sig { returns(T.nilable(String)) }
|
1254
|
+
attr_reader :tax_name
|
1255
|
+
|
1256
|
+
sig { params(tax_name: String).void }
|
1257
|
+
attr_writer :tax_name
|
1258
|
+
|
1259
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
1260
|
+
sig do
|
1261
|
+
params(tax_amount: Float, tax_name: String).returns(
|
1262
|
+
T.attached_class
|
1263
|
+
)
|
1264
|
+
end
|
1265
|
+
def self.new(
|
1266
|
+
# Amount of tax to be applied. This should be in the same currency and
|
1267
|
+
# denomination as the commit's invoice schedule
|
1268
|
+
tax_amount:,
|
1269
|
+
# Name of the tax to be applied. This may be used in an invoice line item
|
1270
|
+
# description.
|
1271
|
+
tax_name: nil
|
1272
|
+
)
|
1273
|
+
end
|
1274
|
+
|
1275
|
+
sig { override.returns({ tax_amount: Float, tax_name: String }) }
|
1276
|
+
def to_hash
|
1277
|
+
end
|
1278
|
+
end
|
1279
|
+
|
876
1280
|
class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
|
877
1281
|
OrHash =
|
878
1282
|
T.type_alias do
|
@@ -890,16 +1294,28 @@ module MetronomeSDK
|
|
890
1294
|
end
|
891
1295
|
attr_accessor :payment_type
|
892
1296
|
|
893
|
-
#
|
1297
|
+
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
1298
|
+
# your payment type.
|
1299
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
1300
|
+
attr_reader :invoice_metadata
|
1301
|
+
|
1302
|
+
sig { params(invoice_metadata: T::Hash[Symbol, String]).void }
|
1303
|
+
attr_writer :invoice_metadata
|
1304
|
+
|
1305
|
+
# Only applicable if using STRIPE as your payment gate type.
|
894
1306
|
sig do
|
895
1307
|
params(
|
896
1308
|
payment_type:
|
897
|
-
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol
|
1309
|
+
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol,
|
1310
|
+
invoice_metadata: T::Hash[Symbol, String]
|
898
1311
|
).returns(T.attached_class)
|
899
1312
|
end
|
900
1313
|
def self.new(
|
901
1314
|
# If left blank, will default to INVOICE
|
902
|
-
payment_type
|
1315
|
+
payment_type:,
|
1316
|
+
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
1317
|
+
# your payment type.
|
1318
|
+
invoice_metadata: nil
|
903
1319
|
)
|
904
1320
|
end
|
905
1321
|
|
@@ -907,7 +1323,8 @@ module MetronomeSDK
|
|
907
1323
|
override.returns(
|
908
1324
|
{
|
909
1325
|
payment_type:
|
910
|
-
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::TaggedSymbol
|
1326
|
+
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::TaggedSymbol,
|
1327
|
+
invoice_metadata: T::Hash[Symbol, String]
|
911
1328
|
}
|
912
1329
|
)
|
913
1330
|
end
|
@@ -975,6 +1392,16 @@ module MetronomeSDK
|
|
975
1392
|
:STRIPE,
|
976
1393
|
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
977
1394
|
)
|
1395
|
+
ANROK =
|
1396
|
+
T.let(
|
1397
|
+
:ANROK,
|
1398
|
+
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
1399
|
+
)
|
1400
|
+
PRECALCULATED =
|
1401
|
+
T.let(
|
1402
|
+
:PRECALCULATED,
|
1403
|
+
MetronomeSDK::ContractWithoutAmendments::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
1404
|
+
)
|
978
1405
|
|
979
1406
|
sig do
|
980
1407
|
override.returns(
|
@@ -1163,7 +1590,7 @@ module MetronomeSDK
|
|
1163
1590
|
# The frequency at which the recurring commits will be created. If not provided: -
|
1164
1591
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
1165
1592
|
# period defined in the duration will correspond to this frequency. - Commits will
|
1166
|
-
# be created aligned with the recurring commit's
|
1593
|
+
# be created aligned with the recurring commit's starting_at rather than the usage
|
1167
1594
|
# invoice dates.
|
1168
1595
|
sig do
|
1169
1596
|
returns(
|
@@ -1191,6 +1618,30 @@ module MetronomeSDK
|
|
1191
1618
|
sig { params(rollover_fraction: Float).void }
|
1192
1619
|
attr_writer :rollover_fraction
|
1193
1620
|
|
1621
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
1622
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
1623
|
+
# specifiers to contribute to a commit's or credit's drawdown.
|
1624
|
+
sig do
|
1625
|
+
returns(
|
1626
|
+
T.nilable(
|
1627
|
+
T::Array[
|
1628
|
+
MetronomeSDK::ContractWithoutAmendments::RecurringCommit::Specifier
|
1629
|
+
]
|
1630
|
+
)
|
1631
|
+
)
|
1632
|
+
end
|
1633
|
+
attr_reader :specifiers
|
1634
|
+
|
1635
|
+
sig do
|
1636
|
+
params(
|
1637
|
+
specifiers:
|
1638
|
+
T::Array[
|
1639
|
+
MetronomeSDK::ContractWithoutAmendments::RecurringCommit::Specifier::OrHash
|
1640
|
+
]
|
1641
|
+
).void
|
1642
|
+
end
|
1643
|
+
attr_writer :specifiers
|
1644
|
+
|
1194
1645
|
sig do
|
1195
1646
|
params(
|
1196
1647
|
id: String,
|
@@ -1218,7 +1669,11 @@ module MetronomeSDK
|
|
1218
1669
|
MetronomeSDK::ContractWithoutAmendments::RecurringCommit::Proration::OrSymbol,
|
1219
1670
|
recurrence_frequency:
|
1220
1671
|
MetronomeSDK::ContractWithoutAmendments::RecurringCommit::RecurrenceFrequency::OrSymbol,
|
1221
|
-
rollover_fraction: Float
|
1672
|
+
rollover_fraction: Float,
|
1673
|
+
specifiers:
|
1674
|
+
T::Array[
|
1675
|
+
MetronomeSDK::ContractWithoutAmendments::RecurringCommit::Specifier::OrHash
|
1676
|
+
]
|
1222
1677
|
).returns(T.attached_class)
|
1223
1678
|
end
|
1224
1679
|
def self.new(
|
@@ -1255,13 +1710,17 @@ module MetronomeSDK
|
|
1255
1710
|
# The frequency at which the recurring commits will be created. If not provided: -
|
1256
1711
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
1257
1712
|
# period defined in the duration will correspond to this frequency. - Commits will
|
1258
|
-
# be created aligned with the recurring commit's
|
1713
|
+
# be created aligned with the recurring commit's starting_at rather than the usage
|
1259
1714
|
# invoice dates.
|
1260
1715
|
recurrence_frequency: nil,
|
1261
1716
|
# Will be passed down to the individual commits. This controls how much of an
|
1262
1717
|
# individual unexpired commit will roll over upon contract transition. Must be
|
1263
1718
|
# between 0 and 1.
|
1264
|
-
rollover_fraction: nil
|
1719
|
+
rollover_fraction: nil,
|
1720
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
1721
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
1722
|
+
# specifiers to contribute to a commit's or credit's drawdown.
|
1723
|
+
specifiers: nil
|
1265
1724
|
)
|
1266
1725
|
end
|
1267
1726
|
|
@@ -1293,7 +1752,11 @@ module MetronomeSDK
|
|
1293
1752
|
MetronomeSDK::ContractWithoutAmendments::RecurringCommit::Proration::TaggedSymbol,
|
1294
1753
|
recurrence_frequency:
|
1295
1754
|
MetronomeSDK::ContractWithoutAmendments::RecurringCommit::RecurrenceFrequency::TaggedSymbol,
|
1296
|
-
rollover_fraction: Float
|
1755
|
+
rollover_fraction: Float,
|
1756
|
+
specifiers:
|
1757
|
+
T::Array[
|
1758
|
+
MetronomeSDK::ContractWithoutAmendments::RecurringCommit::Specifier
|
1759
|
+
]
|
1297
1760
|
}
|
1298
1761
|
)
|
1299
1762
|
end
|
@@ -1312,26 +1775,29 @@ module MetronomeSDK
|
|
1312
1775
|
sig { returns(String) }
|
1313
1776
|
attr_accessor :credit_type_id
|
1314
1777
|
|
1315
|
-
sig { returns(Float) }
|
1316
|
-
attr_accessor :quantity
|
1317
|
-
|
1318
1778
|
sig { returns(Float) }
|
1319
1779
|
attr_accessor :unit_price
|
1320
1780
|
|
1781
|
+
sig { returns(T.nilable(Float)) }
|
1782
|
+
attr_reader :quantity
|
1783
|
+
|
1784
|
+
sig { params(quantity: Float).void }
|
1785
|
+
attr_writer :quantity
|
1786
|
+
|
1321
1787
|
# The amount of commit to grant.
|
1322
1788
|
sig do
|
1323
1789
|
params(
|
1324
1790
|
credit_type_id: String,
|
1325
|
-
|
1326
|
-
|
1791
|
+
unit_price: Float,
|
1792
|
+
quantity: Float
|
1327
1793
|
).returns(T.attached_class)
|
1328
1794
|
end
|
1329
|
-
def self.new(credit_type_id:,
|
1795
|
+
def self.new(credit_type_id:, unit_price:, quantity: nil)
|
1330
1796
|
end
|
1331
1797
|
|
1332
1798
|
sig do
|
1333
1799
|
override.returns(
|
1334
|
-
{ credit_type_id: String,
|
1800
|
+
{ credit_type_id: String, unit_price: Float, quantity: Float }
|
1335
1801
|
)
|
1336
1802
|
end
|
1337
1803
|
def to_hash
|
@@ -1587,7 +2053,7 @@ module MetronomeSDK
|
|
1587
2053
|
# The frequency at which the recurring commits will be created. If not provided: -
|
1588
2054
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
1589
2055
|
# period defined in the duration will correspond to this frequency. - Commits will
|
1590
|
-
# be created aligned with the recurring commit's
|
2056
|
+
# be created aligned with the recurring commit's starting_at rather than the usage
|
1591
2057
|
# invoice dates.
|
1592
2058
|
module RecurrenceFrequency
|
1593
2059
|
extend MetronomeSDK::Internal::Type::Enum
|
@@ -1632,6 +2098,77 @@ module MetronomeSDK
|
|
1632
2098
|
def self.values
|
1633
2099
|
end
|
1634
2100
|
end
|
2101
|
+
|
2102
|
+
class Specifier < MetronomeSDK::Internal::Type::BaseModel
|
2103
|
+
OrHash =
|
2104
|
+
T.type_alias do
|
2105
|
+
T.any(
|
2106
|
+
MetronomeSDK::ContractWithoutAmendments::RecurringCommit::Specifier,
|
2107
|
+
MetronomeSDK::Internal::AnyHash
|
2108
|
+
)
|
2109
|
+
end
|
2110
|
+
|
2111
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
2112
|
+
attr_reader :presentation_group_values
|
2113
|
+
|
2114
|
+
sig do
|
2115
|
+
params(presentation_group_values: T::Hash[Symbol, String]).void
|
2116
|
+
end
|
2117
|
+
attr_writer :presentation_group_values
|
2118
|
+
|
2119
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
2120
|
+
attr_reader :pricing_group_values
|
2121
|
+
|
2122
|
+
sig { params(pricing_group_values: T::Hash[Symbol, String]).void }
|
2123
|
+
attr_writer :pricing_group_values
|
2124
|
+
|
2125
|
+
# If provided, the specifier will only apply to the product with the specified ID.
|
2126
|
+
sig { returns(T.nilable(String)) }
|
2127
|
+
attr_reader :product_id
|
2128
|
+
|
2129
|
+
sig { params(product_id: String).void }
|
2130
|
+
attr_writer :product_id
|
2131
|
+
|
2132
|
+
# If provided, the specifier will only apply to products with all the specified
|
2133
|
+
# tags.
|
2134
|
+
sig { returns(T.nilable(T::Array[String])) }
|
2135
|
+
attr_reader :product_tags
|
2136
|
+
|
2137
|
+
sig { params(product_tags: T::Array[String]).void }
|
2138
|
+
attr_writer :product_tags
|
2139
|
+
|
2140
|
+
sig do
|
2141
|
+
params(
|
2142
|
+
presentation_group_values: T::Hash[Symbol, String],
|
2143
|
+
pricing_group_values: T::Hash[Symbol, String],
|
2144
|
+
product_id: String,
|
2145
|
+
product_tags: T::Array[String]
|
2146
|
+
).returns(T.attached_class)
|
2147
|
+
end
|
2148
|
+
def self.new(
|
2149
|
+
presentation_group_values: nil,
|
2150
|
+
pricing_group_values: nil,
|
2151
|
+
# If provided, the specifier will only apply to the product with the specified ID.
|
2152
|
+
product_id: nil,
|
2153
|
+
# If provided, the specifier will only apply to products with all the specified
|
2154
|
+
# tags.
|
2155
|
+
product_tags: nil
|
2156
|
+
)
|
2157
|
+
end
|
2158
|
+
|
2159
|
+
sig do
|
2160
|
+
override.returns(
|
2161
|
+
{
|
2162
|
+
presentation_group_values: T::Hash[Symbol, String],
|
2163
|
+
pricing_group_values: T::Hash[Symbol, String],
|
2164
|
+
product_id: String,
|
2165
|
+
product_tags: T::Array[String]
|
2166
|
+
}
|
2167
|
+
)
|
2168
|
+
end
|
2169
|
+
def to_hash
|
2170
|
+
end
|
2171
|
+
end
|
1635
2172
|
end
|
1636
2173
|
|
1637
2174
|
class RecurringCredit < MetronomeSDK::Internal::Type::BaseModel
|
@@ -1790,7 +2327,7 @@ module MetronomeSDK
|
|
1790
2327
|
# The frequency at which the recurring commits will be created. If not provided: -
|
1791
2328
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
1792
2329
|
# period defined in the duration will correspond to this frequency. - Commits will
|
1793
|
-
# be created aligned with the recurring commit's
|
2330
|
+
# be created aligned with the recurring commit's starting_at rather than the usage
|
1794
2331
|
# invoice dates.
|
1795
2332
|
sig do
|
1796
2333
|
returns(
|
@@ -1818,6 +2355,30 @@ module MetronomeSDK
|
|
1818
2355
|
sig { params(rollover_fraction: Float).void }
|
1819
2356
|
attr_writer :rollover_fraction
|
1820
2357
|
|
2358
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
2359
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
2360
|
+
# specifiers to contribute to a commit's or credit's drawdown.
|
2361
|
+
sig do
|
2362
|
+
returns(
|
2363
|
+
T.nilable(
|
2364
|
+
T::Array[
|
2365
|
+
MetronomeSDK::ContractWithoutAmendments::RecurringCredit::Specifier
|
2366
|
+
]
|
2367
|
+
)
|
2368
|
+
)
|
2369
|
+
end
|
2370
|
+
attr_reader :specifiers
|
2371
|
+
|
2372
|
+
sig do
|
2373
|
+
params(
|
2374
|
+
specifiers:
|
2375
|
+
T::Array[
|
2376
|
+
MetronomeSDK::ContractWithoutAmendments::RecurringCredit::Specifier::OrHash
|
2377
|
+
]
|
2378
|
+
).void
|
2379
|
+
end
|
2380
|
+
attr_writer :specifiers
|
2381
|
+
|
1821
2382
|
sig do
|
1822
2383
|
params(
|
1823
2384
|
id: String,
|
@@ -1843,7 +2404,11 @@ module MetronomeSDK
|
|
1843
2404
|
MetronomeSDK::ContractWithoutAmendments::RecurringCredit::Proration::OrSymbol,
|
1844
2405
|
recurrence_frequency:
|
1845
2406
|
MetronomeSDK::ContractWithoutAmendments::RecurringCredit::RecurrenceFrequency::OrSymbol,
|
1846
|
-
rollover_fraction: Float
|
2407
|
+
rollover_fraction: Float,
|
2408
|
+
specifiers:
|
2409
|
+
T::Array[
|
2410
|
+
MetronomeSDK::ContractWithoutAmendments::RecurringCredit::Specifier::OrHash
|
2411
|
+
]
|
1847
2412
|
).returns(T.attached_class)
|
1848
2413
|
end
|
1849
2414
|
def self.new(
|
@@ -1878,13 +2443,17 @@ module MetronomeSDK
|
|
1878
2443
|
# The frequency at which the recurring commits will be created. If not provided: -
|
1879
2444
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
1880
2445
|
# period defined in the duration will correspond to this frequency. - Commits will
|
1881
|
-
# be created aligned with the recurring commit's
|
2446
|
+
# be created aligned with the recurring commit's starting_at rather than the usage
|
1882
2447
|
# invoice dates.
|
1883
2448
|
recurrence_frequency: nil,
|
1884
2449
|
# Will be passed down to the individual commits. This controls how much of an
|
1885
2450
|
# individual unexpired commit will roll over upon contract transition. Must be
|
1886
2451
|
# between 0 and 1.
|
1887
|
-
rollover_fraction: nil
|
2452
|
+
rollover_fraction: nil,
|
2453
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
2454
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
2455
|
+
# specifiers to contribute to a commit's or credit's drawdown.
|
2456
|
+
specifiers: nil
|
1888
2457
|
)
|
1889
2458
|
end
|
1890
2459
|
|
@@ -1914,7 +2483,11 @@ module MetronomeSDK
|
|
1914
2483
|
MetronomeSDK::ContractWithoutAmendments::RecurringCredit::Proration::TaggedSymbol,
|
1915
2484
|
recurrence_frequency:
|
1916
2485
|
MetronomeSDK::ContractWithoutAmendments::RecurringCredit::RecurrenceFrequency::TaggedSymbol,
|
1917
|
-
rollover_fraction: Float
|
2486
|
+
rollover_fraction: Float,
|
2487
|
+
specifiers:
|
2488
|
+
T::Array[
|
2489
|
+
MetronomeSDK::ContractWithoutAmendments::RecurringCredit::Specifier
|
2490
|
+
]
|
1918
2491
|
}
|
1919
2492
|
)
|
1920
2493
|
end
|
@@ -1933,26 +2506,29 @@ module MetronomeSDK
|
|
1933
2506
|
sig { returns(String) }
|
1934
2507
|
attr_accessor :credit_type_id
|
1935
2508
|
|
1936
|
-
sig { returns(Float) }
|
1937
|
-
attr_accessor :quantity
|
1938
|
-
|
1939
2509
|
sig { returns(Float) }
|
1940
2510
|
attr_accessor :unit_price
|
1941
2511
|
|
2512
|
+
sig { returns(T.nilable(Float)) }
|
2513
|
+
attr_reader :quantity
|
2514
|
+
|
2515
|
+
sig { params(quantity: Float).void }
|
2516
|
+
attr_writer :quantity
|
2517
|
+
|
1942
2518
|
# The amount of commit to grant.
|
1943
2519
|
sig do
|
1944
2520
|
params(
|
1945
2521
|
credit_type_id: String,
|
1946
|
-
|
1947
|
-
|
2522
|
+
unit_price: Float,
|
2523
|
+
quantity: Float
|
1948
2524
|
).returns(T.attached_class)
|
1949
2525
|
end
|
1950
|
-
def self.new(credit_type_id:,
|
2526
|
+
def self.new(credit_type_id:, unit_price:, quantity: nil)
|
1951
2527
|
end
|
1952
2528
|
|
1953
2529
|
sig do
|
1954
2530
|
override.returns(
|
1955
|
-
{ credit_type_id: String,
|
2531
|
+
{ credit_type_id: String, unit_price: Float, quantity: Float }
|
1956
2532
|
)
|
1957
2533
|
end
|
1958
2534
|
def to_hash
|
@@ -2170,7 +2746,7 @@ module MetronomeSDK
|
|
2170
2746
|
# The frequency at which the recurring commits will be created. If not provided: -
|
2171
2747
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
2172
2748
|
# period defined in the duration will correspond to this frequency. - Commits will
|
2173
|
-
# be created aligned with the recurring commit's
|
2749
|
+
# be created aligned with the recurring commit's starting_at rather than the usage
|
2174
2750
|
# invoice dates.
|
2175
2751
|
module RecurrenceFrequency
|
2176
2752
|
extend MetronomeSDK::Internal::Type::Enum
|
@@ -2215,6 +2791,77 @@ module MetronomeSDK
|
|
2215
2791
|
def self.values
|
2216
2792
|
end
|
2217
2793
|
end
|
2794
|
+
|
2795
|
+
class Specifier < MetronomeSDK::Internal::Type::BaseModel
|
2796
|
+
OrHash =
|
2797
|
+
T.type_alias do
|
2798
|
+
T.any(
|
2799
|
+
MetronomeSDK::ContractWithoutAmendments::RecurringCredit::Specifier,
|
2800
|
+
MetronomeSDK::Internal::AnyHash
|
2801
|
+
)
|
2802
|
+
end
|
2803
|
+
|
2804
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
2805
|
+
attr_reader :presentation_group_values
|
2806
|
+
|
2807
|
+
sig do
|
2808
|
+
params(presentation_group_values: T::Hash[Symbol, String]).void
|
2809
|
+
end
|
2810
|
+
attr_writer :presentation_group_values
|
2811
|
+
|
2812
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
2813
|
+
attr_reader :pricing_group_values
|
2814
|
+
|
2815
|
+
sig { params(pricing_group_values: T::Hash[Symbol, String]).void }
|
2816
|
+
attr_writer :pricing_group_values
|
2817
|
+
|
2818
|
+
# If provided, the specifier will only apply to the product with the specified ID.
|
2819
|
+
sig { returns(T.nilable(String)) }
|
2820
|
+
attr_reader :product_id
|
2821
|
+
|
2822
|
+
sig { params(product_id: String).void }
|
2823
|
+
attr_writer :product_id
|
2824
|
+
|
2825
|
+
# If provided, the specifier will only apply to products with all the specified
|
2826
|
+
# tags.
|
2827
|
+
sig { returns(T.nilable(T::Array[String])) }
|
2828
|
+
attr_reader :product_tags
|
2829
|
+
|
2830
|
+
sig { params(product_tags: T::Array[String]).void }
|
2831
|
+
attr_writer :product_tags
|
2832
|
+
|
2833
|
+
sig do
|
2834
|
+
params(
|
2835
|
+
presentation_group_values: T::Hash[Symbol, String],
|
2836
|
+
pricing_group_values: T::Hash[Symbol, String],
|
2837
|
+
product_id: String,
|
2838
|
+
product_tags: T::Array[String]
|
2839
|
+
).returns(T.attached_class)
|
2840
|
+
end
|
2841
|
+
def self.new(
|
2842
|
+
presentation_group_values: nil,
|
2843
|
+
pricing_group_values: nil,
|
2844
|
+
# If provided, the specifier will only apply to the product with the specified ID.
|
2845
|
+
product_id: nil,
|
2846
|
+
# If provided, the specifier will only apply to products with all the specified
|
2847
|
+
# tags.
|
2848
|
+
product_tags: nil
|
2849
|
+
)
|
2850
|
+
end
|
2851
|
+
|
2852
|
+
sig do
|
2853
|
+
override.returns(
|
2854
|
+
{
|
2855
|
+
presentation_group_values: T::Hash[Symbol, String],
|
2856
|
+
pricing_group_values: T::Hash[Symbol, String],
|
2857
|
+
product_id: String,
|
2858
|
+
product_tags: T::Array[String]
|
2859
|
+
}
|
2860
|
+
)
|
2861
|
+
end
|
2862
|
+
def to_hash
|
2863
|
+
end
|
2864
|
+
end
|
2218
2865
|
end
|
2219
2866
|
|
2220
2867
|
class ResellerRoyalty < MetronomeSDK::Internal::Type::BaseModel
|
@@ -2596,7 +3243,25 @@ module MetronomeSDK
|
|
2596
3243
|
end
|
2597
3244
|
attr_accessor :payment_gate_type
|
2598
3245
|
|
2599
|
-
# Only applicable if using
|
3246
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
3247
|
+
sig do
|
3248
|
+
returns(
|
3249
|
+
T.nilable(
|
3250
|
+
MetronomeSDK::ContractWithoutAmendments::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
|
3251
|
+
)
|
3252
|
+
)
|
3253
|
+
end
|
3254
|
+
attr_reader :precalculated_tax_config
|
3255
|
+
|
3256
|
+
sig do
|
3257
|
+
params(
|
3258
|
+
precalculated_tax_config:
|
3259
|
+
MetronomeSDK::ContractWithoutAmendments::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig::OrHash
|
3260
|
+
).void
|
3261
|
+
end
|
3262
|
+
attr_writer :precalculated_tax_config
|
3263
|
+
|
3264
|
+
# Only applicable if using STRIPE as your payment gate type.
|
2600
3265
|
sig do
|
2601
3266
|
returns(
|
2602
3267
|
T.nilable(
|
@@ -2638,6 +3303,8 @@ module MetronomeSDK
|
|
2638
3303
|
params(
|
2639
3304
|
payment_gate_type:
|
2640
3305
|
MetronomeSDK::ContractWithoutAmendments::SpendThresholdConfiguration::PaymentGateConfig::PaymentGateType::OrSymbol,
|
3306
|
+
precalculated_tax_config:
|
3307
|
+
MetronomeSDK::ContractWithoutAmendments::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig::OrHash,
|
2641
3308
|
stripe_config:
|
2642
3309
|
MetronomeSDK::ContractWithoutAmendments::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::OrHash,
|
2643
3310
|
tax_type:
|
@@ -2650,7 +3317,9 @@ module MetronomeSDK
|
|
2650
3317
|
# facilitate payment using your own payment integration. Select NONE if you do not
|
2651
3318
|
# wish to payment gate the commit balance.
|
2652
3319
|
payment_gate_type:,
|
2653
|
-
# Only applicable if using
|
3320
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
3321
|
+
precalculated_tax_config: nil,
|
3322
|
+
# Only applicable if using STRIPE as your payment gate type.
|
2654
3323
|
stripe_config: nil,
|
2655
3324
|
# Stripe tax is only supported for Stripe payment gateway. Select NONE if you do
|
2656
3325
|
# not wish Metronome to calculate tax on your behalf. Leaving this field blank
|
@@ -2664,6 +3333,8 @@ module MetronomeSDK
|
|
2664
3333
|
{
|
2665
3334
|
payment_gate_type:
|
2666
3335
|
MetronomeSDK::ContractWithoutAmendments::SpendThresholdConfiguration::PaymentGateConfig::PaymentGateType::TaggedSymbol,
|
3336
|
+
precalculated_tax_config:
|
3337
|
+
MetronomeSDK::ContractWithoutAmendments::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
|
2667
3338
|
stripe_config:
|
2668
3339
|
MetronomeSDK::ContractWithoutAmendments::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig,
|
2669
3340
|
tax_type:
|
@@ -2717,6 +3388,49 @@ module MetronomeSDK
|
|
2717
3388
|
end
|
2718
3389
|
end
|
2719
3390
|
|
3391
|
+
class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
|
3392
|
+
OrHash =
|
3393
|
+
T.type_alias do
|
3394
|
+
T.any(
|
3395
|
+
MetronomeSDK::ContractWithoutAmendments::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
|
3396
|
+
MetronomeSDK::Internal::AnyHash
|
3397
|
+
)
|
3398
|
+
end
|
3399
|
+
|
3400
|
+
# Amount of tax to be applied. This should be in the same currency and
|
3401
|
+
# denomination as the commit's invoice schedule
|
3402
|
+
sig { returns(Float) }
|
3403
|
+
attr_accessor :tax_amount
|
3404
|
+
|
3405
|
+
# Name of the tax to be applied. This may be used in an invoice line item
|
3406
|
+
# description.
|
3407
|
+
sig { returns(T.nilable(String)) }
|
3408
|
+
attr_reader :tax_name
|
3409
|
+
|
3410
|
+
sig { params(tax_name: String).void }
|
3411
|
+
attr_writer :tax_name
|
3412
|
+
|
3413
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
3414
|
+
sig do
|
3415
|
+
params(tax_amount: Float, tax_name: String).returns(
|
3416
|
+
T.attached_class
|
3417
|
+
)
|
3418
|
+
end
|
3419
|
+
def self.new(
|
3420
|
+
# Amount of tax to be applied. This should be in the same currency and
|
3421
|
+
# denomination as the commit's invoice schedule
|
3422
|
+
tax_amount:,
|
3423
|
+
# Name of the tax to be applied. This may be used in an invoice line item
|
3424
|
+
# description.
|
3425
|
+
tax_name: nil
|
3426
|
+
)
|
3427
|
+
end
|
3428
|
+
|
3429
|
+
sig { override.returns({ tax_amount: Float, tax_name: String }) }
|
3430
|
+
def to_hash
|
3431
|
+
end
|
3432
|
+
end
|
3433
|
+
|
2720
3434
|
class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
|
2721
3435
|
OrHash =
|
2722
3436
|
T.type_alias do
|
@@ -2734,16 +3448,28 @@ module MetronomeSDK
|
|
2734
3448
|
end
|
2735
3449
|
attr_accessor :payment_type
|
2736
3450
|
|
2737
|
-
#
|
3451
|
+
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
3452
|
+
# your payment type.
|
3453
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
3454
|
+
attr_reader :invoice_metadata
|
3455
|
+
|
3456
|
+
sig { params(invoice_metadata: T::Hash[Symbol, String]).void }
|
3457
|
+
attr_writer :invoice_metadata
|
3458
|
+
|
3459
|
+
# Only applicable if using STRIPE as your payment gate type.
|
2738
3460
|
sig do
|
2739
3461
|
params(
|
2740
3462
|
payment_type:
|
2741
|
-
MetronomeSDK::ContractWithoutAmendments::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol
|
3463
|
+
MetronomeSDK::ContractWithoutAmendments::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol,
|
3464
|
+
invoice_metadata: T::Hash[Symbol, String]
|
2742
3465
|
).returns(T.attached_class)
|
2743
3466
|
end
|
2744
3467
|
def self.new(
|
2745
3468
|
# If left blank, will default to INVOICE
|
2746
|
-
payment_type
|
3469
|
+
payment_type:,
|
3470
|
+
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
3471
|
+
# your payment type.
|
3472
|
+
invoice_metadata: nil
|
2747
3473
|
)
|
2748
3474
|
end
|
2749
3475
|
|
@@ -2751,7 +3477,8 @@ module MetronomeSDK
|
|
2751
3477
|
override.returns(
|
2752
3478
|
{
|
2753
3479
|
payment_type:
|
2754
|
-
MetronomeSDK::ContractWithoutAmendments::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::TaggedSymbol
|
3480
|
+
MetronomeSDK::ContractWithoutAmendments::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::TaggedSymbol,
|
3481
|
+
invoice_metadata: T::Hash[Symbol, String]
|
2755
3482
|
}
|
2756
3483
|
)
|
2757
3484
|
end
|
@@ -2819,6 +3546,16 @@ module MetronomeSDK
|
|
2819
3546
|
:STRIPE,
|
2820
3547
|
MetronomeSDK::ContractWithoutAmendments::SpendThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
2821
3548
|
)
|
3549
|
+
ANROK =
|
3550
|
+
T.let(
|
3551
|
+
:ANROK,
|
3552
|
+
MetronomeSDK::ContractWithoutAmendments::SpendThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
3553
|
+
)
|
3554
|
+
PRECALCULATED =
|
3555
|
+
T.let(
|
3556
|
+
:PRECALCULATED,
|
3557
|
+
MetronomeSDK::ContractWithoutAmendments::SpendThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
3558
|
+
)
|
2822
3559
|
|
2823
3560
|
sig do
|
2824
3561
|
override.returns(
|