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
@@ -185,6 +185,28 @@ module MetronomeSDK
|
|
185
185
|
sig { params(ending_before: Time).void }
|
186
186
|
attr_writer :ending_before
|
187
187
|
|
188
|
+
# Either a **parent** configuration with a list of children or a **child**
|
189
|
+
# configuration with a single parent.
|
190
|
+
sig do
|
191
|
+
returns(
|
192
|
+
T.nilable(
|
193
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::Variants
|
194
|
+
)
|
195
|
+
)
|
196
|
+
end
|
197
|
+
attr_reader :hierarchy_configuration
|
198
|
+
|
199
|
+
sig do
|
200
|
+
params(
|
201
|
+
hierarchy_configuration:
|
202
|
+
T.any(
|
203
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ParentHierarchyConfiguration::OrHash,
|
204
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ChildHierarchyConfiguration::OrHash
|
205
|
+
)
|
206
|
+
).void
|
207
|
+
end
|
208
|
+
attr_writer :hierarchy_configuration
|
209
|
+
|
188
210
|
# Defaults to LOWEST_MULTIPLIER, which applies the greatest discount to list
|
189
211
|
# prices automatically. EXPLICIT prioritization requires specifying priorities for
|
190
212
|
# each multiplier; the one with the lowest priority value will be prioritized
|
@@ -242,6 +264,13 @@ module MetronomeSDK
|
|
242
264
|
end
|
243
265
|
attr_writer :prepaid_balance_threshold_configuration
|
244
266
|
|
267
|
+
# Priority of the contract.
|
268
|
+
sig { returns(T.nilable(Float)) }
|
269
|
+
attr_reader :priority
|
270
|
+
|
271
|
+
sig { params(priority: Float).void }
|
272
|
+
attr_writer :priority
|
273
|
+
|
245
274
|
# This field's availability is dependent on your client's configuration.
|
246
275
|
sig { returns(T.nilable(T::Array[MetronomeSDK::ProService])) }
|
247
276
|
attr_reader :professional_services
|
@@ -369,6 +398,28 @@ module MetronomeSDK
|
|
369
398
|
end
|
370
399
|
attr_writer :spend_threshold_configuration
|
371
400
|
|
401
|
+
# List of subscriptions on the contract.
|
402
|
+
sig do
|
403
|
+
returns(
|
404
|
+
T.nilable(
|
405
|
+
T::Array[
|
406
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription
|
407
|
+
]
|
408
|
+
)
|
409
|
+
)
|
410
|
+
end
|
411
|
+
attr_reader :subscriptions
|
412
|
+
|
413
|
+
sig do
|
414
|
+
params(
|
415
|
+
subscriptions:
|
416
|
+
T::Array[
|
417
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::OrHash
|
418
|
+
]
|
419
|
+
).void
|
420
|
+
end
|
421
|
+
attr_writer :subscriptions
|
422
|
+
|
372
423
|
sig { returns(T.nilable(Float)) }
|
373
424
|
attr_reader :total_contract_value
|
374
425
|
|
@@ -421,6 +472,11 @@ module MetronomeSDK
|
|
421
472
|
MetronomeSDK::Models::V2::ContractListResponse::Data::CustomerBillingProviderConfiguration::OrHash,
|
422
473
|
discounts: T::Array[MetronomeSDK::Discount::OrHash],
|
423
474
|
ending_before: Time,
|
475
|
+
hierarchy_configuration:
|
476
|
+
T.any(
|
477
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ParentHierarchyConfiguration::OrHash,
|
478
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ChildHierarchyConfiguration::OrHash
|
479
|
+
),
|
424
480
|
multiplier_override_prioritization:
|
425
481
|
MetronomeSDK::Models::V2::ContractListResponse::Data::MultiplierOverridePrioritization::OrSymbol,
|
426
482
|
name: String,
|
@@ -428,6 +484,7 @@ module MetronomeSDK
|
|
428
484
|
netsuite_sales_order_id: String,
|
429
485
|
prepaid_balance_threshold_configuration:
|
430
486
|
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::OrHash,
|
487
|
+
priority: Float,
|
431
488
|
professional_services: T::Array[MetronomeSDK::ProService::OrHash],
|
432
489
|
rate_card_id: String,
|
433
490
|
recurring_commits:
|
@@ -447,6 +504,10 @@ module MetronomeSDK
|
|
447
504
|
MetronomeSDK::Models::V2::ContractListResponse::Data::ScheduledChargesOnUsageInvoices::OrSymbol,
|
448
505
|
spend_threshold_configuration:
|
449
506
|
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::OrHash,
|
507
|
+
subscriptions:
|
508
|
+
T::Array[
|
509
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::OrHash
|
510
|
+
],
|
450
511
|
total_contract_value: Float,
|
451
512
|
uniqueness_key: String
|
452
513
|
).returns(T.attached_class)
|
@@ -471,6 +532,9 @@ module MetronomeSDK
|
|
471
532
|
# This field's availability is dependent on your client's configuration.
|
472
533
|
discounts: nil,
|
473
534
|
ending_before: nil,
|
535
|
+
# Either a **parent** configuration with a list of children or a **child**
|
536
|
+
# configuration with a single parent.
|
537
|
+
hierarchy_configuration: nil,
|
474
538
|
# Defaults to LOWEST_MULTIPLIER, which applies the greatest discount to list
|
475
539
|
# prices automatically. EXPLICIT prioritization requires specifying priorities for
|
476
540
|
# each multiplier; the one with the lowest priority value will be prioritized
|
@@ -481,6 +545,8 @@ module MetronomeSDK
|
|
481
545
|
# This field's availability is dependent on your client's configuration.
|
482
546
|
netsuite_sales_order_id: nil,
|
483
547
|
prepaid_balance_threshold_configuration: nil,
|
548
|
+
# Priority of the contract.
|
549
|
+
priority: nil,
|
484
550
|
# This field's availability is dependent on your client's configuration.
|
485
551
|
professional_services: nil,
|
486
552
|
rate_card_id: nil,
|
@@ -497,6 +563,8 @@ module MetronomeSDK
|
|
497
563
|
# on a separate invoice from usage charges.
|
498
564
|
scheduled_charges_on_usage_invoices: nil,
|
499
565
|
spend_threshold_configuration: nil,
|
566
|
+
# List of subscriptions on the contract.
|
567
|
+
subscriptions: nil,
|
500
568
|
total_contract_value: nil,
|
501
569
|
# Prevents the creation of duplicates. If a request to create a record is made
|
502
570
|
# with a previously used uniqueness key, a new record will not be created and the
|
@@ -542,6 +610,8 @@ module MetronomeSDK
|
|
542
610
|
MetronomeSDK::Models::V2::ContractListResponse::Data::CustomerBillingProviderConfiguration,
|
543
611
|
discounts: T::Array[MetronomeSDK::Discount],
|
544
612
|
ending_before: Time,
|
613
|
+
hierarchy_configuration:
|
614
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::Variants,
|
545
615
|
multiplier_override_prioritization:
|
546
616
|
MetronomeSDK::Models::V2::ContractListResponse::Data::MultiplierOverridePrioritization::TaggedSymbol,
|
547
617
|
name: String,
|
@@ -549,6 +619,7 @@ module MetronomeSDK
|
|
549
619
|
netsuite_sales_order_id: String,
|
550
620
|
prepaid_balance_threshold_configuration:
|
551
621
|
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration,
|
622
|
+
priority: Float,
|
552
623
|
professional_services: T::Array[MetronomeSDK::ProService],
|
553
624
|
rate_card_id: String,
|
554
625
|
recurring_commits:
|
@@ -568,6 +639,10 @@ module MetronomeSDK
|
|
568
639
|
MetronomeSDK::Models::V2::ContractListResponse::Data::ScheduledChargesOnUsageInvoices::TaggedSymbol,
|
569
640
|
spend_threshold_configuration:
|
570
641
|
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration,
|
642
|
+
subscriptions:
|
643
|
+
T::Array[
|
644
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription
|
645
|
+
],
|
571
646
|
total_contract_value: Float,
|
572
647
|
uniqueness_key: String
|
573
648
|
}
|
@@ -689,6 +764,24 @@ module MetronomeSDK
|
|
689
764
|
sig { params(description: String).void }
|
690
765
|
attr_writer :description
|
691
766
|
|
767
|
+
# Optional configuration for commit hierarchy access control
|
768
|
+
sig do
|
769
|
+
returns(
|
770
|
+
T.nilable(
|
771
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration
|
772
|
+
)
|
773
|
+
)
|
774
|
+
end
|
775
|
+
attr_reader :hierarchy_configuration
|
776
|
+
|
777
|
+
sig do
|
778
|
+
params(
|
779
|
+
hierarchy_configuration:
|
780
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::OrHash
|
781
|
+
).void
|
782
|
+
end
|
783
|
+
attr_writer :hierarchy_configuration
|
784
|
+
|
692
785
|
# The contract that this commit will be billed on.
|
693
786
|
sig do
|
694
787
|
returns(
|
@@ -724,21 +817,7 @@ module MetronomeSDK
|
|
724
817
|
returns(
|
725
818
|
T.nilable(
|
726
819
|
T::Array[
|
727
|
-
|
728
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PrepaidCommitSegmentStartLedgerEntry,
|
729
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PrepaidCommitAutomatedInvoiceDeductionLedgerEntry,
|
730
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PrepaidCommitRolloverLedgerEntry,
|
731
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PrepaidCommitExpirationLedgerEntry,
|
732
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PrepaidCommitCanceledLedgerEntry,
|
733
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PrepaidCommitCreditedLedgerEntry,
|
734
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PostpaidCommitInitialBalanceLedgerEntry,
|
735
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PostpaidCommitAutomatedInvoiceDeductionLedgerEntry,
|
736
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PostpaidCommitRolloverLedgerEntry,
|
737
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PostpaidCommitTrueupLedgerEntry,
|
738
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PrepaidCommitManualLedgerEntry,
|
739
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PostpaidCommitManualLedgerEntry,
|
740
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PostpaidCommitExpirationLedgerEntry
|
741
|
-
)
|
820
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::Variants
|
742
821
|
]
|
743
822
|
)
|
744
823
|
)
|
@@ -837,6 +916,30 @@ module MetronomeSDK
|
|
837
916
|
sig { params(salesforce_opportunity_id: String).void }
|
838
917
|
attr_writer :salesforce_opportunity_id
|
839
918
|
|
919
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
920
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
921
|
+
# specifiers to contribute to a commit's or credit's drawdown.
|
922
|
+
sig do
|
923
|
+
returns(
|
924
|
+
T.nilable(
|
925
|
+
T::Array[
|
926
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Specifier
|
927
|
+
]
|
928
|
+
)
|
929
|
+
)
|
930
|
+
end
|
931
|
+
attr_reader :specifiers
|
932
|
+
|
933
|
+
sig do
|
934
|
+
params(
|
935
|
+
specifiers:
|
936
|
+
T::Array[
|
937
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Specifier::OrHash
|
938
|
+
]
|
939
|
+
).void
|
940
|
+
end
|
941
|
+
attr_writer :specifiers
|
942
|
+
|
840
943
|
sig do
|
841
944
|
params(
|
842
945
|
id: String,
|
@@ -854,6 +957,8 @@ module MetronomeSDK
|
|
854
957
|
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Contract::OrHash,
|
855
958
|
custom_fields: T::Hash[Symbol, String],
|
856
959
|
description: String,
|
960
|
+
hierarchy_configuration:
|
961
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::OrHash,
|
857
962
|
invoice_contract:
|
858
963
|
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::InvoiceContract::OrHash,
|
859
964
|
invoice_schedule: MetronomeSDK::SchedulePointInTime::OrHash,
|
@@ -883,7 +988,11 @@ module MetronomeSDK
|
|
883
988
|
rolled_over_from:
|
884
989
|
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::RolledOverFrom::OrHash,
|
885
990
|
rollover_fraction: Float,
|
886
|
-
salesforce_opportunity_id: String
|
991
|
+
salesforce_opportunity_id: String,
|
992
|
+
specifiers:
|
993
|
+
T::Array[
|
994
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Specifier::OrHash
|
995
|
+
]
|
887
996
|
).returns(T.attached_class)
|
888
997
|
end
|
889
998
|
def self.new(
|
@@ -909,6 +1018,8 @@ module MetronomeSDK
|
|
909
1018
|
contract: nil,
|
910
1019
|
custom_fields: nil,
|
911
1020
|
description: nil,
|
1021
|
+
# Optional configuration for commit hierarchy access control
|
1022
|
+
hierarchy_configuration: nil,
|
912
1023
|
# The contract that this commit will be billed on.
|
913
1024
|
invoice_contract: nil,
|
914
1025
|
# The schedule that the customer will be invoiced for this commit.
|
@@ -926,7 +1037,11 @@ module MetronomeSDK
|
|
926
1037
|
rolled_over_from: nil,
|
927
1038
|
rollover_fraction: nil,
|
928
1039
|
# This field's availability is dependent on your client's configuration.
|
929
|
-
salesforce_opportunity_id: nil
|
1040
|
+
salesforce_opportunity_id: nil,
|
1041
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
1042
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
1043
|
+
# specifiers to contribute to a commit's or credit's drawdown.
|
1044
|
+
specifiers: nil
|
930
1045
|
)
|
931
1046
|
end
|
932
1047
|
|
@@ -948,26 +1063,14 @@ module MetronomeSDK
|
|
948
1063
|
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Contract,
|
949
1064
|
custom_fields: T::Hash[Symbol, String],
|
950
1065
|
description: String,
|
1066
|
+
hierarchy_configuration:
|
1067
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration,
|
951
1068
|
invoice_contract:
|
952
1069
|
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::InvoiceContract,
|
953
1070
|
invoice_schedule: MetronomeSDK::SchedulePointInTime,
|
954
1071
|
ledger:
|
955
1072
|
T::Array[
|
956
|
-
|
957
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PrepaidCommitSegmentStartLedgerEntry,
|
958
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PrepaidCommitAutomatedInvoiceDeductionLedgerEntry,
|
959
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PrepaidCommitRolloverLedgerEntry,
|
960
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PrepaidCommitExpirationLedgerEntry,
|
961
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PrepaidCommitCanceledLedgerEntry,
|
962
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PrepaidCommitCreditedLedgerEntry,
|
963
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PostpaidCommitInitialBalanceLedgerEntry,
|
964
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PostpaidCommitAutomatedInvoiceDeductionLedgerEntry,
|
965
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PostpaidCommitRolloverLedgerEntry,
|
966
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PostpaidCommitTrueupLedgerEntry,
|
967
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PrepaidCommitManualLedgerEntry,
|
968
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PostpaidCommitManualLedgerEntry,
|
969
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::PostpaidCommitExpirationLedgerEntry
|
970
|
-
)
|
1073
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Ledger::Variants
|
971
1074
|
],
|
972
1075
|
name: String,
|
973
1076
|
netsuite_sales_order_id: String,
|
@@ -977,7 +1080,11 @@ module MetronomeSDK
|
|
977
1080
|
rolled_over_from:
|
978
1081
|
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::RolledOverFrom,
|
979
1082
|
rollover_fraction: Float,
|
980
|
-
salesforce_opportunity_id: String
|
1083
|
+
salesforce_opportunity_id: String,
|
1084
|
+
specifiers:
|
1085
|
+
T::Array[
|
1086
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Specifier
|
1087
|
+
]
|
981
1088
|
}
|
982
1089
|
)
|
983
1090
|
end
|
@@ -1063,6 +1170,274 @@ module MetronomeSDK
|
|
1063
1170
|
end
|
1064
1171
|
end
|
1065
1172
|
|
1173
|
+
class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
1174
|
+
OrHash =
|
1175
|
+
T.type_alias do
|
1176
|
+
T.any(
|
1177
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration,
|
1178
|
+
MetronomeSDK::Internal::AnyHash
|
1179
|
+
)
|
1180
|
+
end
|
1181
|
+
|
1182
|
+
sig do
|
1183
|
+
returns(
|
1184
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::Variants
|
1185
|
+
)
|
1186
|
+
end
|
1187
|
+
attr_accessor :child_access
|
1188
|
+
|
1189
|
+
# Optional configuration for commit hierarchy access control
|
1190
|
+
sig do
|
1191
|
+
params(
|
1192
|
+
child_access:
|
1193
|
+
T.any(
|
1194
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::OrHash,
|
1195
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::OrHash,
|
1196
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::OrHash
|
1197
|
+
)
|
1198
|
+
).returns(T.attached_class)
|
1199
|
+
end
|
1200
|
+
def self.new(child_access:)
|
1201
|
+
end
|
1202
|
+
|
1203
|
+
sig do
|
1204
|
+
override.returns(
|
1205
|
+
{
|
1206
|
+
child_access:
|
1207
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::Variants
|
1208
|
+
}
|
1209
|
+
)
|
1210
|
+
end
|
1211
|
+
def to_hash
|
1212
|
+
end
|
1213
|
+
|
1214
|
+
module ChildAccess
|
1215
|
+
extend MetronomeSDK::Internal::Type::Union
|
1216
|
+
|
1217
|
+
Variants =
|
1218
|
+
T.type_alias do
|
1219
|
+
T.any(
|
1220
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll,
|
1221
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone,
|
1222
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
|
1223
|
+
)
|
1224
|
+
end
|
1225
|
+
|
1226
|
+
class CommitHierarchyChildAccessAll < MetronomeSDK::Internal::Type::BaseModel
|
1227
|
+
OrHash =
|
1228
|
+
T.type_alias do
|
1229
|
+
T.any(
|
1230
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll,
|
1231
|
+
MetronomeSDK::Internal::AnyHash
|
1232
|
+
)
|
1233
|
+
end
|
1234
|
+
|
1235
|
+
sig do
|
1236
|
+
returns(
|
1237
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::TaggedSymbol
|
1238
|
+
)
|
1239
|
+
end
|
1240
|
+
attr_accessor :type
|
1241
|
+
|
1242
|
+
sig do
|
1243
|
+
params(
|
1244
|
+
type:
|
1245
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::OrSymbol
|
1246
|
+
).returns(T.attached_class)
|
1247
|
+
end
|
1248
|
+
def self.new(type:)
|
1249
|
+
end
|
1250
|
+
|
1251
|
+
sig do
|
1252
|
+
override.returns(
|
1253
|
+
{
|
1254
|
+
type:
|
1255
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::TaggedSymbol
|
1256
|
+
}
|
1257
|
+
)
|
1258
|
+
end
|
1259
|
+
def to_hash
|
1260
|
+
end
|
1261
|
+
|
1262
|
+
module Type
|
1263
|
+
extend MetronomeSDK::Internal::Type::Enum
|
1264
|
+
|
1265
|
+
TaggedSymbol =
|
1266
|
+
T.type_alias do
|
1267
|
+
T.all(
|
1268
|
+
Symbol,
|
1269
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type
|
1270
|
+
)
|
1271
|
+
end
|
1272
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
1273
|
+
|
1274
|
+
ALL =
|
1275
|
+
T.let(
|
1276
|
+
:ALL,
|
1277
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::TaggedSymbol
|
1278
|
+
)
|
1279
|
+
|
1280
|
+
sig do
|
1281
|
+
override.returns(
|
1282
|
+
T::Array[
|
1283
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::TaggedSymbol
|
1284
|
+
]
|
1285
|
+
)
|
1286
|
+
end
|
1287
|
+
def self.values
|
1288
|
+
end
|
1289
|
+
end
|
1290
|
+
end
|
1291
|
+
|
1292
|
+
class CommitHierarchyChildAccessNone < MetronomeSDK::Internal::Type::BaseModel
|
1293
|
+
OrHash =
|
1294
|
+
T.type_alias do
|
1295
|
+
T.any(
|
1296
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone,
|
1297
|
+
MetronomeSDK::Internal::AnyHash
|
1298
|
+
)
|
1299
|
+
end
|
1300
|
+
|
1301
|
+
sig do
|
1302
|
+
returns(
|
1303
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::TaggedSymbol
|
1304
|
+
)
|
1305
|
+
end
|
1306
|
+
attr_accessor :type
|
1307
|
+
|
1308
|
+
sig do
|
1309
|
+
params(
|
1310
|
+
type:
|
1311
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::OrSymbol
|
1312
|
+
).returns(T.attached_class)
|
1313
|
+
end
|
1314
|
+
def self.new(type:)
|
1315
|
+
end
|
1316
|
+
|
1317
|
+
sig do
|
1318
|
+
override.returns(
|
1319
|
+
{
|
1320
|
+
type:
|
1321
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::TaggedSymbol
|
1322
|
+
}
|
1323
|
+
)
|
1324
|
+
end
|
1325
|
+
def to_hash
|
1326
|
+
end
|
1327
|
+
|
1328
|
+
module Type
|
1329
|
+
extend MetronomeSDK::Internal::Type::Enum
|
1330
|
+
|
1331
|
+
TaggedSymbol =
|
1332
|
+
T.type_alias do
|
1333
|
+
T.all(
|
1334
|
+
Symbol,
|
1335
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type
|
1336
|
+
)
|
1337
|
+
end
|
1338
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
1339
|
+
|
1340
|
+
NONE =
|
1341
|
+
T.let(
|
1342
|
+
:NONE,
|
1343
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::TaggedSymbol
|
1344
|
+
)
|
1345
|
+
|
1346
|
+
sig do
|
1347
|
+
override.returns(
|
1348
|
+
T::Array[
|
1349
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::TaggedSymbol
|
1350
|
+
]
|
1351
|
+
)
|
1352
|
+
end
|
1353
|
+
def self.values
|
1354
|
+
end
|
1355
|
+
end
|
1356
|
+
end
|
1357
|
+
|
1358
|
+
class CommitHierarchyChildAccessContractIDs < MetronomeSDK::Internal::Type::BaseModel
|
1359
|
+
OrHash =
|
1360
|
+
T.type_alias do
|
1361
|
+
T.any(
|
1362
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs,
|
1363
|
+
MetronomeSDK::Internal::AnyHash
|
1364
|
+
)
|
1365
|
+
end
|
1366
|
+
|
1367
|
+
sig { returns(T::Array[String]) }
|
1368
|
+
attr_accessor :contract_ids
|
1369
|
+
|
1370
|
+
sig do
|
1371
|
+
returns(
|
1372
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::TaggedSymbol
|
1373
|
+
)
|
1374
|
+
end
|
1375
|
+
attr_accessor :type
|
1376
|
+
|
1377
|
+
sig do
|
1378
|
+
params(
|
1379
|
+
contract_ids: T::Array[String],
|
1380
|
+
type:
|
1381
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::OrSymbol
|
1382
|
+
).returns(T.attached_class)
|
1383
|
+
end
|
1384
|
+
def self.new(contract_ids:, type:)
|
1385
|
+
end
|
1386
|
+
|
1387
|
+
sig do
|
1388
|
+
override.returns(
|
1389
|
+
{
|
1390
|
+
contract_ids: T::Array[String],
|
1391
|
+
type:
|
1392
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::TaggedSymbol
|
1393
|
+
}
|
1394
|
+
)
|
1395
|
+
end
|
1396
|
+
def to_hash
|
1397
|
+
end
|
1398
|
+
|
1399
|
+
module Type
|
1400
|
+
extend MetronomeSDK::Internal::Type::Enum
|
1401
|
+
|
1402
|
+
TaggedSymbol =
|
1403
|
+
T.type_alias do
|
1404
|
+
T.all(
|
1405
|
+
Symbol,
|
1406
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type
|
1407
|
+
)
|
1408
|
+
end
|
1409
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
1410
|
+
|
1411
|
+
CONTRACT_IDS =
|
1412
|
+
T.let(
|
1413
|
+
:CONTRACT_IDS,
|
1414
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::TaggedSymbol
|
1415
|
+
)
|
1416
|
+
|
1417
|
+
sig do
|
1418
|
+
override.returns(
|
1419
|
+
T::Array[
|
1420
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::TaggedSymbol
|
1421
|
+
]
|
1422
|
+
)
|
1423
|
+
end
|
1424
|
+
def self.values
|
1425
|
+
end
|
1426
|
+
end
|
1427
|
+
end
|
1428
|
+
|
1429
|
+
sig do
|
1430
|
+
override.returns(
|
1431
|
+
T::Array[
|
1432
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::HierarchyConfiguration::ChildAccess::Variants
|
1433
|
+
]
|
1434
|
+
)
|
1435
|
+
end
|
1436
|
+
def self.variants
|
1437
|
+
end
|
1438
|
+
end
|
1439
|
+
end
|
1440
|
+
|
1066
1441
|
class InvoiceContract < MetronomeSDK::Internal::Type::BaseModel
|
1067
1442
|
OrHash =
|
1068
1443
|
T.type_alias do
|
@@ -2290,33 +2665,104 @@ module MetronomeSDK
|
|
2290
2665
|
def to_hash
|
2291
2666
|
end
|
2292
2667
|
end
|
2293
|
-
end
|
2294
2668
|
|
2295
|
-
|
2296
|
-
|
2297
|
-
|
2298
|
-
|
2299
|
-
|
2300
|
-
|
2301
|
-
|
2302
|
-
|
2669
|
+
class Specifier < MetronomeSDK::Internal::Type::BaseModel
|
2670
|
+
OrHash =
|
2671
|
+
T.type_alias do
|
2672
|
+
T.any(
|
2673
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Commit::Specifier,
|
2674
|
+
MetronomeSDK::Internal::AnyHash
|
2675
|
+
)
|
2676
|
+
end
|
2303
2677
|
|
2304
|
-
|
2305
|
-
|
2678
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
2679
|
+
attr_reader :presentation_group_values
|
2306
2680
|
|
2307
|
-
|
2308
|
-
|
2681
|
+
sig do
|
2682
|
+
params(presentation_group_values: T::Hash[Symbol, String]).void
|
2683
|
+
end
|
2684
|
+
attr_writer :presentation_group_values
|
2309
2685
|
|
2310
|
-
|
2311
|
-
|
2686
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
2687
|
+
attr_reader :pricing_group_values
|
2312
2688
|
|
2313
|
-
|
2314
|
-
|
2689
|
+
sig { params(pricing_group_values: T::Hash[Symbol, String]).void }
|
2690
|
+
attr_writer :pricing_group_values
|
2315
2691
|
|
2316
|
-
|
2317
|
-
|
2692
|
+
# If provided, the specifier will only apply to the product with the specified ID.
|
2693
|
+
sig { returns(T.nilable(String)) }
|
2694
|
+
attr_reader :product_id
|
2318
2695
|
|
2319
|
-
|
2696
|
+
sig { params(product_id: String).void }
|
2697
|
+
attr_writer :product_id
|
2698
|
+
|
2699
|
+
# If provided, the specifier will only apply to products with all the specified
|
2700
|
+
# tags.
|
2701
|
+
sig { returns(T.nilable(T::Array[String])) }
|
2702
|
+
attr_reader :product_tags
|
2703
|
+
|
2704
|
+
sig { params(product_tags: T::Array[String]).void }
|
2705
|
+
attr_writer :product_tags
|
2706
|
+
|
2707
|
+
sig do
|
2708
|
+
params(
|
2709
|
+
presentation_group_values: T::Hash[Symbol, String],
|
2710
|
+
pricing_group_values: T::Hash[Symbol, String],
|
2711
|
+
product_id: String,
|
2712
|
+
product_tags: T::Array[String]
|
2713
|
+
).returns(T.attached_class)
|
2714
|
+
end
|
2715
|
+
def self.new(
|
2716
|
+
presentation_group_values: nil,
|
2717
|
+
pricing_group_values: nil,
|
2718
|
+
# If provided, the specifier will only apply to the product with the specified ID.
|
2719
|
+
product_id: nil,
|
2720
|
+
# If provided, the specifier will only apply to products with all the specified
|
2721
|
+
# tags.
|
2722
|
+
product_tags: nil
|
2723
|
+
)
|
2724
|
+
end
|
2725
|
+
|
2726
|
+
sig do
|
2727
|
+
override.returns(
|
2728
|
+
{
|
2729
|
+
presentation_group_values: T::Hash[Symbol, String],
|
2730
|
+
pricing_group_values: T::Hash[Symbol, String],
|
2731
|
+
product_id: String,
|
2732
|
+
product_tags: T::Array[String]
|
2733
|
+
}
|
2734
|
+
)
|
2735
|
+
end
|
2736
|
+
def to_hash
|
2737
|
+
end
|
2738
|
+
end
|
2739
|
+
end
|
2740
|
+
|
2741
|
+
class Override < MetronomeSDK::Internal::Type::BaseModel
|
2742
|
+
OrHash =
|
2743
|
+
T.type_alias do
|
2744
|
+
T.any(
|
2745
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Override,
|
2746
|
+
MetronomeSDK::Internal::AnyHash
|
2747
|
+
)
|
2748
|
+
end
|
2749
|
+
|
2750
|
+
sig { returns(String) }
|
2751
|
+
attr_accessor :id
|
2752
|
+
|
2753
|
+
sig { returns(Time) }
|
2754
|
+
attr_accessor :starting_at
|
2755
|
+
|
2756
|
+
sig { returns(T.nilable(T::Array[String])) }
|
2757
|
+
attr_reader :applicable_product_tags
|
2758
|
+
|
2759
|
+
sig { params(applicable_product_tags: T::Array[String]).void }
|
2760
|
+
attr_writer :applicable_product_tags
|
2761
|
+
|
2762
|
+
sig { returns(T.nilable(Time)) }
|
2763
|
+
attr_reader :ending_before
|
2764
|
+
|
2765
|
+
sig { params(ending_before: Time).void }
|
2320
2766
|
attr_writer :ending_before
|
2321
2767
|
|
2322
2768
|
sig { returns(T.nilable(T::Boolean)) }
|
@@ -2541,6 +2987,23 @@ module MetronomeSDK
|
|
2541
2987
|
)
|
2542
2988
|
end
|
2543
2989
|
|
2990
|
+
sig do
|
2991
|
+
returns(
|
2992
|
+
T.nilable(
|
2993
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Override::OverrideSpecifier::BillingFrequency::TaggedSymbol
|
2994
|
+
)
|
2995
|
+
)
|
2996
|
+
end
|
2997
|
+
attr_reader :billing_frequency
|
2998
|
+
|
2999
|
+
sig do
|
3000
|
+
params(
|
3001
|
+
billing_frequency:
|
3002
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Override::OverrideSpecifier::BillingFrequency::OrSymbol
|
3003
|
+
).void
|
3004
|
+
end
|
3005
|
+
attr_writer :billing_frequency
|
3006
|
+
|
2544
3007
|
sig { returns(T.nilable(T::Array[String])) }
|
2545
3008
|
attr_reader :commit_ids
|
2546
3009
|
|
@@ -2589,6 +3052,8 @@ module MetronomeSDK
|
|
2589
3052
|
|
2590
3053
|
sig do
|
2591
3054
|
params(
|
3055
|
+
billing_frequency:
|
3056
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Override::OverrideSpecifier::BillingFrequency::OrSymbol,
|
2592
3057
|
commit_ids: T::Array[String],
|
2593
3058
|
presentation_group_values: T::Hash[Symbol, T.nilable(String)],
|
2594
3059
|
pricing_group_values: T::Hash[Symbol, String],
|
@@ -2599,6 +3064,7 @@ module MetronomeSDK
|
|
2599
3064
|
).returns(T.attached_class)
|
2600
3065
|
end
|
2601
3066
|
def self.new(
|
3067
|
+
billing_frequency: nil,
|
2602
3068
|
commit_ids: nil,
|
2603
3069
|
presentation_group_values: nil,
|
2604
3070
|
pricing_group_values: nil,
|
@@ -2612,6 +3078,8 @@ module MetronomeSDK
|
|
2612
3078
|
sig do
|
2613
3079
|
override.returns(
|
2614
3080
|
{
|
3081
|
+
billing_frequency:
|
3082
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Override::OverrideSpecifier::BillingFrequency::TaggedSymbol,
|
2615
3083
|
commit_ids: T::Array[String],
|
2616
3084
|
presentation_group_values:
|
2617
3085
|
T::Hash[Symbol, T.nilable(String)],
|
@@ -2625,6 +3093,50 @@ module MetronomeSDK
|
|
2625
3093
|
end
|
2626
3094
|
def to_hash
|
2627
3095
|
end
|
3096
|
+
|
3097
|
+
module BillingFrequency
|
3098
|
+
extend MetronomeSDK::Internal::Type::Enum
|
3099
|
+
|
3100
|
+
TaggedSymbol =
|
3101
|
+
T.type_alias do
|
3102
|
+
T.all(
|
3103
|
+
Symbol,
|
3104
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Override::OverrideSpecifier::BillingFrequency
|
3105
|
+
)
|
3106
|
+
end
|
3107
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
3108
|
+
|
3109
|
+
MONTHLY =
|
3110
|
+
T.let(
|
3111
|
+
:MONTHLY,
|
3112
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Override::OverrideSpecifier::BillingFrequency::TaggedSymbol
|
3113
|
+
)
|
3114
|
+
QUARTERLY =
|
3115
|
+
T.let(
|
3116
|
+
:QUARTERLY,
|
3117
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Override::OverrideSpecifier::BillingFrequency::TaggedSymbol
|
3118
|
+
)
|
3119
|
+
ANNUAL =
|
3120
|
+
T.let(
|
3121
|
+
:ANNUAL,
|
3122
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Override::OverrideSpecifier::BillingFrequency::TaggedSymbol
|
3123
|
+
)
|
3124
|
+
WEEKLY =
|
3125
|
+
T.let(
|
3126
|
+
:WEEKLY,
|
3127
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Override::OverrideSpecifier::BillingFrequency::TaggedSymbol
|
3128
|
+
)
|
3129
|
+
|
3130
|
+
sig do
|
3131
|
+
override.returns(
|
3132
|
+
T::Array[
|
3133
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Override::OverrideSpecifier::BillingFrequency::TaggedSymbol
|
3134
|
+
]
|
3135
|
+
)
|
3136
|
+
end
|
3137
|
+
def self.values
|
3138
|
+
end
|
3139
|
+
end
|
2628
3140
|
end
|
2629
3141
|
|
2630
3142
|
class OverrideTier < MetronomeSDK::Internal::Type::BaseModel
|
@@ -3254,20 +3766,31 @@ module MetronomeSDK
|
|
3254
3766
|
sig { params(description: String).void }
|
3255
3767
|
attr_writer :description
|
3256
3768
|
|
3769
|
+
# Optional configuration for credit hierarchy access control
|
3770
|
+
sig do
|
3771
|
+
returns(
|
3772
|
+
T.nilable(
|
3773
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration
|
3774
|
+
)
|
3775
|
+
)
|
3776
|
+
end
|
3777
|
+
attr_reader :hierarchy_configuration
|
3778
|
+
|
3779
|
+
sig do
|
3780
|
+
params(
|
3781
|
+
hierarchy_configuration:
|
3782
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::OrHash
|
3783
|
+
).void
|
3784
|
+
end
|
3785
|
+
attr_writer :hierarchy_configuration
|
3786
|
+
|
3257
3787
|
# A list of ordered events that impact the balance of a credit. For example, an
|
3258
3788
|
# invoice deduction or an expiration.
|
3259
3789
|
sig do
|
3260
3790
|
returns(
|
3261
3791
|
T.nilable(
|
3262
3792
|
T::Array[
|
3263
|
-
|
3264
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry,
|
3265
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditAutomatedInvoiceDeductionLedgerEntry,
|
3266
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditExpirationLedgerEntry,
|
3267
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditCanceledLedgerEntry,
|
3268
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditCreditedLedgerEntry,
|
3269
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditManualLedgerEntry
|
3270
|
-
)
|
3793
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::Variants
|
3271
3794
|
]
|
3272
3795
|
)
|
3273
3796
|
)
|
@@ -3319,6 +3842,30 @@ module MetronomeSDK
|
|
3319
3842
|
sig { params(salesforce_opportunity_id: String).void }
|
3320
3843
|
attr_writer :salesforce_opportunity_id
|
3321
3844
|
|
3845
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
3846
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
3847
|
+
# specifiers to contribute to a commit's or credit's drawdown.
|
3848
|
+
sig do
|
3849
|
+
returns(
|
3850
|
+
T.nilable(
|
3851
|
+
T::Array[
|
3852
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Specifier
|
3853
|
+
]
|
3854
|
+
)
|
3855
|
+
)
|
3856
|
+
end
|
3857
|
+
attr_reader :specifiers
|
3858
|
+
|
3859
|
+
sig do
|
3860
|
+
params(
|
3861
|
+
specifiers:
|
3862
|
+
T::Array[
|
3863
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Specifier::OrHash
|
3864
|
+
]
|
3865
|
+
).void
|
3866
|
+
end
|
3867
|
+
attr_writer :specifiers
|
3868
|
+
|
3322
3869
|
sig do
|
3323
3870
|
params(
|
3324
3871
|
id: String,
|
@@ -3335,6 +3882,8 @@ module MetronomeSDK
|
|
3335
3882
|
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Contract::OrHash,
|
3336
3883
|
custom_fields: T::Hash[Symbol, String],
|
3337
3884
|
description: String,
|
3885
|
+
hierarchy_configuration:
|
3886
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::OrHash,
|
3338
3887
|
ledger:
|
3339
3888
|
T::Array[
|
3340
3889
|
T.any(
|
@@ -3349,7 +3898,11 @@ module MetronomeSDK
|
|
3349
3898
|
name: String,
|
3350
3899
|
netsuite_sales_order_id: String,
|
3351
3900
|
priority: Float,
|
3352
|
-
salesforce_opportunity_id: String
|
3901
|
+
salesforce_opportunity_id: String,
|
3902
|
+
specifiers:
|
3903
|
+
T::Array[
|
3904
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Specifier::OrHash
|
3905
|
+
]
|
3353
3906
|
).returns(T.attached_class)
|
3354
3907
|
end
|
3355
3908
|
def self.new(
|
@@ -3373,6 +3926,8 @@ module MetronomeSDK
|
|
3373
3926
|
contract: nil,
|
3374
3927
|
custom_fields: nil,
|
3375
3928
|
description: nil,
|
3929
|
+
# Optional configuration for credit hierarchy access control
|
3930
|
+
hierarchy_configuration: nil,
|
3376
3931
|
# A list of ordered events that impact the balance of a credit. For example, an
|
3377
3932
|
# invoice deduction or an expiration.
|
3378
3933
|
ledger: nil,
|
@@ -3383,7 +3938,11 @@ module MetronomeSDK
|
|
3383
3938
|
# will apply first.
|
3384
3939
|
priority: nil,
|
3385
3940
|
# This field's availability is dependent on your client's configuration.
|
3386
|
-
salesforce_opportunity_id: nil
|
3941
|
+
salesforce_opportunity_id: nil,
|
3942
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
3943
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
3944
|
+
# specifiers to contribute to a commit's or credit's drawdown.
|
3945
|
+
specifiers: nil
|
3387
3946
|
)
|
3388
3947
|
end
|
3389
3948
|
|
@@ -3404,21 +3963,20 @@ module MetronomeSDK
|
|
3404
3963
|
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Contract,
|
3405
3964
|
custom_fields: T::Hash[Symbol, String],
|
3406
3965
|
description: String,
|
3966
|
+
hierarchy_configuration:
|
3967
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration,
|
3407
3968
|
ledger:
|
3408
3969
|
T::Array[
|
3409
|
-
|
3410
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry,
|
3411
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditAutomatedInvoiceDeductionLedgerEntry,
|
3412
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditExpirationLedgerEntry,
|
3413
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditCanceledLedgerEntry,
|
3414
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditCreditedLedgerEntry,
|
3415
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditManualLedgerEntry
|
3416
|
-
)
|
3970
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::Variants
|
3417
3971
|
],
|
3418
3972
|
name: String,
|
3419
3973
|
netsuite_sales_order_id: String,
|
3420
3974
|
priority: Float,
|
3421
|
-
salesforce_opportunity_id: String
|
3975
|
+
salesforce_opportunity_id: String,
|
3976
|
+
specifiers:
|
3977
|
+
T::Array[
|
3978
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Specifier
|
3979
|
+
]
|
3422
3980
|
}
|
3423
3981
|
)
|
3424
3982
|
end
|
@@ -3499,108 +4057,376 @@ module MetronomeSDK
|
|
3499
4057
|
end
|
3500
4058
|
end
|
3501
4059
|
|
3502
|
-
|
3503
|
-
|
3504
|
-
|
3505
|
-
Variants =
|
4060
|
+
class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
4061
|
+
OrHash =
|
3506
4062
|
T.type_alias do
|
3507
4063
|
T.any(
|
3508
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::
|
3509
|
-
MetronomeSDK::
|
3510
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditExpirationLedgerEntry,
|
3511
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditCanceledLedgerEntry,
|
3512
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditCreditedLedgerEntry,
|
3513
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditManualLedgerEntry
|
4064
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration,
|
4065
|
+
MetronomeSDK::Internal::AnyHash
|
3514
4066
|
)
|
3515
4067
|
end
|
3516
4068
|
|
3517
|
-
|
3518
|
-
|
3519
|
-
|
4069
|
+
sig do
|
4070
|
+
returns(
|
4071
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::Variants
|
4072
|
+
)
|
4073
|
+
end
|
4074
|
+
attr_accessor :child_access
|
4075
|
+
|
4076
|
+
# Optional configuration for credit hierarchy access control
|
4077
|
+
sig do
|
4078
|
+
params(
|
4079
|
+
child_access:
|
3520
4080
|
T.any(
|
3521
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::
|
3522
|
-
MetronomeSDK::
|
4081
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::OrHash,
|
4082
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::OrHash,
|
4083
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::OrHash
|
3523
4084
|
)
|
3524
|
-
|
3525
|
-
|
3526
|
-
|
3527
|
-
|
3528
|
-
|
3529
|
-
sig { returns(String) }
|
3530
|
-
attr_accessor :segment_id
|
3531
|
-
|
3532
|
-
sig { returns(Time) }
|
3533
|
-
attr_accessor :timestamp
|
3534
|
-
|
3535
|
-
sig do
|
3536
|
-
returns(
|
3537
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry::Type::TaggedSymbol
|
3538
|
-
)
|
3539
|
-
end
|
3540
|
-
attr_accessor :type
|
4085
|
+
).returns(T.attached_class)
|
4086
|
+
end
|
4087
|
+
def self.new(child_access:)
|
4088
|
+
end
|
3541
4089
|
|
3542
|
-
|
3543
|
-
|
3544
|
-
|
3545
|
-
|
3546
|
-
|
3547
|
-
|
3548
|
-
|
3549
|
-
|
3550
|
-
|
3551
|
-
|
3552
|
-
end
|
4090
|
+
sig do
|
4091
|
+
override.returns(
|
4092
|
+
{
|
4093
|
+
child_access:
|
4094
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::Variants
|
4095
|
+
}
|
4096
|
+
)
|
4097
|
+
end
|
4098
|
+
def to_hash
|
4099
|
+
end
|
3553
4100
|
|
3554
|
-
|
3555
|
-
|
3556
|
-
{
|
3557
|
-
amount: Float,
|
3558
|
-
segment_id: String,
|
3559
|
-
timestamp: Time,
|
3560
|
-
type:
|
3561
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry::Type::TaggedSymbol
|
3562
|
-
}
|
3563
|
-
)
|
3564
|
-
end
|
3565
|
-
def to_hash
|
3566
|
-
end
|
4101
|
+
module ChildAccess
|
4102
|
+
extend MetronomeSDK::Internal::Type::Union
|
3567
4103
|
|
3568
|
-
|
3569
|
-
|
4104
|
+
Variants =
|
4105
|
+
T.type_alias do
|
4106
|
+
T.any(
|
4107
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll,
|
4108
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone,
|
4109
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
|
4110
|
+
)
|
4111
|
+
end
|
3570
4112
|
|
3571
|
-
|
4113
|
+
class CommitHierarchyChildAccessAll < MetronomeSDK::Internal::Type::BaseModel
|
4114
|
+
OrHash =
|
3572
4115
|
T.type_alias do
|
3573
|
-
T.
|
3574
|
-
|
3575
|
-
MetronomeSDK::
|
4116
|
+
T.any(
|
4117
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll,
|
4118
|
+
MetronomeSDK::Internal::AnyHash
|
3576
4119
|
)
|
3577
4120
|
end
|
3578
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
3579
4121
|
|
3580
|
-
|
3581
|
-
|
3582
|
-
|
3583
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry::Type::TaggedSymbol
|
4122
|
+
sig do
|
4123
|
+
returns(
|
4124
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::TaggedSymbol
|
3584
4125
|
)
|
4126
|
+
end
|
4127
|
+
attr_accessor :type
|
3585
4128
|
|
3586
4129
|
sig do
|
3587
|
-
|
3588
|
-
|
3589
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::
|
3590
|
-
|
3591
|
-
)
|
4130
|
+
params(
|
4131
|
+
type:
|
4132
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::OrSymbol
|
4133
|
+
).returns(T.attached_class)
|
3592
4134
|
end
|
3593
|
-
def self.
|
4135
|
+
def self.new(type:)
|
3594
4136
|
end
|
3595
|
-
end
|
3596
|
-
end
|
3597
4137
|
|
3598
|
-
|
3599
|
-
|
3600
|
-
|
3601
|
-
|
3602
|
-
|
3603
|
-
|
4138
|
+
sig do
|
4139
|
+
override.returns(
|
4140
|
+
{
|
4141
|
+
type:
|
4142
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::TaggedSymbol
|
4143
|
+
}
|
4144
|
+
)
|
4145
|
+
end
|
4146
|
+
def to_hash
|
4147
|
+
end
|
4148
|
+
|
4149
|
+
module Type
|
4150
|
+
extend MetronomeSDK::Internal::Type::Enum
|
4151
|
+
|
4152
|
+
TaggedSymbol =
|
4153
|
+
T.type_alias do
|
4154
|
+
T.all(
|
4155
|
+
Symbol,
|
4156
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type
|
4157
|
+
)
|
4158
|
+
end
|
4159
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
4160
|
+
|
4161
|
+
ALL =
|
4162
|
+
T.let(
|
4163
|
+
:ALL,
|
4164
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::TaggedSymbol
|
4165
|
+
)
|
4166
|
+
|
4167
|
+
sig do
|
4168
|
+
override.returns(
|
4169
|
+
T::Array[
|
4170
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::TaggedSymbol
|
4171
|
+
]
|
4172
|
+
)
|
4173
|
+
end
|
4174
|
+
def self.values
|
4175
|
+
end
|
4176
|
+
end
|
4177
|
+
end
|
4178
|
+
|
4179
|
+
class CommitHierarchyChildAccessNone < MetronomeSDK::Internal::Type::BaseModel
|
4180
|
+
OrHash =
|
4181
|
+
T.type_alias do
|
4182
|
+
T.any(
|
4183
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone,
|
4184
|
+
MetronomeSDK::Internal::AnyHash
|
4185
|
+
)
|
4186
|
+
end
|
4187
|
+
|
4188
|
+
sig do
|
4189
|
+
returns(
|
4190
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::TaggedSymbol
|
4191
|
+
)
|
4192
|
+
end
|
4193
|
+
attr_accessor :type
|
4194
|
+
|
4195
|
+
sig do
|
4196
|
+
params(
|
4197
|
+
type:
|
4198
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::OrSymbol
|
4199
|
+
).returns(T.attached_class)
|
4200
|
+
end
|
4201
|
+
def self.new(type:)
|
4202
|
+
end
|
4203
|
+
|
4204
|
+
sig do
|
4205
|
+
override.returns(
|
4206
|
+
{
|
4207
|
+
type:
|
4208
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::TaggedSymbol
|
4209
|
+
}
|
4210
|
+
)
|
4211
|
+
end
|
4212
|
+
def to_hash
|
4213
|
+
end
|
4214
|
+
|
4215
|
+
module Type
|
4216
|
+
extend MetronomeSDK::Internal::Type::Enum
|
4217
|
+
|
4218
|
+
TaggedSymbol =
|
4219
|
+
T.type_alias do
|
4220
|
+
T.all(
|
4221
|
+
Symbol,
|
4222
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type
|
4223
|
+
)
|
4224
|
+
end
|
4225
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
4226
|
+
|
4227
|
+
NONE =
|
4228
|
+
T.let(
|
4229
|
+
:NONE,
|
4230
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::TaggedSymbol
|
4231
|
+
)
|
4232
|
+
|
4233
|
+
sig do
|
4234
|
+
override.returns(
|
4235
|
+
T::Array[
|
4236
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::TaggedSymbol
|
4237
|
+
]
|
4238
|
+
)
|
4239
|
+
end
|
4240
|
+
def self.values
|
4241
|
+
end
|
4242
|
+
end
|
4243
|
+
end
|
4244
|
+
|
4245
|
+
class CommitHierarchyChildAccessContractIDs < MetronomeSDK::Internal::Type::BaseModel
|
4246
|
+
OrHash =
|
4247
|
+
T.type_alias do
|
4248
|
+
T.any(
|
4249
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs,
|
4250
|
+
MetronomeSDK::Internal::AnyHash
|
4251
|
+
)
|
4252
|
+
end
|
4253
|
+
|
4254
|
+
sig { returns(T::Array[String]) }
|
4255
|
+
attr_accessor :contract_ids
|
4256
|
+
|
4257
|
+
sig do
|
4258
|
+
returns(
|
4259
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::TaggedSymbol
|
4260
|
+
)
|
4261
|
+
end
|
4262
|
+
attr_accessor :type
|
4263
|
+
|
4264
|
+
sig do
|
4265
|
+
params(
|
4266
|
+
contract_ids: T::Array[String],
|
4267
|
+
type:
|
4268
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::OrSymbol
|
4269
|
+
).returns(T.attached_class)
|
4270
|
+
end
|
4271
|
+
def self.new(contract_ids:, type:)
|
4272
|
+
end
|
4273
|
+
|
4274
|
+
sig do
|
4275
|
+
override.returns(
|
4276
|
+
{
|
4277
|
+
contract_ids: T::Array[String],
|
4278
|
+
type:
|
4279
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::TaggedSymbol
|
4280
|
+
}
|
4281
|
+
)
|
4282
|
+
end
|
4283
|
+
def to_hash
|
4284
|
+
end
|
4285
|
+
|
4286
|
+
module Type
|
4287
|
+
extend MetronomeSDK::Internal::Type::Enum
|
4288
|
+
|
4289
|
+
TaggedSymbol =
|
4290
|
+
T.type_alias do
|
4291
|
+
T.all(
|
4292
|
+
Symbol,
|
4293
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type
|
4294
|
+
)
|
4295
|
+
end
|
4296
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
4297
|
+
|
4298
|
+
CONTRACT_IDS =
|
4299
|
+
T.let(
|
4300
|
+
:CONTRACT_IDS,
|
4301
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::TaggedSymbol
|
4302
|
+
)
|
4303
|
+
|
4304
|
+
sig do
|
4305
|
+
override.returns(
|
4306
|
+
T::Array[
|
4307
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::TaggedSymbol
|
4308
|
+
]
|
4309
|
+
)
|
4310
|
+
end
|
4311
|
+
def self.values
|
4312
|
+
end
|
4313
|
+
end
|
4314
|
+
end
|
4315
|
+
|
4316
|
+
sig do
|
4317
|
+
override.returns(
|
4318
|
+
T::Array[
|
4319
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::HierarchyConfiguration::ChildAccess::Variants
|
4320
|
+
]
|
4321
|
+
)
|
4322
|
+
end
|
4323
|
+
def self.variants
|
4324
|
+
end
|
4325
|
+
end
|
4326
|
+
end
|
4327
|
+
|
4328
|
+
module Ledger
|
4329
|
+
extend MetronomeSDK::Internal::Type::Union
|
4330
|
+
|
4331
|
+
Variants =
|
4332
|
+
T.type_alias do
|
4333
|
+
T.any(
|
4334
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry,
|
4335
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditAutomatedInvoiceDeductionLedgerEntry,
|
4336
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditExpirationLedgerEntry,
|
4337
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditCanceledLedgerEntry,
|
4338
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditCreditedLedgerEntry,
|
4339
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditManualLedgerEntry
|
4340
|
+
)
|
4341
|
+
end
|
4342
|
+
|
4343
|
+
class CreditSegmentStartLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
|
4344
|
+
OrHash =
|
4345
|
+
T.type_alias do
|
4346
|
+
T.any(
|
4347
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry,
|
4348
|
+
MetronomeSDK::Internal::AnyHash
|
4349
|
+
)
|
4350
|
+
end
|
4351
|
+
|
4352
|
+
sig { returns(Float) }
|
4353
|
+
attr_accessor :amount
|
4354
|
+
|
4355
|
+
sig { returns(String) }
|
4356
|
+
attr_accessor :segment_id
|
4357
|
+
|
4358
|
+
sig { returns(Time) }
|
4359
|
+
attr_accessor :timestamp
|
4360
|
+
|
4361
|
+
sig do
|
4362
|
+
returns(
|
4363
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry::Type::TaggedSymbol
|
4364
|
+
)
|
4365
|
+
end
|
4366
|
+
attr_accessor :type
|
4367
|
+
|
4368
|
+
sig do
|
4369
|
+
params(
|
4370
|
+
amount: Float,
|
4371
|
+
segment_id: String,
|
4372
|
+
timestamp: Time,
|
4373
|
+
type:
|
4374
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry::Type::OrSymbol
|
4375
|
+
).returns(T.attached_class)
|
4376
|
+
end
|
4377
|
+
def self.new(amount:, segment_id:, timestamp:, type:)
|
4378
|
+
end
|
4379
|
+
|
4380
|
+
sig do
|
4381
|
+
override.returns(
|
4382
|
+
{
|
4383
|
+
amount: Float,
|
4384
|
+
segment_id: String,
|
4385
|
+
timestamp: Time,
|
4386
|
+
type:
|
4387
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry::Type::TaggedSymbol
|
4388
|
+
}
|
4389
|
+
)
|
4390
|
+
end
|
4391
|
+
def to_hash
|
4392
|
+
end
|
4393
|
+
|
4394
|
+
module Type
|
4395
|
+
extend MetronomeSDK::Internal::Type::Enum
|
4396
|
+
|
4397
|
+
TaggedSymbol =
|
4398
|
+
T.type_alias do
|
4399
|
+
T.all(
|
4400
|
+
Symbol,
|
4401
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry::Type
|
4402
|
+
)
|
4403
|
+
end
|
4404
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
4405
|
+
|
4406
|
+
CREDIT_SEGMENT_START =
|
4407
|
+
T.let(
|
4408
|
+
:CREDIT_SEGMENT_START,
|
4409
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry::Type::TaggedSymbol
|
4410
|
+
)
|
4411
|
+
|
4412
|
+
sig do
|
4413
|
+
override.returns(
|
4414
|
+
T::Array[
|
4415
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditSegmentStartLedgerEntry::Type::TaggedSymbol
|
4416
|
+
]
|
4417
|
+
)
|
4418
|
+
end
|
4419
|
+
def self.values
|
4420
|
+
end
|
4421
|
+
end
|
4422
|
+
end
|
4423
|
+
|
4424
|
+
class CreditAutomatedInvoiceDeductionLedgerEntry < MetronomeSDK::Internal::Type::BaseModel
|
4425
|
+
OrHash =
|
4426
|
+
T.type_alias do
|
4427
|
+
T.any(
|
4428
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Ledger::CreditAutomatedInvoiceDeductionLedgerEntry,
|
4429
|
+
MetronomeSDK::Internal::AnyHash
|
3604
4430
|
)
|
3605
4431
|
end
|
3606
4432
|
|
@@ -4043,6 +4869,77 @@ module MetronomeSDK
|
|
4043
4869
|
def self.variants
|
4044
4870
|
end
|
4045
4871
|
end
|
4872
|
+
|
4873
|
+
class Specifier < MetronomeSDK::Internal::Type::BaseModel
|
4874
|
+
OrHash =
|
4875
|
+
T.type_alias do
|
4876
|
+
T.any(
|
4877
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Credit::Specifier,
|
4878
|
+
MetronomeSDK::Internal::AnyHash
|
4879
|
+
)
|
4880
|
+
end
|
4881
|
+
|
4882
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
4883
|
+
attr_reader :presentation_group_values
|
4884
|
+
|
4885
|
+
sig do
|
4886
|
+
params(presentation_group_values: T::Hash[Symbol, String]).void
|
4887
|
+
end
|
4888
|
+
attr_writer :presentation_group_values
|
4889
|
+
|
4890
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
4891
|
+
attr_reader :pricing_group_values
|
4892
|
+
|
4893
|
+
sig { params(pricing_group_values: T::Hash[Symbol, String]).void }
|
4894
|
+
attr_writer :pricing_group_values
|
4895
|
+
|
4896
|
+
# If provided, the specifier will only apply to the product with the specified ID.
|
4897
|
+
sig { returns(T.nilable(String)) }
|
4898
|
+
attr_reader :product_id
|
4899
|
+
|
4900
|
+
sig { params(product_id: String).void }
|
4901
|
+
attr_writer :product_id
|
4902
|
+
|
4903
|
+
# If provided, the specifier will only apply to products with all the specified
|
4904
|
+
# tags.
|
4905
|
+
sig { returns(T.nilable(T::Array[String])) }
|
4906
|
+
attr_reader :product_tags
|
4907
|
+
|
4908
|
+
sig { params(product_tags: T::Array[String]).void }
|
4909
|
+
attr_writer :product_tags
|
4910
|
+
|
4911
|
+
sig do
|
4912
|
+
params(
|
4913
|
+
presentation_group_values: T::Hash[Symbol, String],
|
4914
|
+
pricing_group_values: T::Hash[Symbol, String],
|
4915
|
+
product_id: String,
|
4916
|
+
product_tags: T::Array[String]
|
4917
|
+
).returns(T.attached_class)
|
4918
|
+
end
|
4919
|
+
def self.new(
|
4920
|
+
presentation_group_values: nil,
|
4921
|
+
pricing_group_values: nil,
|
4922
|
+
# If provided, the specifier will only apply to the product with the specified ID.
|
4923
|
+
product_id: nil,
|
4924
|
+
# If provided, the specifier will only apply to products with all the specified
|
4925
|
+
# tags.
|
4926
|
+
product_tags: nil
|
4927
|
+
)
|
4928
|
+
end
|
4929
|
+
|
4930
|
+
sig do
|
4931
|
+
override.returns(
|
4932
|
+
{
|
4933
|
+
presentation_group_values: T::Hash[Symbol, String],
|
4934
|
+
pricing_group_values: T::Hash[Symbol, String],
|
4935
|
+
product_id: String,
|
4936
|
+
product_tags: T::Array[String]
|
4937
|
+
}
|
4938
|
+
)
|
4939
|
+
end
|
4940
|
+
def to_hash
|
4941
|
+
end
|
4942
|
+
end
|
4046
4943
|
end
|
4047
4944
|
|
4048
4945
|
class CustomerBillingProviderConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
@@ -4202,29 +5099,210 @@ module MetronomeSDK
|
|
4202
5099
|
end
|
4203
5100
|
end
|
4204
5101
|
|
4205
|
-
#
|
4206
|
-
#
|
4207
|
-
|
4208
|
-
|
4209
|
-
module MultiplierOverridePrioritization
|
4210
|
-
extend MetronomeSDK::Internal::Type::Enum
|
5102
|
+
# Either a **parent** configuration with a list of children or a **child**
|
5103
|
+
# configuration with a single parent.
|
5104
|
+
module HierarchyConfiguration
|
5105
|
+
extend MetronomeSDK::Internal::Type::Union
|
4211
5106
|
|
4212
|
-
|
5107
|
+
Variants =
|
4213
5108
|
T.type_alias do
|
4214
|
-
T.
|
4215
|
-
|
4216
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::
|
5109
|
+
T.any(
|
5110
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ParentHierarchyConfiguration,
|
5111
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ChildHierarchyConfiguration
|
4217
5112
|
)
|
4218
5113
|
end
|
4219
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
4220
5114
|
|
4221
|
-
|
4222
|
-
|
4223
|
-
|
4224
|
-
|
4225
|
-
|
4226
|
-
|
4227
|
-
|
5115
|
+
class ParentHierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
5116
|
+
OrHash =
|
5117
|
+
T.type_alias do
|
5118
|
+
T.any(
|
5119
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ParentHierarchyConfiguration,
|
5120
|
+
MetronomeSDK::Internal::AnyHash
|
5121
|
+
)
|
5122
|
+
end
|
5123
|
+
|
5124
|
+
# List of contracts that belong to this parent.
|
5125
|
+
sig do
|
5126
|
+
returns(
|
5127
|
+
T::Array[
|
5128
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ParentHierarchyConfiguration::Child
|
5129
|
+
]
|
5130
|
+
)
|
5131
|
+
end
|
5132
|
+
attr_accessor :children
|
5133
|
+
|
5134
|
+
sig do
|
5135
|
+
params(
|
5136
|
+
children:
|
5137
|
+
T::Array[
|
5138
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ParentHierarchyConfiguration::Child::OrHash
|
5139
|
+
]
|
5140
|
+
).returns(T.attached_class)
|
5141
|
+
end
|
5142
|
+
def self.new(
|
5143
|
+
# List of contracts that belong to this parent.
|
5144
|
+
children:
|
5145
|
+
)
|
5146
|
+
end
|
5147
|
+
|
5148
|
+
sig do
|
5149
|
+
override.returns(
|
5150
|
+
{
|
5151
|
+
children:
|
5152
|
+
T::Array[
|
5153
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ParentHierarchyConfiguration::Child
|
5154
|
+
]
|
5155
|
+
}
|
5156
|
+
)
|
5157
|
+
end
|
5158
|
+
def to_hash
|
5159
|
+
end
|
5160
|
+
|
5161
|
+
class Child < MetronomeSDK::Internal::Type::BaseModel
|
5162
|
+
OrHash =
|
5163
|
+
T.type_alias do
|
5164
|
+
T.any(
|
5165
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ParentHierarchyConfiguration::Child,
|
5166
|
+
MetronomeSDK::Internal::AnyHash
|
5167
|
+
)
|
5168
|
+
end
|
5169
|
+
|
5170
|
+
sig { returns(String) }
|
5171
|
+
attr_accessor :contract_id
|
5172
|
+
|
5173
|
+
sig { returns(String) }
|
5174
|
+
attr_accessor :customer_id
|
5175
|
+
|
5176
|
+
sig do
|
5177
|
+
params(contract_id: String, customer_id: String).returns(
|
5178
|
+
T.attached_class
|
5179
|
+
)
|
5180
|
+
end
|
5181
|
+
def self.new(contract_id:, customer_id:)
|
5182
|
+
end
|
5183
|
+
|
5184
|
+
sig do
|
5185
|
+
override.returns({ contract_id: String, customer_id: String })
|
5186
|
+
end
|
5187
|
+
def to_hash
|
5188
|
+
end
|
5189
|
+
end
|
5190
|
+
end
|
5191
|
+
|
5192
|
+
class ChildHierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
5193
|
+
OrHash =
|
5194
|
+
T.type_alias do
|
5195
|
+
T.any(
|
5196
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ChildHierarchyConfiguration,
|
5197
|
+
MetronomeSDK::Internal::AnyHash
|
5198
|
+
)
|
5199
|
+
end
|
5200
|
+
|
5201
|
+
# The single parent contract/customer for this child.
|
5202
|
+
sig do
|
5203
|
+
returns(
|
5204
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ChildHierarchyConfiguration::Parent
|
5205
|
+
)
|
5206
|
+
end
|
5207
|
+
attr_reader :parent
|
5208
|
+
|
5209
|
+
sig do
|
5210
|
+
params(
|
5211
|
+
parent:
|
5212
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ChildHierarchyConfiguration::Parent::OrHash
|
5213
|
+
).void
|
5214
|
+
end
|
5215
|
+
attr_writer :parent
|
5216
|
+
|
5217
|
+
sig do
|
5218
|
+
params(
|
5219
|
+
parent:
|
5220
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ChildHierarchyConfiguration::Parent::OrHash
|
5221
|
+
).returns(T.attached_class)
|
5222
|
+
end
|
5223
|
+
def self.new(
|
5224
|
+
# The single parent contract/customer for this child.
|
5225
|
+
parent:
|
5226
|
+
)
|
5227
|
+
end
|
5228
|
+
|
5229
|
+
sig do
|
5230
|
+
override.returns(
|
5231
|
+
{
|
5232
|
+
parent:
|
5233
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ChildHierarchyConfiguration::Parent
|
5234
|
+
}
|
5235
|
+
)
|
5236
|
+
end
|
5237
|
+
def to_hash
|
5238
|
+
end
|
5239
|
+
|
5240
|
+
class Parent < MetronomeSDK::Internal::Type::BaseModel
|
5241
|
+
OrHash =
|
5242
|
+
T.type_alias do
|
5243
|
+
T.any(
|
5244
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::ChildHierarchyConfiguration::Parent,
|
5245
|
+
MetronomeSDK::Internal::AnyHash
|
5246
|
+
)
|
5247
|
+
end
|
5248
|
+
|
5249
|
+
sig { returns(String) }
|
5250
|
+
attr_accessor :contract_id
|
5251
|
+
|
5252
|
+
sig { returns(String) }
|
5253
|
+
attr_accessor :customer_id
|
5254
|
+
|
5255
|
+
# The single parent contract/customer for this child.
|
5256
|
+
sig do
|
5257
|
+
params(contract_id: String, customer_id: String).returns(
|
5258
|
+
T.attached_class
|
5259
|
+
)
|
5260
|
+
end
|
5261
|
+
def self.new(contract_id:, customer_id:)
|
5262
|
+
end
|
5263
|
+
|
5264
|
+
sig do
|
5265
|
+
override.returns({ contract_id: String, customer_id: String })
|
5266
|
+
end
|
5267
|
+
def to_hash
|
5268
|
+
end
|
5269
|
+
end
|
5270
|
+
end
|
5271
|
+
|
5272
|
+
sig do
|
5273
|
+
override.returns(
|
5274
|
+
T::Array[
|
5275
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::HierarchyConfiguration::Variants
|
5276
|
+
]
|
5277
|
+
)
|
5278
|
+
end
|
5279
|
+
def self.variants
|
5280
|
+
end
|
5281
|
+
end
|
5282
|
+
|
5283
|
+
# Defaults to LOWEST_MULTIPLIER, which applies the greatest discount to list
|
5284
|
+
# prices automatically. EXPLICIT prioritization requires specifying priorities for
|
5285
|
+
# each multiplier; the one with the lowest priority value will be prioritized
|
5286
|
+
# first.
|
5287
|
+
module MultiplierOverridePrioritization
|
5288
|
+
extend MetronomeSDK::Internal::Type::Enum
|
5289
|
+
|
5290
|
+
TaggedSymbol =
|
5291
|
+
T.type_alias do
|
5292
|
+
T.all(
|
5293
|
+
Symbol,
|
5294
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::MultiplierOverridePrioritization
|
5295
|
+
)
|
5296
|
+
end
|
5297
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
5298
|
+
|
5299
|
+
LOWEST_MULTIPLIER =
|
5300
|
+
T.let(
|
5301
|
+
:LOWEST_MULTIPLIER,
|
5302
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::MultiplierOverridePrioritization::TaggedSymbol
|
5303
|
+
)
|
5304
|
+
EXPLICIT =
|
5305
|
+
T.let(
|
4228
5306
|
:EXPLICIT,
|
4229
5307
|
MetronomeSDK::Models::V2::ContractListResponse::Data::MultiplierOverridePrioritization::TaggedSymbol
|
4230
5308
|
)
|
@@ -4294,6 +5372,14 @@ module MetronomeSDK
|
|
4294
5372
|
sig { returns(Float) }
|
4295
5373
|
attr_accessor :threshold_amount
|
4296
5374
|
|
5375
|
+
# If provided, the threshold, recharge-to amount, and the resulting threshold
|
5376
|
+
# commit amount will be in terms of this credit type instead of the fiat currency.
|
5377
|
+
sig { returns(T.nilable(String)) }
|
5378
|
+
attr_reader :custom_credit_type_id
|
5379
|
+
|
5380
|
+
sig { params(custom_credit_type_id: String).void }
|
5381
|
+
attr_writer :custom_credit_type_id
|
5382
|
+
|
4297
5383
|
sig do
|
4298
5384
|
params(
|
4299
5385
|
commit:
|
@@ -4302,7 +5388,8 @@ module MetronomeSDK
|
|
4302
5388
|
payment_gate_config:
|
4303
5389
|
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::OrHash,
|
4304
5390
|
recharge_to_amount: Float,
|
4305
|
-
threshold_amount: Float
|
5391
|
+
threshold_amount: Float,
|
5392
|
+
custom_credit_type_id: String
|
4306
5393
|
).returns(T.attached_class)
|
4307
5394
|
end
|
4308
5395
|
def self.new(
|
@@ -4316,7 +5403,10 @@ module MetronomeSDK
|
|
4316
5403
|
recharge_to_amount:,
|
4317
5404
|
# Specify the threshold amount for the contract. Each time the contract's balance
|
4318
5405
|
# lowers to this amount, a threshold charge will be initiated.
|
4319
|
-
threshold_amount
|
5406
|
+
threshold_amount:,
|
5407
|
+
# If provided, the threshold, recharge-to amount, and the resulting threshold
|
5408
|
+
# commit amount will be in terms of this credit type instead of the fiat currency.
|
5409
|
+
custom_credit_type_id: nil
|
4320
5410
|
)
|
4321
5411
|
end
|
4322
5412
|
|
@@ -4329,7 +5419,8 @@ module MetronomeSDK
|
|
4329
5419
|
payment_gate_config:
|
4330
5420
|
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig,
|
4331
5421
|
recharge_to_amount: Float,
|
4332
|
-
threshold_amount: Float
|
5422
|
+
threshold_amount: Float,
|
5423
|
+
custom_credit_type_id: String
|
4333
5424
|
}
|
4334
5425
|
)
|
4335
5426
|
end
|
@@ -4350,17 +5441,18 @@ module MetronomeSDK
|
|
4350
5441
|
sig { returns(String) }
|
4351
5442
|
attr_accessor :product_id
|
4352
5443
|
|
4353
|
-
# Which products the threshold commit applies to. If
|
4354
|
-
#
|
4355
|
-
# products.
|
5444
|
+
# Which products the threshold commit applies to. If applicable_product_ids,
|
5445
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
5446
|
+
# all products.
|
4356
5447
|
sig { returns(T.nilable(T::Array[String])) }
|
4357
5448
|
attr_reader :applicable_product_ids
|
4358
5449
|
|
4359
5450
|
sig { params(applicable_product_ids: T::Array[String]).void }
|
4360
5451
|
attr_writer :applicable_product_ids
|
4361
5452
|
|
4362
|
-
# Which tags the threshold commit applies to. If
|
4363
|
-
# applicable_product_tags are not provided, the commit applies to
|
5453
|
+
# Which tags the threshold commit applies to. If applicable_product_ids,
|
5454
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
5455
|
+
# all products.
|
4364
5456
|
sig { returns(T.nilable(T::Array[String])) }
|
4365
5457
|
attr_reader :applicable_product_tags
|
4366
5458
|
|
@@ -4381,30 +5473,65 @@ module MetronomeSDK
|
|
4381
5473
|
sig { params(name: String).void }
|
4382
5474
|
attr_writer :name
|
4383
5475
|
|
5476
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
5477
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
5478
|
+
# specifiers to contribute to a commit's or credit's drawdown. This field cannot
|
5479
|
+
# be used together with `applicable_product_ids` or `applicable_product_tags`.
|
5480
|
+
sig do
|
5481
|
+
returns(
|
5482
|
+
T.nilable(
|
5483
|
+
T::Array[
|
5484
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::Commit::Specifier
|
5485
|
+
]
|
5486
|
+
)
|
5487
|
+
)
|
5488
|
+
end
|
5489
|
+
attr_reader :specifiers
|
5490
|
+
|
5491
|
+
sig do
|
5492
|
+
params(
|
5493
|
+
specifiers:
|
5494
|
+
T::Array[
|
5495
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::Commit::Specifier::OrHash
|
5496
|
+
]
|
5497
|
+
).void
|
5498
|
+
end
|
5499
|
+
attr_writer :specifiers
|
5500
|
+
|
4384
5501
|
sig do
|
4385
5502
|
params(
|
4386
5503
|
product_id: String,
|
4387
5504
|
applicable_product_ids: T::Array[String],
|
4388
5505
|
applicable_product_tags: T::Array[String],
|
4389
5506
|
description: String,
|
4390
|
-
name: String
|
5507
|
+
name: String,
|
5508
|
+
specifiers:
|
5509
|
+
T::Array[
|
5510
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::Commit::Specifier::OrHash
|
5511
|
+
]
|
4391
5512
|
).returns(T.attached_class)
|
4392
5513
|
end
|
4393
5514
|
def self.new(
|
4394
5515
|
# The commit product that will be used to generate the line item for commit
|
4395
5516
|
# payment.
|
4396
5517
|
product_id:,
|
4397
|
-
# Which products the threshold commit applies to. If
|
4398
|
-
#
|
4399
|
-
# products.
|
5518
|
+
# Which products the threshold commit applies to. If applicable_product_ids,
|
5519
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
5520
|
+
# all products.
|
4400
5521
|
applicable_product_ids: nil,
|
4401
|
-
# Which tags the threshold commit applies to. If
|
4402
|
-
# applicable_product_tags are not provided, the commit applies to
|
5522
|
+
# Which tags the threshold commit applies to. If applicable_product_ids,
|
5523
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
5524
|
+
# all products.
|
4403
5525
|
applicable_product_tags: nil,
|
4404
5526
|
description: nil,
|
4405
5527
|
# Specify the name of the line item for the threshold charge. If left blank, it
|
4406
5528
|
# will default to the commit product name.
|
4407
|
-
name: nil
|
5529
|
+
name: nil,
|
5530
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
5531
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
5532
|
+
# specifiers to contribute to a commit's or credit's drawdown. This field cannot
|
5533
|
+
# be used together with `applicable_product_ids` or `applicable_product_tags`.
|
5534
|
+
specifiers: nil
|
4408
5535
|
)
|
4409
5536
|
end
|
4410
5537
|
|
@@ -4415,12 +5542,91 @@ module MetronomeSDK
|
|
4415
5542
|
applicable_product_ids: T::Array[String],
|
4416
5543
|
applicable_product_tags: T::Array[String],
|
4417
5544
|
description: String,
|
4418
|
-
name: String
|
5545
|
+
name: String,
|
5546
|
+
specifiers:
|
5547
|
+
T::Array[
|
5548
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::Commit::Specifier
|
5549
|
+
]
|
4419
5550
|
}
|
4420
5551
|
)
|
4421
5552
|
end
|
4422
5553
|
def to_hash
|
4423
5554
|
end
|
5555
|
+
|
5556
|
+
class Specifier < MetronomeSDK::Internal::Type::BaseModel
|
5557
|
+
OrHash =
|
5558
|
+
T.type_alias do
|
5559
|
+
T.any(
|
5560
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::Commit::Specifier,
|
5561
|
+
MetronomeSDK::Internal::AnyHash
|
5562
|
+
)
|
5563
|
+
end
|
5564
|
+
|
5565
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
5566
|
+
attr_reader :presentation_group_values
|
5567
|
+
|
5568
|
+
sig do
|
5569
|
+
params(
|
5570
|
+
presentation_group_values: T::Hash[Symbol, String]
|
5571
|
+
).void
|
5572
|
+
end
|
5573
|
+
attr_writer :presentation_group_values
|
5574
|
+
|
5575
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
5576
|
+
attr_reader :pricing_group_values
|
5577
|
+
|
5578
|
+
sig do
|
5579
|
+
params(pricing_group_values: T::Hash[Symbol, String]).void
|
5580
|
+
end
|
5581
|
+
attr_writer :pricing_group_values
|
5582
|
+
|
5583
|
+
# If provided, the specifier will only apply to the product with the specified ID.
|
5584
|
+
sig { returns(T.nilable(String)) }
|
5585
|
+
attr_reader :product_id
|
5586
|
+
|
5587
|
+
sig { params(product_id: String).void }
|
5588
|
+
attr_writer :product_id
|
5589
|
+
|
5590
|
+
# If provided, the specifier will only apply to products with all the specified
|
5591
|
+
# tags.
|
5592
|
+
sig { returns(T.nilable(T::Array[String])) }
|
5593
|
+
attr_reader :product_tags
|
5594
|
+
|
5595
|
+
sig { params(product_tags: T::Array[String]).void }
|
5596
|
+
attr_writer :product_tags
|
5597
|
+
|
5598
|
+
sig do
|
5599
|
+
params(
|
5600
|
+
presentation_group_values: T::Hash[Symbol, String],
|
5601
|
+
pricing_group_values: T::Hash[Symbol, String],
|
5602
|
+
product_id: String,
|
5603
|
+
product_tags: T::Array[String]
|
5604
|
+
).returns(T.attached_class)
|
5605
|
+
end
|
5606
|
+
def self.new(
|
5607
|
+
presentation_group_values: nil,
|
5608
|
+
pricing_group_values: nil,
|
5609
|
+
# If provided, the specifier will only apply to the product with the specified ID.
|
5610
|
+
product_id: nil,
|
5611
|
+
# If provided, the specifier will only apply to products with all the specified
|
5612
|
+
# tags.
|
5613
|
+
product_tags: nil
|
5614
|
+
)
|
5615
|
+
end
|
5616
|
+
|
5617
|
+
sig do
|
5618
|
+
override.returns(
|
5619
|
+
{
|
5620
|
+
presentation_group_values: T::Hash[Symbol, String],
|
5621
|
+
pricing_group_values: T::Hash[Symbol, String],
|
5622
|
+
product_id: String,
|
5623
|
+
product_tags: T::Array[String]
|
5624
|
+
}
|
5625
|
+
)
|
5626
|
+
end
|
5627
|
+
def to_hash
|
5628
|
+
end
|
5629
|
+
end
|
4424
5630
|
end
|
4425
5631
|
|
4426
5632
|
class PaymentGateConfig < MetronomeSDK::Internal::Type::BaseModel
|
@@ -4443,7 +5649,25 @@ module MetronomeSDK
|
|
4443
5649
|
end
|
4444
5650
|
attr_accessor :payment_gate_type
|
4445
5651
|
|
4446
|
-
# Only applicable if using
|
5652
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
5653
|
+
sig do
|
5654
|
+
returns(
|
5655
|
+
T.nilable(
|
5656
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
|
5657
|
+
)
|
5658
|
+
)
|
5659
|
+
end
|
5660
|
+
attr_reader :precalculated_tax_config
|
5661
|
+
|
5662
|
+
sig do
|
5663
|
+
params(
|
5664
|
+
precalculated_tax_config:
|
5665
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig::OrHash
|
5666
|
+
).void
|
5667
|
+
end
|
5668
|
+
attr_writer :precalculated_tax_config
|
5669
|
+
|
5670
|
+
# Only applicable if using STRIPE as your payment gateway type.
|
4447
5671
|
sig do
|
4448
5672
|
returns(
|
4449
5673
|
T.nilable(
|
@@ -4485,6 +5709,8 @@ module MetronomeSDK
|
|
4485
5709
|
params(
|
4486
5710
|
payment_gate_type:
|
4487
5711
|
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PaymentGateType::OrSymbol,
|
5712
|
+
precalculated_tax_config:
|
5713
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig::OrHash,
|
4488
5714
|
stripe_config:
|
4489
5715
|
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::OrHash,
|
4490
5716
|
tax_type:
|
@@ -4497,7 +5723,9 @@ module MetronomeSDK
|
|
4497
5723
|
# facilitate payment using your own payment integration. Select NONE if you do not
|
4498
5724
|
# wish to payment gate the commit balance.
|
4499
5725
|
payment_gate_type:,
|
4500
|
-
# Only applicable if using
|
5726
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
5727
|
+
precalculated_tax_config: nil,
|
5728
|
+
# Only applicable if using STRIPE as your payment gateway type.
|
4501
5729
|
stripe_config: nil,
|
4502
5730
|
# Stripe tax is only supported for Stripe payment gateway. Select NONE if you do
|
4503
5731
|
# not wish Metronome to calculate tax on your behalf. Leaving this field blank
|
@@ -4511,6 +5739,8 @@ module MetronomeSDK
|
|
4511
5739
|
{
|
4512
5740
|
payment_gate_type:
|
4513
5741
|
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PaymentGateType::TaggedSymbol,
|
5742
|
+
precalculated_tax_config:
|
5743
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
|
4514
5744
|
stripe_config:
|
4515
5745
|
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig,
|
4516
5746
|
tax_type:
|
@@ -4564,6 +5794,51 @@ module MetronomeSDK
|
|
4564
5794
|
end
|
4565
5795
|
end
|
4566
5796
|
|
5797
|
+
class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
|
5798
|
+
OrHash =
|
5799
|
+
T.type_alias do
|
5800
|
+
T.any(
|
5801
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
|
5802
|
+
MetronomeSDK::Internal::AnyHash
|
5803
|
+
)
|
5804
|
+
end
|
5805
|
+
|
5806
|
+
# Amount of tax to be applied. This should be in the same currency and
|
5807
|
+
# denomination as the commit's invoice schedule
|
5808
|
+
sig { returns(Float) }
|
5809
|
+
attr_accessor :tax_amount
|
5810
|
+
|
5811
|
+
# Name of the tax to be applied. This may be used in an invoice line item
|
5812
|
+
# description.
|
5813
|
+
sig { returns(T.nilable(String)) }
|
5814
|
+
attr_reader :tax_name
|
5815
|
+
|
5816
|
+
sig { params(tax_name: String).void }
|
5817
|
+
attr_writer :tax_name
|
5818
|
+
|
5819
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
5820
|
+
sig do
|
5821
|
+
params(tax_amount: Float, tax_name: String).returns(
|
5822
|
+
T.attached_class
|
5823
|
+
)
|
5824
|
+
end
|
5825
|
+
def self.new(
|
5826
|
+
# Amount of tax to be applied. This should be in the same currency and
|
5827
|
+
# denomination as the commit's invoice schedule
|
5828
|
+
tax_amount:,
|
5829
|
+
# Name of the tax to be applied. This may be used in an invoice line item
|
5830
|
+
# description.
|
5831
|
+
tax_name: nil
|
5832
|
+
)
|
5833
|
+
end
|
5834
|
+
|
5835
|
+
sig do
|
5836
|
+
override.returns({ tax_amount: Float, tax_name: String })
|
5837
|
+
end
|
5838
|
+
def to_hash
|
5839
|
+
end
|
5840
|
+
end
|
5841
|
+
|
4567
5842
|
class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
|
4568
5843
|
OrHash =
|
4569
5844
|
T.type_alias do
|
@@ -4581,16 +5856,28 @@ module MetronomeSDK
|
|
4581
5856
|
end
|
4582
5857
|
attr_accessor :payment_type
|
4583
5858
|
|
4584
|
-
#
|
5859
|
+
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
5860
|
+
# your payment type.
|
5861
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
5862
|
+
attr_reader :invoice_metadata
|
5863
|
+
|
5864
|
+
sig { params(invoice_metadata: T::Hash[Symbol, String]).void }
|
5865
|
+
attr_writer :invoice_metadata
|
5866
|
+
|
5867
|
+
# Only applicable if using STRIPE as your payment gateway type.
|
4585
5868
|
sig do
|
4586
5869
|
params(
|
4587
5870
|
payment_type:
|
4588
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol
|
5871
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol,
|
5872
|
+
invoice_metadata: T::Hash[Symbol, String]
|
4589
5873
|
).returns(T.attached_class)
|
4590
5874
|
end
|
4591
5875
|
def self.new(
|
4592
5876
|
# If left blank, will default to INVOICE
|
4593
|
-
payment_type
|
5877
|
+
payment_type:,
|
5878
|
+
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
5879
|
+
# your payment type.
|
5880
|
+
invoice_metadata: nil
|
4594
5881
|
)
|
4595
5882
|
end
|
4596
5883
|
|
@@ -4598,7 +5885,8 @@ module MetronomeSDK
|
|
4598
5885
|
override.returns(
|
4599
5886
|
{
|
4600
5887
|
payment_type:
|
4601
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::TaggedSymbol
|
5888
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::TaggedSymbol,
|
5889
|
+
invoice_metadata: T::Hash[Symbol, String]
|
4602
5890
|
}
|
4603
5891
|
)
|
4604
5892
|
end
|
@@ -4666,7 +5954,17 @@ module MetronomeSDK
|
|
4666
5954
|
:STRIPE,
|
4667
5955
|
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
4668
5956
|
)
|
4669
|
-
|
5957
|
+
ANROK =
|
5958
|
+
T.let(
|
5959
|
+
:ANROK,
|
5960
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
5961
|
+
)
|
5962
|
+
PRECALCULATED =
|
5963
|
+
T.let(
|
5964
|
+
:PRECALCULATED,
|
5965
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
5966
|
+
)
|
5967
|
+
|
4670
5968
|
sig do
|
4671
5969
|
override.returns(
|
4672
5970
|
T::Array[
|
@@ -4834,6 +6132,7 @@ module MetronomeSDK
|
|
4834
6132
|
|
4835
6133
|
# Determines whether the first and last commit will be prorated. If not provided,
|
4836
6134
|
# the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).
|
6135
|
+
# subscription_config:
|
4837
6136
|
sig do
|
4838
6137
|
returns(
|
4839
6138
|
T.nilable(
|
@@ -4854,7 +6153,7 @@ module MetronomeSDK
|
|
4854
6153
|
# The frequency at which the recurring commits will be created. If not provided: -
|
4855
6154
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
4856
6155
|
# period defined in the duration will correspond to this frequency. - Commits will
|
4857
|
-
# be created aligned with the recurring commit's
|
6156
|
+
# be created aligned with the recurring commit's starting_at rather than the usage
|
4858
6157
|
# invoice dates.
|
4859
6158
|
sig do
|
4860
6159
|
returns(
|
@@ -4882,6 +6181,30 @@ module MetronomeSDK
|
|
4882
6181
|
sig { params(rollover_fraction: Float).void }
|
4883
6182
|
attr_writer :rollover_fraction
|
4884
6183
|
|
6184
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
6185
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
6186
|
+
# specifiers to contribute to a commit's or credit's drawdown.
|
6187
|
+
sig do
|
6188
|
+
returns(
|
6189
|
+
T.nilable(
|
6190
|
+
T::Array[
|
6191
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCommit::Specifier
|
6192
|
+
]
|
6193
|
+
)
|
6194
|
+
)
|
6195
|
+
end
|
6196
|
+
attr_reader :specifiers
|
6197
|
+
|
6198
|
+
sig do
|
6199
|
+
params(
|
6200
|
+
specifiers:
|
6201
|
+
T::Array[
|
6202
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCommit::Specifier::OrHash
|
6203
|
+
]
|
6204
|
+
).void
|
6205
|
+
end
|
6206
|
+
attr_writer :specifiers
|
6207
|
+
|
4885
6208
|
sig do
|
4886
6209
|
params(
|
4887
6210
|
id: String,
|
@@ -4909,7 +6232,11 @@ module MetronomeSDK
|
|
4909
6232
|
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCommit::Proration::OrSymbol,
|
4910
6233
|
recurrence_frequency:
|
4911
6234
|
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCommit::RecurrenceFrequency::OrSymbol,
|
4912
|
-
rollover_fraction: Float
|
6235
|
+
rollover_fraction: Float,
|
6236
|
+
specifiers:
|
6237
|
+
T::Array[
|
6238
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCommit::Specifier::OrHash
|
6239
|
+
]
|
4913
6240
|
).returns(T.attached_class)
|
4914
6241
|
end
|
4915
6242
|
def self.new(
|
@@ -4942,17 +6269,22 @@ module MetronomeSDK
|
|
4942
6269
|
netsuite_sales_order_id: nil,
|
4943
6270
|
# Determines whether the first and last commit will be prorated. If not provided,
|
4944
6271
|
# the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).
|
6272
|
+
# subscription_config:
|
4945
6273
|
proration: nil,
|
4946
6274
|
# The frequency at which the recurring commits will be created. If not provided: -
|
4947
6275
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
4948
6276
|
# period defined in the duration will correspond to this frequency. - Commits will
|
4949
|
-
# be created aligned with the recurring commit's
|
6277
|
+
# be created aligned with the recurring commit's starting_at rather than the usage
|
4950
6278
|
# invoice dates.
|
4951
6279
|
recurrence_frequency: nil,
|
4952
6280
|
# Will be passed down to the individual commits. This controls how much of an
|
4953
6281
|
# individual unexpired commit will roll over upon contract transition. Must be
|
4954
6282
|
# between 0 and 1.
|
4955
|
-
rollover_fraction: nil
|
6283
|
+
rollover_fraction: nil,
|
6284
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
6285
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
6286
|
+
# specifiers to contribute to a commit's or credit's drawdown.
|
6287
|
+
specifiers: nil
|
4956
6288
|
)
|
4957
6289
|
end
|
4958
6290
|
|
@@ -4984,7 +6316,11 @@ module MetronomeSDK
|
|
4984
6316
|
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCommit::Proration::TaggedSymbol,
|
4985
6317
|
recurrence_frequency:
|
4986
6318
|
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCommit::RecurrenceFrequency::TaggedSymbol,
|
4987
|
-
rollover_fraction: Float
|
6319
|
+
rollover_fraction: Float,
|
6320
|
+
specifiers:
|
6321
|
+
T::Array[
|
6322
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCommit::Specifier
|
6323
|
+
]
|
4988
6324
|
}
|
4989
6325
|
)
|
4990
6326
|
end
|
@@ -5003,26 +6339,29 @@ module MetronomeSDK
|
|
5003
6339
|
sig { returns(String) }
|
5004
6340
|
attr_accessor :credit_type_id
|
5005
6341
|
|
5006
|
-
sig { returns(Float) }
|
5007
|
-
attr_accessor :quantity
|
5008
|
-
|
5009
6342
|
sig { returns(Float) }
|
5010
6343
|
attr_accessor :unit_price
|
5011
6344
|
|
6345
|
+
sig { returns(T.nilable(Float)) }
|
6346
|
+
attr_reader :quantity
|
6347
|
+
|
6348
|
+
sig { params(quantity: Float).void }
|
6349
|
+
attr_writer :quantity
|
6350
|
+
|
5012
6351
|
# The amount of commit to grant.
|
5013
6352
|
sig do
|
5014
6353
|
params(
|
5015
6354
|
credit_type_id: String,
|
5016
|
-
|
5017
|
-
|
6355
|
+
unit_price: Float,
|
6356
|
+
quantity: Float
|
5018
6357
|
).returns(T.attached_class)
|
5019
6358
|
end
|
5020
|
-
def self.new(credit_type_id:,
|
6359
|
+
def self.new(credit_type_id:, unit_price:, quantity: nil)
|
5021
6360
|
end
|
5022
6361
|
|
5023
6362
|
sig do
|
5024
6363
|
override.returns(
|
5025
|
-
{ credit_type_id: String,
|
6364
|
+
{ credit_type_id: String, unit_price: Float, quantity: Float }
|
5026
6365
|
)
|
5027
6366
|
end
|
5028
6367
|
def to_hash
|
@@ -5231,6 +6570,7 @@ module MetronomeSDK
|
|
5231
6570
|
|
5232
6571
|
# Determines whether the first and last commit will be prorated. If not provided,
|
5233
6572
|
# the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).
|
6573
|
+
# subscription_config:
|
5234
6574
|
module Proration
|
5235
6575
|
extend MetronomeSDK::Internal::Type::Enum
|
5236
6576
|
|
@@ -5278,7 +6618,7 @@ module MetronomeSDK
|
|
5278
6618
|
# The frequency at which the recurring commits will be created. If not provided: -
|
5279
6619
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
5280
6620
|
# period defined in the duration will correspond to this frequency. - Commits will
|
5281
|
-
# be created aligned with the recurring commit's
|
6621
|
+
# be created aligned with the recurring commit's starting_at rather than the usage
|
5282
6622
|
# invoice dates.
|
5283
6623
|
module RecurrenceFrequency
|
5284
6624
|
extend MetronomeSDK::Internal::Type::Enum
|
@@ -5323,6 +6663,77 @@ module MetronomeSDK
|
|
5323
6663
|
def self.values
|
5324
6664
|
end
|
5325
6665
|
end
|
6666
|
+
|
6667
|
+
class Specifier < MetronomeSDK::Internal::Type::BaseModel
|
6668
|
+
OrHash =
|
6669
|
+
T.type_alias do
|
6670
|
+
T.any(
|
6671
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCommit::Specifier,
|
6672
|
+
MetronomeSDK::Internal::AnyHash
|
6673
|
+
)
|
6674
|
+
end
|
6675
|
+
|
6676
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
6677
|
+
attr_reader :presentation_group_values
|
6678
|
+
|
6679
|
+
sig do
|
6680
|
+
params(presentation_group_values: T::Hash[Symbol, String]).void
|
6681
|
+
end
|
6682
|
+
attr_writer :presentation_group_values
|
6683
|
+
|
6684
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
6685
|
+
attr_reader :pricing_group_values
|
6686
|
+
|
6687
|
+
sig { params(pricing_group_values: T::Hash[Symbol, String]).void }
|
6688
|
+
attr_writer :pricing_group_values
|
6689
|
+
|
6690
|
+
# If provided, the specifier will only apply to the product with the specified ID.
|
6691
|
+
sig { returns(T.nilable(String)) }
|
6692
|
+
attr_reader :product_id
|
6693
|
+
|
6694
|
+
sig { params(product_id: String).void }
|
6695
|
+
attr_writer :product_id
|
6696
|
+
|
6697
|
+
# If provided, the specifier will only apply to products with all the specified
|
6698
|
+
# tags.
|
6699
|
+
sig { returns(T.nilable(T::Array[String])) }
|
6700
|
+
attr_reader :product_tags
|
6701
|
+
|
6702
|
+
sig { params(product_tags: T::Array[String]).void }
|
6703
|
+
attr_writer :product_tags
|
6704
|
+
|
6705
|
+
sig do
|
6706
|
+
params(
|
6707
|
+
presentation_group_values: T::Hash[Symbol, String],
|
6708
|
+
pricing_group_values: T::Hash[Symbol, String],
|
6709
|
+
product_id: String,
|
6710
|
+
product_tags: T::Array[String]
|
6711
|
+
).returns(T.attached_class)
|
6712
|
+
end
|
6713
|
+
def self.new(
|
6714
|
+
presentation_group_values: nil,
|
6715
|
+
pricing_group_values: nil,
|
6716
|
+
# If provided, the specifier will only apply to the product with the specified ID.
|
6717
|
+
product_id: nil,
|
6718
|
+
# If provided, the specifier will only apply to products with all the specified
|
6719
|
+
# tags.
|
6720
|
+
product_tags: nil
|
6721
|
+
)
|
6722
|
+
end
|
6723
|
+
|
6724
|
+
sig do
|
6725
|
+
override.returns(
|
6726
|
+
{
|
6727
|
+
presentation_group_values: T::Hash[Symbol, String],
|
6728
|
+
pricing_group_values: T::Hash[Symbol, String],
|
6729
|
+
product_id: String,
|
6730
|
+
product_tags: T::Array[String]
|
6731
|
+
}
|
6732
|
+
)
|
6733
|
+
end
|
6734
|
+
def to_hash
|
6735
|
+
end
|
6736
|
+
end
|
5326
6737
|
end
|
5327
6738
|
|
5328
6739
|
class RecurringCredit < MetronomeSDK::Internal::Type::BaseModel
|
@@ -5461,6 +6872,7 @@ module MetronomeSDK
|
|
5461
6872
|
|
5462
6873
|
# Determines whether the first and last commit will be prorated. If not provided,
|
5463
6874
|
# the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).
|
6875
|
+
# subscription_config:
|
5464
6876
|
sig do
|
5465
6877
|
returns(
|
5466
6878
|
T.nilable(
|
@@ -5481,7 +6893,7 @@ module MetronomeSDK
|
|
5481
6893
|
# The frequency at which the recurring commits will be created. If not provided: -
|
5482
6894
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
5483
6895
|
# period defined in the duration will correspond to this frequency. - Commits will
|
5484
|
-
# be created aligned with the recurring commit's
|
6896
|
+
# be created aligned with the recurring commit's starting_at rather than the usage
|
5485
6897
|
# invoice dates.
|
5486
6898
|
sig do
|
5487
6899
|
returns(
|
@@ -5509,6 +6921,30 @@ module MetronomeSDK
|
|
5509
6921
|
sig { params(rollover_fraction: Float).void }
|
5510
6922
|
attr_writer :rollover_fraction
|
5511
6923
|
|
6924
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
6925
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
6926
|
+
# specifiers to contribute to a commit's or credit's drawdown.
|
6927
|
+
sig do
|
6928
|
+
returns(
|
6929
|
+
T.nilable(
|
6930
|
+
T::Array[
|
6931
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCredit::Specifier
|
6932
|
+
]
|
6933
|
+
)
|
6934
|
+
)
|
6935
|
+
end
|
6936
|
+
attr_reader :specifiers
|
6937
|
+
|
6938
|
+
sig do
|
6939
|
+
params(
|
6940
|
+
specifiers:
|
6941
|
+
T::Array[
|
6942
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCredit::Specifier::OrHash
|
6943
|
+
]
|
6944
|
+
).void
|
6945
|
+
end
|
6946
|
+
attr_writer :specifiers
|
6947
|
+
|
5512
6948
|
sig do
|
5513
6949
|
params(
|
5514
6950
|
id: String,
|
@@ -5534,7 +6970,11 @@ module MetronomeSDK
|
|
5534
6970
|
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCredit::Proration::OrSymbol,
|
5535
6971
|
recurrence_frequency:
|
5536
6972
|
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCredit::RecurrenceFrequency::OrSymbol,
|
5537
|
-
rollover_fraction: Float
|
6973
|
+
rollover_fraction: Float,
|
6974
|
+
specifiers:
|
6975
|
+
T::Array[
|
6976
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCredit::Specifier::OrHash
|
6977
|
+
]
|
5538
6978
|
).returns(T.attached_class)
|
5539
6979
|
end
|
5540
6980
|
def self.new(
|
@@ -5565,17 +7005,22 @@ module MetronomeSDK
|
|
5565
7005
|
netsuite_sales_order_id: nil,
|
5566
7006
|
# Determines whether the first and last commit will be prorated. If not provided,
|
5567
7007
|
# the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).
|
7008
|
+
# subscription_config:
|
5568
7009
|
proration: nil,
|
5569
7010
|
# The frequency at which the recurring commits will be created. If not provided: -
|
5570
7011
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
5571
7012
|
# period defined in the duration will correspond to this frequency. - Commits will
|
5572
|
-
# be created aligned with the recurring commit's
|
7013
|
+
# be created aligned with the recurring commit's starting_at rather than the usage
|
5573
7014
|
# invoice dates.
|
5574
7015
|
recurrence_frequency: nil,
|
5575
7016
|
# Will be passed down to the individual commits. This controls how much of an
|
5576
7017
|
# individual unexpired commit will roll over upon contract transition. Must be
|
5577
7018
|
# between 0 and 1.
|
5578
|
-
rollover_fraction: nil
|
7019
|
+
rollover_fraction: nil,
|
7020
|
+
# List of filters that determine what kind of customer usage draws down a commit
|
7021
|
+
# or credit. A customer's usage needs to meet the condition of at least one of the
|
7022
|
+
# specifiers to contribute to a commit's or credit's drawdown.
|
7023
|
+
specifiers: nil
|
5579
7024
|
)
|
5580
7025
|
end
|
5581
7026
|
|
@@ -5605,7 +7050,11 @@ module MetronomeSDK
|
|
5605
7050
|
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCredit::Proration::TaggedSymbol,
|
5606
7051
|
recurrence_frequency:
|
5607
7052
|
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCredit::RecurrenceFrequency::TaggedSymbol,
|
5608
|
-
rollover_fraction: Float
|
7053
|
+
rollover_fraction: Float,
|
7054
|
+
specifiers:
|
7055
|
+
T::Array[
|
7056
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCredit::Specifier
|
7057
|
+
]
|
5609
7058
|
}
|
5610
7059
|
)
|
5611
7060
|
end
|
@@ -5624,26 +7073,29 @@ module MetronomeSDK
|
|
5624
7073
|
sig { returns(String) }
|
5625
7074
|
attr_accessor :credit_type_id
|
5626
7075
|
|
5627
|
-
sig { returns(Float) }
|
5628
|
-
attr_accessor :quantity
|
5629
|
-
|
5630
7076
|
sig { returns(Float) }
|
5631
7077
|
attr_accessor :unit_price
|
5632
7078
|
|
7079
|
+
sig { returns(T.nilable(Float)) }
|
7080
|
+
attr_reader :quantity
|
7081
|
+
|
7082
|
+
sig { params(quantity: Float).void }
|
7083
|
+
attr_writer :quantity
|
7084
|
+
|
5633
7085
|
# The amount of commit to grant.
|
5634
7086
|
sig do
|
5635
7087
|
params(
|
5636
7088
|
credit_type_id: String,
|
5637
|
-
|
5638
|
-
|
7089
|
+
unit_price: Float,
|
7090
|
+
quantity: Float
|
5639
7091
|
).returns(T.attached_class)
|
5640
7092
|
end
|
5641
|
-
def self.new(credit_type_id:,
|
7093
|
+
def self.new(credit_type_id:, unit_price:, quantity: nil)
|
5642
7094
|
end
|
5643
7095
|
|
5644
7096
|
sig do
|
5645
7097
|
override.returns(
|
5646
|
-
{ credit_type_id: String,
|
7098
|
+
{ credit_type_id: String, unit_price: Float, quantity: Float }
|
5647
7099
|
)
|
5648
7100
|
end
|
5649
7101
|
def to_hash
|
@@ -5814,6 +7266,7 @@ module MetronomeSDK
|
|
5814
7266
|
|
5815
7267
|
# Determines whether the first and last commit will be prorated. If not provided,
|
5816
7268
|
# the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).
|
7269
|
+
# subscription_config:
|
5817
7270
|
module Proration
|
5818
7271
|
extend MetronomeSDK::Internal::Type::Enum
|
5819
7272
|
|
@@ -5861,7 +7314,7 @@ module MetronomeSDK
|
|
5861
7314
|
# The frequency at which the recurring commits will be created. If not provided: -
|
5862
7315
|
# The commits will be created on the usage invoice frequency. If provided: - The
|
5863
7316
|
# period defined in the duration will correspond to this frequency. - Commits will
|
5864
|
-
# be created aligned with the recurring commit's
|
7317
|
+
# be created aligned with the recurring commit's starting_at rather than the usage
|
5865
7318
|
# invoice dates.
|
5866
7319
|
module RecurrenceFrequency
|
5867
7320
|
extend MetronomeSDK::Internal::Type::Enum
|
@@ -5906,6 +7359,77 @@ module MetronomeSDK
|
|
5906
7359
|
def self.values
|
5907
7360
|
end
|
5908
7361
|
end
|
7362
|
+
|
7363
|
+
class Specifier < MetronomeSDK::Internal::Type::BaseModel
|
7364
|
+
OrHash =
|
7365
|
+
T.type_alias do
|
7366
|
+
T.any(
|
7367
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::RecurringCredit::Specifier,
|
7368
|
+
MetronomeSDK::Internal::AnyHash
|
7369
|
+
)
|
7370
|
+
end
|
7371
|
+
|
7372
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
7373
|
+
attr_reader :presentation_group_values
|
7374
|
+
|
7375
|
+
sig do
|
7376
|
+
params(presentation_group_values: T::Hash[Symbol, String]).void
|
7377
|
+
end
|
7378
|
+
attr_writer :presentation_group_values
|
7379
|
+
|
7380
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
7381
|
+
attr_reader :pricing_group_values
|
7382
|
+
|
7383
|
+
sig { params(pricing_group_values: T::Hash[Symbol, String]).void }
|
7384
|
+
attr_writer :pricing_group_values
|
7385
|
+
|
7386
|
+
# If provided, the specifier will only apply to the product with the specified ID.
|
7387
|
+
sig { returns(T.nilable(String)) }
|
7388
|
+
attr_reader :product_id
|
7389
|
+
|
7390
|
+
sig { params(product_id: String).void }
|
7391
|
+
attr_writer :product_id
|
7392
|
+
|
7393
|
+
# If provided, the specifier will only apply to products with all the specified
|
7394
|
+
# tags.
|
7395
|
+
sig { returns(T.nilable(T::Array[String])) }
|
7396
|
+
attr_reader :product_tags
|
7397
|
+
|
7398
|
+
sig { params(product_tags: T::Array[String]).void }
|
7399
|
+
attr_writer :product_tags
|
7400
|
+
|
7401
|
+
sig do
|
7402
|
+
params(
|
7403
|
+
presentation_group_values: T::Hash[Symbol, String],
|
7404
|
+
pricing_group_values: T::Hash[Symbol, String],
|
7405
|
+
product_id: String,
|
7406
|
+
product_tags: T::Array[String]
|
7407
|
+
).returns(T.attached_class)
|
7408
|
+
end
|
7409
|
+
def self.new(
|
7410
|
+
presentation_group_values: nil,
|
7411
|
+
pricing_group_values: nil,
|
7412
|
+
# If provided, the specifier will only apply to the product with the specified ID.
|
7413
|
+
product_id: nil,
|
7414
|
+
# If provided, the specifier will only apply to products with all the specified
|
7415
|
+
# tags.
|
7416
|
+
product_tags: nil
|
7417
|
+
)
|
7418
|
+
end
|
7419
|
+
|
7420
|
+
sig do
|
7421
|
+
override.returns(
|
7422
|
+
{
|
7423
|
+
presentation_group_values: T::Hash[Symbol, String],
|
7424
|
+
pricing_group_values: T::Hash[Symbol, String],
|
7425
|
+
product_id: String,
|
7426
|
+
product_tags: T::Array[String]
|
7427
|
+
}
|
7428
|
+
)
|
7429
|
+
end
|
7430
|
+
def to_hash
|
7431
|
+
end
|
7432
|
+
end
|
5909
7433
|
end
|
5910
7434
|
|
5911
7435
|
class ResellerRoyalty < MetronomeSDK::Internal::Type::BaseModel
|
@@ -6385,7 +7909,25 @@ module MetronomeSDK
|
|
6385
7909
|
end
|
6386
7910
|
attr_accessor :payment_gate_type
|
6387
7911
|
|
6388
|
-
# Only applicable if using
|
7912
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
7913
|
+
sig do
|
7914
|
+
returns(
|
7915
|
+
T.nilable(
|
7916
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
|
7917
|
+
)
|
7918
|
+
)
|
7919
|
+
end
|
7920
|
+
attr_reader :precalculated_tax_config
|
7921
|
+
|
7922
|
+
sig do
|
7923
|
+
params(
|
7924
|
+
precalculated_tax_config:
|
7925
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig::OrHash
|
7926
|
+
).void
|
7927
|
+
end
|
7928
|
+
attr_writer :precalculated_tax_config
|
7929
|
+
|
7930
|
+
# Only applicable if using STRIPE as your payment gateway type.
|
6389
7931
|
sig do
|
6390
7932
|
returns(
|
6391
7933
|
T.nilable(
|
@@ -6427,6 +7969,8 @@ module MetronomeSDK
|
|
6427
7969
|
params(
|
6428
7970
|
payment_gate_type:
|
6429
7971
|
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::PaymentGateType::OrSymbol,
|
7972
|
+
precalculated_tax_config:
|
7973
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig::OrHash,
|
6430
7974
|
stripe_config:
|
6431
7975
|
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::OrHash,
|
6432
7976
|
tax_type:
|
@@ -6439,7 +7983,9 @@ module MetronomeSDK
|
|
6439
7983
|
# facilitate payment using your own payment integration. Select NONE if you do not
|
6440
7984
|
# wish to payment gate the commit balance.
|
6441
7985
|
payment_gate_type:,
|
6442
|
-
# Only applicable if using
|
7986
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
7987
|
+
precalculated_tax_config: nil,
|
7988
|
+
# Only applicable if using STRIPE as your payment gateway type.
|
6443
7989
|
stripe_config: nil,
|
6444
7990
|
# Stripe tax is only supported for Stripe payment gateway. Select NONE if you do
|
6445
7991
|
# not wish Metronome to calculate tax on your behalf. Leaving this field blank
|
@@ -6453,6 +7999,8 @@ module MetronomeSDK
|
|
6453
7999
|
{
|
6454
8000
|
payment_gate_type:
|
6455
8001
|
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::PaymentGateType::TaggedSymbol,
|
8002
|
+
precalculated_tax_config:
|
8003
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
|
6456
8004
|
stripe_config:
|
6457
8005
|
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig,
|
6458
8006
|
tax_type:
|
@@ -6506,6 +8054,51 @@ module MetronomeSDK
|
|
6506
8054
|
end
|
6507
8055
|
end
|
6508
8056
|
|
8057
|
+
class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
|
8058
|
+
OrHash =
|
8059
|
+
T.type_alias do
|
8060
|
+
T.any(
|
8061
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
|
8062
|
+
MetronomeSDK::Internal::AnyHash
|
8063
|
+
)
|
8064
|
+
end
|
8065
|
+
|
8066
|
+
# Amount of tax to be applied. This should be in the same currency and
|
8067
|
+
# denomination as the commit's invoice schedule
|
8068
|
+
sig { returns(Float) }
|
8069
|
+
attr_accessor :tax_amount
|
8070
|
+
|
8071
|
+
# Name of the tax to be applied. This may be used in an invoice line item
|
8072
|
+
# description.
|
8073
|
+
sig { returns(T.nilable(String)) }
|
8074
|
+
attr_reader :tax_name
|
8075
|
+
|
8076
|
+
sig { params(tax_name: String).void }
|
8077
|
+
attr_writer :tax_name
|
8078
|
+
|
8079
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
8080
|
+
sig do
|
8081
|
+
params(tax_amount: Float, tax_name: String).returns(
|
8082
|
+
T.attached_class
|
8083
|
+
)
|
8084
|
+
end
|
8085
|
+
def self.new(
|
8086
|
+
# Amount of tax to be applied. This should be in the same currency and
|
8087
|
+
# denomination as the commit's invoice schedule
|
8088
|
+
tax_amount:,
|
8089
|
+
# Name of the tax to be applied. This may be used in an invoice line item
|
8090
|
+
# description.
|
8091
|
+
tax_name: nil
|
8092
|
+
)
|
8093
|
+
end
|
8094
|
+
|
8095
|
+
sig do
|
8096
|
+
override.returns({ tax_amount: Float, tax_name: String })
|
8097
|
+
end
|
8098
|
+
def to_hash
|
8099
|
+
end
|
8100
|
+
end
|
8101
|
+
|
6509
8102
|
class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
|
6510
8103
|
OrHash =
|
6511
8104
|
T.type_alias do
|
@@ -6523,16 +8116,28 @@ module MetronomeSDK
|
|
6523
8116
|
end
|
6524
8117
|
attr_accessor :payment_type
|
6525
8118
|
|
6526
|
-
#
|
8119
|
+
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
8120
|
+
# your payment type.
|
8121
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
8122
|
+
attr_reader :invoice_metadata
|
8123
|
+
|
8124
|
+
sig { params(invoice_metadata: T::Hash[Symbol, String]).void }
|
8125
|
+
attr_writer :invoice_metadata
|
8126
|
+
|
8127
|
+
# Only applicable if using STRIPE as your payment gateway type.
|
6527
8128
|
sig do
|
6528
8129
|
params(
|
6529
8130
|
payment_type:
|
6530
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol
|
8131
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol,
|
8132
|
+
invoice_metadata: T::Hash[Symbol, String]
|
6531
8133
|
).returns(T.attached_class)
|
6532
8134
|
end
|
6533
8135
|
def self.new(
|
6534
8136
|
# If left blank, will default to INVOICE
|
6535
|
-
payment_type
|
8137
|
+
payment_type:,
|
8138
|
+
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
8139
|
+
# your payment type.
|
8140
|
+
invoice_metadata: nil
|
6536
8141
|
)
|
6537
8142
|
end
|
6538
8143
|
|
@@ -6540,7 +8145,8 @@ module MetronomeSDK
|
|
6540
8145
|
override.returns(
|
6541
8146
|
{
|
6542
8147
|
payment_type:
|
6543
|
-
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::TaggedSymbol
|
8148
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::TaggedSymbol,
|
8149
|
+
invoice_metadata: T::Hash[Symbol, String]
|
6544
8150
|
}
|
6545
8151
|
)
|
6546
8152
|
end
|
@@ -6608,6 +8214,16 @@ module MetronomeSDK
|
|
6608
8214
|
:STRIPE,
|
6609
8215
|
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
6610
8216
|
)
|
8217
|
+
ANROK =
|
8218
|
+
T.let(
|
8219
|
+
:ANROK,
|
8220
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
8221
|
+
)
|
8222
|
+
PRECALCULATED =
|
8223
|
+
T.let(
|
8224
|
+
:PRECALCULATED,
|
8225
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::SpendThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
8226
|
+
)
|
6611
8227
|
|
6612
8228
|
sig do
|
6613
8229
|
override.returns(
|
@@ -6621,6 +8237,443 @@ module MetronomeSDK
|
|
6621
8237
|
end
|
6622
8238
|
end
|
6623
8239
|
end
|
8240
|
+
|
8241
|
+
class Subscription < MetronomeSDK::Internal::Type::BaseModel
|
8242
|
+
OrHash =
|
8243
|
+
T.type_alias do
|
8244
|
+
T.any(
|
8245
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription,
|
8246
|
+
MetronomeSDK::Internal::AnyHash
|
8247
|
+
)
|
8248
|
+
end
|
8249
|
+
|
8250
|
+
sig do
|
8251
|
+
returns(
|
8252
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::CollectionSchedule::TaggedSymbol
|
8253
|
+
)
|
8254
|
+
end
|
8255
|
+
attr_accessor :collection_schedule
|
8256
|
+
|
8257
|
+
sig do
|
8258
|
+
returns(
|
8259
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::Proration
|
8260
|
+
)
|
8261
|
+
end
|
8262
|
+
attr_reader :proration
|
8263
|
+
|
8264
|
+
sig do
|
8265
|
+
params(
|
8266
|
+
proration:
|
8267
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::Proration::OrHash
|
8268
|
+
).void
|
8269
|
+
end
|
8270
|
+
attr_writer :proration
|
8271
|
+
|
8272
|
+
# List of quantity schedule items for the subscription. Only includes the current
|
8273
|
+
# quantity and future quantity changes.
|
8274
|
+
sig do
|
8275
|
+
returns(
|
8276
|
+
T::Array[
|
8277
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::QuantitySchedule
|
8278
|
+
]
|
8279
|
+
)
|
8280
|
+
end
|
8281
|
+
attr_accessor :quantity_schedule
|
8282
|
+
|
8283
|
+
sig { returns(Time) }
|
8284
|
+
attr_accessor :starting_at
|
8285
|
+
|
8286
|
+
sig do
|
8287
|
+
returns(
|
8288
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate
|
8289
|
+
)
|
8290
|
+
end
|
8291
|
+
attr_reader :subscription_rate
|
8292
|
+
|
8293
|
+
sig do
|
8294
|
+
params(
|
8295
|
+
subscription_rate:
|
8296
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate::OrHash
|
8297
|
+
).void
|
8298
|
+
end
|
8299
|
+
attr_writer :subscription_rate
|
8300
|
+
|
8301
|
+
sig { returns(T.nilable(String)) }
|
8302
|
+
attr_reader :id
|
8303
|
+
|
8304
|
+
sig { params(id: String).void }
|
8305
|
+
attr_writer :id
|
8306
|
+
|
8307
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
8308
|
+
attr_reader :custom_fields
|
8309
|
+
|
8310
|
+
sig { params(custom_fields: T::Hash[Symbol, String]).void }
|
8311
|
+
attr_writer :custom_fields
|
8312
|
+
|
8313
|
+
sig { returns(T.nilable(String)) }
|
8314
|
+
attr_reader :description
|
8315
|
+
|
8316
|
+
sig { params(description: String).void }
|
8317
|
+
attr_writer :description
|
8318
|
+
|
8319
|
+
sig { returns(T.nilable(Time)) }
|
8320
|
+
attr_reader :ending_before
|
8321
|
+
|
8322
|
+
sig { params(ending_before: Time).void }
|
8323
|
+
attr_writer :ending_before
|
8324
|
+
|
8325
|
+
sig { returns(T.nilable(String)) }
|
8326
|
+
attr_reader :fiat_credit_type_id
|
8327
|
+
|
8328
|
+
sig { params(fiat_credit_type_id: String).void }
|
8329
|
+
attr_writer :fiat_credit_type_id
|
8330
|
+
|
8331
|
+
sig { returns(T.nilable(String)) }
|
8332
|
+
attr_reader :name
|
8333
|
+
|
8334
|
+
sig { params(name: String).void }
|
8335
|
+
attr_writer :name
|
8336
|
+
|
8337
|
+
sig do
|
8338
|
+
params(
|
8339
|
+
collection_schedule:
|
8340
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::CollectionSchedule::OrSymbol,
|
8341
|
+
proration:
|
8342
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::Proration::OrHash,
|
8343
|
+
quantity_schedule:
|
8344
|
+
T::Array[
|
8345
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::QuantitySchedule::OrHash
|
8346
|
+
],
|
8347
|
+
starting_at: Time,
|
8348
|
+
subscription_rate:
|
8349
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate::OrHash,
|
8350
|
+
id: String,
|
8351
|
+
custom_fields: T::Hash[Symbol, String],
|
8352
|
+
description: String,
|
8353
|
+
ending_before: Time,
|
8354
|
+
fiat_credit_type_id: String,
|
8355
|
+
name: String
|
8356
|
+
).returns(T.attached_class)
|
8357
|
+
end
|
8358
|
+
def self.new(
|
8359
|
+
collection_schedule:,
|
8360
|
+
proration:,
|
8361
|
+
# List of quantity schedule items for the subscription. Only includes the current
|
8362
|
+
# quantity and future quantity changes.
|
8363
|
+
quantity_schedule:,
|
8364
|
+
starting_at:,
|
8365
|
+
subscription_rate:,
|
8366
|
+
id: nil,
|
8367
|
+
custom_fields: nil,
|
8368
|
+
description: nil,
|
8369
|
+
ending_before: nil,
|
8370
|
+
fiat_credit_type_id: nil,
|
8371
|
+
name: nil
|
8372
|
+
)
|
8373
|
+
end
|
8374
|
+
|
8375
|
+
sig do
|
8376
|
+
override.returns(
|
8377
|
+
{
|
8378
|
+
collection_schedule:
|
8379
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::CollectionSchedule::TaggedSymbol,
|
8380
|
+
proration:
|
8381
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::Proration,
|
8382
|
+
quantity_schedule:
|
8383
|
+
T::Array[
|
8384
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::QuantitySchedule
|
8385
|
+
],
|
8386
|
+
starting_at: Time,
|
8387
|
+
subscription_rate:
|
8388
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate,
|
8389
|
+
id: String,
|
8390
|
+
custom_fields: T::Hash[Symbol, String],
|
8391
|
+
description: String,
|
8392
|
+
ending_before: Time,
|
8393
|
+
fiat_credit_type_id: String,
|
8394
|
+
name: String
|
8395
|
+
}
|
8396
|
+
)
|
8397
|
+
end
|
8398
|
+
def to_hash
|
8399
|
+
end
|
8400
|
+
|
8401
|
+
module CollectionSchedule
|
8402
|
+
extend MetronomeSDK::Internal::Type::Enum
|
8403
|
+
|
8404
|
+
TaggedSymbol =
|
8405
|
+
T.type_alias do
|
8406
|
+
T.all(
|
8407
|
+
Symbol,
|
8408
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::CollectionSchedule
|
8409
|
+
)
|
8410
|
+
end
|
8411
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
8412
|
+
|
8413
|
+
ADVANCE =
|
8414
|
+
T.let(
|
8415
|
+
:ADVANCE,
|
8416
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::CollectionSchedule::TaggedSymbol
|
8417
|
+
)
|
8418
|
+
ARREARS =
|
8419
|
+
T.let(
|
8420
|
+
:ARREARS,
|
8421
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::CollectionSchedule::TaggedSymbol
|
8422
|
+
)
|
8423
|
+
|
8424
|
+
sig do
|
8425
|
+
override.returns(
|
8426
|
+
T::Array[
|
8427
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::CollectionSchedule::TaggedSymbol
|
8428
|
+
]
|
8429
|
+
)
|
8430
|
+
end
|
8431
|
+
def self.values
|
8432
|
+
end
|
8433
|
+
end
|
8434
|
+
|
8435
|
+
class Proration < MetronomeSDK::Internal::Type::BaseModel
|
8436
|
+
OrHash =
|
8437
|
+
T.type_alias do
|
8438
|
+
T.any(
|
8439
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::Proration,
|
8440
|
+
MetronomeSDK::Internal::AnyHash
|
8441
|
+
)
|
8442
|
+
end
|
8443
|
+
|
8444
|
+
sig do
|
8445
|
+
returns(
|
8446
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::Proration::InvoiceBehavior::TaggedSymbol
|
8447
|
+
)
|
8448
|
+
end
|
8449
|
+
attr_accessor :invoice_behavior
|
8450
|
+
|
8451
|
+
sig { returns(T::Boolean) }
|
8452
|
+
attr_accessor :is_prorated
|
8453
|
+
|
8454
|
+
sig do
|
8455
|
+
params(
|
8456
|
+
invoice_behavior:
|
8457
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::Proration::InvoiceBehavior::OrSymbol,
|
8458
|
+
is_prorated: T::Boolean
|
8459
|
+
).returns(T.attached_class)
|
8460
|
+
end
|
8461
|
+
def self.new(invoice_behavior:, is_prorated:)
|
8462
|
+
end
|
8463
|
+
|
8464
|
+
sig do
|
8465
|
+
override.returns(
|
8466
|
+
{
|
8467
|
+
invoice_behavior:
|
8468
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::Proration::InvoiceBehavior::TaggedSymbol,
|
8469
|
+
is_prorated: T::Boolean
|
8470
|
+
}
|
8471
|
+
)
|
8472
|
+
end
|
8473
|
+
def to_hash
|
8474
|
+
end
|
8475
|
+
|
8476
|
+
module InvoiceBehavior
|
8477
|
+
extend MetronomeSDK::Internal::Type::Enum
|
8478
|
+
|
8479
|
+
TaggedSymbol =
|
8480
|
+
T.type_alias do
|
8481
|
+
T.all(
|
8482
|
+
Symbol,
|
8483
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::Proration::InvoiceBehavior
|
8484
|
+
)
|
8485
|
+
end
|
8486
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
8487
|
+
|
8488
|
+
BILL_IMMEDIATELY =
|
8489
|
+
T.let(
|
8490
|
+
:BILL_IMMEDIATELY,
|
8491
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::Proration::InvoiceBehavior::TaggedSymbol
|
8492
|
+
)
|
8493
|
+
BILL_ON_NEXT_COLLECTION_DATE =
|
8494
|
+
T.let(
|
8495
|
+
:BILL_ON_NEXT_COLLECTION_DATE,
|
8496
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::Proration::InvoiceBehavior::TaggedSymbol
|
8497
|
+
)
|
8498
|
+
|
8499
|
+
sig do
|
8500
|
+
override.returns(
|
8501
|
+
T::Array[
|
8502
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::Proration::InvoiceBehavior::TaggedSymbol
|
8503
|
+
]
|
8504
|
+
)
|
8505
|
+
end
|
8506
|
+
def self.values
|
8507
|
+
end
|
8508
|
+
end
|
8509
|
+
end
|
8510
|
+
|
8511
|
+
class QuantitySchedule < MetronomeSDK::Internal::Type::BaseModel
|
8512
|
+
OrHash =
|
8513
|
+
T.type_alias do
|
8514
|
+
T.any(
|
8515
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::QuantitySchedule,
|
8516
|
+
MetronomeSDK::Internal::AnyHash
|
8517
|
+
)
|
8518
|
+
end
|
8519
|
+
|
8520
|
+
sig { returns(Float) }
|
8521
|
+
attr_accessor :quantity
|
8522
|
+
|
8523
|
+
sig { returns(Time) }
|
8524
|
+
attr_accessor :starting_at
|
8525
|
+
|
8526
|
+
sig { returns(T.nilable(Time)) }
|
8527
|
+
attr_reader :ending_before
|
8528
|
+
|
8529
|
+
sig { params(ending_before: Time).void }
|
8530
|
+
attr_writer :ending_before
|
8531
|
+
|
8532
|
+
sig do
|
8533
|
+
params(
|
8534
|
+
quantity: Float,
|
8535
|
+
starting_at: Time,
|
8536
|
+
ending_before: Time
|
8537
|
+
).returns(T.attached_class)
|
8538
|
+
end
|
8539
|
+
def self.new(quantity:, starting_at:, ending_before: nil)
|
8540
|
+
end
|
8541
|
+
|
8542
|
+
sig do
|
8543
|
+
override.returns(
|
8544
|
+
{ quantity: Float, starting_at: Time, ending_before: Time }
|
8545
|
+
)
|
8546
|
+
end
|
8547
|
+
def to_hash
|
8548
|
+
end
|
8549
|
+
end
|
8550
|
+
|
8551
|
+
class SubscriptionRate < MetronomeSDK::Internal::Type::BaseModel
|
8552
|
+
OrHash =
|
8553
|
+
T.type_alias do
|
8554
|
+
T.any(
|
8555
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate,
|
8556
|
+
MetronomeSDK::Internal::AnyHash
|
8557
|
+
)
|
8558
|
+
end
|
8559
|
+
|
8560
|
+
sig do
|
8561
|
+
returns(
|
8562
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate::BillingFrequency::TaggedSymbol
|
8563
|
+
)
|
8564
|
+
end
|
8565
|
+
attr_accessor :billing_frequency
|
8566
|
+
|
8567
|
+
sig do
|
8568
|
+
returns(
|
8569
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate::Product
|
8570
|
+
)
|
8571
|
+
end
|
8572
|
+
attr_reader :product
|
8573
|
+
|
8574
|
+
sig do
|
8575
|
+
params(
|
8576
|
+
product:
|
8577
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate::Product::OrHash
|
8578
|
+
).void
|
8579
|
+
end
|
8580
|
+
attr_writer :product
|
8581
|
+
|
8582
|
+
sig do
|
8583
|
+
params(
|
8584
|
+
billing_frequency:
|
8585
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate::BillingFrequency::OrSymbol,
|
8586
|
+
product:
|
8587
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate::Product::OrHash
|
8588
|
+
).returns(T.attached_class)
|
8589
|
+
end
|
8590
|
+
def self.new(billing_frequency:, product:)
|
8591
|
+
end
|
8592
|
+
|
8593
|
+
sig do
|
8594
|
+
override.returns(
|
8595
|
+
{
|
8596
|
+
billing_frequency:
|
8597
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate::BillingFrequency::TaggedSymbol,
|
8598
|
+
product:
|
8599
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate::Product
|
8600
|
+
}
|
8601
|
+
)
|
8602
|
+
end
|
8603
|
+
def to_hash
|
8604
|
+
end
|
8605
|
+
|
8606
|
+
module BillingFrequency
|
8607
|
+
extend MetronomeSDK::Internal::Type::Enum
|
8608
|
+
|
8609
|
+
TaggedSymbol =
|
8610
|
+
T.type_alias do
|
8611
|
+
T.all(
|
8612
|
+
Symbol,
|
8613
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate::BillingFrequency
|
8614
|
+
)
|
8615
|
+
end
|
8616
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
8617
|
+
|
8618
|
+
MONTHLY =
|
8619
|
+
T.let(
|
8620
|
+
:MONTHLY,
|
8621
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate::BillingFrequency::TaggedSymbol
|
8622
|
+
)
|
8623
|
+
QUARTERLY =
|
8624
|
+
T.let(
|
8625
|
+
:QUARTERLY,
|
8626
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate::BillingFrequency::TaggedSymbol
|
8627
|
+
)
|
8628
|
+
ANNUAL =
|
8629
|
+
T.let(
|
8630
|
+
:ANNUAL,
|
8631
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate::BillingFrequency::TaggedSymbol
|
8632
|
+
)
|
8633
|
+
WEEKLY =
|
8634
|
+
T.let(
|
8635
|
+
:WEEKLY,
|
8636
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate::BillingFrequency::TaggedSymbol
|
8637
|
+
)
|
8638
|
+
|
8639
|
+
sig do
|
8640
|
+
override.returns(
|
8641
|
+
T::Array[
|
8642
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate::BillingFrequency::TaggedSymbol
|
8643
|
+
]
|
8644
|
+
)
|
8645
|
+
end
|
8646
|
+
def self.values
|
8647
|
+
end
|
8648
|
+
end
|
8649
|
+
|
8650
|
+
class Product < MetronomeSDK::Internal::Type::BaseModel
|
8651
|
+
OrHash =
|
8652
|
+
T.type_alias do
|
8653
|
+
T.any(
|
8654
|
+
MetronomeSDK::Models::V2::ContractListResponse::Data::Subscription::SubscriptionRate::Product,
|
8655
|
+
MetronomeSDK::Internal::AnyHash
|
8656
|
+
)
|
8657
|
+
end
|
8658
|
+
|
8659
|
+
sig { returns(String) }
|
8660
|
+
attr_accessor :id
|
8661
|
+
|
8662
|
+
sig { returns(String) }
|
8663
|
+
attr_accessor :name
|
8664
|
+
|
8665
|
+
sig do
|
8666
|
+
params(id: String, name: String).returns(T.attached_class)
|
8667
|
+
end
|
8668
|
+
def self.new(id:, name:)
|
8669
|
+
end
|
8670
|
+
|
8671
|
+
sig { override.returns({ id: String, name: String }) }
|
8672
|
+
def to_hash
|
8673
|
+
end
|
8674
|
+
end
|
8675
|
+
end
|
8676
|
+
end
|
6624
8677
|
end
|
6625
8678
|
end
|
6626
8679
|
end
|