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
data/lib/metronome_sdk/models.rb
CHANGED
@@ -11,16 +11,16 @@ module MetronomeSDK
|
|
11
11
|
mod.constants.each do |name|
|
12
12
|
case mod.const_get(name)
|
13
13
|
in true | false
|
14
|
-
mod.define_sorbet_constant!(:TaggedBoolean) { T.type_alias { T
|
14
|
+
mod.define_sorbet_constant!(:TaggedBoolean) { T.type_alias { T::Boolean } }
|
15
15
|
mod.define_sorbet_constant!(:OrBoolean) { T.type_alias { T::Boolean } }
|
16
16
|
in Integer
|
17
|
-
mod.define_sorbet_constant!(:TaggedInteger) { T.type_alias {
|
17
|
+
mod.define_sorbet_constant!(:TaggedInteger) { T.type_alias { Integer } }
|
18
18
|
mod.define_sorbet_constant!(:OrInteger) { T.type_alias { Integer } }
|
19
19
|
in Float
|
20
|
-
mod.define_sorbet_constant!(:TaggedFloat) { T.type_alias {
|
20
|
+
mod.define_sorbet_constant!(:TaggedFloat) { T.type_alias { Float } }
|
21
21
|
mod.define_sorbet_constant!(:OrFloat) { T.type_alias { Float } }
|
22
22
|
in Symbol
|
23
|
-
mod.define_sorbet_constant!(:TaggedSymbol) { T.type_alias {
|
23
|
+
mod.define_sorbet_constant!(:TaggedSymbol) { T.type_alias { Symbol } }
|
24
24
|
mod.define_sorbet_constant!(:OrSymbol) { T.type_alias { T.any(Symbol, String) } }
|
25
25
|
else
|
26
26
|
end
|
@@ -39,6 +39,38 @@ module MetronomeSDK
|
|
39
39
|
mod.define_sorbet_constant!(const) { T.type_alias { mod.to_sorbet_type } }
|
40
40
|
end
|
41
41
|
|
42
|
+
BaseUsageFilter = MetronomeSDK::Models::BaseUsageFilter
|
43
|
+
|
44
|
+
Commit = MetronomeSDK::Models::Commit
|
45
|
+
|
46
|
+
ContractWithoutAmendments = MetronomeSDK::Models::ContractWithoutAmendments
|
47
|
+
|
48
|
+
Credit = MetronomeSDK::Models::Credit
|
49
|
+
|
50
|
+
CreditTypeData = MetronomeSDK::Models::CreditTypeData
|
51
|
+
|
52
|
+
Discount = MetronomeSDK::Models::Discount
|
53
|
+
|
54
|
+
EventTypeFilter = MetronomeSDK::Models::EventTypeFilter
|
55
|
+
|
56
|
+
ID = MetronomeSDK::Models::ID
|
57
|
+
|
58
|
+
Override = MetronomeSDK::Models::Override
|
59
|
+
|
60
|
+
PropertyFilter = MetronomeSDK::Models::PropertyFilter
|
61
|
+
|
62
|
+
ProService = MetronomeSDK::Models::ProService
|
63
|
+
|
64
|
+
Rate = MetronomeSDK::Models::Rate
|
65
|
+
|
66
|
+
ScheduledCharge = MetronomeSDK::Models::ScheduledCharge
|
67
|
+
|
68
|
+
ScheduleDuration = MetronomeSDK::Models::ScheduleDuration
|
69
|
+
|
70
|
+
SchedulePointInTime = MetronomeSDK::Models::SchedulePointInTime
|
71
|
+
|
72
|
+
Tier = MetronomeSDK::Models::Tier
|
73
|
+
|
42
74
|
V1 = MetronomeSDK::Models::V1
|
43
75
|
|
44
76
|
V2 = MetronomeSDK::Models::V2
|
@@ -21,7 +21,7 @@ module MetronomeSDK
|
|
21
21
|
#
|
22
22
|
# @param credit_grant_type_filters [Array<String>] An array of strings, representing a way to filter the credit grant this alert ap
|
23
23
|
#
|
24
|
-
# @param credit_type_id [String]
|
24
|
+
# @param credit_type_id [String] ID of the credit's currency, defaults to USD. If the specific alert type require
|
25
25
|
#
|
26
26
|
# @param custom_field_filters [Array<MetronomeSDK::Models::V1::AlertCreateParams::CustomFieldFilter>] A list of custom field filters for alert types that support advanced filtering.
|
27
27
|
#
|
@@ -19,11 +19,11 @@ module MetronomeSDK
|
|
19
19
|
#
|
20
20
|
# @param custom_fields [Hash{Symbol=>String}] Custom fields to attach to the billable metric.
|
21
21
|
#
|
22
|
-
# @param event_type_filter [MetronomeSDK::Models::
|
22
|
+
# @param event_type_filter [MetronomeSDK::Models::EventTypeFilter] An optional filtering rule to match the 'event_type' property of an event.
|
23
23
|
#
|
24
24
|
# @param group_keys [Array<Array<String>>] Property names that are used to group usage costs on an invoice. Each entry repr
|
25
25
|
#
|
26
|
-
# @param property_filters [Array<MetronomeSDK::Models::
|
26
|
+
# @param property_filters [Array<MetronomeSDK::Models::PropertyFilter>] A list of filters to match events to this billable metric. Each filter defines a
|
27
27
|
#
|
28
28
|
# @param sql [String] The SQL query associated with the billable metric. This field is mutually exclus
|
29
29
|
#
|
@@ -34,9 +34,9 @@ module MetronomeSDK
|
|
34
34
|
#
|
35
35
|
# @param pricing_group_key [Array<String>] For USAGE products only. If set, pricing for this product will be determined for
|
36
36
|
#
|
37
|
-
# @param quantity_conversion [MetronomeSDK::Models::V1::Contracts::
|
37
|
+
# @param quantity_conversion [MetronomeSDK::Models::V1::Contracts::QuantityConversion, nil] Optional. Only valid for USAGE products. If provided, the quantity will be conve
|
38
38
|
#
|
39
|
-
# @param quantity_rounding [MetronomeSDK::Models::V1::Contracts::
|
39
|
+
# @param quantity_rounding [MetronomeSDK::Models::V1::Contracts::QuantityRounding, nil] Optional. Only valid for USAGE products. If provided, the quantity will be round
|
40
40
|
#
|
41
41
|
# @param tags [Array<String>]
|
42
42
|
#
|
@@ -108,9 +108,9 @@ module MetronomeSDK
|
|
108
108
|
#
|
109
109
|
# @param pricing_group_key [Array<String>] For USAGE products only. If set, pricing for this product will be determined for
|
110
110
|
#
|
111
|
-
# @param quantity_conversion [MetronomeSDK::Models::V1::Contracts::
|
111
|
+
# @param quantity_conversion [MetronomeSDK::Models::V1::Contracts::QuantityConversion, nil] Optional. Only valid for USAGE products. If provided, the quantity will be conve
|
112
112
|
#
|
113
|
-
# @param quantity_rounding [MetronomeSDK::Models::V1::Contracts::
|
113
|
+
# @param quantity_rounding [MetronomeSDK::Models::V1::Contracts::QuantityRounding, nil] Optional. Only valid for USAGE products. If provided, the quantity will be round
|
114
114
|
#
|
115
115
|
# @param tags [Array<String>] If not provided, defaults to product's current tags
|
116
116
|
#
|
@@ -79,7 +79,7 @@ module MetronomeSDK
|
|
79
79
|
#
|
80
80
|
# @param quantity [Float] Default quantity. For SUBSCRIPTION rate_type, this must be >=0.
|
81
81
|
#
|
82
|
-
# @param tiers [Array<MetronomeSDK::Models::
|
82
|
+
# @param tiers [Array<MetronomeSDK::Models::Tier>] Only set for TIERED rate_type.
|
83
83
|
#
|
84
84
|
# @param use_list_prices [Boolean] Only set for PERCENTAGE rate_type. Defaults to false. If true, rate is computed
|
85
85
|
#
|
@@ -18,13 +18,13 @@ module MetronomeSDK
|
|
18
18
|
#
|
19
19
|
# Create a new contract
|
20
20
|
#
|
21
|
-
# @overload create(customer_id:, starting_at:, billing_provider_configuration: nil, commits: nil, credits: nil, custom_fields: nil, discounts: nil, ending_before: nil, multiplier_override_prioritization: nil, name: nil, net_payment_terms_days: nil, netsuite_sales_order_id: nil, overrides: nil, prepaid_balance_threshold_configuration: nil, professional_services: nil, rate_card_alias: nil, rate_card_id: nil, recurring_commits: nil, recurring_credits: nil, reseller_royalties: nil, salesforce_opportunity_id: nil, scheduled_charges: nil, scheduled_charges_on_usage_invoices: nil, spend_threshold_configuration: nil, subscriptions: nil, total_contract_value: nil, transition: nil, uniqueness_key: nil, usage_filter: nil, usage_statement_schedule: nil, request_options: {})
|
21
|
+
# @overload create(customer_id:, starting_at:, billing_provider_configuration: nil, commits: nil, credits: nil, custom_fields: nil, discounts: nil, ending_before: nil, hierarchy_configuration: nil, multiplier_override_prioritization: nil, name: nil, net_payment_terms_days: nil, netsuite_sales_order_id: nil, overrides: nil, prepaid_balance_threshold_configuration: nil, priority: nil, professional_services: nil, rate_card_alias: nil, rate_card_id: nil, recurring_commits: nil, recurring_credits: nil, reseller_royalties: nil, salesforce_opportunity_id: nil, scheduled_charges: nil, scheduled_charges_on_usage_invoices: nil, spend_threshold_configuration: nil, subscriptions: nil, total_contract_value: nil, transition: nil, uniqueness_key: nil, usage_filter: nil, usage_statement_schedule: nil, request_options: {})
|
22
22
|
#
|
23
23
|
# @param customer_id [String]
|
24
24
|
#
|
25
25
|
# @param starting_at [Time] inclusive contract start time
|
26
26
|
#
|
27
|
-
# @param billing_provider_configuration [MetronomeSDK::Models::V1::ContractCreateParams::BillingProviderConfiguration] The billing provider configuration associated with a contract.
|
27
|
+
# @param billing_provider_configuration [MetronomeSDK::Models::V1::ContractCreateParams::BillingProviderConfiguration] The billing provider configuration associated with a contract. Provide either an
|
28
28
|
#
|
29
29
|
# @param commits [Array<MetronomeSDK::Models::V1::ContractCreateParams::Commit>]
|
30
30
|
#
|
@@ -36,6 +36,8 @@ module MetronomeSDK
|
|
36
36
|
#
|
37
37
|
# @param ending_before [Time] exclusive contract end time
|
38
38
|
#
|
39
|
+
# @param hierarchy_configuration [MetronomeSDK::Models::V1::ContractCreateParams::HierarchyConfiguration]
|
40
|
+
#
|
39
41
|
# @param multiplier_override_prioritization [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::MultiplierOverridePrioritization] Defaults to LOWEST_MULTIPLIER, which applies the greatest discount to list price
|
40
42
|
#
|
41
43
|
# @param name [String]
|
@@ -48,6 +50,8 @@ module MetronomeSDK
|
|
48
50
|
#
|
49
51
|
# @param prepaid_balance_threshold_configuration [MetronomeSDK::Models::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration]
|
50
52
|
#
|
53
|
+
# @param priority [Float] Priority of the contract.
|
54
|
+
#
|
51
55
|
# @param professional_services [Array<MetronomeSDK::Models::V1::ContractCreateParams::ProfessionalService>] This field's availability is dependent on your client's configuration.
|
52
56
|
#
|
53
57
|
# @param rate_card_alias [String] Selects the rate card linked to the specified alias as of the contract's start d
|
@@ -68,7 +72,7 @@ module MetronomeSDK
|
|
68
72
|
#
|
69
73
|
# @param spend_threshold_configuration [MetronomeSDK::Models::V1::ContractCreateParams::SpendThresholdConfiguration]
|
70
74
|
#
|
71
|
-
# @param subscriptions [Array<MetronomeSDK::Models::V1::ContractCreateParams::Subscription>]
|
75
|
+
# @param subscriptions [Array<MetronomeSDK::Models::V1::ContractCreateParams::Subscription>] Optional list of [subscriptions](https://docs.metronome.com/manage-product-acces
|
72
76
|
#
|
73
77
|
# @param total_contract_value [Float] This field's availability is dependent on your client's configuration.
|
74
78
|
#
|
@@ -76,7 +80,7 @@ module MetronomeSDK
|
|
76
80
|
#
|
77
81
|
# @param uniqueness_key [String] Prevents the creation of duplicates. If a request to create a record is made wit
|
78
82
|
#
|
79
|
-
# @param usage_filter [MetronomeSDK::Models::
|
83
|
+
# @param usage_filter [MetronomeSDK::Models::BaseUsageFilter]
|
80
84
|
#
|
81
85
|
# @param usage_statement_schedule [MetronomeSDK::Models::V1::ContractCreateParams::UsageStatementSchedule]
|
82
86
|
#
|
@@ -130,10 +130,12 @@ module MetronomeSDK
|
|
130
130
|
# Ledger entries are returned in chronological order. Ledger entries associated
|
131
131
|
# with voided credit grants are not included.
|
132
132
|
#
|
133
|
-
# @overload list_entries(next_page: nil, credit_type_ids: nil, customer_ids: nil, ending_before: nil, starting_on: nil, request_options: {})
|
133
|
+
# @overload list_entries(next_page: nil, sort: nil, credit_type_ids: nil, customer_ids: nil, ending_before: nil, starting_on: nil, request_options: {})
|
134
134
|
#
|
135
135
|
# @param next_page [String] Query param: Cursor that indicates where the next page of results should start.
|
136
136
|
#
|
137
|
+
# @param sort [Symbol, MetronomeSDK::Models::V1::CreditGrantListEntriesParams::Sort] Query param: Ledgers sort order by date, asc or desc. Defaults to asc.
|
138
|
+
#
|
137
139
|
# @param credit_type_ids [Array<String>] Body param: A list of Metronome credit type IDs to fetch ledger entries for. If
|
138
140
|
#
|
139
141
|
# @param customer_ids [Array<String>] Body param: A list of Metronome customer IDs to fetch ledger entries for. If abs
|
@@ -150,7 +152,7 @@ module MetronomeSDK
|
|
150
152
|
# @see MetronomeSDK::Models::V1::CreditGrantListEntriesParams
|
151
153
|
def list_entries(params = {})
|
152
154
|
parsed, options = MetronomeSDK::V1::CreditGrantListEntriesParams.dump_request(params)
|
153
|
-
query_params = [:next_page]
|
155
|
+
query_params = [:next_page, :sort]
|
154
156
|
@client.request(
|
155
157
|
method: :post,
|
156
158
|
path: "v1/credits/listEntries",
|
@@ -24,9 +24,9 @@ module MetronomeSDK
|
|
24
24
|
#
|
25
25
|
# @param applicable_contract_ids [Array<String>] Which contract the commit applies to. If not provided, the commit applies to all
|
26
26
|
#
|
27
|
-
# @param applicable_product_ids [Array<String>] Which products the commit applies to. If
|
27
|
+
# @param applicable_product_ids [Array<String>] Which products the commit applies to. If applicable_product_ids, applicable_prod
|
28
28
|
#
|
29
|
-
# @param applicable_product_tags [Array<String>] Which tags the commit applies to. If
|
29
|
+
# @param applicable_product_tags [Array<String>] Which tags the commit applies to. If applicable*product_ids, applicable_product*
|
30
30
|
#
|
31
31
|
# @param custom_fields [Hash{Symbol=>String}]
|
32
32
|
#
|
@@ -70,7 +70,7 @@ module MetronomeSDK
|
|
70
70
|
#
|
71
71
|
# @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}, nil]
|
72
72
|
#
|
73
|
-
# @return [MetronomeSDK::Internal::CursorPage<MetronomeSDK::Models::V1::Customers::
|
73
|
+
# @return [MetronomeSDK::Internal::CursorPage<MetronomeSDK::Models::V1::Customers::Invoice>]
|
74
74
|
#
|
75
75
|
# @see MetronomeSDK::Models::V1::Customers::InvoiceListParams
|
76
76
|
def list(params)
|
@@ -84,7 +84,7 @@ module MetronomeSDK
|
|
84
84
|
path: ["v1/customers/%1$s/invoices", customer_id],
|
85
85
|
query: parsed,
|
86
86
|
page: MetronomeSDK::Internal::CursorPage,
|
87
|
-
model: MetronomeSDK::
|
87
|
+
model: MetronomeSDK::V1::Customers::Invoice,
|
88
88
|
options: options
|
89
89
|
)
|
90
90
|
end
|
@@ -105,7 +105,7 @@ module MetronomeSDK
|
|
105
105
|
#
|
106
106
|
# @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}, nil]
|
107
107
|
#
|
108
|
-
# @return [MetronomeSDK::Internal::CursorPage<MetronomeSDK::Models::V1::
|
108
|
+
# @return [MetronomeSDK::Internal::CursorPage<MetronomeSDK::Models::V1::CustomerDetail>]
|
109
109
|
#
|
110
110
|
# @see MetronomeSDK::Models::V1::CustomerListParams
|
111
111
|
def list(params = {})
|
@@ -115,7 +115,7 @@ module MetronomeSDK
|
|
115
115
|
path: "v1/customers",
|
116
116
|
query: parsed,
|
117
117
|
page: MetronomeSDK::Internal::CursorPage,
|
118
|
-
model: MetronomeSDK::
|
118
|
+
model: MetronomeSDK::V1::CustomerDetail,
|
119
119
|
options: options
|
120
120
|
)
|
121
121
|
end
|
@@ -217,6 +217,44 @@ module MetronomeSDK
|
|
217
217
|
)
|
218
218
|
end
|
219
219
|
|
220
|
+
# Some parameter documentations has been truncated, see
|
221
|
+
# {MetronomeSDK::Models::V1::CustomerPreviewEventsParams} for more details.
|
222
|
+
#
|
223
|
+
# Preview how a set of events will affect a customer's invoice. Generates a draft
|
224
|
+
# invoice for a customer using their current contract configuration and the
|
225
|
+
# provided events. This is useful for testing how new events will affect the
|
226
|
+
# customer's invoice before they are actually processed.
|
227
|
+
#
|
228
|
+
# @overload preview_events(customer_id:, events:, mode: nil, skip_zero_qty_line_items: nil, request_options: {})
|
229
|
+
#
|
230
|
+
# @param customer_id [String] Path param:
|
231
|
+
#
|
232
|
+
# @param events [Array<MetronomeSDK::Models::V1::CustomerPreviewEventsParams::Event>] Body param:
|
233
|
+
#
|
234
|
+
# @param mode [Symbol, MetronomeSDK::Models::V1::CustomerPreviewEventsParams::Mode] Body param: If set to "replace", the preview will be generated as if those were
|
235
|
+
#
|
236
|
+
# @param skip_zero_qty_line_items [Boolean] Body param: If set, all zero quantity line items will be filtered out of the res
|
237
|
+
#
|
238
|
+
# @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}, nil]
|
239
|
+
#
|
240
|
+
# @return [MetronomeSDK::Models::V1::CustomerPreviewEventsResponse]
|
241
|
+
#
|
242
|
+
# @see MetronomeSDK::Models::V1::CustomerPreviewEventsParams
|
243
|
+
def preview_events(params)
|
244
|
+
parsed, options = MetronomeSDK::V1::CustomerPreviewEventsParams.dump_request(params)
|
245
|
+
customer_id =
|
246
|
+
parsed.delete(:customer_id) do
|
247
|
+
raise ArgumentError.new("missing required path argument #{_1}")
|
248
|
+
end
|
249
|
+
@client.request(
|
250
|
+
method: :post,
|
251
|
+
path: ["v1/customers/%1$s/previewEvents", customer_id],
|
252
|
+
body: parsed,
|
253
|
+
model: MetronomeSDK::Models::V1::CustomerPreviewEventsResponse,
|
254
|
+
options: options
|
255
|
+
)
|
256
|
+
end
|
257
|
+
|
220
258
|
# Sets the ingest aliases for a customer. Ingest aliases can be used in the
|
221
259
|
# `customer_id` field when sending usage events to Metronome. This call is
|
222
260
|
# idempotent. It fully replaces the set of ingest aliases for the given customer.
|
@@ -112,6 +112,31 @@ module MetronomeSDK
|
|
112
112
|
)
|
113
113
|
end
|
114
114
|
|
115
|
+
# For a set of events, look up matched billable metrics and customers by
|
116
|
+
# transaction id. This endpoint looks at transactions that occurred in the last 34
|
117
|
+
# days, and is intended for sampling-based testing workflows. It is heavily rate
|
118
|
+
# limited.
|
119
|
+
#
|
120
|
+
# @overload search(transaction_ids:, request_options: {})
|
121
|
+
#
|
122
|
+
# @param transaction_ids [Array<String>] The transaction IDs of the events to retrieve
|
123
|
+
#
|
124
|
+
# @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}, nil]
|
125
|
+
#
|
126
|
+
# @return [Array<MetronomeSDK::Models::V1::UsageSearchResponseItem>]
|
127
|
+
#
|
128
|
+
# @see MetronomeSDK::Models::V1::UsageSearchParams
|
129
|
+
def search(params)
|
130
|
+
parsed, options = MetronomeSDK::V1::UsageSearchParams.dump_request(params)
|
131
|
+
@client.request(
|
132
|
+
method: :post,
|
133
|
+
path: "v1/events/search",
|
134
|
+
body: parsed,
|
135
|
+
model: MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V1::UsageSearchResponseItem],
|
136
|
+
options: options
|
137
|
+
)
|
138
|
+
end
|
139
|
+
|
115
140
|
# @api private
|
116
141
|
#
|
117
142
|
# @param client [MetronomeSDK::Client]
|
@@ -41,8 +41,8 @@ module MetronomeSDK
|
|
41
41
|
# Some parameter documentations has been truncated, see
|
42
42
|
# {MetronomeSDK::Models::V2::ContractListParams} for more details.
|
43
43
|
#
|
44
|
-
# List all contracts for a customer. New clients should use
|
45
|
-
# than the v1 endpoint.
|
44
|
+
# List all contracts for a customer in chronological order. New clients should use
|
45
|
+
# this endpoint rather than the v1 endpoint.
|
46
46
|
#
|
47
47
|
# @overload list(customer_id:, covering_date: nil, include_archived: nil, include_balance: nil, include_ledgers: nil, starting_at: nil, request_options: {})
|
48
48
|
#
|
@@ -79,7 +79,7 @@ module MetronomeSDK
|
|
79
79
|
#
|
80
80
|
# Edit a contract. Contract editing must be enabled to use this endpoint.
|
81
81
|
#
|
82
|
-
# @overload edit(contract_id:, customer_id:, add_commits: nil, add_credits: nil, add_discounts: nil, add_overrides: nil, add_prepaid_balance_threshold_configuration: nil, add_professional_services: nil, add_recurring_commits: nil, add_recurring_credits: nil, add_reseller_royalties: nil, add_scheduled_charges: nil, add_spend_threshold_configuration: nil, add_subscriptions: nil, allow_contract_ending_before_finalized_invoice: nil, archive_commits: nil, archive_credits: nil, archive_scheduled_charges: nil, remove_overrides: nil, update_commits: nil, update_contract_end_date: nil, update_credits: nil, update_prepaid_balance_threshold_configuration: nil, update_recurring_commits: nil, update_recurring_credits: nil, update_scheduled_charges: nil, update_spend_threshold_configuration: nil, update_subscriptions: nil, request_options: {})
|
82
|
+
# @overload edit(contract_id:, customer_id:, add_commits: nil, add_credits: nil, add_discounts: nil, add_overrides: nil, add_prepaid_balance_threshold_configuration: nil, add_professional_services: nil, add_recurring_commits: nil, add_recurring_credits: nil, add_reseller_royalties: nil, add_scheduled_charges: nil, add_spend_threshold_configuration: nil, add_subscriptions: nil, allow_contract_ending_before_finalized_invoice: nil, archive_commits: nil, archive_credits: nil, archive_scheduled_charges: nil, remove_overrides: nil, update_commits: nil, update_contract_end_date: nil, update_contract_name: nil, update_credits: nil, update_prepaid_balance_threshold_configuration: nil, update_recurring_commits: nil, update_recurring_credits: nil, update_scheduled_charges: nil, update_spend_threshold_configuration: nil, update_subscriptions: nil, request_options: {})
|
83
83
|
#
|
84
84
|
# @param contract_id [String] ID of the contract being edited
|
85
85
|
#
|
@@ -107,7 +107,7 @@ module MetronomeSDK
|
|
107
107
|
#
|
108
108
|
# @param add_spend_threshold_configuration [MetronomeSDK::Models::V2::ContractEditParams::AddSpendThresholdConfiguration]
|
109
109
|
#
|
110
|
-
# @param add_subscriptions [Array<MetronomeSDK::Models::V2::ContractEditParams::AddSubscription>]
|
110
|
+
# @param add_subscriptions [Array<MetronomeSDK::Models::V2::ContractEditParams::AddSubscription>] Optional list of [subscriptions](https://docs.metronome.com/manage-product-acces
|
111
111
|
#
|
112
112
|
# @param allow_contract_ending_before_finalized_invoice [Boolean] If true, allows setting the contract end date earlier than the end_timestamp of
|
113
113
|
#
|
@@ -123,6 +123,8 @@ module MetronomeSDK
|
|
123
123
|
#
|
124
124
|
# @param update_contract_end_date [Time, nil] RFC 3339 timestamp indicating when the contract will end (exclusive).
|
125
125
|
#
|
126
|
+
# @param update_contract_name [String, nil] Value to update the contract name to. If not provided, the contract name will re
|
127
|
+
#
|
126
128
|
# @param update_credits [Array<MetronomeSDK::Models::V2::ContractEditParams::UpdateCredit>]
|
127
129
|
#
|
128
130
|
# @param update_prepaid_balance_threshold_configuration [MetronomeSDK::Models::V2::ContractEditParams::UpdatePrepaidBalanceThresholdConfiguration]
|
@@ -135,7 +137,7 @@ module MetronomeSDK
|
|
135
137
|
#
|
136
138
|
# @param update_spend_threshold_configuration [MetronomeSDK::Models::V2::ContractEditParams::UpdateSpendThresholdConfiguration]
|
137
139
|
#
|
138
|
-
# @param update_subscriptions [Array<MetronomeSDK::Models::V2::ContractEditParams::UpdateSubscription>]
|
140
|
+
# @param update_subscriptions [Array<MetronomeSDK::Models::V2::ContractEditParams::UpdateSubscription>] Optional list of subscriptions to update.
|
139
141
|
#
|
140
142
|
# @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}, nil]
|
141
143
|
#
|
@@ -167,9 +169,9 @@ module MetronomeSDK
|
|
167
169
|
#
|
168
170
|
# @param access_schedule [MetronomeSDK::Models::V2::ContractEditCommitParams::AccessSchedule]
|
169
171
|
#
|
170
|
-
# @param applicable_product_ids [Array<String>, nil] Which products the commit applies to. If
|
172
|
+
# @param applicable_product_ids [Array<String>, nil] Which products the commit applies to. If applicable_product_ids, applicable_prod
|
171
173
|
#
|
172
|
-
# @param applicable_product_tags [Array<String>, nil] Which tags the commit applies to. If
|
174
|
+
# @param applicable_product_tags [Array<String>, nil] Which tags the commit applies to. If applicable*product_ids, applicable_product*
|
173
175
|
#
|
174
176
|
# @param invoice_contract_id [String] ID of contract to use for invoicing
|
175
177
|
#
|
@@ -177,7 +179,7 @@ module MetronomeSDK
|
|
177
179
|
#
|
178
180
|
# @param product_id [String]
|
179
181
|
#
|
180
|
-
# @param specifiers [Array<MetronomeSDK::Models::V2::ContractEditCommitParams::Specifier
|
182
|
+
# @param specifiers [Array<MetronomeSDK::Models::V2::ContractEditCommitParams::Specifier>, nil] List of filters that determine what kind of customer usage draws down a commit o
|
181
183
|
#
|
182
184
|
# @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}, nil]
|
183
185
|
#
|
@@ -215,7 +217,7 @@ module MetronomeSDK
|
|
215
217
|
#
|
216
218
|
# @param product_id [String]
|
217
219
|
#
|
218
|
-
# @param specifiers [Array<MetronomeSDK::Models::V2::ContractEditCreditParams::Specifier
|
220
|
+
# @param specifiers [Array<MetronomeSDK::Models::V2::ContractEditCreditParams::Specifier>, nil] List of filters that determine what kind of customer usage draws down a commit o
|
219
221
|
#
|
220
222
|
# @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}, nil]
|
221
223
|
#
|
data/lib/metronome_sdk.rb
CHANGED
@@ -51,6 +51,23 @@ require_relative "metronome_sdk/internal/transport/base_client"
|
|
51
51
|
require_relative "metronome_sdk/internal/transport/pooled_net_requester"
|
52
52
|
require_relative "metronome_sdk/client"
|
53
53
|
require_relative "metronome_sdk/internal/cursor_page"
|
54
|
+
require_relative "metronome_sdk/models/id"
|
55
|
+
require_relative "metronome_sdk/models/v1/customers/invoice"
|
56
|
+
require_relative "metronome_sdk/models/base_usage_filter"
|
57
|
+
require_relative "metronome_sdk/models/commit"
|
58
|
+
require_relative "metronome_sdk/models/contract_without_amendments"
|
59
|
+
require_relative "metronome_sdk/models/credit"
|
60
|
+
require_relative "metronome_sdk/models/credit_type_data"
|
61
|
+
require_relative "metronome_sdk/models/discount"
|
62
|
+
require_relative "metronome_sdk/models/event_type_filter"
|
63
|
+
require_relative "metronome_sdk/models/override"
|
64
|
+
require_relative "metronome_sdk/models/property_filter"
|
65
|
+
require_relative "metronome_sdk/models/pro_service"
|
66
|
+
require_relative "metronome_sdk/models/rate"
|
67
|
+
require_relative "metronome_sdk/models/scheduled_charge"
|
68
|
+
require_relative "metronome_sdk/models/schedule_duration"
|
69
|
+
require_relative "metronome_sdk/models/schedule_point_in_time"
|
70
|
+
require_relative "metronome_sdk/models/tier"
|
54
71
|
require_relative "metronome_sdk/models/v1/alert_archive_params"
|
55
72
|
require_relative "metronome_sdk/models/v1/alert_archive_response"
|
56
73
|
require_relative "metronome_sdk/models/v1/alert_create_params"
|
@@ -91,12 +108,15 @@ require_relative "metronome_sdk/models/v1/contracts/product_archive_params"
|
|
91
108
|
require_relative "metronome_sdk/models/v1/contracts/product_archive_response"
|
92
109
|
require_relative "metronome_sdk/models/v1/contracts/product_create_params"
|
93
110
|
require_relative "metronome_sdk/models/v1/contracts/product_create_response"
|
111
|
+
require_relative "metronome_sdk/models/v1/contracts/product_list_item_state"
|
94
112
|
require_relative "metronome_sdk/models/v1/contracts/product_list_params"
|
95
113
|
require_relative "metronome_sdk/models/v1/contracts/product_list_response"
|
96
114
|
require_relative "metronome_sdk/models/v1/contracts/product_retrieve_params"
|
97
115
|
require_relative "metronome_sdk/models/v1/contracts/product_retrieve_response"
|
98
116
|
require_relative "metronome_sdk/models/v1/contracts/product_update_params"
|
99
117
|
require_relative "metronome_sdk/models/v1/contracts/product_update_response"
|
118
|
+
require_relative "metronome_sdk/models/v1/contracts/quantity_conversion"
|
119
|
+
require_relative "metronome_sdk/models/v1/contracts/quantity_rounding"
|
100
120
|
require_relative "metronome_sdk/models/v1/contracts/rate_card_archive_params"
|
101
121
|
require_relative "metronome_sdk/models/v1/contracts/rate_card_archive_response"
|
102
122
|
require_relative "metronome_sdk/models/v1/contracts/rate_card_create_params"
|
@@ -137,16 +157,20 @@ require_relative "metronome_sdk/models/v1/credit_grant_list_params"
|
|
137
157
|
require_relative "metronome_sdk/models/v1/credit_grant_list_response"
|
138
158
|
require_relative "metronome_sdk/models/v1/credit_grant_void_params"
|
139
159
|
require_relative "metronome_sdk/models/v1/credit_grant_void_response"
|
160
|
+
require_relative "metronome_sdk/models/v1/credit_ledger_entry"
|
161
|
+
require_relative "metronome_sdk/models/v1/customer"
|
140
162
|
require_relative "metronome_sdk/models/v1/customer_archive_params"
|
141
163
|
require_relative "metronome_sdk/models/v1/customer_archive_response"
|
142
164
|
require_relative "metronome_sdk/models/v1/customer_create_params"
|
143
165
|
require_relative "metronome_sdk/models/v1/customer_create_response"
|
166
|
+
require_relative "metronome_sdk/models/v1/customer_detail"
|
144
167
|
require_relative "metronome_sdk/models/v1/customer_list_billable_metrics_params"
|
145
168
|
require_relative "metronome_sdk/models/v1/customer_list_billable_metrics_response"
|
146
169
|
require_relative "metronome_sdk/models/v1/customer_list_costs_params"
|
147
170
|
require_relative "metronome_sdk/models/v1/customer_list_costs_response"
|
148
171
|
require_relative "metronome_sdk/models/v1/customer_list_params"
|
149
|
-
require_relative "metronome_sdk/models/v1/
|
172
|
+
require_relative "metronome_sdk/models/v1/customer_preview_events_params"
|
173
|
+
require_relative "metronome_sdk/models/v1/customer_preview_events_response"
|
150
174
|
require_relative "metronome_sdk/models/v1/customer_retrieve_params"
|
151
175
|
require_relative "metronome_sdk/models/v1/customer_retrieve_response"
|
152
176
|
require_relative "metronome_sdk/models/v1/customers/alert_list_params"
|
@@ -170,12 +194,12 @@ require_relative "metronome_sdk/models/v1/customers/credit_list_params"
|
|
170
194
|
require_relative "metronome_sdk/models/v1/customers/credit_list_response"
|
171
195
|
require_relative "metronome_sdk/models/v1/customers/credit_update_end_date_params"
|
172
196
|
require_relative "metronome_sdk/models/v1/customers/credit_update_end_date_response"
|
197
|
+
require_relative "metronome_sdk/models/v1/customers/customer_alert"
|
173
198
|
require_relative "metronome_sdk/models/v1/customers/invoice_add_charge_params"
|
174
199
|
require_relative "metronome_sdk/models/v1/customers/invoice_add_charge_response"
|
175
200
|
require_relative "metronome_sdk/models/v1/customers/invoice_list_breakdowns_params"
|
176
201
|
require_relative "metronome_sdk/models/v1/customers/invoice_list_breakdowns_response"
|
177
202
|
require_relative "metronome_sdk/models/v1/customers/invoice_list_params"
|
178
|
-
require_relative "metronome_sdk/models/v1/customers/invoice_list_response"
|
179
203
|
require_relative "metronome_sdk/models/v1/customers/invoice_retrieve_params"
|
180
204
|
require_relative "metronome_sdk/models/v1/customers/invoice_retrieve_response"
|
181
205
|
require_relative "metronome_sdk/models/v1/customers/named_schedule_retrieve_params"
|
@@ -205,6 +229,7 @@ require_relative "metronome_sdk/models/v1/invoice_regenerate_params"
|
|
205
229
|
require_relative "metronome_sdk/models/v1/invoice_regenerate_response"
|
206
230
|
require_relative "metronome_sdk/models/v1/invoice_void_params"
|
207
231
|
require_relative "metronome_sdk/models/v1/invoice_void_response"
|
232
|
+
require_relative "metronome_sdk/models/v1/plan_detail"
|
208
233
|
require_relative "metronome_sdk/models/v1/plan_get_details_params"
|
209
234
|
require_relative "metronome_sdk/models/v1/plan_get_details_response"
|
210
235
|
require_relative "metronome_sdk/models/v1/plan_list_charges_params"
|
@@ -215,6 +240,8 @@ require_relative "metronome_sdk/models/v1/plan_list_params"
|
|
215
240
|
require_relative "metronome_sdk/models/v1/plan_list_response"
|
216
241
|
require_relative "metronome_sdk/models/v1/pricing_unit_list_params"
|
217
242
|
require_relative "metronome_sdk/models/v1/pricing_unit_list_response"
|
243
|
+
require_relative "metronome_sdk/models/v1/rollover_amount_max_amount"
|
244
|
+
require_relative "metronome_sdk/models/v1/rollover_amount_max_percentage"
|
218
245
|
require_relative "metronome_sdk/models/v1/service_list_params"
|
219
246
|
require_relative "metronome_sdk/models/v1/service_list_response"
|
220
247
|
require_relative "metronome_sdk/models/v1/usage_ingest_params"
|
@@ -222,6 +249,8 @@ require_relative "metronome_sdk/models/v1/usage_list_params"
|
|
222
249
|
require_relative "metronome_sdk/models/v1/usage_list_response"
|
223
250
|
require_relative "metronome_sdk/models/v1/usage_list_with_groups_params"
|
224
251
|
require_relative "metronome_sdk/models/v1/usage_list_with_groups_response"
|
252
|
+
require_relative "metronome_sdk/models/v1/usage_search_params"
|
253
|
+
require_relative "metronome_sdk/models/v1/usage_search_response"
|
225
254
|
require_relative "metronome_sdk/models/v2/contract_edit_commit_params"
|
226
255
|
require_relative "metronome_sdk/models/v2/contract_edit_commit_response"
|
227
256
|
require_relative "metronome_sdk/models/v2/contract_edit_credit_params"
|
@@ -8,6 +8,22 @@ module MetronomeSDK
|
|
8
8
|
end
|
9
9
|
|
10
10
|
class ConversionError < MetronomeSDK::Errors::Error
|
11
|
+
sig { returns(T.nilable(StandardError)) }
|
12
|
+
def cause
|
13
|
+
end
|
14
|
+
|
15
|
+
# @api private
|
16
|
+
sig do
|
17
|
+
params(
|
18
|
+
on: T::Class[StandardError],
|
19
|
+
method: Symbol,
|
20
|
+
target: T.anything,
|
21
|
+
value: T.anything,
|
22
|
+
cause: T.nilable(StandardError)
|
23
|
+
).returns(T.attached_class)
|
24
|
+
end
|
25
|
+
def self.new(on:, method:, target:, value:, cause: nil)
|
26
|
+
end
|
11
27
|
end
|
12
28
|
|
13
29
|
class APIError < MetronomeSDK::Errors::Error
|
@@ -15,12 +15,14 @@ module MetronomeSDK
|
|
15
15
|
CoerceState =
|
16
16
|
T.type_alias do
|
17
17
|
{
|
18
|
-
|
18
|
+
translate_names: T::Boolean,
|
19
|
+
strictness: T::Boolean,
|
19
20
|
exactness: {
|
20
21
|
yes: Integer,
|
21
22
|
no: Integer,
|
22
23
|
maybe: Integer
|
23
24
|
},
|
25
|
+
error: T::Class[StandardError],
|
24
26
|
branched: Integer
|
25
27
|
}
|
26
28
|
end
|
@@ -90,6 +92,15 @@ module MetronomeSDK
|
|
90
92
|
def self.type_info(spec)
|
91
93
|
end
|
92
94
|
|
95
|
+
# @api private
|
96
|
+
sig do
|
97
|
+
params(translate_names: T::Boolean).returns(
|
98
|
+
MetronomeSDK::Internal::Type::Converter::CoerceState
|
99
|
+
)
|
100
|
+
end
|
101
|
+
def self.new_coerce_state(translate_names: true)
|
102
|
+
end
|
103
|
+
|
93
104
|
# @api private
|
94
105
|
#
|
95
106
|
# Based on `target`, transform `value` into `target`, to the extent possible:
|
@@ -111,14 +122,11 @@ module MetronomeSDK
|
|
111
122
|
def self.coerce(
|
112
123
|
target,
|
113
124
|
value,
|
114
|
-
# The `strictness` is one of `true`, `false
|
115
|
-
#
|
116
|
-
# targets:
|
125
|
+
# The `strictness` is one of `true`, `false`. This informs the coercion strategy
|
126
|
+
# when we have to decide between multiple possible conversion targets:
|
117
127
|
#
|
118
128
|
# - `true`: the conversion must be exact, with minimum coercion.
|
119
129
|
# - `false`: the conversion can be approximate, with some coercion.
|
120
|
-
# - `:strong`: the conversion must be exact, with no coercion, and raise an error
|
121
|
-
# if not possible.
|
122
130
|
#
|
123
131
|
# The `exactness` is `Hash` with keys being one of `yes`, `no`, or `maybe`. For
|
124
132
|
# any given conversion attempt, the exactness will be updated based on how closely
|
@@ -130,15 +138,7 @@ module MetronomeSDK
|
|
130
138
|
# - `no`: the value cannot be converted to the target type.
|
131
139
|
#
|
132
140
|
# See implementation below for more details.
|
133
|
-
state:
|
134
|
-
strictness: true,
|
135
|
-
exactness: {
|
136
|
-
yes: 0,
|
137
|
-
no: 0,
|
138
|
-
maybe: 0
|
139
|
-
},
|
140
|
-
branched: 0
|
141
|
-
}
|
141
|
+
state: MetronomeSDK::Internal::Type::Converter.new_coerce_state
|
142
142
|
)
|
143
143
|
end
|
144
144
|
|
@@ -78,6 +78,11 @@ module MetronomeSDK
|
|
78
78
|
end
|
79
79
|
|
80
80
|
# @api private
|
81
|
+
#
|
82
|
+
# Tries to efficiently coerce the given value to one of the known variants.
|
83
|
+
#
|
84
|
+
# If the value cannot match any of the known variants, the coercion is considered
|
85
|
+
# non-viable and returns the original value.
|
81
86
|
sig do
|
82
87
|
override
|
83
88
|
.params(
|