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