metronome-sdk 0.1.0.pre.alpha.3 → 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 +40 -0
- data/README.md +1 -1
- data/lib/metronome_sdk/errors.rb +22 -0
- data/lib/metronome_sdk/internal/transport/base_client.rb +10 -2
- data/lib/metronome_sdk/internal/type/array_of.rb +6 -1
- data/lib/metronome_sdk/internal/type/base_model.rb +82 -26
- data/lib/metronome_sdk/internal/type/boolean.rb +7 -1
- data/lib/metronome_sdk/internal/type/converter.rb +42 -34
- data/lib/metronome_sdk/internal/type/enum.rb +16 -5
- data/lib/metronome_sdk/internal/type/file_input.rb +6 -1
- data/lib/metronome_sdk/internal/type/hash_of.rb +6 -1
- data/lib/metronome_sdk/internal/type/union.rb +17 -9
- data/lib/metronome_sdk/internal/type/unknown.rb +7 -1
- data/lib/metronome_sdk/internal/util.rb +8 -9
- data/lib/metronome_sdk/models/base_usage_filter.rb +27 -0
- data/lib/metronome_sdk/models/commit.rb +1010 -0
- data/lib/metronome_sdk/models/contract_without_amendments.rb +1803 -0
- data/lib/metronome_sdk/models/credit.rb +634 -0
- data/lib/metronome_sdk/models/credit_type_data.rb +21 -0
- data/lib/metronome_sdk/models/discount.rb +68 -0
- data/lib/metronome_sdk/models/event_type_filter.rb +33 -0
- data/lib/metronome_sdk/models/id.rb +15 -0
- data/lib/metronome_sdk/models/override.rb +381 -0
- data/lib/metronome_sdk/models/pro_service.rb +73 -0
- data/lib/metronome_sdk/models/property_filter.rb +52 -0
- data/lib/metronome_sdk/models/rate.rb +101 -0
- data/lib/metronome_sdk/models/schedule_duration.rb +50 -0
- data/lib/metronome_sdk/models/schedule_point_in_time.rb +62 -0
- data/lib/metronome_sdk/models/scheduled_charge.rb +76 -0
- data/lib/metronome_sdk/models/tier.rb +21 -0
- data/lib/metronome_sdk/models/v1/alert_archive_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/alert_create_params.rb +4 -1
- data/lib/metronome_sdk/models/v1/alert_create_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/billable_metric_archive_params.rb +2 -8
- data/lib/metronome_sdk/models/v1/billable_metric_archive_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +6 -86
- data/lib/metronome_sdk/models/v1/billable_metric_create_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +6 -85
- data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +8 -85
- data/lib/metronome_sdk/models/v1/contract_amend_params.rb +312 -35
- data/lib/metronome_sdk/models/v1/contract_amend_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contract_archive_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_response.rb +3 -1276
- data/lib/metronome_sdk/models/v1/contract_create_params.rb +550 -102
- data/lib/metronome_sdk/models/v1/contract_create_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +5 -1645
- data/lib/metronome_sdk/models/v1/contract_list_response.rb +253 -10692
- data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +9 -295
- data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +254 -10721
- data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rb +3 -1276
- data/lib/metronome_sdk/models/v1/contract_update_end_date_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/product_archive_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +6 -97
- data/lib/metronome_sdk/models/v1/contracts/product_create_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb +148 -0
- data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +12 -561
- data/lib/metronome_sdk/models/v1/contracts/product_retrieve_params.rb +2 -8
- data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +14 -559
- data/lib/metronome_sdk/models/v1/contracts/product_update_params.rb +6 -97
- data/lib/metronome_sdk/models/v1/contracts/product_update_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/quantity_conversion.rb +57 -0
- data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +45 -0
- data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_params.rb +2 -8
- data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/rate_card_create_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +6 -42
- data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rb +2 -8
- data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +6 -159
- data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +6 -42
- data/lib/metronome_sdk/models/v1/contracts/rate_card_update_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +6 -44
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rb +3 -16
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +6 -44
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +9 -61
- data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +6 -158
- data/lib/metronome_sdk/models/v1/credit_grant_create_params.rb +5 -77
- data/lib/metronome_sdk/models/v1/credit_grant_create_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/credit_grant_edit_response.rb +3 -14
- 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 +11 -153
- data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +14 -175
- data/lib/metronome_sdk/models/v1/credit_grant_void_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/credit_ledger_entry.rb +69 -0
- data/lib/metronome_sdk/models/v1/customer.rb +53 -0
- data/lib/metronome_sdk/models/v1/customer_archive_params.rb +2 -8
- data/lib/metronome_sdk/models/v1/customer_archive_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/customer_create_response.rb +3 -50
- data/lib/metronome_sdk/models/v1/{customer_list_response.rb → customer_detail.rb} +14 -15
- data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +6 -86
- 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 +3 -126
- data/lib/metronome_sdk/models/v1/customer_set_name_response.rb +3 -50
- data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +5 -276
- data/lib/metronome_sdk/models/v1/customers/alert_retrieve_response.rb +3 -279
- 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 +8 -6
- data/lib/metronome_sdk/models/v1/customers/commit_create_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +3 -1047
- data/lib/metronome_sdk/models/v1/customers/commit_update_end_date_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/customers/credit_create_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +3 -593
- data/lib/metronome_sdk/models/v1/customers/credit_update_end_date_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +270 -0
- data/lib/metronome_sdk/models/v1/customers/{invoice_list_response.rb → invoice.rb} +119 -303
- data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rb +2 -1271
- data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_response.rb +3 -1276
- data/lib/metronome_sdk/models/v1/customers/plan_add_response.rb +3 -14
- data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +3 -21
- data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +1 -0
- data/lib/metronome_sdk/models/v1/plan_detail.rb +200 -0
- data/lib/metronome_sdk/models/v1/plan_get_details_response.rb +3 -286
- data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +3 -20
- data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +3 -128
- data/lib/metronome_sdk/models/v1/rollover_amount_max_amount.rb +38 -0
- data/lib/metronome_sdk/models/v1/rollover_amount_max_percentage.rb +38 -0
- 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 +11 -8
- data/lib/metronome_sdk/models/v2/contract_edit_commit_response.rb +3 -14
- data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +3 -2
- data/lib/metronome_sdk/models/v2/contract_edit_credit_response.rb +3 -14
- data/lib/metronome_sdk/models/v2/contract_edit_params.rb +885 -103
- data/lib/metronome_sdk/models/v2/contract_edit_response.rb +3 -14
- data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +351 -625
- data/lib/metronome_sdk/models/v2/contract_list_response.rb +590 -749
- data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +590 -751
- data/lib/metronome_sdk/models.rb +36 -4
- data/lib/metronome_sdk/resources/v1/alerts.rb +1 -1
- data/lib/metronome_sdk/resources/v1/billable_metrics.rb +2 -2
- data/lib/metronome_sdk/resources/v1/contracts/products.rb +4 -4
- data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +1 -1
- data/lib/metronome_sdk/resources/v1/contracts.rb +8 -4
- data/lib/metronome_sdk/resources/v1/credit_grants.rb +4 -2
- data/lib/metronome_sdk/resources/v1/customers/commits.rb +2 -2
- data/lib/metronome_sdk/resources/v1/customers/invoices.rb +2 -2
- data/lib/metronome_sdk/resources/v1/customers.rb +40 -2
- data/lib/metronome_sdk/resources/v1/usage.rb +25 -0
- data/lib/metronome_sdk/resources/v2/contracts.rb +11 -9
- data/lib/metronome_sdk/version.rb +1 -1
- data/lib/metronome_sdk.rb +31 -2
- data/rbi/metronome_sdk/errors.rbi +16 -0
- data/rbi/metronome_sdk/internal/type/boolean.rbi +2 -0
- data/rbi/metronome_sdk/internal/type/converter.rbi +15 -15
- data/rbi/metronome_sdk/internal/type/union.rbi +5 -0
- data/rbi/metronome_sdk/internal/type/unknown.rbi +2 -0
- data/rbi/metronome_sdk/internal/util.rbi +2 -0
- data/rbi/metronome_sdk/models/base_usage_filter.rbi +46 -0
- data/rbi/metronome_sdk/models/commit.rbi +1962 -0
- data/rbi/metronome_sdk/models/contract_without_amendments.rbi +3676 -0
- data/rbi/metronome_sdk/models/credit.rbi +1230 -0
- data/rbi/metronome_sdk/models/credit_type_data.rbi +26 -0
- data/rbi/metronome_sdk/models/discount.rbi +106 -0
- data/rbi/metronome_sdk/models/event_type_filter.rbi +57 -0
- data/rbi/metronome_sdk/models/id.rbi +23 -0
- data/rbi/metronome_sdk/models/override.rbi +675 -0
- data/rbi/metronome_sdk/models/pro_service.rbi +98 -0
- data/rbi/metronome_sdk/models/property_filter.rbi +88 -0
- data/rbi/metronome_sdk/models/rate.rbi +155 -0
- data/rbi/metronome_sdk/models/schedule_duration.rbi +89 -0
- data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +121 -0
- data/rbi/metronome_sdk/models/scheduled_charge.rbi +119 -0
- data/rbi/metronome_sdk/models/tier.rbi +29 -0
- data/rbi/metronome_sdk/models/v1/alert_archive_response.rbi +4 -37
- data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +6 -0
- data/rbi/metronome_sdk/models/v1/alert_create_response.rbi +4 -37
- data/rbi/metronome_sdk/models/v1/billable_metric_archive_params.rbi +6 -12
- data/rbi/metronome_sdk/models/v1/billable_metric_archive_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/billable_metric_create_params.rbi +8 -177
- data/rbi/metronome_sdk/models/v1/billable_metric_create_response.rbi +4 -43
- data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +8 -177
- data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +8 -175
- data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +712 -68
- data/rbi/metronome_sdk/models/v1/contract_amend_response.rbi +4 -37
- data/rbi/metronome_sdk/models/v1/contract_archive_response.rbi +4 -39
- data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbi +3 -2595
- data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1100 -172
- data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +4 -37
- data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +3 -3366
- data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +375 -22523
- data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +12 -632
- data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +375 -22523
- data/rbi/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbi +3 -2595
- data/rbi/metronome_sdk/models/v1/contract_update_end_date_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/product_archive_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +8 -209
- data/rbi/metronome_sdk/models/v1/contracts/product_create_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/product_list_item_state.rbi +237 -0
- data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +76 -1143
- data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_params.rbi +3 -9
- data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +76 -1137
- data/rbi/metronome_sdk/models/v1/contracts/product_update_params.rbi +8 -209
- data/rbi/metronome_sdk/models/v1/contracts/product_update_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/quantity_conversion.rbi +111 -0
- data/rbi/metronome_sdk/models/v1/contracts/quantity_rounding.rbi +94 -0
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbi +3 -9
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +8 -74
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbi +3 -9
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +8 -344
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +8 -74
- data/rbi/metronome_sdk/models/v1/contracts/rate_card_update_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +8 -108
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbi +4 -45
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +8 -108
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +12 -149
- data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +8 -344
- data/rbi/metronome_sdk/models/v1/credit_grant_create_params.rbi +8 -166
- data/rbi/metronome_sdk/models/v1/credit_grant_create_response.rbi +4 -41
- data/rbi/metronome_sdk/models/v1/credit_grant_edit_response.rbi +4 -39
- data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_params.rbi +58 -0
- data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +10 -231
- data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +14 -281
- data/rbi/metronome_sdk/models/v1/credit_grant_void_response.rbi +4 -39
- data/rbi/metronome_sdk/models/v1/credit_ledger_entry.rbi +90 -0
- data/rbi/metronome_sdk/models/v1/customer.rbi +74 -0
- data/rbi/metronome_sdk/models/v1/customer_archive_params.rbi +6 -12
- data/rbi/metronome_sdk/models/v1/customer_archive_response.rbi +4 -39
- data/rbi/metronome_sdk/models/v1/customer_create_response.rbi +6 -84
- data/rbi/metronome_sdk/models/v1/{customer_list_response.rbi → customer_detail.rbi} +19 -26
- data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +8 -177
- 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/customer_retrieve_response.rbi +6 -255
- data/rbi/metronome_sdk/models/v1/customer_set_name_response.rbi +6 -86
- data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +3 -623
- data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_response.rbi +4 -622
- 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 +12 -8
- data/rbi/metronome_sdk/models/v1/customers/commit_create_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +3 -2164
- data/rbi/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/customers/credit_create_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +3 -1224
- data/rbi/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbi +4 -44
- data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +572 -0
- data/rbi/metronome_sdk/models/v1/customers/{invoice_list_response.rbi → invoice.rbi} +182 -589
- data/rbi/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbi +4 -2561
- data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbi +6 -2612
- data/rbi/metronome_sdk/models/v1/customers/plan_add_response.rbi +4 -41
- data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +4 -39
- data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +5 -0
- data/rbi/metronome_sdk/models/v1/plan_detail.rbi +349 -0
- data/rbi/metronome_sdk/models/v1/plan_get_details_response.rbi +6 -560
- data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +4 -37
- data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +4 -248
- data/rbi/metronome_sdk/models/v1/rollover_amount_max_amount.rbi +79 -0
- data/rbi/metronome_sdk/models/v1/rollover_amount_max_percentage.rbi +80 -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 +23 -23
- data/rbi/metronome_sdk/models/v2/contract_edit_commit_response.rbi +4 -41
- data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +11 -15
- data/rbi/metronome_sdk/models/v2/contract_edit_credit_response.rbi +4 -41
- data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +1859 -202
- data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +4 -37
- data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +700 -1447
- data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +1204 -1472
- data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +1204 -1472
- data/rbi/metronome_sdk/models.rbi +32 -0
- data/rbi/metronome_sdk/resources/v1/alerts.rbi +3 -0
- data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +2 -6
- data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +4 -4
- data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +1 -4
- data/rbi/metronome_sdk/resources/v1/contracts.rbi +10 -4
- data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +4 -0
- data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +6 -4
- data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +1 -1
- data/rbi/metronome_sdk/resources/v1/customers.rbi +34 -3
- data/rbi/metronome_sdk/resources/v1/usage.rbi +17 -0
- data/rbi/metronome_sdk/resources/v2/contracts.rbi +24 -14
- data/sig/metronome_sdk/errors.rbs +9 -0
- data/sig/metronome_sdk/internal/type/converter.rbs +7 -1
- data/sig/metronome_sdk/models/base_usage_filter.rbs +28 -0
- data/sig/metronome_sdk/models/commit.rbs +1020 -0
- data/sig/metronome_sdk/models/contract_without_amendments.rbs +1582 -0
- data/sig/metronome_sdk/models/credit.rbs +643 -0
- data/sig/metronome_sdk/models/credit_type_data.rbs +15 -0
- data/sig/metronome_sdk/models/discount.rbs +63 -0
- data/sig/metronome_sdk/models/event_type_filter.rbs +26 -0
- data/sig/metronome_sdk/models/id.rbs +13 -0
- data/sig/metronome_sdk/models/override.rbs +399 -0
- data/sig/metronome_sdk/models/pro_service.rbs +61 -0
- data/sig/metronome_sdk/models/property_filter.rbs +41 -0
- data/sig/metronome_sdk/models/rate.rbs +94 -0
- data/sig/metronome_sdk/models/schedule_duration.rbs +56 -0
- data/sig/metronome_sdk/models/schedule_point_in_time.rbs +75 -0
- data/sig/metronome_sdk/models/scheduled_charge.rbs +70 -0
- data/sig/metronome_sdk/models/tier.rbs +17 -0
- data/sig/metronome_sdk/models/v1/alert_archive_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/alert_create_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/billable_metric_archive_params.rbs +4 -12
- data/sig/metronome_sdk/models/v1/billable_metric_archive_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/billable_metric_create_params.rbs +12 -73
- data/sig/metronome_sdk/models/v1/billable_metric_create_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/billable_metric_list_response.rbs +12 -73
- data/sig/metronome_sdk/models/v1/billable_metric_retrieve_response.rbs +12 -73
- data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +291 -24
- data/sig/metronome_sdk/models/v1/contract_amend_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/contract_archive_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbs +4 -1291
- data/sig/metronome_sdk/models/v1/contract_create_params.rbs +448 -84
- data/sig/metronome_sdk/models/v1/contract_create_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +1 -1642
- data/sig/metronome_sdk/models/v1/contract_list_response.rbs +188 -10437
- data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +15 -271
- data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +188 -10437
- data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbs +4 -1291
- data/sig/metronome_sdk/models/v1/contract_update_end_date_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/contracts/product_archive_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +8 -82
- data/sig/metronome_sdk/models/v1/contracts/product_create_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/product_list_item_state.rbs +121 -0
- data/sig/metronome_sdk/models/v1/contracts/product_list_response.rbs +16 -466
- data/sig/metronome_sdk/models/v1/contracts/product_retrieve_params.rbs +4 -12
- data/sig/metronome_sdk/models/v1/contracts/product_retrieve_response.rbs +16 -466
- data/sig/metronome_sdk/models/v1/contracts/product_update_params.rbs +8 -82
- data/sig/metronome_sdk/models/v1/contracts/product_update_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/quantity_conversion.rbs +47 -0
- data/sig/metronome_sdk/models/v1/contracts/quantity_rounding.rbs +41 -0
- data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbs +4 -12
- data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/rate_card_create_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/rate_card_list_response.rbs +10 -34
- data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbs +4 -12
- data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +10 -144
- data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbs +10 -34
- data/sig/metronome_sdk/models/v1/contracts/rate_card_update_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +12 -40
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +12 -40
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +18 -58
- data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +10 -144
- data/sig/metronome_sdk/models/v1/credit_grant_create_params.rbs +2 -66
- data/sig/metronome_sdk/models/v1/credit_grant_create_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/credit_grant_edit_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/credit_grant_list_entries_params.rbs +20 -0
- data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +12 -118
- data/sig/metronome_sdk/models/v1/credit_grant_list_response.rbs +16 -140
- data/sig/metronome_sdk/models/v1/credit_grant_void_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/credit_ledger_entry.rbs +52 -0
- data/sig/metronome_sdk/models/v1/customer.rbs +44 -0
- data/sig/metronome_sdk/models/v1/customer_archive_params.rbs +4 -12
- data/sig/metronome_sdk/models/v1/customer_archive_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/customer_create_response.rbs +4 -48
- data/sig/metronome_sdk/models/v1/{customer_list_response.rbs → customer_detail.rbs} +17 -17
- data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbs +12 -73
- 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_response.rbs +4 -112
- data/sig/metronome_sdk/models/v1/customer_set_name_response.rbs +4 -48
- data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +4 -243
- data/sig/metronome_sdk/models/v1/customers/alert_retrieve_response.rbs +4 -247
- data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +7 -0
- data/sig/metronome_sdk/models/v1/customers/commit_create_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +4 -1057
- data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/customers/credit_create_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +4 -596
- data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbs +4 -21
- data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +234 -0
- data/sig/metronome_sdk/models/v1/customers/{invoice_list_response.rbs → invoice.rbs} +147 -305
- data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbs +8 -1278
- data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbs +4 -1294
- data/sig/metronome_sdk/models/v1/customers/plan_add_response.rbs +4 -19
- data/sig/metronome_sdk/models/v1/customers/plan_list_response.rbs +4 -16
- data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +2 -1
- data/sig/metronome_sdk/models/v1/plan_detail.rbs +203 -0
- data/sig/metronome_sdk/models/v1/plan_get_details_response.rbs +4 -267
- data/sig/metronome_sdk/models/v1/plan_list_charges_response.rbs +4 -16
- data/sig/metronome_sdk/models/v1/plan_list_customers_response.rbs +4 -108
- data/sig/metronome_sdk/models/v1/rollover_amount_max_amount.rbs +37 -0
- data/sig/metronome_sdk/models/v1/rollover_amount_max_percentage.rbs +37 -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 +4 -8
- data/sig/metronome_sdk/models/v2/contract_edit_commit_response.rbs +4 -19
- data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +4 -8
- data/sig/metronome_sdk/models/v2/contract_edit_credit_response.rbs +4 -19
- data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +743 -77
- data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +4 -19
- data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +274 -665
- data/sig/metronome_sdk/models/v2/contract_list_response.rbs +567 -759
- data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +567 -759
- data/sig/metronome_sdk/models.rbs +32 -0
- data/sig/metronome_sdk/resources/v1/billable_metrics.rbs +2 -2
- data/sig/metronome_sdk/resources/v1/contracts/products.rbs +4 -4
- data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -1
- data/sig/metronome_sdk/resources/v1/contracts.rbs +3 -1
- data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -0
- data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -1
- data/sig/metronome_sdk/resources/v1/customers.rbs +9 -1
- data/sig/metronome_sdk/resources/v1/usage.rbs +5 -0
- data/sig/metronome_sdk/resources/v2/contracts.rbs +3 -2
- metadata +95 -8
@@ -22,7 +22,8 @@ module MetronomeSDK
|
|
22
22
|
sig { returns(Time) }
|
23
23
|
attr_accessor :starting_at
|
24
24
|
|
25
|
-
# The billing provider configuration associated with a contract.
|
25
|
+
# The billing provider configuration associated with a contract. Provide either an
|
26
|
+
# ID or the provider and delivery method.
|
26
27
|
sig do
|
27
28
|
returns(
|
28
29
|
T.nilable(
|
@@ -101,6 +102,23 @@ module MetronomeSDK
|
|
101
102
|
sig { params(ending_before: Time).void }
|
102
103
|
attr_writer :ending_before
|
103
104
|
|
105
|
+
sig do
|
106
|
+
returns(
|
107
|
+
T.nilable(
|
108
|
+
MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration
|
109
|
+
)
|
110
|
+
)
|
111
|
+
end
|
112
|
+
attr_reader :hierarchy_configuration
|
113
|
+
|
114
|
+
sig do
|
115
|
+
params(
|
116
|
+
hierarchy_configuration:
|
117
|
+
MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::OrHash
|
118
|
+
).void
|
119
|
+
end
|
120
|
+
attr_writer :hierarchy_configuration
|
121
|
+
|
104
122
|
# Defaults to LOWEST_MULTIPLIER, which applies the greatest discount to list
|
105
123
|
# prices automatically. EXPLICIT prioritization requires specifying priorities for
|
106
124
|
# each multiplier; the one with the lowest priority value will be prioritized
|
@@ -175,6 +193,13 @@ module MetronomeSDK
|
|
175
193
|
end
|
176
194
|
attr_writer :prepaid_balance_threshold_configuration
|
177
195
|
|
196
|
+
# Priority of the contract.
|
197
|
+
sig { returns(T.nilable(Float)) }
|
198
|
+
attr_reader :priority
|
199
|
+
|
200
|
+
sig { params(priority: Float).void }
|
201
|
+
attr_writer :priority
|
202
|
+
|
178
203
|
# This field's availability is dependent on your client's configuration.
|
179
204
|
sig do
|
180
205
|
returns(
|
@@ -334,7 +359,7 @@ module MetronomeSDK
|
|
334
359
|
end
|
335
360
|
attr_writer :spend_threshold_configuration
|
336
361
|
|
337
|
-
#
|
362
|
+
# Optional list of
|
338
363
|
# [subscriptions](https://docs.metronome.com/manage-product-access/create-subscription/)
|
339
364
|
# to add to the contract.
|
340
365
|
sig do
|
@@ -385,19 +410,10 @@ module MetronomeSDK
|
|
385
410
|
sig { params(uniqueness_key: String).void }
|
386
411
|
attr_writer :uniqueness_key
|
387
412
|
|
388
|
-
sig
|
389
|
-
returns(
|
390
|
-
T.nilable(MetronomeSDK::V1::ContractCreateParams::UsageFilter)
|
391
|
-
)
|
392
|
-
end
|
413
|
+
sig { returns(T.nilable(MetronomeSDK::BaseUsageFilter)) }
|
393
414
|
attr_reader :usage_filter
|
394
415
|
|
395
|
-
sig
|
396
|
-
params(
|
397
|
-
usage_filter:
|
398
|
-
MetronomeSDK::V1::ContractCreateParams::UsageFilter::OrHash
|
399
|
-
).void
|
400
|
-
end
|
416
|
+
sig { params(usage_filter: MetronomeSDK::BaseUsageFilter::OrHash).void }
|
401
417
|
attr_writer :usage_filter
|
402
418
|
|
403
419
|
sig do
|
@@ -433,6 +449,8 @@ module MetronomeSDK
|
|
433
449
|
MetronomeSDK::V1::ContractCreateParams::Discount::OrHash
|
434
450
|
],
|
435
451
|
ending_before: Time,
|
452
|
+
hierarchy_configuration:
|
453
|
+
MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::OrHash,
|
436
454
|
multiplier_override_prioritization:
|
437
455
|
MetronomeSDK::V1::ContractCreateParams::MultiplierOverridePrioritization::OrSymbol,
|
438
456
|
name: String,
|
@@ -444,6 +462,7 @@ module MetronomeSDK
|
|
444
462
|
],
|
445
463
|
prepaid_balance_threshold_configuration:
|
446
464
|
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::OrHash,
|
465
|
+
priority: Float,
|
447
466
|
professional_services:
|
448
467
|
T::Array[
|
449
468
|
MetronomeSDK::V1::ContractCreateParams::ProfessionalService::OrHash
|
@@ -479,8 +498,7 @@ module MetronomeSDK
|
|
479
498
|
transition:
|
480
499
|
MetronomeSDK::V1::ContractCreateParams::Transition::OrHash,
|
481
500
|
uniqueness_key: String,
|
482
|
-
usage_filter:
|
483
|
-
MetronomeSDK::V1::ContractCreateParams::UsageFilter::OrHash,
|
501
|
+
usage_filter: MetronomeSDK::BaseUsageFilter::OrHash,
|
484
502
|
usage_statement_schedule:
|
485
503
|
MetronomeSDK::V1::ContractCreateParams::UsageStatementSchedule::OrHash,
|
486
504
|
request_options: MetronomeSDK::RequestOptions::OrHash
|
@@ -490,7 +508,8 @@ module MetronomeSDK
|
|
490
508
|
customer_id:,
|
491
509
|
# inclusive contract start time
|
492
510
|
starting_at:,
|
493
|
-
# The billing provider configuration associated with a contract.
|
511
|
+
# The billing provider configuration associated with a contract. Provide either an
|
512
|
+
# ID or the provider and delivery method.
|
494
513
|
billing_provider_configuration: nil,
|
495
514
|
commits: nil,
|
496
515
|
credits: nil,
|
@@ -499,6 +518,7 @@ module MetronomeSDK
|
|
499
518
|
discounts: nil,
|
500
519
|
# exclusive contract end time
|
501
520
|
ending_before: nil,
|
521
|
+
hierarchy_configuration: nil,
|
502
522
|
# Defaults to LOWEST_MULTIPLIER, which applies the greatest discount to list
|
503
523
|
# prices automatically. EXPLICIT prioritization requires specifying priorities for
|
504
524
|
# each multiplier; the one with the lowest priority value will be prioritized
|
@@ -510,6 +530,8 @@ module MetronomeSDK
|
|
510
530
|
netsuite_sales_order_id: nil,
|
511
531
|
overrides: nil,
|
512
532
|
prepaid_balance_threshold_configuration: nil,
|
533
|
+
# Priority of the contract.
|
534
|
+
priority: nil,
|
513
535
|
# This field's availability is dependent on your client's configuration.
|
514
536
|
professional_services: nil,
|
515
537
|
# Selects the rate card linked to the specified alias as of the contract's start
|
@@ -530,7 +552,7 @@ module MetronomeSDK
|
|
530
552
|
# on a separate invoice from usage charges.
|
531
553
|
scheduled_charges_on_usage_invoices: nil,
|
532
554
|
spend_threshold_configuration: nil,
|
533
|
-
#
|
555
|
+
# Optional list of
|
534
556
|
# [subscriptions](https://docs.metronome.com/manage-product-access/create-subscription/)
|
535
557
|
# to add to the contract.
|
536
558
|
subscriptions: nil,
|
@@ -560,6 +582,8 @@ module MetronomeSDK
|
|
560
582
|
discounts:
|
561
583
|
T::Array[MetronomeSDK::V1::ContractCreateParams::Discount],
|
562
584
|
ending_before: Time,
|
585
|
+
hierarchy_configuration:
|
586
|
+
MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration,
|
563
587
|
multiplier_override_prioritization:
|
564
588
|
MetronomeSDK::V1::ContractCreateParams::MultiplierOverridePrioritization::OrSymbol,
|
565
589
|
name: String,
|
@@ -569,6 +593,7 @@ module MetronomeSDK
|
|
569
593
|
T::Array[MetronomeSDK::V1::ContractCreateParams::Override],
|
570
594
|
prepaid_balance_threshold_configuration:
|
571
595
|
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration,
|
596
|
+
priority: Float,
|
572
597
|
professional_services:
|
573
598
|
T::Array[
|
574
599
|
MetronomeSDK::V1::ContractCreateParams::ProfessionalService
|
@@ -601,7 +626,7 @@ module MetronomeSDK
|
|
601
626
|
total_contract_value: Float,
|
602
627
|
transition: MetronomeSDK::V1::ContractCreateParams::Transition,
|
603
628
|
uniqueness_key: String,
|
604
|
-
usage_filter: MetronomeSDK::
|
629
|
+
usage_filter: MetronomeSDK::BaseUsageFilter,
|
605
630
|
usage_statement_schedule:
|
606
631
|
MetronomeSDK::V1::ContractCreateParams::UsageStatementSchedule,
|
607
632
|
request_options: MetronomeSDK::RequestOptions
|
@@ -620,6 +645,7 @@ module MetronomeSDK
|
|
620
645
|
)
|
621
646
|
end
|
622
647
|
|
648
|
+
# Do not specify if using billing_provider_configuration_id.
|
623
649
|
sig do
|
624
650
|
returns(
|
625
651
|
T.nilable(
|
@@ -637,13 +663,16 @@ module MetronomeSDK
|
|
637
663
|
end
|
638
664
|
attr_writer :billing_provider
|
639
665
|
|
640
|
-
# The Metronome ID of the billing provider configuration
|
666
|
+
# The Metronome ID of the billing provider configuration. Use when a customer has
|
667
|
+
# multiple configurations with the same billing provider and delivery method.
|
668
|
+
# Otherwise, specify the billing_provider and delivery_method.
|
641
669
|
sig { returns(T.nilable(String)) }
|
642
670
|
attr_reader :billing_provider_configuration_id
|
643
671
|
|
644
672
|
sig { params(billing_provider_configuration_id: String).void }
|
645
673
|
attr_writer :billing_provider_configuration_id
|
646
674
|
|
675
|
+
# Do not specify if using billing_provider_configuration_id.
|
647
676
|
sig do
|
648
677
|
returns(
|
649
678
|
T.nilable(
|
@@ -661,7 +690,8 @@ module MetronomeSDK
|
|
661
690
|
end
|
662
691
|
attr_writer :delivery_method
|
663
692
|
|
664
|
-
# The billing provider configuration associated with a contract.
|
693
|
+
# The billing provider configuration associated with a contract. Provide either an
|
694
|
+
# ID or the provider and delivery method.
|
665
695
|
sig do
|
666
696
|
params(
|
667
697
|
billing_provider:
|
@@ -672,9 +702,13 @@ module MetronomeSDK
|
|
672
702
|
).returns(T.attached_class)
|
673
703
|
end
|
674
704
|
def self.new(
|
705
|
+
# Do not specify if using billing_provider_configuration_id.
|
675
706
|
billing_provider: nil,
|
676
|
-
# The Metronome ID of the billing provider configuration
|
707
|
+
# The Metronome ID of the billing provider configuration. Use when a customer has
|
708
|
+
# multiple configurations with the same billing provider and delivery method.
|
709
|
+
# Otherwise, specify the billing_provider and delivery_method.
|
677
710
|
billing_provider_configuration_id: nil,
|
711
|
+
# Do not specify if using billing_provider_configuration_id.
|
678
712
|
delivery_method: nil
|
679
713
|
)
|
680
714
|
end
|
@@ -693,6 +727,7 @@ module MetronomeSDK
|
|
693
727
|
def to_hash
|
694
728
|
end
|
695
729
|
|
730
|
+
# Do not specify if using billing_provider_configuration_id.
|
696
731
|
module BillingProvider
|
697
732
|
extend MetronomeSDK::Internal::Type::Enum
|
698
733
|
|
@@ -742,6 +777,7 @@ module MetronomeSDK
|
|
742
777
|
end
|
743
778
|
end
|
744
779
|
|
780
|
+
# Do not specify if using billing_provider_configuration_id.
|
745
781
|
module DeliveryMethod
|
746
782
|
extend MetronomeSDK::Internal::Type::Enum
|
747
783
|
|
@@ -833,16 +869,18 @@ module MetronomeSDK
|
|
833
869
|
sig { params(amount: Float).void }
|
834
870
|
attr_writer :amount
|
835
871
|
|
836
|
-
# Which products the commit applies to. If
|
837
|
-
# applicable_product_tags are not provided, the commit applies to
|
872
|
+
# Which products the commit applies to. If applicable_product_ids,
|
873
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
874
|
+
# all products.
|
838
875
|
sig { returns(T.nilable(T::Array[String])) }
|
839
876
|
attr_reader :applicable_product_ids
|
840
877
|
|
841
878
|
sig { params(applicable_product_ids: T::Array[String]).void }
|
842
879
|
attr_writer :applicable_product_ids
|
843
880
|
|
844
|
-
# Which tags the commit applies to. If
|
845
|
-
# applicable_product_tags are not provided, the commit applies to
|
881
|
+
# Which tags the commit applies to. If applicable_product_ids,
|
882
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
883
|
+
# all products.
|
846
884
|
sig { returns(T.nilable(T::Array[String])) }
|
847
885
|
attr_reader :applicable_product_tags
|
848
886
|
|
@@ -862,6 +900,24 @@ module MetronomeSDK
|
|
862
900
|
sig { params(description: String).void }
|
863
901
|
attr_writer :description
|
864
902
|
|
903
|
+
# Optional configuration for commit hierarchy access control
|
904
|
+
sig do
|
905
|
+
returns(
|
906
|
+
T.nilable(
|
907
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration
|
908
|
+
)
|
909
|
+
)
|
910
|
+
end
|
911
|
+
attr_reader :hierarchy_configuration
|
912
|
+
|
913
|
+
sig do
|
914
|
+
params(
|
915
|
+
hierarchy_configuration:
|
916
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::OrHash
|
917
|
+
).void
|
918
|
+
end
|
919
|
+
attr_writer :hierarchy_configuration
|
920
|
+
|
865
921
|
# Required for "POSTPAID" commits: the true up invoice will be generated at this
|
866
922
|
# time and only one schedule item is allowed; the total must match access_schedule
|
867
923
|
# amount. Optional for "PREPAID" commits: if not provided, this will be a
|
@@ -992,6 +1048,8 @@ module MetronomeSDK
|
|
992
1048
|
applicable_product_tags: T::Array[String],
|
993
1049
|
custom_fields: T::Hash[Symbol, String],
|
994
1050
|
description: String,
|
1051
|
+
hierarchy_configuration:
|
1052
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::OrHash,
|
995
1053
|
invoice_schedule:
|
996
1054
|
MetronomeSDK::V1::ContractCreateParams::Commit::InvoiceSchedule::OrHash,
|
997
1055
|
name: String,
|
@@ -1018,15 +1076,19 @@ module MetronomeSDK
|
|
1018
1076
|
access_schedule: nil,
|
1019
1077
|
# (DEPRECATED) Use access_schedule and invoice_schedule instead.
|
1020
1078
|
amount: nil,
|
1021
|
-
# Which products the commit applies to. If
|
1022
|
-
# applicable_product_tags are not provided, the commit applies to
|
1079
|
+
# Which products the commit applies to. If applicable_product_ids,
|
1080
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
1081
|
+
# all products.
|
1023
1082
|
applicable_product_ids: nil,
|
1024
|
-
# Which tags the commit applies to. If
|
1025
|
-
# applicable_product_tags are not provided, the commit applies to
|
1083
|
+
# Which tags the commit applies to. If applicable_product_ids,
|
1084
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
1085
|
+
# all products.
|
1026
1086
|
applicable_product_tags: nil,
|
1027
1087
|
custom_fields: nil,
|
1028
1088
|
# Used only in UI/API. It is not exposed to end customers.
|
1029
1089
|
description: nil,
|
1090
|
+
# Optional configuration for commit hierarchy access control
|
1091
|
+
hierarchy_configuration: nil,
|
1030
1092
|
# Required for "POSTPAID" commits: the true up invoice will be generated at this
|
1031
1093
|
# time and only one schedule item is allowed; the total must match access_schedule
|
1032
1094
|
# amount. Optional for "PREPAID" commits: if not provided, this will be a
|
@@ -1068,6 +1130,8 @@ module MetronomeSDK
|
|
1068
1130
|
applicable_product_tags: T::Array[String],
|
1069
1131
|
custom_fields: T::Hash[Symbol, String],
|
1070
1132
|
description: String,
|
1133
|
+
hierarchy_configuration:
|
1134
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration,
|
1071
1135
|
invoice_schedule:
|
1072
1136
|
MetronomeSDK::V1::ContractCreateParams::Commit::InvoiceSchedule,
|
1073
1137
|
name: String,
|
@@ -1227,6 +1291,282 @@ module MetronomeSDK
|
|
1227
1291
|
end
|
1228
1292
|
end
|
1229
1293
|
|
1294
|
+
class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
1295
|
+
OrHash =
|
1296
|
+
T.type_alias do
|
1297
|
+
T.any(
|
1298
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration,
|
1299
|
+
MetronomeSDK::Internal::AnyHash
|
1300
|
+
)
|
1301
|
+
end
|
1302
|
+
|
1303
|
+
sig do
|
1304
|
+
returns(
|
1305
|
+
T.any(
|
1306
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll,
|
1307
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone,
|
1308
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
|
1309
|
+
)
|
1310
|
+
)
|
1311
|
+
end
|
1312
|
+
attr_accessor :child_access
|
1313
|
+
|
1314
|
+
# Optional configuration for commit hierarchy access control
|
1315
|
+
sig do
|
1316
|
+
params(
|
1317
|
+
child_access:
|
1318
|
+
T.any(
|
1319
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::OrHash,
|
1320
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::OrHash,
|
1321
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::OrHash
|
1322
|
+
)
|
1323
|
+
).returns(T.attached_class)
|
1324
|
+
end
|
1325
|
+
def self.new(child_access:)
|
1326
|
+
end
|
1327
|
+
|
1328
|
+
sig do
|
1329
|
+
override.returns(
|
1330
|
+
{
|
1331
|
+
child_access:
|
1332
|
+
T.any(
|
1333
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll,
|
1334
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone,
|
1335
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
|
1336
|
+
)
|
1337
|
+
}
|
1338
|
+
)
|
1339
|
+
end
|
1340
|
+
def to_hash
|
1341
|
+
end
|
1342
|
+
|
1343
|
+
module ChildAccess
|
1344
|
+
extend MetronomeSDK::Internal::Type::Union
|
1345
|
+
|
1346
|
+
Variants =
|
1347
|
+
T.type_alias do
|
1348
|
+
T.any(
|
1349
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll,
|
1350
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone,
|
1351
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
|
1352
|
+
)
|
1353
|
+
end
|
1354
|
+
|
1355
|
+
class CommitHierarchyChildAccessAll < MetronomeSDK::Internal::Type::BaseModel
|
1356
|
+
OrHash =
|
1357
|
+
T.type_alias do
|
1358
|
+
T.any(
|
1359
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll,
|
1360
|
+
MetronomeSDK::Internal::AnyHash
|
1361
|
+
)
|
1362
|
+
end
|
1363
|
+
|
1364
|
+
sig do
|
1365
|
+
returns(
|
1366
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::OrSymbol
|
1367
|
+
)
|
1368
|
+
end
|
1369
|
+
attr_accessor :type
|
1370
|
+
|
1371
|
+
sig do
|
1372
|
+
params(
|
1373
|
+
type:
|
1374
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::OrSymbol
|
1375
|
+
).returns(T.attached_class)
|
1376
|
+
end
|
1377
|
+
def self.new(type:)
|
1378
|
+
end
|
1379
|
+
|
1380
|
+
sig do
|
1381
|
+
override.returns(
|
1382
|
+
{
|
1383
|
+
type:
|
1384
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::OrSymbol
|
1385
|
+
}
|
1386
|
+
)
|
1387
|
+
end
|
1388
|
+
def to_hash
|
1389
|
+
end
|
1390
|
+
|
1391
|
+
module Type
|
1392
|
+
extend MetronomeSDK::Internal::Type::Enum
|
1393
|
+
|
1394
|
+
TaggedSymbol =
|
1395
|
+
T.type_alias do
|
1396
|
+
T.all(
|
1397
|
+
Symbol,
|
1398
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type
|
1399
|
+
)
|
1400
|
+
end
|
1401
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
1402
|
+
|
1403
|
+
ALL =
|
1404
|
+
T.let(
|
1405
|
+
:ALL,
|
1406
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::TaggedSymbol
|
1407
|
+
)
|
1408
|
+
|
1409
|
+
sig do
|
1410
|
+
override.returns(
|
1411
|
+
T::Array[
|
1412
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::TaggedSymbol
|
1413
|
+
]
|
1414
|
+
)
|
1415
|
+
end
|
1416
|
+
def self.values
|
1417
|
+
end
|
1418
|
+
end
|
1419
|
+
end
|
1420
|
+
|
1421
|
+
class CommitHierarchyChildAccessNone < MetronomeSDK::Internal::Type::BaseModel
|
1422
|
+
OrHash =
|
1423
|
+
T.type_alias do
|
1424
|
+
T.any(
|
1425
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone,
|
1426
|
+
MetronomeSDK::Internal::AnyHash
|
1427
|
+
)
|
1428
|
+
end
|
1429
|
+
|
1430
|
+
sig do
|
1431
|
+
returns(
|
1432
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::OrSymbol
|
1433
|
+
)
|
1434
|
+
end
|
1435
|
+
attr_accessor :type
|
1436
|
+
|
1437
|
+
sig do
|
1438
|
+
params(
|
1439
|
+
type:
|
1440
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::OrSymbol
|
1441
|
+
).returns(T.attached_class)
|
1442
|
+
end
|
1443
|
+
def self.new(type:)
|
1444
|
+
end
|
1445
|
+
|
1446
|
+
sig do
|
1447
|
+
override.returns(
|
1448
|
+
{
|
1449
|
+
type:
|
1450
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::OrSymbol
|
1451
|
+
}
|
1452
|
+
)
|
1453
|
+
end
|
1454
|
+
def to_hash
|
1455
|
+
end
|
1456
|
+
|
1457
|
+
module Type
|
1458
|
+
extend MetronomeSDK::Internal::Type::Enum
|
1459
|
+
|
1460
|
+
TaggedSymbol =
|
1461
|
+
T.type_alias do
|
1462
|
+
T.all(
|
1463
|
+
Symbol,
|
1464
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type
|
1465
|
+
)
|
1466
|
+
end
|
1467
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
1468
|
+
|
1469
|
+
NONE =
|
1470
|
+
T.let(
|
1471
|
+
:NONE,
|
1472
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::TaggedSymbol
|
1473
|
+
)
|
1474
|
+
|
1475
|
+
sig do
|
1476
|
+
override.returns(
|
1477
|
+
T::Array[
|
1478
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::TaggedSymbol
|
1479
|
+
]
|
1480
|
+
)
|
1481
|
+
end
|
1482
|
+
def self.values
|
1483
|
+
end
|
1484
|
+
end
|
1485
|
+
end
|
1486
|
+
|
1487
|
+
class CommitHierarchyChildAccessContractIDs < MetronomeSDK::Internal::Type::BaseModel
|
1488
|
+
OrHash =
|
1489
|
+
T.type_alias do
|
1490
|
+
T.any(
|
1491
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs,
|
1492
|
+
MetronomeSDK::Internal::AnyHash
|
1493
|
+
)
|
1494
|
+
end
|
1495
|
+
|
1496
|
+
sig { returns(T::Array[String]) }
|
1497
|
+
attr_accessor :contract_ids
|
1498
|
+
|
1499
|
+
sig do
|
1500
|
+
returns(
|
1501
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::OrSymbol
|
1502
|
+
)
|
1503
|
+
end
|
1504
|
+
attr_accessor :type
|
1505
|
+
|
1506
|
+
sig do
|
1507
|
+
params(
|
1508
|
+
contract_ids: T::Array[String],
|
1509
|
+
type:
|
1510
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::OrSymbol
|
1511
|
+
).returns(T.attached_class)
|
1512
|
+
end
|
1513
|
+
def self.new(contract_ids:, type:)
|
1514
|
+
end
|
1515
|
+
|
1516
|
+
sig do
|
1517
|
+
override.returns(
|
1518
|
+
{
|
1519
|
+
contract_ids: T::Array[String],
|
1520
|
+
type:
|
1521
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::OrSymbol
|
1522
|
+
}
|
1523
|
+
)
|
1524
|
+
end
|
1525
|
+
def to_hash
|
1526
|
+
end
|
1527
|
+
|
1528
|
+
module Type
|
1529
|
+
extend MetronomeSDK::Internal::Type::Enum
|
1530
|
+
|
1531
|
+
TaggedSymbol =
|
1532
|
+
T.type_alias do
|
1533
|
+
T.all(
|
1534
|
+
Symbol,
|
1535
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type
|
1536
|
+
)
|
1537
|
+
end
|
1538
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
1539
|
+
|
1540
|
+
CONTRACT_IDS =
|
1541
|
+
T.let(
|
1542
|
+
:CONTRACT_IDS,
|
1543
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::TaggedSymbol
|
1544
|
+
)
|
1545
|
+
|
1546
|
+
sig do
|
1547
|
+
override.returns(
|
1548
|
+
T::Array[
|
1549
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::TaggedSymbol
|
1550
|
+
]
|
1551
|
+
)
|
1552
|
+
end
|
1553
|
+
def self.values
|
1554
|
+
end
|
1555
|
+
end
|
1556
|
+
end
|
1557
|
+
|
1558
|
+
sig do
|
1559
|
+
override.returns(
|
1560
|
+
T::Array[
|
1561
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::HierarchyConfiguration::ChildAccess::Variants
|
1562
|
+
]
|
1563
|
+
)
|
1564
|
+
end
|
1565
|
+
def self.variants
|
1566
|
+
end
|
1567
|
+
end
|
1568
|
+
end
|
1569
|
+
|
1230
1570
|
class InvoiceSchedule < MetronomeSDK::Internal::Type::BaseModel
|
1231
1571
|
OrHash =
|
1232
1572
|
T.type_alias do
|
@@ -1627,7 +1967,25 @@ module MetronomeSDK
|
|
1627
1967
|
end
|
1628
1968
|
attr_accessor :payment_gate_type
|
1629
1969
|
|
1630
|
-
# Only applicable if using
|
1970
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
1971
|
+
sig do
|
1972
|
+
returns(
|
1973
|
+
T.nilable(
|
1974
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::PrecalculatedTaxConfig
|
1975
|
+
)
|
1976
|
+
)
|
1977
|
+
end
|
1978
|
+
attr_reader :precalculated_tax_config
|
1979
|
+
|
1980
|
+
sig do
|
1981
|
+
params(
|
1982
|
+
precalculated_tax_config:
|
1983
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::PrecalculatedTaxConfig::OrHash
|
1984
|
+
).void
|
1985
|
+
end
|
1986
|
+
attr_writer :precalculated_tax_config
|
1987
|
+
|
1988
|
+
# Only applicable if using STRIPE as your payment gate type.
|
1631
1989
|
sig do
|
1632
1990
|
returns(
|
1633
1991
|
T.nilable(
|
@@ -1670,6 +2028,8 @@ module MetronomeSDK
|
|
1670
2028
|
params(
|
1671
2029
|
payment_gate_type:
|
1672
2030
|
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::PaymentGateType::OrSymbol,
|
2031
|
+
precalculated_tax_config:
|
2032
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::PrecalculatedTaxConfig::OrHash,
|
1673
2033
|
stripe_config:
|
1674
2034
|
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::StripeConfig::OrHash,
|
1675
2035
|
tax_type:
|
@@ -1682,7 +2042,9 @@ module MetronomeSDK
|
|
1682
2042
|
# facilitate payment using your own payment integration. Select NONE if you do not
|
1683
2043
|
# wish to payment gate the commit balance.
|
1684
2044
|
payment_gate_type:,
|
1685
|
-
# Only applicable if using
|
2045
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
2046
|
+
precalculated_tax_config: nil,
|
2047
|
+
# Only applicable if using STRIPE as your payment gate type.
|
1686
2048
|
stripe_config: nil,
|
1687
2049
|
# Stripe tax is only supported for Stripe payment gateway. Select NONE if you do
|
1688
2050
|
# not wish Metronome to calculate tax on your behalf. Leaving this field blank
|
@@ -1696,6 +2058,8 @@ module MetronomeSDK
|
|
1696
2058
|
{
|
1697
2059
|
payment_gate_type:
|
1698
2060
|
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::PaymentGateType::OrSymbol,
|
2061
|
+
precalculated_tax_config:
|
2062
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::PrecalculatedTaxConfig,
|
1699
2063
|
stripe_config:
|
1700
2064
|
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::StripeConfig,
|
1701
2065
|
tax_type:
|
@@ -1749,6 +2113,49 @@ module MetronomeSDK
|
|
1749
2113
|
end
|
1750
2114
|
end
|
1751
2115
|
|
2116
|
+
class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
|
2117
|
+
OrHash =
|
2118
|
+
T.type_alias do
|
2119
|
+
T.any(
|
2120
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::PrecalculatedTaxConfig,
|
2121
|
+
MetronomeSDK::Internal::AnyHash
|
2122
|
+
)
|
2123
|
+
end
|
2124
|
+
|
2125
|
+
# Amount of tax to be applied. This should be in the same currency and
|
2126
|
+
# denomination as the commit's invoice schedule
|
2127
|
+
sig { returns(Float) }
|
2128
|
+
attr_accessor :tax_amount
|
2129
|
+
|
2130
|
+
# Name of the tax to be applied. This may be used in an invoice line item
|
2131
|
+
# description.
|
2132
|
+
sig { returns(T.nilable(String)) }
|
2133
|
+
attr_reader :tax_name
|
2134
|
+
|
2135
|
+
sig { params(tax_name: String).void }
|
2136
|
+
attr_writer :tax_name
|
2137
|
+
|
2138
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
2139
|
+
sig do
|
2140
|
+
params(tax_amount: Float, tax_name: String).returns(
|
2141
|
+
T.attached_class
|
2142
|
+
)
|
2143
|
+
end
|
2144
|
+
def self.new(
|
2145
|
+
# Amount of tax to be applied. This should be in the same currency and
|
2146
|
+
# denomination as the commit's invoice schedule
|
2147
|
+
tax_amount:,
|
2148
|
+
# Name of the tax to be applied. This may be used in an invoice line item
|
2149
|
+
# description.
|
2150
|
+
tax_name: nil
|
2151
|
+
)
|
2152
|
+
end
|
2153
|
+
|
2154
|
+
sig { override.returns({ tax_amount: Float, tax_name: String }) }
|
2155
|
+
def to_hash
|
2156
|
+
end
|
2157
|
+
end
|
2158
|
+
|
1752
2159
|
class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
|
1753
2160
|
OrHash =
|
1754
2161
|
T.type_alias do
|
@@ -1766,16 +2173,28 @@ module MetronomeSDK
|
|
1766
2173
|
end
|
1767
2174
|
attr_accessor :payment_type
|
1768
2175
|
|
1769
|
-
#
|
2176
|
+
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
2177
|
+
# your payment type.
|
2178
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
2179
|
+
attr_reader :invoice_metadata
|
2180
|
+
|
2181
|
+
sig { params(invoice_metadata: T::Hash[Symbol, String]).void }
|
2182
|
+
attr_writer :invoice_metadata
|
2183
|
+
|
2184
|
+
# Only applicable if using STRIPE as your payment gate type.
|
1770
2185
|
sig do
|
1771
2186
|
params(
|
1772
2187
|
payment_type:
|
1773
|
-
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol
|
2188
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol,
|
2189
|
+
invoice_metadata: T::Hash[Symbol, String]
|
1774
2190
|
).returns(T.attached_class)
|
1775
2191
|
end
|
1776
2192
|
def self.new(
|
1777
2193
|
# If left blank, will default to INVOICE
|
1778
|
-
payment_type
|
2194
|
+
payment_type:,
|
2195
|
+
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
2196
|
+
# your payment type.
|
2197
|
+
invoice_metadata: nil
|
1779
2198
|
)
|
1780
2199
|
end
|
1781
2200
|
|
@@ -1783,7 +2202,8 @@ module MetronomeSDK
|
|
1783
2202
|
override.returns(
|
1784
2203
|
{
|
1785
2204
|
payment_type:
|
1786
|
-
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol
|
2205
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol,
|
2206
|
+
invoice_metadata: T::Hash[Symbol, String]
|
1787
2207
|
}
|
1788
2208
|
)
|
1789
2209
|
end
|
@@ -1851,6 +2271,16 @@ module MetronomeSDK
|
|
1851
2271
|
:STRIPE,
|
1852
2272
|
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::TaxType::TaggedSymbol
|
1853
2273
|
)
|
2274
|
+
ANROK =
|
2275
|
+
T.let(
|
2276
|
+
:ANROK,
|
2277
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::TaxType::TaggedSymbol
|
2278
|
+
)
|
2279
|
+
PRECALCULATED =
|
2280
|
+
T.let(
|
2281
|
+
:PRECALCULATED,
|
2282
|
+
MetronomeSDK::V1::ContractCreateParams::Commit::PaymentGateConfig::TaxType::TaggedSymbol
|
2283
|
+
)
|
1854
2284
|
|
1855
2285
|
sig do
|
1856
2286
|
override.returns(
|
@@ -2027,6 +2457,24 @@ module MetronomeSDK
|
|
2027
2457
|
sig { params(description: String).void }
|
2028
2458
|
attr_writer :description
|
2029
2459
|
|
2460
|
+
# Optional configuration for credit hierarchy access control
|
2461
|
+
sig do
|
2462
|
+
returns(
|
2463
|
+
T.nilable(
|
2464
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration
|
2465
|
+
)
|
2466
|
+
)
|
2467
|
+
end
|
2468
|
+
attr_reader :hierarchy_configuration
|
2469
|
+
|
2470
|
+
sig do
|
2471
|
+
params(
|
2472
|
+
hierarchy_configuration:
|
2473
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::OrHash
|
2474
|
+
).void
|
2475
|
+
end
|
2476
|
+
attr_writer :hierarchy_configuration
|
2477
|
+
|
2030
2478
|
# displayed on invoices
|
2031
2479
|
sig { returns(T.nilable(String)) }
|
2032
2480
|
attr_reader :name
|
@@ -2100,6 +2548,8 @@ module MetronomeSDK
|
|
2100
2548
|
applicable_product_tags: T::Array[String],
|
2101
2549
|
custom_fields: T::Hash[Symbol, String],
|
2102
2550
|
description: String,
|
2551
|
+
hierarchy_configuration:
|
2552
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::OrHash,
|
2103
2553
|
name: String,
|
2104
2554
|
netsuite_sales_order_id: String,
|
2105
2555
|
priority: Float,
|
@@ -2124,6 +2574,8 @@ module MetronomeSDK
|
|
2124
2574
|
custom_fields: nil,
|
2125
2575
|
# Used only in UI/API. It is not exposed to end customers.
|
2126
2576
|
description: nil,
|
2577
|
+
# Optional configuration for credit hierarchy access control
|
2578
|
+
hierarchy_configuration: nil,
|
2127
2579
|
# displayed on invoices
|
2128
2580
|
name: nil,
|
2129
2581
|
# This field's availability is dependent on your client's configuration.
|
@@ -2150,6 +2602,8 @@ module MetronomeSDK
|
|
2150
2602
|
applicable_product_tags: T::Array[String],
|
2151
2603
|
custom_fields: T::Hash[Symbol, String],
|
2152
2604
|
description: String,
|
2605
|
+
hierarchy_configuration:
|
2606
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration,
|
2153
2607
|
name: String,
|
2154
2608
|
netsuite_sales_order_id: String,
|
2155
2609
|
priority: Float,
|
@@ -2267,6 +2721,282 @@ module MetronomeSDK
|
|
2267
2721
|
end
|
2268
2722
|
end
|
2269
2723
|
|
2724
|
+
class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
2725
|
+
OrHash =
|
2726
|
+
T.type_alias do
|
2727
|
+
T.any(
|
2728
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration,
|
2729
|
+
MetronomeSDK::Internal::AnyHash
|
2730
|
+
)
|
2731
|
+
end
|
2732
|
+
|
2733
|
+
sig do
|
2734
|
+
returns(
|
2735
|
+
T.any(
|
2736
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll,
|
2737
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone,
|
2738
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
|
2739
|
+
)
|
2740
|
+
)
|
2741
|
+
end
|
2742
|
+
attr_accessor :child_access
|
2743
|
+
|
2744
|
+
# Optional configuration for credit hierarchy access control
|
2745
|
+
sig do
|
2746
|
+
params(
|
2747
|
+
child_access:
|
2748
|
+
T.any(
|
2749
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::OrHash,
|
2750
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::OrHash,
|
2751
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::OrHash
|
2752
|
+
)
|
2753
|
+
).returns(T.attached_class)
|
2754
|
+
end
|
2755
|
+
def self.new(child_access:)
|
2756
|
+
end
|
2757
|
+
|
2758
|
+
sig do
|
2759
|
+
override.returns(
|
2760
|
+
{
|
2761
|
+
child_access:
|
2762
|
+
T.any(
|
2763
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll,
|
2764
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone,
|
2765
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
|
2766
|
+
)
|
2767
|
+
}
|
2768
|
+
)
|
2769
|
+
end
|
2770
|
+
def to_hash
|
2771
|
+
end
|
2772
|
+
|
2773
|
+
module ChildAccess
|
2774
|
+
extend MetronomeSDK::Internal::Type::Union
|
2775
|
+
|
2776
|
+
Variants =
|
2777
|
+
T.type_alias do
|
2778
|
+
T.any(
|
2779
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll,
|
2780
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone,
|
2781
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
|
2782
|
+
)
|
2783
|
+
end
|
2784
|
+
|
2785
|
+
class CommitHierarchyChildAccessAll < MetronomeSDK::Internal::Type::BaseModel
|
2786
|
+
OrHash =
|
2787
|
+
T.type_alias do
|
2788
|
+
T.any(
|
2789
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll,
|
2790
|
+
MetronomeSDK::Internal::AnyHash
|
2791
|
+
)
|
2792
|
+
end
|
2793
|
+
|
2794
|
+
sig do
|
2795
|
+
returns(
|
2796
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::OrSymbol
|
2797
|
+
)
|
2798
|
+
end
|
2799
|
+
attr_accessor :type
|
2800
|
+
|
2801
|
+
sig do
|
2802
|
+
params(
|
2803
|
+
type:
|
2804
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::OrSymbol
|
2805
|
+
).returns(T.attached_class)
|
2806
|
+
end
|
2807
|
+
def self.new(type:)
|
2808
|
+
end
|
2809
|
+
|
2810
|
+
sig do
|
2811
|
+
override.returns(
|
2812
|
+
{
|
2813
|
+
type:
|
2814
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::OrSymbol
|
2815
|
+
}
|
2816
|
+
)
|
2817
|
+
end
|
2818
|
+
def to_hash
|
2819
|
+
end
|
2820
|
+
|
2821
|
+
module Type
|
2822
|
+
extend MetronomeSDK::Internal::Type::Enum
|
2823
|
+
|
2824
|
+
TaggedSymbol =
|
2825
|
+
T.type_alias do
|
2826
|
+
T.all(
|
2827
|
+
Symbol,
|
2828
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type
|
2829
|
+
)
|
2830
|
+
end
|
2831
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
2832
|
+
|
2833
|
+
ALL =
|
2834
|
+
T.let(
|
2835
|
+
:ALL,
|
2836
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::TaggedSymbol
|
2837
|
+
)
|
2838
|
+
|
2839
|
+
sig do
|
2840
|
+
override.returns(
|
2841
|
+
T::Array[
|
2842
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::TaggedSymbol
|
2843
|
+
]
|
2844
|
+
)
|
2845
|
+
end
|
2846
|
+
def self.values
|
2847
|
+
end
|
2848
|
+
end
|
2849
|
+
end
|
2850
|
+
|
2851
|
+
class CommitHierarchyChildAccessNone < MetronomeSDK::Internal::Type::BaseModel
|
2852
|
+
OrHash =
|
2853
|
+
T.type_alias do
|
2854
|
+
T.any(
|
2855
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone,
|
2856
|
+
MetronomeSDK::Internal::AnyHash
|
2857
|
+
)
|
2858
|
+
end
|
2859
|
+
|
2860
|
+
sig do
|
2861
|
+
returns(
|
2862
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::OrSymbol
|
2863
|
+
)
|
2864
|
+
end
|
2865
|
+
attr_accessor :type
|
2866
|
+
|
2867
|
+
sig do
|
2868
|
+
params(
|
2869
|
+
type:
|
2870
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::OrSymbol
|
2871
|
+
).returns(T.attached_class)
|
2872
|
+
end
|
2873
|
+
def self.new(type:)
|
2874
|
+
end
|
2875
|
+
|
2876
|
+
sig do
|
2877
|
+
override.returns(
|
2878
|
+
{
|
2879
|
+
type:
|
2880
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::OrSymbol
|
2881
|
+
}
|
2882
|
+
)
|
2883
|
+
end
|
2884
|
+
def to_hash
|
2885
|
+
end
|
2886
|
+
|
2887
|
+
module Type
|
2888
|
+
extend MetronomeSDK::Internal::Type::Enum
|
2889
|
+
|
2890
|
+
TaggedSymbol =
|
2891
|
+
T.type_alias do
|
2892
|
+
T.all(
|
2893
|
+
Symbol,
|
2894
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type
|
2895
|
+
)
|
2896
|
+
end
|
2897
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
2898
|
+
|
2899
|
+
NONE =
|
2900
|
+
T.let(
|
2901
|
+
:NONE,
|
2902
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::TaggedSymbol
|
2903
|
+
)
|
2904
|
+
|
2905
|
+
sig do
|
2906
|
+
override.returns(
|
2907
|
+
T::Array[
|
2908
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::TaggedSymbol
|
2909
|
+
]
|
2910
|
+
)
|
2911
|
+
end
|
2912
|
+
def self.values
|
2913
|
+
end
|
2914
|
+
end
|
2915
|
+
end
|
2916
|
+
|
2917
|
+
class CommitHierarchyChildAccessContractIDs < MetronomeSDK::Internal::Type::BaseModel
|
2918
|
+
OrHash =
|
2919
|
+
T.type_alias do
|
2920
|
+
T.any(
|
2921
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs,
|
2922
|
+
MetronomeSDK::Internal::AnyHash
|
2923
|
+
)
|
2924
|
+
end
|
2925
|
+
|
2926
|
+
sig { returns(T::Array[String]) }
|
2927
|
+
attr_accessor :contract_ids
|
2928
|
+
|
2929
|
+
sig do
|
2930
|
+
returns(
|
2931
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::OrSymbol
|
2932
|
+
)
|
2933
|
+
end
|
2934
|
+
attr_accessor :type
|
2935
|
+
|
2936
|
+
sig do
|
2937
|
+
params(
|
2938
|
+
contract_ids: T::Array[String],
|
2939
|
+
type:
|
2940
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::OrSymbol
|
2941
|
+
).returns(T.attached_class)
|
2942
|
+
end
|
2943
|
+
def self.new(contract_ids:, type:)
|
2944
|
+
end
|
2945
|
+
|
2946
|
+
sig do
|
2947
|
+
override.returns(
|
2948
|
+
{
|
2949
|
+
contract_ids: T::Array[String],
|
2950
|
+
type:
|
2951
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::OrSymbol
|
2952
|
+
}
|
2953
|
+
)
|
2954
|
+
end
|
2955
|
+
def to_hash
|
2956
|
+
end
|
2957
|
+
|
2958
|
+
module Type
|
2959
|
+
extend MetronomeSDK::Internal::Type::Enum
|
2960
|
+
|
2961
|
+
TaggedSymbol =
|
2962
|
+
T.type_alias do
|
2963
|
+
T.all(
|
2964
|
+
Symbol,
|
2965
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type
|
2966
|
+
)
|
2967
|
+
end
|
2968
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
2969
|
+
|
2970
|
+
CONTRACT_IDS =
|
2971
|
+
T.let(
|
2972
|
+
:CONTRACT_IDS,
|
2973
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::TaggedSymbol
|
2974
|
+
)
|
2975
|
+
|
2976
|
+
sig do
|
2977
|
+
override.returns(
|
2978
|
+
T::Array[
|
2979
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::TaggedSymbol
|
2980
|
+
]
|
2981
|
+
)
|
2982
|
+
end
|
2983
|
+
def self.values
|
2984
|
+
end
|
2985
|
+
end
|
2986
|
+
end
|
2987
|
+
|
2988
|
+
sig do
|
2989
|
+
override.returns(
|
2990
|
+
T::Array[
|
2991
|
+
MetronomeSDK::V1::ContractCreateParams::Credit::HierarchyConfiguration::ChildAccess::Variants
|
2992
|
+
]
|
2993
|
+
)
|
2994
|
+
end
|
2995
|
+
def self.variants
|
2996
|
+
end
|
2997
|
+
end
|
2998
|
+
end
|
2999
|
+
|
2270
3000
|
module RateType
|
2271
3001
|
extend MetronomeSDK::Internal::Type::Enum
|
2272
3002
|
|
@@ -2834,6 +3564,81 @@ module MetronomeSDK
|
|
2834
3564
|
end
|
2835
3565
|
end
|
2836
3566
|
|
3567
|
+
class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
|
3568
|
+
OrHash =
|
3569
|
+
T.type_alias do
|
3570
|
+
T.any(
|
3571
|
+
MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration,
|
3572
|
+
MetronomeSDK::Internal::AnyHash
|
3573
|
+
)
|
3574
|
+
end
|
3575
|
+
|
3576
|
+
sig do
|
3577
|
+
returns(
|
3578
|
+
MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::Parent
|
3579
|
+
)
|
3580
|
+
end
|
3581
|
+
attr_reader :parent
|
3582
|
+
|
3583
|
+
sig do
|
3584
|
+
params(
|
3585
|
+
parent:
|
3586
|
+
MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::Parent::OrHash
|
3587
|
+
).void
|
3588
|
+
end
|
3589
|
+
attr_writer :parent
|
3590
|
+
|
3591
|
+
sig do
|
3592
|
+
params(
|
3593
|
+
parent:
|
3594
|
+
MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::Parent::OrHash
|
3595
|
+
).returns(T.attached_class)
|
3596
|
+
end
|
3597
|
+
def self.new(parent:)
|
3598
|
+
end
|
3599
|
+
|
3600
|
+
sig do
|
3601
|
+
override.returns(
|
3602
|
+
{
|
3603
|
+
parent:
|
3604
|
+
MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::Parent
|
3605
|
+
}
|
3606
|
+
)
|
3607
|
+
end
|
3608
|
+
def to_hash
|
3609
|
+
end
|
3610
|
+
|
3611
|
+
class Parent < MetronomeSDK::Internal::Type::BaseModel
|
3612
|
+
OrHash =
|
3613
|
+
T.type_alias do
|
3614
|
+
T.any(
|
3615
|
+
MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::Parent,
|
3616
|
+
MetronomeSDK::Internal::AnyHash
|
3617
|
+
)
|
3618
|
+
end
|
3619
|
+
|
3620
|
+
sig { returns(String) }
|
3621
|
+
attr_accessor :contract_id
|
3622
|
+
|
3623
|
+
sig { returns(String) }
|
3624
|
+
attr_accessor :customer_id
|
3625
|
+
|
3626
|
+
sig do
|
3627
|
+
params(contract_id: String, customer_id: String).returns(
|
3628
|
+
T.attached_class
|
3629
|
+
)
|
3630
|
+
end
|
3631
|
+
def self.new(contract_id:, customer_id:)
|
3632
|
+
end
|
3633
|
+
|
3634
|
+
sig do
|
3635
|
+
override.returns({ contract_id: String, customer_id: String })
|
3636
|
+
end
|
3637
|
+
def to_hash
|
3638
|
+
end
|
3639
|
+
end
|
3640
|
+
end
|
3641
|
+
|
2837
3642
|
# Defaults to LOWEST_MULTIPLIER, which applies the greatest discount to list
|
2838
3643
|
# prices automatically. EXPLICIT prioritization requires specifying priorities for
|
2839
3644
|
# each multiplier; the one with the lowest priority value will be prioritized
|
@@ -3387,25 +4192,10 @@ module MetronomeSDK
|
|
3387
4192
|
attr_writer :quantity
|
3388
4193
|
|
3389
4194
|
# Only set for TIERED rate_type.
|
3390
|
-
sig
|
3391
|
-
returns(
|
3392
|
-
T.nilable(
|
3393
|
-
T::Array[
|
3394
|
-
MetronomeSDK::V1::ContractCreateParams::Override::OverwriteRate::Tier
|
3395
|
-
]
|
3396
|
-
)
|
3397
|
-
)
|
3398
|
-
end
|
4195
|
+
sig { returns(T.nilable(T::Array[MetronomeSDK::Tier])) }
|
3399
4196
|
attr_reader :tiers
|
3400
4197
|
|
3401
|
-
sig
|
3402
|
-
params(
|
3403
|
-
tiers:
|
3404
|
-
T::Array[
|
3405
|
-
MetronomeSDK::V1::ContractCreateParams::Override::OverwriteRate::Tier::OrHash
|
3406
|
-
]
|
3407
|
-
).void
|
3408
|
-
end
|
4198
|
+
sig { params(tiers: T::Array[MetronomeSDK::Tier::OrHash]).void }
|
3409
4199
|
attr_writer :tiers
|
3410
4200
|
|
3411
4201
|
# Required for OVERWRITE type.
|
@@ -3418,10 +4208,7 @@ module MetronomeSDK
|
|
3418
4208
|
is_prorated: T::Boolean,
|
3419
4209
|
price: Float,
|
3420
4210
|
quantity: Float,
|
3421
|
-
tiers:
|
3422
|
-
T::Array[
|
3423
|
-
MetronomeSDK::V1::ContractCreateParams::Override::OverwriteRate::Tier::OrHash
|
3424
|
-
]
|
4211
|
+
tiers: T::Array[MetronomeSDK::Tier::OrHash]
|
3425
4212
|
).returns(T.attached_class)
|
3426
4213
|
end
|
3427
4214
|
def self.new(
|
@@ -3453,10 +4240,7 @@ module MetronomeSDK
|
|
3453
4240
|
is_prorated: T::Boolean,
|
3454
4241
|
price: Float,
|
3455
4242
|
quantity: Float,
|
3456
|
-
tiers:
|
3457
|
-
T::Array[
|
3458
|
-
MetronomeSDK::V1::ContractCreateParams::Override::OverwriteRate::Tier
|
3459
|
-
]
|
4243
|
+
tiers: T::Array[MetronomeSDK::Tier]
|
3460
4244
|
}
|
3461
4245
|
)
|
3462
4246
|
end
|
@@ -3511,35 +4295,6 @@ module MetronomeSDK
|
|
3511
4295
|
def self.values
|
3512
4296
|
end
|
3513
4297
|
end
|
3514
|
-
|
3515
|
-
class Tier < MetronomeSDK::Internal::Type::BaseModel
|
3516
|
-
OrHash =
|
3517
|
-
T.type_alias do
|
3518
|
-
T.any(
|
3519
|
-
MetronomeSDK::V1::ContractCreateParams::Override::OverwriteRate::Tier,
|
3520
|
-
MetronomeSDK::Internal::AnyHash
|
3521
|
-
)
|
3522
|
-
end
|
3523
|
-
|
3524
|
-
sig { returns(Float) }
|
3525
|
-
attr_accessor :price
|
3526
|
-
|
3527
|
-
sig { returns(T.nilable(Float)) }
|
3528
|
-
attr_reader :size
|
3529
|
-
|
3530
|
-
sig { params(size: Float).void }
|
3531
|
-
attr_writer :size
|
3532
|
-
|
3533
|
-
sig do
|
3534
|
-
params(price: Float, size: Float).returns(T.attached_class)
|
3535
|
-
end
|
3536
|
-
def self.new(price:, size: nil)
|
3537
|
-
end
|
3538
|
-
|
3539
|
-
sig { override.returns({ price: Float, size: Float }) }
|
3540
|
-
def to_hash
|
3541
|
-
end
|
3542
|
-
end
|
3543
4298
|
end
|
3544
4299
|
|
3545
4300
|
# Indicates whether the override applies to commit rates or list rates. Can only
|
@@ -3703,6 +4458,14 @@ module MetronomeSDK
|
|
3703
4458
|
sig { returns(Float) }
|
3704
4459
|
attr_accessor :threshold_amount
|
3705
4460
|
|
4461
|
+
# If provided, the threshold, recharge-to amount, and the resulting threshold
|
4462
|
+
# commit amount will be in terms of this credit type instead of the fiat currency.
|
4463
|
+
sig { returns(T.nilable(String)) }
|
4464
|
+
attr_reader :custom_credit_type_id
|
4465
|
+
|
4466
|
+
sig { params(custom_credit_type_id: String).void }
|
4467
|
+
attr_writer :custom_credit_type_id
|
4468
|
+
|
3706
4469
|
sig do
|
3707
4470
|
params(
|
3708
4471
|
commit:
|
@@ -3711,7 +4474,8 @@ module MetronomeSDK
|
|
3711
4474
|
payment_gate_config:
|
3712
4475
|
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::OrHash,
|
3713
4476
|
recharge_to_amount: Float,
|
3714
|
-
threshold_amount: Float
|
4477
|
+
threshold_amount: Float,
|
4478
|
+
custom_credit_type_id: String
|
3715
4479
|
).returns(T.attached_class)
|
3716
4480
|
end
|
3717
4481
|
def self.new(
|
@@ -3725,7 +4489,10 @@ module MetronomeSDK
|
|
3725
4489
|
recharge_to_amount:,
|
3726
4490
|
# Specify the threshold amount for the contract. Each time the contract's prepaid
|
3727
4491
|
# balance lowers to this amount, a threshold charge will be initiated.
|
3728
|
-
threshold_amount
|
4492
|
+
threshold_amount:,
|
4493
|
+
# If provided, the threshold, recharge-to amount, and the resulting threshold
|
4494
|
+
# commit amount will be in terms of this credit type instead of the fiat currency.
|
4495
|
+
custom_credit_type_id: nil
|
3729
4496
|
)
|
3730
4497
|
end
|
3731
4498
|
|
@@ -3738,7 +4505,8 @@ module MetronomeSDK
|
|
3738
4505
|
payment_gate_config:
|
3739
4506
|
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig,
|
3740
4507
|
recharge_to_amount: Float,
|
3741
|
-
threshold_amount: Float
|
4508
|
+
threshold_amount: Float,
|
4509
|
+
custom_credit_type_id: String
|
3742
4510
|
}
|
3743
4511
|
)
|
3744
4512
|
end
|
@@ -3759,17 +4527,18 @@ module MetronomeSDK
|
|
3759
4527
|
sig { returns(String) }
|
3760
4528
|
attr_accessor :product_id
|
3761
4529
|
|
3762
|
-
# Which products the threshold commit applies to. If
|
3763
|
-
#
|
3764
|
-
# products.
|
4530
|
+
# Which products the threshold commit applies to. If applicable_product_ids,
|
4531
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
4532
|
+
# all products.
|
3765
4533
|
sig { returns(T.nilable(T::Array[String])) }
|
3766
4534
|
attr_reader :applicable_product_ids
|
3767
4535
|
|
3768
4536
|
sig { params(applicable_product_ids: T::Array[String]).void }
|
3769
4537
|
attr_writer :applicable_product_ids
|
3770
4538
|
|
3771
|
-
# Which tags the threshold commit applies to. If
|
3772
|
-
# applicable_product_tags are not provided, the commit applies to
|
4539
|
+
# Which tags the threshold commit applies to. If applicable_product_ids,
|
4540
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
4541
|
+
# all products.
|
3773
4542
|
sig { returns(T.nilable(T::Array[String])) }
|
3774
4543
|
attr_reader :applicable_product_tags
|
3775
4544
|
|
@@ -3832,12 +4601,13 @@ module MetronomeSDK
|
|
3832
4601
|
# The commit product that will be used to generate the line item for commit
|
3833
4602
|
# payment.
|
3834
4603
|
product_id:,
|
3835
|
-
# Which products the threshold commit applies to. If
|
3836
|
-
#
|
3837
|
-
# products.
|
4604
|
+
# Which products the threshold commit applies to. If applicable_product_ids,
|
4605
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
4606
|
+
# all products.
|
3838
4607
|
applicable_product_ids: nil,
|
3839
|
-
# Which tags the threshold commit applies to. If
|
3840
|
-
# applicable_product_tags are not provided, the commit applies to
|
4608
|
+
# Which tags the threshold commit applies to. If applicable_product_ids,
|
4609
|
+
# applicable_product_tags or specifiers are not provided, the commit applies to
|
4610
|
+
# all products.
|
3841
4611
|
applicable_product_tags: nil,
|
3842
4612
|
description: nil,
|
3843
4613
|
# Specify the name of the line item for the threshold charge. If left blank, it
|
@@ -3961,7 +4731,25 @@ module MetronomeSDK
|
|
3961
4731
|
end
|
3962
4732
|
attr_accessor :payment_gate_type
|
3963
4733
|
|
3964
|
-
# Only applicable if using
|
4734
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
4735
|
+
sig do
|
4736
|
+
returns(
|
4737
|
+
T.nilable(
|
4738
|
+
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
|
4739
|
+
)
|
4740
|
+
)
|
4741
|
+
end
|
4742
|
+
attr_reader :precalculated_tax_config
|
4743
|
+
|
4744
|
+
sig do
|
4745
|
+
params(
|
4746
|
+
precalculated_tax_config:
|
4747
|
+
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig::OrHash
|
4748
|
+
).void
|
4749
|
+
end
|
4750
|
+
attr_writer :precalculated_tax_config
|
4751
|
+
|
4752
|
+
# Only applicable if using STRIPE as your payment gate type.
|
3965
4753
|
sig do
|
3966
4754
|
returns(
|
3967
4755
|
T.nilable(
|
@@ -4003,6 +4791,8 @@ module MetronomeSDK
|
|
4003
4791
|
params(
|
4004
4792
|
payment_gate_type:
|
4005
4793
|
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PaymentGateType::OrSymbol,
|
4794
|
+
precalculated_tax_config:
|
4795
|
+
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig::OrHash,
|
4006
4796
|
stripe_config:
|
4007
4797
|
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::OrHash,
|
4008
4798
|
tax_type:
|
@@ -4015,7 +4805,9 @@ module MetronomeSDK
|
|
4015
4805
|
# facilitate payment using your own payment integration. Select NONE if you do not
|
4016
4806
|
# wish to payment gate the commit balance.
|
4017
4807
|
payment_gate_type:,
|
4018
|
-
# Only applicable if using
|
4808
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
4809
|
+
precalculated_tax_config: nil,
|
4810
|
+
# Only applicable if using STRIPE as your payment gate type.
|
4019
4811
|
stripe_config: nil,
|
4020
4812
|
# Stripe tax is only supported for Stripe payment gateway. Select NONE if you do
|
4021
4813
|
# not wish Metronome to calculate tax on your behalf. Leaving this field blank
|
@@ -4029,6 +4821,8 @@ module MetronomeSDK
|
|
4029
4821
|
{
|
4030
4822
|
payment_gate_type:
|
4031
4823
|
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PaymentGateType::OrSymbol,
|
4824
|
+
precalculated_tax_config:
|
4825
|
+
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
|
4032
4826
|
stripe_config:
|
4033
4827
|
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig,
|
4034
4828
|
tax_type:
|
@@ -4082,6 +4876,49 @@ module MetronomeSDK
|
|
4082
4876
|
end
|
4083
4877
|
end
|
4084
4878
|
|
4879
|
+
class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
|
4880
|
+
OrHash =
|
4881
|
+
T.type_alias do
|
4882
|
+
T.any(
|
4883
|
+
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
|
4884
|
+
MetronomeSDK::Internal::AnyHash
|
4885
|
+
)
|
4886
|
+
end
|
4887
|
+
|
4888
|
+
# Amount of tax to be applied. This should be in the same currency and
|
4889
|
+
# denomination as the commit's invoice schedule
|
4890
|
+
sig { returns(Float) }
|
4891
|
+
attr_accessor :tax_amount
|
4892
|
+
|
4893
|
+
# Name of the tax to be applied. This may be used in an invoice line item
|
4894
|
+
# description.
|
4895
|
+
sig { returns(T.nilable(String)) }
|
4896
|
+
attr_reader :tax_name
|
4897
|
+
|
4898
|
+
sig { params(tax_name: String).void }
|
4899
|
+
attr_writer :tax_name
|
4900
|
+
|
4901
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
4902
|
+
sig do
|
4903
|
+
params(tax_amount: Float, tax_name: String).returns(
|
4904
|
+
T.attached_class
|
4905
|
+
)
|
4906
|
+
end
|
4907
|
+
def self.new(
|
4908
|
+
# Amount of tax to be applied. This should be in the same currency and
|
4909
|
+
# denomination as the commit's invoice schedule
|
4910
|
+
tax_amount:,
|
4911
|
+
# Name of the tax to be applied. This may be used in an invoice line item
|
4912
|
+
# description.
|
4913
|
+
tax_name: nil
|
4914
|
+
)
|
4915
|
+
end
|
4916
|
+
|
4917
|
+
sig { override.returns({ tax_amount: Float, tax_name: String }) }
|
4918
|
+
def to_hash
|
4919
|
+
end
|
4920
|
+
end
|
4921
|
+
|
4085
4922
|
class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
|
4086
4923
|
OrHash =
|
4087
4924
|
T.type_alias do
|
@@ -4099,16 +4936,28 @@ module MetronomeSDK
|
|
4099
4936
|
end
|
4100
4937
|
attr_accessor :payment_type
|
4101
4938
|
|
4102
|
-
#
|
4939
|
+
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
4940
|
+
# your payment type.
|
4941
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
4942
|
+
attr_reader :invoice_metadata
|
4943
|
+
|
4944
|
+
sig { params(invoice_metadata: T::Hash[Symbol, String]).void }
|
4945
|
+
attr_writer :invoice_metadata
|
4946
|
+
|
4947
|
+
# Only applicable if using STRIPE as your payment gate type.
|
4103
4948
|
sig do
|
4104
4949
|
params(
|
4105
4950
|
payment_type:
|
4106
|
-
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol
|
4951
|
+
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol,
|
4952
|
+
invoice_metadata: T::Hash[Symbol, String]
|
4107
4953
|
).returns(T.attached_class)
|
4108
4954
|
end
|
4109
4955
|
def self.new(
|
4110
4956
|
# If left blank, will default to INVOICE
|
4111
|
-
payment_type
|
4957
|
+
payment_type:,
|
4958
|
+
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
4959
|
+
# your payment type.
|
4960
|
+
invoice_metadata: nil
|
4112
4961
|
)
|
4113
4962
|
end
|
4114
4963
|
|
@@ -4116,7 +4965,8 @@ module MetronomeSDK
|
|
4116
4965
|
override.returns(
|
4117
4966
|
{
|
4118
4967
|
payment_type:
|
4119
|
-
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol
|
4968
|
+
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol,
|
4969
|
+
invoice_metadata: T::Hash[Symbol, String]
|
4120
4970
|
}
|
4121
4971
|
)
|
4122
4972
|
end
|
@@ -4184,6 +5034,16 @@ module MetronomeSDK
|
|
4184
5034
|
:STRIPE,
|
4185
5035
|
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
4186
5036
|
)
|
5037
|
+
ANROK =
|
5038
|
+
T.let(
|
5039
|
+
:ANROK,
|
5040
|
+
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
5041
|
+
)
|
5042
|
+
PRECALCULATED =
|
5043
|
+
T.let(
|
5044
|
+
:PRECALCULATED,
|
5045
|
+
MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
5046
|
+
)
|
4187
5047
|
|
4188
5048
|
sig do
|
4189
5049
|
override.returns(
|
@@ -4634,26 +5494,37 @@ module MetronomeSDK
|
|
4634
5494
|
sig { returns(String) }
|
4635
5495
|
attr_accessor :credit_type_id
|
4636
5496
|
|
4637
|
-
sig { returns(Float) }
|
4638
|
-
attr_accessor :quantity
|
4639
|
-
|
4640
5497
|
sig { returns(Float) }
|
4641
5498
|
attr_accessor :unit_price
|
4642
5499
|
|
5500
|
+
# This field is currently required. Upcoming recurring commit/credit configuration
|
5501
|
+
# options will allow it to be optional.
|
5502
|
+
sig { returns(T.nilable(Float)) }
|
5503
|
+
attr_reader :quantity
|
5504
|
+
|
5505
|
+
sig { params(quantity: Float).void }
|
5506
|
+
attr_writer :quantity
|
5507
|
+
|
4643
5508
|
# The amount of commit to grant.
|
4644
5509
|
sig do
|
4645
5510
|
params(
|
4646
5511
|
credit_type_id: String,
|
4647
|
-
|
4648
|
-
|
5512
|
+
unit_price: Float,
|
5513
|
+
quantity: Float
|
4649
5514
|
).returns(T.attached_class)
|
4650
5515
|
end
|
4651
|
-
def self.new(
|
5516
|
+
def self.new(
|
5517
|
+
credit_type_id:,
|
5518
|
+
unit_price:,
|
5519
|
+
# This field is currently required. Upcoming recurring commit/credit configuration
|
5520
|
+
# options will allow it to be optional.
|
5521
|
+
quantity: nil
|
5522
|
+
)
|
4652
5523
|
end
|
4653
5524
|
|
4654
5525
|
sig do
|
4655
5526
|
override.returns(
|
4656
|
-
{ credit_type_id: String,
|
5527
|
+
{ credit_type_id: String, unit_price: Float, quantity: Float }
|
4657
5528
|
)
|
4658
5529
|
end
|
4659
5530
|
def to_hash
|
@@ -5306,26 +6177,37 @@ module MetronomeSDK
|
|
5306
6177
|
sig { returns(String) }
|
5307
6178
|
attr_accessor :credit_type_id
|
5308
6179
|
|
5309
|
-
sig { returns(Float) }
|
5310
|
-
attr_accessor :quantity
|
5311
|
-
|
5312
6180
|
sig { returns(Float) }
|
5313
6181
|
attr_accessor :unit_price
|
5314
6182
|
|
6183
|
+
# This field is currently required. Upcoming recurring commit/credit configuration
|
6184
|
+
# options will allow it to be optional.
|
6185
|
+
sig { returns(T.nilable(Float)) }
|
6186
|
+
attr_reader :quantity
|
6187
|
+
|
6188
|
+
sig { params(quantity: Float).void }
|
6189
|
+
attr_writer :quantity
|
6190
|
+
|
5315
6191
|
# The amount of commit to grant.
|
5316
6192
|
sig do
|
5317
6193
|
params(
|
5318
6194
|
credit_type_id: String,
|
5319
|
-
|
5320
|
-
|
6195
|
+
unit_price: Float,
|
6196
|
+
quantity: Float
|
5321
6197
|
).returns(T.attached_class)
|
5322
6198
|
end
|
5323
|
-
def self.new(
|
6199
|
+
def self.new(
|
6200
|
+
credit_type_id:,
|
6201
|
+
unit_price:,
|
6202
|
+
# This field is currently required. Upcoming recurring commit/credit configuration
|
6203
|
+
# options will allow it to be optional.
|
6204
|
+
quantity: nil
|
6205
|
+
)
|
5324
6206
|
end
|
5325
6207
|
|
5326
6208
|
sig do
|
5327
6209
|
override.returns(
|
5328
|
-
{ credit_type_id: String,
|
6210
|
+
{ credit_type_id: String, unit_price: Float, quantity: Float }
|
5329
6211
|
)
|
5330
6212
|
end
|
5331
6213
|
def to_hash
|
@@ -6544,7 +7426,25 @@ module MetronomeSDK
|
|
6544
7426
|
end
|
6545
7427
|
attr_accessor :payment_gate_type
|
6546
7428
|
|
6547
|
-
# Only applicable if using
|
7429
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
7430
|
+
sig do
|
7431
|
+
returns(
|
7432
|
+
T.nilable(
|
7433
|
+
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig
|
7434
|
+
)
|
7435
|
+
)
|
7436
|
+
end
|
7437
|
+
attr_reader :precalculated_tax_config
|
7438
|
+
|
7439
|
+
sig do
|
7440
|
+
params(
|
7441
|
+
precalculated_tax_config:
|
7442
|
+
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig::OrHash
|
7443
|
+
).void
|
7444
|
+
end
|
7445
|
+
attr_writer :precalculated_tax_config
|
7446
|
+
|
7447
|
+
# Only applicable if using STRIPE as your payment gate type.
|
6548
7448
|
sig do
|
6549
7449
|
returns(
|
6550
7450
|
T.nilable(
|
@@ -6586,6 +7486,8 @@ module MetronomeSDK
|
|
6586
7486
|
params(
|
6587
7487
|
payment_gate_type:
|
6588
7488
|
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PaymentGateType::OrSymbol,
|
7489
|
+
precalculated_tax_config:
|
7490
|
+
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig::OrHash,
|
6589
7491
|
stripe_config:
|
6590
7492
|
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::OrHash,
|
6591
7493
|
tax_type:
|
@@ -6598,7 +7500,9 @@ module MetronomeSDK
|
|
6598
7500
|
# facilitate payment using your own payment integration. Select NONE if you do not
|
6599
7501
|
# wish to payment gate the commit balance.
|
6600
7502
|
payment_gate_type:,
|
6601
|
-
# Only applicable if using
|
7503
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
7504
|
+
precalculated_tax_config: nil,
|
7505
|
+
# Only applicable if using STRIPE as your payment gate type.
|
6602
7506
|
stripe_config: nil,
|
6603
7507
|
# Stripe tax is only supported for Stripe payment gateway. Select NONE if you do
|
6604
7508
|
# not wish Metronome to calculate tax on your behalf. Leaving this field blank
|
@@ -6612,6 +7516,8 @@ module MetronomeSDK
|
|
6612
7516
|
{
|
6613
7517
|
payment_gate_type:
|
6614
7518
|
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PaymentGateType::OrSymbol,
|
7519
|
+
precalculated_tax_config:
|
7520
|
+
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
|
6615
7521
|
stripe_config:
|
6616
7522
|
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig,
|
6617
7523
|
tax_type:
|
@@ -6665,6 +7571,49 @@ module MetronomeSDK
|
|
6665
7571
|
end
|
6666
7572
|
end
|
6667
7573
|
|
7574
|
+
class PrecalculatedTaxConfig < MetronomeSDK::Internal::Type::BaseModel
|
7575
|
+
OrHash =
|
7576
|
+
T.type_alias do
|
7577
|
+
T.any(
|
7578
|
+
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::PrecalculatedTaxConfig,
|
7579
|
+
MetronomeSDK::Internal::AnyHash
|
7580
|
+
)
|
7581
|
+
end
|
7582
|
+
|
7583
|
+
# Amount of tax to be applied. This should be in the same currency and
|
7584
|
+
# denomination as the commit's invoice schedule
|
7585
|
+
sig { returns(Float) }
|
7586
|
+
attr_accessor :tax_amount
|
7587
|
+
|
7588
|
+
# Name of the tax to be applied. This may be used in an invoice line item
|
7589
|
+
# description.
|
7590
|
+
sig { returns(T.nilable(String)) }
|
7591
|
+
attr_reader :tax_name
|
7592
|
+
|
7593
|
+
sig { params(tax_name: String).void }
|
7594
|
+
attr_writer :tax_name
|
7595
|
+
|
7596
|
+
# Only applicable if using PRECALCULATED as your tax type.
|
7597
|
+
sig do
|
7598
|
+
params(tax_amount: Float, tax_name: String).returns(
|
7599
|
+
T.attached_class
|
7600
|
+
)
|
7601
|
+
end
|
7602
|
+
def self.new(
|
7603
|
+
# Amount of tax to be applied. This should be in the same currency and
|
7604
|
+
# denomination as the commit's invoice schedule
|
7605
|
+
tax_amount:,
|
7606
|
+
# Name of the tax to be applied. This may be used in an invoice line item
|
7607
|
+
# description.
|
7608
|
+
tax_name: nil
|
7609
|
+
)
|
7610
|
+
end
|
7611
|
+
|
7612
|
+
sig { override.returns({ tax_amount: Float, tax_name: String }) }
|
7613
|
+
def to_hash
|
7614
|
+
end
|
7615
|
+
end
|
7616
|
+
|
6668
7617
|
class StripeConfig < MetronomeSDK::Internal::Type::BaseModel
|
6669
7618
|
OrHash =
|
6670
7619
|
T.type_alias do
|
@@ -6682,16 +7631,28 @@ module MetronomeSDK
|
|
6682
7631
|
end
|
6683
7632
|
attr_accessor :payment_type
|
6684
7633
|
|
6685
|
-
#
|
7634
|
+
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
7635
|
+
# your payment type.
|
7636
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
7637
|
+
attr_reader :invoice_metadata
|
7638
|
+
|
7639
|
+
sig { params(invoice_metadata: T::Hash[Symbol, String]).void }
|
7640
|
+
attr_writer :invoice_metadata
|
7641
|
+
|
7642
|
+
# Only applicable if using STRIPE as your payment gate type.
|
6686
7643
|
sig do
|
6687
7644
|
params(
|
6688
7645
|
payment_type:
|
6689
|
-
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol
|
7646
|
+
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol,
|
7647
|
+
invoice_metadata: T::Hash[Symbol, String]
|
6690
7648
|
).returns(T.attached_class)
|
6691
7649
|
end
|
6692
7650
|
def self.new(
|
6693
7651
|
# If left blank, will default to INVOICE
|
6694
|
-
payment_type
|
7652
|
+
payment_type:,
|
7653
|
+
# Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as
|
7654
|
+
# your payment type.
|
7655
|
+
invoice_metadata: nil
|
6695
7656
|
)
|
6696
7657
|
end
|
6697
7658
|
|
@@ -6699,7 +7660,8 @@ module MetronomeSDK
|
|
6699
7660
|
override.returns(
|
6700
7661
|
{
|
6701
7662
|
payment_type:
|
6702
|
-
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol
|
7663
|
+
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::StripeConfig::PaymentType::OrSymbol,
|
7664
|
+
invoice_metadata: T::Hash[Symbol, String]
|
6703
7665
|
}
|
6704
7666
|
)
|
6705
7667
|
end
|
@@ -6767,6 +7729,16 @@ module MetronomeSDK
|
|
6767
7729
|
:STRIPE,
|
6768
7730
|
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
6769
7731
|
)
|
7732
|
+
ANROK =
|
7733
|
+
T.let(
|
7734
|
+
:ANROK,
|
7735
|
+
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
7736
|
+
)
|
7737
|
+
PRECALCULATED =
|
7738
|
+
T.let(
|
7739
|
+
:PRECALCULATED,
|
7740
|
+
MetronomeSDK::V1::ContractCreateParams::SpendThresholdConfiguration::PaymentGateConfig::TaxType::TaggedSymbol
|
7741
|
+
)
|
6770
7742
|
|
6771
7743
|
sig do
|
6772
7744
|
override.returns(
|
@@ -7347,50 +8319,6 @@ module MetronomeSDK
|
|
7347
8319
|
end
|
7348
8320
|
end
|
7349
8321
|
|
7350
|
-
class UsageFilter < MetronomeSDK::Internal::Type::BaseModel
|
7351
|
-
OrHash =
|
7352
|
-
T.type_alias do
|
7353
|
-
T.any(
|
7354
|
-
MetronomeSDK::V1::ContractCreateParams::UsageFilter,
|
7355
|
-
MetronomeSDK::Internal::AnyHash
|
7356
|
-
)
|
7357
|
-
end
|
7358
|
-
|
7359
|
-
sig { returns(String) }
|
7360
|
-
attr_accessor :group_key
|
7361
|
-
|
7362
|
-
sig { returns(T::Array[String]) }
|
7363
|
-
attr_accessor :group_values
|
7364
|
-
|
7365
|
-
sig { returns(T.nilable(Time)) }
|
7366
|
-
attr_reader :starting_at
|
7367
|
-
|
7368
|
-
sig { params(starting_at: Time).void }
|
7369
|
-
attr_writer :starting_at
|
7370
|
-
|
7371
|
-
sig do
|
7372
|
-
params(
|
7373
|
-
group_key: String,
|
7374
|
-
group_values: T::Array[String],
|
7375
|
-
starting_at: Time
|
7376
|
-
).returns(T.attached_class)
|
7377
|
-
end
|
7378
|
-
def self.new(group_key:, group_values:, starting_at: nil)
|
7379
|
-
end
|
7380
|
-
|
7381
|
-
sig do
|
7382
|
-
override.returns(
|
7383
|
-
{
|
7384
|
-
group_key: String,
|
7385
|
-
group_values: T::Array[String],
|
7386
|
-
starting_at: Time
|
7387
|
-
}
|
7388
|
-
)
|
7389
|
-
end
|
7390
|
-
def to_hash
|
7391
|
-
end
|
7392
|
-
end
|
7393
|
-
|
7394
8322
|
class UsageStatementSchedule < MetronomeSDK::Internal::Type::BaseModel
|
7395
8323
|
OrHash =
|
7396
8324
|
T.type_alias do
|