metronome-sdk 0.3.0 → 1.0.0

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.
Files changed (308) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +36 -0
  3. data/README.md +9 -9
  4. data/lib/metronome_sdk/internal/body_cursor_page.rb +86 -0
  5. data/lib/metronome_sdk/internal/cursor_page_without_limit.rb +86 -0
  6. data/lib/metronome_sdk/internal/transport/base_client.rb +1 -4
  7. data/lib/metronome_sdk/internal/transport/pooled_net_requester.rb +1 -9
  8. data/lib/metronome_sdk/internal/type/base_model.rb +6 -13
  9. data/lib/metronome_sdk/internal/type/union.rb +11 -0
  10. data/lib/metronome_sdk/internal/util.rb +1 -1
  11. data/lib/metronome_sdk/models/base_threshold_commit.rb +36 -0
  12. data/lib/metronome_sdk/models/commit.rb +26 -170
  13. data/lib/metronome_sdk/models/commit_hierarchy_configuration.rb +98 -0
  14. data/lib/metronome_sdk/models/commit_rate.rb +48 -0
  15. data/lib/metronome_sdk/models/commit_specifier.rb +42 -0
  16. data/lib/metronome_sdk/models/commit_specifier_input.rb +42 -0
  17. data/lib/metronome_sdk/models/contract.rb +404 -0
  18. data/lib/metronome_sdk/models/contract_v2.rb +2919 -0
  19. data/lib/metronome_sdk/models/contract_without_amendments.rb +36 -1126
  20. data/lib/metronome_sdk/models/credit.rb +9 -156
  21. data/lib/metronome_sdk/models/discount.rb +2 -1
  22. data/lib/metronome_sdk/models/hierarchy_configuration.rb +76 -0
  23. data/lib/metronome_sdk/models/override.rb +6 -101
  24. data/lib/metronome_sdk/models/override_tier.rb +21 -0
  25. data/lib/metronome_sdk/models/overwrite_rate.rb +82 -0
  26. data/lib/metronome_sdk/models/payment_gate_config.rb +149 -0
  27. data/lib/metronome_sdk/models/payment_gate_config_v2.rb +149 -0
  28. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration.rb +100 -0
  29. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +102 -0
  30. data/lib/metronome_sdk/models/pro_service.rb +2 -1
  31. data/lib/metronome_sdk/models/recurring_commit_subscription_config.rb +51 -0
  32. data/lib/metronome_sdk/models/scheduled_charge.rb +2 -1
  33. data/lib/metronome_sdk/models/spend_threshold_configuration.rb +44 -0
  34. data/lib/metronome_sdk/models/spend_threshold_configuration_v2.rb +44 -0
  35. data/lib/metronome_sdk/models/subscription.rb +227 -0
  36. data/lib/metronome_sdk/models/update_base_threshold_commit.rb +36 -0
  37. data/lib/metronome_sdk/models/v1/alert_create_params.rb +4 -6
  38. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +1 -2
  39. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +3 -3
  40. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +4 -7
  41. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +57 -411
  42. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_params.rb +7 -16
  43. data/lib/metronome_sdk/models/v1/contract_create_params.rb +236 -1478
  44. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +6 -23
  45. data/lib/metronome_sdk/models/v1/contract_list_response.rb +3 -1153
  46. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rb +2 -6
  47. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +5 -50
  48. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +3 -1154
  49. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb +1 -3
  50. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +2 -1
  51. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +8 -1
  52. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +8 -1
  53. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +1 -4
  54. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_params.rb +4 -7
  55. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +10 -1
  56. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rb +2 -6
  57. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +5 -50
  58. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +10 -1
  59. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_params.rb +1 -3
  60. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rb +1 -3
  61. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +6 -61
  62. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +3 -49
  63. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +4 -51
  64. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rb +2 -6
  65. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +5 -49
  66. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +103 -123
  67. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +3 -5
  68. data/lib/metronome_sdk/models/v1/custom_field_list_keys_params.rb +1 -3
  69. data/lib/metronome_sdk/models/v1/custom_field_list_keys_response.rb +41 -58
  70. data/lib/metronome_sdk/models/v1/custom_field_set_values_params.rb +5 -1
  71. data/lib/metronome_sdk/models/v1/customer.rb +2 -1
  72. data/lib/metronome_sdk/models/v1/customer_create_params.rb +37 -11
  73. data/lib/metronome_sdk/models/v1/customer_detail.rb +2 -1
  74. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +3 -3
  75. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +1 -3
  76. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rb +28 -0
  77. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb +128 -0
  78. data/lib/metronome_sdk/models/v1/customer_set_billing_configurations_params.rb +143 -0
  79. data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +1 -3
  80. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +30 -1
  81. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +2 -0
  82. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +2 -0
  83. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +10 -60
  84. data/lib/metronome_sdk/models/v1/customers/credit_create_params.rb +6 -48
  85. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +8 -16
  86. data/lib/metronome_sdk/models/v1/customers/invoice.rb +61 -48
  87. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rb +1 -4
  88. data/lib/metronome_sdk/models/v1/customers/plan_add_params.rb +2 -6
  89. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +2 -1
  90. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +4 -11
  91. data/lib/metronome_sdk/models/v1/plan_detail.rb +9 -5
  92. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +2 -1
  93. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +2 -1
  94. data/lib/metronome_sdk/models/v1/plan_list_response.rb +5 -1
  95. data/lib/metronome_sdk/models/v1/usage_ingest_params.rb +1 -4
  96. data/lib/metronome_sdk/models/v1/usage_list_params.rb +1 -3
  97. data/lib/metronome_sdk/models/v1/usage_list_response.rb +45 -62
  98. data/lib/metronome_sdk/models/v1/usage_search_response.rb +4 -7
  99. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +29 -58
  100. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +26 -49
  101. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +414 -2310
  102. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +337 -2424
  103. data/lib/metronome_sdk/models/v2/contract_list_response.rb +3 -4520
  104. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +3 -4528
  105. data/lib/metronome_sdk/models.rb +38 -0
  106. data/lib/metronome_sdk/resources/v1/alerts.rb +72 -2
  107. data/lib/metronome_sdk/resources/v1/audit_logs.rb +39 -4
  108. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +54 -4
  109. data/lib/metronome_sdk/resources/v1/contracts/products.rb +25 -6
  110. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rb +7 -2
  111. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +10 -2
  112. data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +109 -10
  113. data/lib/metronome_sdk/resources/v1/contracts.rb +254 -18
  114. data/lib/metronome_sdk/resources/v1/credit_grants.rb +2 -1
  115. data/lib/metronome_sdk/resources/v1/custom_fields.rb +51 -14
  116. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +103 -8
  117. data/lib/metronome_sdk/resources/v1/customers/commits.rb +119 -9
  118. data/lib/metronome_sdk/resources/v1/customers/credits.rb +104 -8
  119. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +124 -8
  120. data/lib/metronome_sdk/resources/v1/customers.rb +169 -12
  121. data/lib/metronome_sdk/resources/v1/dashboards.rb +29 -3
  122. data/lib/metronome_sdk/resources/v1/invoices.rb +23 -2
  123. data/lib/metronome_sdk/resources/v1/pricing_units.rb +6 -1
  124. data/lib/metronome_sdk/resources/v1/services.rb +6 -4
  125. data/lib/metronome_sdk/resources/v1/usage.rb +185 -12
  126. data/lib/metronome_sdk/resources/v2/contracts.rb +114 -18
  127. data/lib/metronome_sdk/version.rb +1 -1
  128. data/lib/metronome_sdk.rb +24 -3
  129. data/rbi/metronome_sdk/errors.rbi +2 -2
  130. data/rbi/metronome_sdk/internal/body_cursor_page.rbi +22 -0
  131. data/rbi/metronome_sdk/internal/cursor_page_without_limit.rbi +22 -0
  132. data/rbi/metronome_sdk/models/base_threshold_commit.rbi +58 -0
  133. data/rbi/metronome_sdk/models/commit.rbi +26 -348
  134. data/rbi/metronome_sdk/models/commit_hierarchy_configuration.rbi +280 -0
  135. data/rbi/metronome_sdk/models/commit_rate.rbi +85 -0
  136. data/rbi/metronome_sdk/models/commit_specifier.rbi +71 -0
  137. data/rbi/metronome_sdk/models/commit_specifier_input.rbi +74 -0
  138. data/rbi/metronome_sdk/models/contract.rbi +768 -0
  139. data/rbi/metronome_sdk/models/contract_v2.rbi +5822 -0
  140. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +184 -2507
  141. data/rbi/metronome_sdk/models/credit.rbi +10 -348
  142. data/rbi/metronome_sdk/models/discount.rbi +2 -0
  143. data/rbi/metronome_sdk/models/hierarchy_configuration.rbi +180 -0
  144. data/rbi/metronome_sdk/models/override.rbi +8 -193
  145. data/rbi/metronome_sdk/models/override_tier.rbi +29 -0
  146. data/rbi/metronome_sdk/models/overwrite_rate.rbi +137 -0
  147. data/rbi/metronome_sdk/models/payment_gate_config.rbi +312 -0
  148. data/rbi/metronome_sdk/models/payment_gate_config_v2.rbi +321 -0
  149. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration.rbi +183 -0
  150. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +188 -0
  151. data/rbi/metronome_sdk/models/pro_service.rbi +2 -0
  152. data/rbi/metronome_sdk/models/recurring_commit_subscription_config.rbi +125 -0
  153. data/rbi/metronome_sdk/models/scheduled_charge.rbi +2 -0
  154. data/rbi/metronome_sdk/models/spend_threshold_configuration.rbi +76 -0
  155. data/rbi/metronome_sdk/models/spend_threshold_configuration_v2.rbi +78 -0
  156. data/rbi/metronome_sdk/models/subscription.rbi +460 -0
  157. data/rbi/metronome_sdk/models/update_base_threshold_commit.rbi +61 -0
  158. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +6 -3
  159. data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +2 -0
  160. data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +2 -0
  161. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +44 -768
  162. data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_params.rbi +2 -0
  163. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1550 -4079
  164. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +8 -59
  165. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +5 -2420
  166. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +6 -129
  167. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +4 -2419
  168. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +2 -0
  169. data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +2 -0
  170. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +2 -0
  171. data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_params.rbi +2 -0
  172. data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +2 -0
  173. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +6 -129
  174. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +2 -0
  175. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +4 -129
  176. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +4 -129
  177. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +4 -129
  178. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +6 -129
  179. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +147 -198
  180. data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +2 -0
  181. data/rbi/metronome_sdk/models/v1/custom_field_list_keys_response.rbi +117 -165
  182. data/rbi/metronome_sdk/models/v1/custom_field_set_values_params.rbi +8 -1
  183. data/rbi/metronome_sdk/models/v1/customer.rbi +2 -0
  184. data/rbi/metronome_sdk/models/v1/customer_create_params.rbi +88 -3
  185. data/rbi/metronome_sdk/models/v1/customer_detail.rbi +2 -0
  186. data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +2 -0
  187. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rbi +51 -0
  188. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbi +265 -0
  189. data/rbi/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbi +348 -0
  190. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +60 -0
  191. data/rbi/metronome_sdk/models/v1/customers/billing_config_create_params.rbi +10 -0
  192. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +10 -0
  193. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +6 -90
  194. data/rbi/metronome_sdk/models/v1/customers/credit_create_params.rbi +6 -90
  195. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +6 -3
  196. data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +70 -10
  197. data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +2 -0
  198. data/rbi/metronome_sdk/models/v1/plan_detail.rbi +2 -0
  199. data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +2 -0
  200. data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +2 -0
  201. data/rbi/metronome_sdk/models/v1/plan_list_response.rbi +8 -1
  202. data/rbi/metronome_sdk/models/v1/usage_list_response.rbi +45 -86
  203. data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +2 -0
  204. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +56 -76
  205. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +56 -76
  206. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +3419 -7270
  207. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1140 -6062
  208. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +5 -9867
  209. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +6 -9866
  210. data/rbi/metronome_sdk/models.rbi +44 -0
  211. data/rbi/metronome_sdk/resources/v1/alerts.rbi +72 -2
  212. data/rbi/metronome_sdk/resources/v1/audit_logs.rbi +39 -4
  213. data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +54 -4
  214. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +25 -5
  215. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rbi +7 -2
  216. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +10 -3
  217. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards.rbi +109 -9
  218. data/rbi/metronome_sdk/resources/v1/contracts.rbi +257 -16
  219. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +5 -1
  220. data/rbi/metronome_sdk/resources/v1/custom_fields.rbi +57 -14
  221. data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +108 -5
  222. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +119 -10
  223. data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +104 -9
  224. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +123 -7
  225. data/rbi/metronome_sdk/resources/v1/customers.rbi +156 -11
  226. data/rbi/metronome_sdk/resources/v1/dashboards.rbi +29 -3
  227. data/rbi/metronome_sdk/resources/v1/invoices.rbi +23 -2
  228. data/rbi/metronome_sdk/resources/v1/pricing_units.rbi +6 -1
  229. data/rbi/metronome_sdk/resources/v1/services.rbi +6 -4
  230. data/rbi/metronome_sdk/resources/v1/usage.rbi +188 -12
  231. data/rbi/metronome_sdk/resources/v2/contracts.rbi +120 -23
  232. data/sig/metronome_sdk/internal/body_cursor_page.rbs +13 -0
  233. data/sig/metronome_sdk/internal/cursor_page_without_limit.rbs +13 -0
  234. data/sig/metronome_sdk/models/base_threshold_commit.rbs +26 -0
  235. data/sig/metronome_sdk/models/commit.rbs +17 -170
  236. data/sig/metronome_sdk/models/commit_hierarchy_configuration.rbs +117 -0
  237. data/sig/metronome_sdk/models/commit_rate.rbs +48 -0
  238. data/sig/metronome_sdk/models/commit_specifier.rbs +47 -0
  239. data/sig/metronome_sdk/models/commit_specifier_input.rbs +47 -0
  240. data/sig/metronome_sdk/models/contract.rbs +398 -0
  241. data/sig/metronome_sdk/models/contract_v2.rbs +2881 -0
  242. data/sig/metronome_sdk/models/contract_without_amendments.rbs +54 -976
  243. data/sig/metronome_sdk/models/credit.rbs +12 -170
  244. data/sig/metronome_sdk/models/hierarchy_configuration.rbs +71 -0
  245. data/sig/metronome_sdk/models/override.rbs +12 -101
  246. data/sig/metronome_sdk/models/override_tier.rbs +17 -0
  247. data/sig/metronome_sdk/models/overwrite_rate.rbs +78 -0
  248. data/sig/metronome_sdk/models/payment_gate_config.rbs +123 -0
  249. data/sig/metronome_sdk/models/payment_gate_config_v2.rbs +123 -0
  250. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration.rbs +82 -0
  251. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbs +82 -0
  252. data/sig/metronome_sdk/models/recurring_commit_subscription_config.rbs +51 -0
  253. data/sig/metronome_sdk/models/spend_threshold_configuration.rbs +35 -0
  254. data/sig/metronome_sdk/models/spend_threshold_configuration_v2.rbs +35 -0
  255. data/sig/metronome_sdk/models/subscription.rbs +215 -0
  256. data/sig/metronome_sdk/models/update_base_threshold_commit.rbs +28 -0
  257. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +4 -2
  258. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +24 -340
  259. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +168 -1219
  260. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +4 -25
  261. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +4 -1041
  262. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +6 -54
  263. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +4 -1041
  264. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +6 -54
  265. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +6 -54
  266. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +6 -54
  267. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +6 -54
  268. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +6 -54
  269. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +72 -94
  270. data/sig/metronome_sdk/models/v1/custom_field_list_keys_response.rbs +53 -75
  271. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +31 -4
  272. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rbs +32 -0
  273. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbs +113 -0
  274. data/sig/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbs +133 -0
  275. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +21 -0
  276. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +7 -1
  277. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +6 -1
  278. data/sig/metronome_sdk/models/v1/customers/commit_create_params.rbs +6 -50
  279. data/sig/metronome_sdk/models/v1/customers/credit_create_params.rbs +6 -50
  280. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +4 -2
  281. data/sig/metronome_sdk/models/v1/usage_list_response.rbs +33 -55
  282. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +19 -43
  283. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +19 -43
  284. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +361 -1917
  285. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +242 -2252
  286. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +4 -4426
  287. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +4 -4426
  288. data/sig/metronome_sdk/models.rbs +38 -0
  289. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -1
  290. data/sig/metronome_sdk/resources/v1/contracts.rbs +3 -3
  291. data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -1
  292. data/sig/metronome_sdk/resources/v1/custom_fields.rbs +1 -1
  293. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +2 -1
  294. data/sig/metronome_sdk/resources/v1/customers/commits.rbs +2 -2
  295. data/sig/metronome_sdk/resources/v1/customers/credits.rbs +2 -2
  296. data/sig/metronome_sdk/resources/v1/customers.rbs +11 -0
  297. data/sig/metronome_sdk/resources/v1/usage.rbs +1 -1
  298. data/sig/metronome_sdk/resources/v2/contracts.rbs +7 -4
  299. metadata +74 -11
  300. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +0 -29
  301. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +0 -26
  302. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +0 -26
  303. data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +0 -46
  304. data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +0 -45
  305. data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +0 -45
  306. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +0 -29
  307. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +0 -26
  308. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +0 -26
@@ -21,15 +21,19 @@ module MetronomeSDK
21
21
  required :name, String
22
22
 
23
23
  # @!attribute custom_fields
24
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
24
25
  #
25
26
  # @return [Hash{Symbol=>String}, nil]
26
27
  optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
27
28
 
28
29
  # @!method initialize(id:, description:, name:, custom_fields: nil)
29
30
  # @param id [String]
31
+ #
30
32
  # @param description [String]
33
+ #
31
34
  # @param name [String]
32
- # @param custom_fields [Hash{Symbol=>String}]
35
+ #
36
+ # @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
33
37
  end
34
38
  end
35
39
  end
@@ -11,10 +11,7 @@ module MetronomeSDK
11
11
  # @!attribute usage
12
12
  #
13
13
  # @return [Array<MetronomeSDK::Models::V1::UsageIngestParams::Usage>, nil]
14
- optional :usage,
15
- -> {
16
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::UsageIngestParams::Usage]
17
- }
14
+ optional :usage, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::UsageIngestParams::Usage] }
18
15
 
19
16
  # @!method initialize(usage: nil, request_options: {})
20
17
  # @param usage [Array<MetronomeSDK::Models::V1::UsageIngestParams::Usage>]
@@ -38,9 +38,7 @@ module MetronomeSDK
38
38
  #
39
39
  # @return [Array<MetronomeSDK::Models::V1::UsageListParams::BillableMetric>, nil]
40
40
  optional :billable_metrics,
41
- -> {
42
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::UsageListParams::BillableMetric]
43
- }
41
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::UsageListParams::BillableMetric] }
44
42
 
45
43
  # @!attribute customer_ids
46
44
  # A list of Metronome customer IDs to fetch usage for. If absent, usage for all
@@ -5,77 +5,60 @@ module MetronomeSDK
5
5
  module V1
6
6
  # @see MetronomeSDK::Resources::V1::Usage#list
7
7
  class UsageListResponse < MetronomeSDK::Internal::Type::BaseModel
8
- # @!attribute data
8
+ # @!attribute billable_metric_id
9
9
  #
10
- # @return [Array<MetronomeSDK::Models::V1::UsageListResponse::Data>]
11
- required :data,
12
- -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Models::V1::UsageListResponse::Data] }
10
+ # @return [String]
11
+ required :billable_metric_id, String
13
12
 
14
- # @!attribute next_page
13
+ # @!attribute billable_metric_name
15
14
  #
16
- # @return [String, nil]
17
- required :next_page, String, nil?: true
15
+ # @return [String]
16
+ required :billable_metric_name, String
18
17
 
19
- # @!method initialize(data:, next_page:)
20
- # @param data [Array<MetronomeSDK::Models::V1::UsageListResponse::Data>]
21
- # @param next_page [String, nil]
22
-
23
- class Data < MetronomeSDK::Internal::Type::BaseModel
24
- # @!attribute billable_metric_id
25
- #
26
- # @return [String]
27
- required :billable_metric_id, String
28
-
29
- # @!attribute billable_metric_name
30
- #
31
- # @return [String]
32
- required :billable_metric_name, String
33
-
34
- # @!attribute customer_id
35
- #
36
- # @return [String]
37
- required :customer_id, String
18
+ # @!attribute customer_id
19
+ #
20
+ # @return [String]
21
+ required :customer_id, String
38
22
 
39
- # @!attribute end_timestamp
40
- #
41
- # @return [Time]
42
- required :end_timestamp, Time
23
+ # @!attribute end_timestamp
24
+ #
25
+ # @return [Time]
26
+ required :end_timestamp, Time
43
27
 
44
- # @!attribute start_timestamp
45
- #
46
- # @return [Time]
47
- required :start_timestamp, Time
28
+ # @!attribute start_timestamp
29
+ #
30
+ # @return [Time]
31
+ required :start_timestamp, Time
48
32
 
49
- # @!attribute value
50
- #
51
- # @return [Float, nil]
52
- required :value, Float, nil?: true
33
+ # @!attribute value
34
+ #
35
+ # @return [Float, nil]
36
+ required :value, Float, nil?: true
53
37
 
54
- # @!attribute groups
55
- # Values will be either a number or null. Null indicates that there were no
56
- # matches for the group_by value.
57
- #
58
- # @return [Hash{Symbol=>Float, nil}, nil]
59
- optional :groups, MetronomeSDK::Internal::Type::HashOf[Float, nil?: true]
38
+ # @!attribute groups
39
+ # Values will be either a number or null. Null indicates that there were no
40
+ # matches for the group_by value.
41
+ #
42
+ # @return [Hash{Symbol=>Float, nil}, nil]
43
+ optional :groups, MetronomeSDK::Internal::Type::HashOf[Float, nil?: true]
60
44
 
61
- # @!method initialize(billable_metric_id:, billable_metric_name:, customer_id:, end_timestamp:, start_timestamp:, value:, groups: nil)
62
- # Some parameter documentations has been truncated, see
63
- # {MetronomeSDK::Models::V1::UsageListResponse::Data} for more details.
64
- #
65
- # @param billable_metric_id [String]
66
- #
67
- # @param billable_metric_name [String]
68
- #
69
- # @param customer_id [String]
70
- #
71
- # @param end_timestamp [Time]
72
- #
73
- # @param start_timestamp [Time]
74
- #
75
- # @param value [Float, nil]
76
- #
77
- # @param groups [Hash{Symbol=>Float, nil}] Values will be either a number or null. Null indicates that there were no matche
78
- end
45
+ # @!method initialize(billable_metric_id:, billable_metric_name:, customer_id:, end_timestamp:, start_timestamp:, value:, groups: nil)
46
+ # Some parameter documentations has been truncated, see
47
+ # {MetronomeSDK::Models::V1::UsageListResponse} for more details.
48
+ #
49
+ # @param billable_metric_id [String]
50
+ #
51
+ # @param billable_metric_name [String]
52
+ #
53
+ # @param customer_id [String]
54
+ #
55
+ # @param end_timestamp [Time]
56
+ #
57
+ # @param start_timestamp [Time]
58
+ #
59
+ # @param value [Float, nil]
60
+ #
61
+ # @param groups [Hash{Symbol=>Float, nil}] Values will be either a number or null. Null indicates that there were no matche
79
62
  end
80
63
  end
81
64
  end
@@ -124,6 +124,7 @@ module MetronomeSDK
124
124
  optional :archived_at, Time
125
125
 
126
126
  # @!attribute custom_fields
127
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
127
128
  #
128
129
  # @return [Hash{Symbol=>String}, nil]
129
130
  optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[String]
@@ -151,8 +152,7 @@ module MetronomeSDK
151
152
  # represents a set of properties used to slice events into distinct buckets.
152
153
  #
153
154
  # @return [Array<Array<String>>, nil]
154
- optional :group_keys,
155
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Internal::Type::ArrayOf[String]]
155
+ optional :group_keys, MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::Internal::Type::ArrayOf[String]]
156
156
 
157
157
  # @!attribute property_filters
158
158
  # A list of filters to match events to this billable metric. Each filter defines a
@@ -160,10 +160,7 @@ module MetronomeSDK
160
160
  # billable metric.
161
161
  #
162
162
  # @return [Array<MetronomeSDK::Models::PropertyFilter>, nil]
163
- optional :property_filters,
164
- -> {
165
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::PropertyFilter]
166
- }
163
+ optional :property_filters, -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::PropertyFilter] }
167
164
 
168
165
  # @!attribute sql
169
166
  # The SQL query associated with the billable metric
@@ -190,7 +187,7 @@ module MetronomeSDK
190
187
  #
191
188
  # @param archived_at [Time] RFC 3339 timestamp indicating when the billable metric was archived. If not prov
192
189
  #
193
- # @param custom_fields [Hash{Symbol=>String}]
190
+ # @param custom_fields [Hash{Symbol=>String}] Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
194
191
  #
195
192
  # @param event_type_filter [MetronomeSDK::Models::EventTypeFilter] An optional filtering rule to match the 'event_type' property of an event.
196
193
  #
@@ -64,6 +64,14 @@ module MetronomeSDK
64
64
  # @return [String, nil]
65
65
  optional :product_id, String
66
66
 
67
+ # @!attribute rate_type
68
+ # If provided, updates the commit to use the specified rate type for current and
69
+ # future invoices. Previously finalized invoices will need to be voided and
70
+ # regenerated to reflect the rate type change.
71
+ #
72
+ # @return [Symbol, MetronomeSDK::Models::V2::ContractEditCommitParams::RateType, nil]
73
+ optional :rate_type, enum: -> { MetronomeSDK::V2::ContractEditCommitParams::RateType }
74
+
67
75
  # @!attribute specifiers
68
76
  # List of filters that determine what kind of customer usage draws down a commit
69
77
  # or credit. A customer's usage needs to meet the condition of at least one of the
@@ -72,14 +80,12 @@ module MetronomeSDK
72
80
  # Instead, to target usage by product or product tag, pass those values in the
73
81
  # body of `specifiers`.
74
82
  #
75
- # @return [Array<MetronomeSDK::Models::V2::ContractEditCommitParams::Specifier>, nil]
83
+ # @return [Array<MetronomeSDK::Models::CommitSpecifierInput>, nil]
76
84
  optional :specifiers,
77
- -> {
78
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCommitParams::Specifier]
79
- },
85
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::CommitSpecifierInput] },
80
86
  nil?: true
81
87
 
82
- # @!method initialize(commit_id:, customer_id:, access_schedule: nil, applicable_product_ids: nil, applicable_product_tags: nil, invoice_contract_id: nil, invoice_schedule: nil, priority: nil, product_id: nil, specifiers: nil, request_options: {})
88
+ # @!method initialize(commit_id:, customer_id:, access_schedule: nil, applicable_product_ids: nil, applicable_product_tags: nil, invoice_contract_id: nil, invoice_schedule: nil, priority: nil, product_id: nil, rate_type: nil, specifiers: nil, request_options: {})
83
89
  # Some parameter documentations has been truncated, see
84
90
  # {MetronomeSDK::Models::V2::ContractEditCommitParams} for more details.
85
91
  #
@@ -101,7 +107,9 @@ module MetronomeSDK
101
107
  #
102
108
  # @param product_id [String]
103
109
  #
104
- # @param specifiers [Array<MetronomeSDK::Models::V2::ContractEditCommitParams::Specifier>, nil] List of filters that determine what kind of customer usage draws down a commit o
110
+ # @param rate_type [Symbol, MetronomeSDK::Models::V2::ContractEditCommitParams::RateType] If provided, updates the commit to use the specified rate type for current and f
111
+ #
112
+ # @param specifiers [Array<MetronomeSDK::Models::CommitSpecifierInput>, nil] List of filters that determine what kind of customer usage draws down a commit o
105
113
  #
106
114
  # @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}]
107
115
 
@@ -110,25 +118,19 @@ module MetronomeSDK
110
118
  #
111
119
  # @return [Array<MetronomeSDK::Models::V2::ContractEditCommitParams::AccessSchedule::AddScheduleItem>, nil]
112
120
  optional :add_schedule_items,
113
- -> {
114
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCommitParams::AccessSchedule::AddScheduleItem]
115
- }
121
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCommitParams::AccessSchedule::AddScheduleItem] }
116
122
 
117
123
  # @!attribute remove_schedule_items
118
124
  #
119
125
  # @return [Array<MetronomeSDK::Models::V2::ContractEditCommitParams::AccessSchedule::RemoveScheduleItem>, nil]
120
126
  optional :remove_schedule_items,
121
- -> {
122
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCommitParams::AccessSchedule::RemoveScheduleItem]
123
- }
127
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCommitParams::AccessSchedule::RemoveScheduleItem] }
124
128
 
125
129
  # @!attribute update_schedule_items
126
130
  #
127
131
  # @return [Array<MetronomeSDK::Models::V2::ContractEditCommitParams::AccessSchedule::UpdateScheduleItem>, nil]
128
132
  optional :update_schedule_items,
129
- -> {
130
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCommitParams::AccessSchedule::UpdateScheduleItem]
131
- }
133
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCommitParams::AccessSchedule::UpdateScheduleItem] }
132
134
 
133
135
  # @!method initialize(add_schedule_items: nil, remove_schedule_items: nil, update_schedule_items: nil)
134
136
  # @param add_schedule_items [Array<MetronomeSDK::Models::V2::ContractEditCommitParams::AccessSchedule::AddScheduleItem>]
@@ -201,25 +203,19 @@ module MetronomeSDK
201
203
  #
202
204
  # @return [Array<MetronomeSDK::Models::V2::ContractEditCommitParams::InvoiceSchedule::AddScheduleItem>, nil]
203
205
  optional :add_schedule_items,
204
- -> {
205
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCommitParams::InvoiceSchedule::AddScheduleItem]
206
- }
206
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCommitParams::InvoiceSchedule::AddScheduleItem] }
207
207
 
208
208
  # @!attribute remove_schedule_items
209
209
  #
210
210
  # @return [Array<MetronomeSDK::Models::V2::ContractEditCommitParams::InvoiceSchedule::RemoveScheduleItem>, nil]
211
211
  optional :remove_schedule_items,
212
- -> {
213
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCommitParams::InvoiceSchedule::RemoveScheduleItem]
214
- }
212
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCommitParams::InvoiceSchedule::RemoveScheduleItem] }
215
213
 
216
214
  # @!attribute update_schedule_items
217
215
  #
218
216
  # @return [Array<MetronomeSDK::Models::V2::ContractEditCommitParams::InvoiceSchedule::UpdateScheduleItem>, nil]
219
217
  optional :update_schedule_items,
220
- -> {
221
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCommitParams::InvoiceSchedule::UpdateScheduleItem]
222
- }
218
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCommitParams::InvoiceSchedule::UpdateScheduleItem] }
223
219
 
224
220
  # @!method initialize(add_schedule_items: nil, remove_schedule_items: nil, update_schedule_items: nil)
225
221
  # @param add_schedule_items [Array<MetronomeSDK::Models::V2::ContractEditCommitParams::InvoiceSchedule::AddScheduleItem>]
@@ -299,42 +295,17 @@ module MetronomeSDK
299
295
  end
300
296
  end
301
297
 
302
- class Specifier < MetronomeSDK::Internal::Type::BaseModel
303
- # @!attribute presentation_group_values
304
- #
305
- # @return [Hash{Symbol=>String}, nil]
306
- optional :presentation_group_values, MetronomeSDK::Internal::Type::HashOf[String]
298
+ # If provided, updates the commit to use the specified rate type for current and
299
+ # future invoices. Previously finalized invoices will need to be voided and
300
+ # regenerated to reflect the rate type change.
301
+ module RateType
302
+ extend MetronomeSDK::Internal::Type::Enum
307
303
 
308
- # @!attribute pricing_group_values
309
- #
310
- # @return [Hash{Symbol=>String}, nil]
311
- optional :pricing_group_values, MetronomeSDK::Internal::Type::HashOf[String]
312
-
313
- # @!attribute product_id
314
- # If provided, the specifier will only apply to the product with the specified ID.
315
- #
316
- # @return [String, nil]
317
- optional :product_id, String
304
+ LIST_RATE = :LIST_RATE
305
+ COMMIT_RATE = :COMMIT_RATE
318
306
 
319
- # @!attribute product_tags
320
- # If provided, the specifier will only apply to products with all the specified
321
- # tags.
322
- #
323
- # @return [Array<String>, nil]
324
- optional :product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
325
-
326
- # @!method initialize(presentation_group_values: nil, pricing_group_values: nil, product_id: nil, product_tags: nil)
327
- # Some parameter documentations has been truncated, see
328
- # {MetronomeSDK::Models::V2::ContractEditCommitParams::Specifier} for more
329
- # details.
330
- #
331
- # @param presentation_group_values [Hash{Symbol=>String}]
332
- #
333
- # @param pricing_group_values [Hash{Symbol=>String}]
334
- #
335
- # @param product_id [String] If provided, the specifier will only apply to the product with the specified ID.
336
- #
337
- # @param product_tags [Array<String>] If provided, the specifier will only apply to products with all the specified ta
307
+ # @!method self.values
308
+ # @return [Array<Symbol>]
338
309
  end
339
310
  end
340
311
  end
@@ -51,6 +51,14 @@ module MetronomeSDK
51
51
  # @return [String, nil]
52
52
  optional :product_id, String
53
53
 
54
+ # @!attribute rate_type
55
+ # If provided, updates the credit to use the specified rate type for current and
56
+ # future invoices. Previously finalized invoices will need to be voided and
57
+ # regenerated to reflect the rate type change.
58
+ #
59
+ # @return [Symbol, MetronomeSDK::Models::V2::ContractEditCreditParams::RateType, nil]
60
+ optional :rate_type, enum: -> { MetronomeSDK::V2::ContractEditCreditParams::RateType }
61
+
54
62
  # @!attribute specifiers
55
63
  # List of filters that determine what kind of customer usage draws down a commit
56
64
  # or credit. A customer's usage needs to meet the condition of at least one of the
@@ -59,14 +67,12 @@ module MetronomeSDK
59
67
  # Instead, to target usage by product or product tag, pass those values in the
60
68
  # body of `specifiers`.
61
69
  #
62
- # @return [Array<MetronomeSDK::Models::V2::ContractEditCreditParams::Specifier>, nil]
70
+ # @return [Array<MetronomeSDK::Models::CommitSpecifierInput>, nil]
63
71
  optional :specifiers,
64
- -> {
65
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCreditParams::Specifier]
66
- },
72
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::CommitSpecifierInput] },
67
73
  nil?: true
68
74
 
69
- # @!method initialize(credit_id:, customer_id:, access_schedule: nil, applicable_product_ids: nil, applicable_product_tags: nil, priority: nil, product_id: nil, specifiers: nil, request_options: {})
75
+ # @!method initialize(credit_id:, customer_id:, access_schedule: nil, applicable_product_ids: nil, applicable_product_tags: nil, priority: nil, product_id: nil, rate_type: nil, specifiers: nil, request_options: {})
70
76
  # Some parameter documentations has been truncated, see
71
77
  # {MetronomeSDK::Models::V2::ContractEditCreditParams} for more details.
72
78
  #
@@ -84,7 +90,9 @@ module MetronomeSDK
84
90
  #
85
91
  # @param product_id [String]
86
92
  #
87
- # @param specifiers [Array<MetronomeSDK::Models::V2::ContractEditCreditParams::Specifier>, nil] List of filters that determine what kind of customer usage draws down a commit o
93
+ # @param rate_type [Symbol, MetronomeSDK::Models::V2::ContractEditCreditParams::RateType] If provided, updates the credit to use the specified rate type for current and f
94
+ #
95
+ # @param specifiers [Array<MetronomeSDK::Models::CommitSpecifierInput>, nil] List of filters that determine what kind of customer usage draws down a commit o
88
96
  #
89
97
  # @param request_options [MetronomeSDK::RequestOptions, Hash{Symbol=>Object}]
90
98
 
@@ -93,25 +101,19 @@ module MetronomeSDK
93
101
  #
94
102
  # @return [Array<MetronomeSDK::Models::V2::ContractEditCreditParams::AccessSchedule::AddScheduleItem>, nil]
95
103
  optional :add_schedule_items,
96
- -> {
97
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCreditParams::AccessSchedule::AddScheduleItem]
98
- }
104
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCreditParams::AccessSchedule::AddScheduleItem] }
99
105
 
100
106
  # @!attribute remove_schedule_items
101
107
  #
102
108
  # @return [Array<MetronomeSDK::Models::V2::ContractEditCreditParams::AccessSchedule::RemoveScheduleItem>, nil]
103
109
  optional :remove_schedule_items,
104
- -> {
105
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCreditParams::AccessSchedule::RemoveScheduleItem]
106
- }
110
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCreditParams::AccessSchedule::RemoveScheduleItem] }
107
111
 
108
112
  # @!attribute update_schedule_items
109
113
  #
110
114
  # @return [Array<MetronomeSDK::Models::V2::ContractEditCreditParams::AccessSchedule::UpdateScheduleItem>, nil]
111
115
  optional :update_schedule_items,
112
- -> {
113
- MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCreditParams::AccessSchedule::UpdateScheduleItem]
114
- }
116
+ -> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V2::ContractEditCreditParams::AccessSchedule::UpdateScheduleItem] }
115
117
 
116
118
  # @!method initialize(add_schedule_items: nil, remove_schedule_items: nil, update_schedule_items: nil)
117
119
  # @param add_schedule_items [Array<MetronomeSDK::Models::V2::ContractEditCreditParams::AccessSchedule::AddScheduleItem>]
@@ -179,42 +181,17 @@ module MetronomeSDK
179
181
  end
180
182
  end
181
183
 
182
- class Specifier < MetronomeSDK::Internal::Type::BaseModel
183
- # @!attribute presentation_group_values
184
- #
185
- # @return [Hash{Symbol=>String}, nil]
186
- optional :presentation_group_values, MetronomeSDK::Internal::Type::HashOf[String]
184
+ # If provided, updates the credit to use the specified rate type for current and
185
+ # future invoices. Previously finalized invoices will need to be voided and
186
+ # regenerated to reflect the rate type change.
187
+ module RateType
188
+ extend MetronomeSDK::Internal::Type::Enum
187
189
 
188
- # @!attribute pricing_group_values
189
- #
190
- # @return [Hash{Symbol=>String}, nil]
191
- optional :pricing_group_values, MetronomeSDK::Internal::Type::HashOf[String]
192
-
193
- # @!attribute product_id
194
- # If provided, the specifier will only apply to the product with the specified ID.
195
- #
196
- # @return [String, nil]
197
- optional :product_id, String
190
+ LIST_RATE = :LIST_RATE
191
+ COMMIT_RATE = :COMMIT_RATE
198
192
 
199
- # @!attribute product_tags
200
- # If provided, the specifier will only apply to products with all the specified
201
- # tags.
202
- #
203
- # @return [Array<String>, nil]
204
- optional :product_tags, MetronomeSDK::Internal::Type::ArrayOf[String]
205
-
206
- # @!method initialize(presentation_group_values: nil, pricing_group_values: nil, product_id: nil, product_tags: nil)
207
- # Some parameter documentations has been truncated, see
208
- # {MetronomeSDK::Models::V2::ContractEditCreditParams::Specifier} for more
209
- # details.
210
- #
211
- # @param presentation_group_values [Hash{Symbol=>String}]
212
- #
213
- # @param pricing_group_values [Hash{Symbol=>String}]
214
- #
215
- # @param product_id [String] If provided, the specifier will only apply to the product with the specified ID.
216
- #
217
- # @param product_tags [Array<String>] If provided, the specifier will only apply to products with all the specified ta
193
+ # @!method self.values
194
+ # @return [Array<Symbol>]
218
195
  end
219
196
  end
220
197
  end