metronome-sdk 0.2.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 (321) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +61 -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/array_of.rb +1 -0
  9. data/lib/metronome_sdk/internal/type/base_model.rb +9 -14
  10. data/lib/metronome_sdk/internal/type/converter.rb +27 -0
  11. data/lib/metronome_sdk/internal/type/hash_of.rb +1 -0
  12. data/lib/metronome_sdk/internal/type/union.rb +20 -7
  13. data/lib/metronome_sdk/internal/util.rb +1 -1
  14. data/lib/metronome_sdk/models/base_threshold_commit.rb +36 -0
  15. data/lib/metronome_sdk/models/commit.rb +26 -170
  16. data/lib/metronome_sdk/models/commit_hierarchy_configuration.rb +98 -0
  17. data/lib/metronome_sdk/models/commit_rate.rb +48 -0
  18. data/lib/metronome_sdk/models/commit_specifier.rb +42 -0
  19. data/lib/metronome_sdk/models/commit_specifier_input.rb +42 -0
  20. data/lib/metronome_sdk/models/contract.rb +404 -0
  21. data/lib/metronome_sdk/models/contract_v2.rb +2919 -0
  22. data/lib/metronome_sdk/models/contract_without_amendments.rb +36 -1126
  23. data/lib/metronome_sdk/models/credit.rb +9 -156
  24. data/lib/metronome_sdk/models/discount.rb +2 -1
  25. data/lib/metronome_sdk/models/hierarchy_configuration.rb +76 -0
  26. data/lib/metronome_sdk/models/override.rb +6 -101
  27. data/lib/metronome_sdk/models/override_tier.rb +21 -0
  28. data/lib/metronome_sdk/models/overwrite_rate.rb +82 -0
  29. data/lib/metronome_sdk/models/payment_gate_config.rb +149 -0
  30. data/lib/metronome_sdk/models/payment_gate_config_v2.rb +149 -0
  31. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration.rb +100 -0
  32. data/lib/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rb +102 -0
  33. data/lib/metronome_sdk/models/pro_service.rb +2 -1
  34. data/lib/metronome_sdk/models/recurring_commit_subscription_config.rb +51 -0
  35. data/lib/metronome_sdk/models/schedule_point_in_time.rb +14 -1
  36. data/lib/metronome_sdk/models/scheduled_charge.rb +2 -1
  37. data/lib/metronome_sdk/models/spend_threshold_configuration.rb +44 -0
  38. data/lib/metronome_sdk/models/spend_threshold_configuration_v2.rb +44 -0
  39. data/lib/metronome_sdk/models/subscription.rb +227 -0
  40. data/lib/metronome_sdk/models/update_base_threshold_commit.rb +36 -0
  41. data/lib/metronome_sdk/models/v1/alert_create_params.rb +4 -6
  42. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +1 -2
  43. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +3 -3
  44. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +4 -7
  45. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +110 -415
  46. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_params.rb +7 -16
  47. data/lib/metronome_sdk/models/v1/contract_create_params.rb +287 -1480
  48. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +6 -23
  49. data/lib/metronome_sdk/models/v1/contract_list_response.rb +3 -1153
  50. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_params.rb +2 -6
  51. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +5 -50
  52. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +3 -1154
  53. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb +1 -3
  54. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +9 -1
  55. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +8 -1
  56. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +8 -1
  57. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +1 -4
  58. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_params.rb +4 -7
  59. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +10 -1
  60. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_params.rb +2 -6
  61. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +5 -50
  62. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +10 -1
  63. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_params.rb +1 -3
  64. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_params.rb +1 -3
  65. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +6 -61
  66. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +3 -49
  67. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +4 -51
  68. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_params.rb +2 -6
  69. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +5 -49
  70. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +103 -123
  71. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +3 -5
  72. data/lib/metronome_sdk/models/v1/custom_field_list_keys_params.rb +1 -3
  73. data/lib/metronome_sdk/models/v1/custom_field_list_keys_response.rb +41 -58
  74. data/lib/metronome_sdk/models/v1/custom_field_set_values_params.rb +5 -1
  75. data/lib/metronome_sdk/models/v1/customer.rb +2 -1
  76. data/lib/metronome_sdk/models/v1/customer_create_params.rb +37 -11
  77. data/lib/metronome_sdk/models/v1/customer_detail.rb +2 -1
  78. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +3 -3
  79. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +1 -3
  80. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rb +28 -0
  81. data/lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb +128 -0
  82. data/lib/metronome_sdk/models/v1/customer_set_billing_configurations_params.rb +143 -0
  83. data/lib/metronome_sdk/models/v1/customers/alert_list_params.rb +1 -3
  84. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_params.rb +30 -1
  85. data/lib/metronome_sdk/models/v1/customers/billing_config_create_params.rb +2 -0
  86. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +2 -0
  87. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +20 -61
  88. data/lib/metronome_sdk/models/v1/customers/credit_create_params.rb +6 -48
  89. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +8 -16
  90. data/lib/metronome_sdk/models/v1/customers/invoice.rb +68 -43
  91. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_params.rb +1 -4
  92. data/lib/metronome_sdk/models/v1/customers/plan_add_params.rb +2 -6
  93. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +2 -1
  94. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +4 -11
  95. data/lib/metronome_sdk/models/v1/plan_detail.rb +9 -5
  96. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +2 -1
  97. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +2 -1
  98. data/lib/metronome_sdk/models/v1/plan_list_response.rb +5 -1
  99. data/lib/metronome_sdk/models/v1/usage_ingest_params.rb +1 -4
  100. data/lib/metronome_sdk/models/v1/usage_list_params.rb +1 -3
  101. data/lib/metronome_sdk/models/v1/usage_list_response.rb +45 -62
  102. data/lib/metronome_sdk/models/v1/usage_search_response.rb +4 -7
  103. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +38 -58
  104. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +35 -49
  105. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +469 -2302
  106. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +358 -2414
  107. data/lib/metronome_sdk/models/v2/contract_list_response.rb +3 -4520
  108. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +3 -4528
  109. data/lib/metronome_sdk/models.rb +38 -0
  110. data/lib/metronome_sdk/resources/v1/alerts.rb +72 -2
  111. data/lib/metronome_sdk/resources/v1/audit_logs.rb +39 -4
  112. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +54 -4
  113. data/lib/metronome_sdk/resources/v1/contracts/products.rb +27 -6
  114. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rb +7 -2
  115. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +10 -2
  116. data/lib/metronome_sdk/resources/v1/contracts/rate_cards.rb +109 -10
  117. data/lib/metronome_sdk/resources/v1/contracts.rb +254 -18
  118. data/lib/metronome_sdk/resources/v1/credit_grants.rb +2 -1
  119. data/lib/metronome_sdk/resources/v1/custom_fields.rb +51 -14
  120. data/lib/metronome_sdk/resources/v1/customers/alerts.rb +103 -8
  121. data/lib/metronome_sdk/resources/v1/customers/commits.rb +119 -9
  122. data/lib/metronome_sdk/resources/v1/customers/credits.rb +104 -8
  123. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +124 -8
  124. data/lib/metronome_sdk/resources/v1/customers.rb +169 -12
  125. data/lib/metronome_sdk/resources/v1/dashboards.rb +29 -3
  126. data/lib/metronome_sdk/resources/v1/invoices.rb +23 -2
  127. data/lib/metronome_sdk/resources/v1/pricing_units.rb +6 -1
  128. data/lib/metronome_sdk/resources/v1/services.rb +6 -4
  129. data/lib/metronome_sdk/resources/v1/usage.rb +185 -12
  130. data/lib/metronome_sdk/resources/v2/contracts.rb +118 -18
  131. data/lib/metronome_sdk/version.rb +1 -1
  132. data/lib/metronome_sdk.rb +24 -3
  133. data/rbi/metronome_sdk/errors.rbi +2 -2
  134. data/rbi/metronome_sdk/internal/body_cursor_page.rbi +22 -0
  135. data/rbi/metronome_sdk/internal/cursor_page_without_limit.rbi +22 -0
  136. data/rbi/metronome_sdk/internal/type/converter.rbi +58 -0
  137. data/rbi/metronome_sdk/internal/type/union.rbi +9 -2
  138. data/rbi/metronome_sdk/models/base_threshold_commit.rbi +58 -0
  139. data/rbi/metronome_sdk/models/commit.rbi +26 -348
  140. data/rbi/metronome_sdk/models/commit_hierarchy_configuration.rbi +280 -0
  141. data/rbi/metronome_sdk/models/commit_rate.rbi +85 -0
  142. data/rbi/metronome_sdk/models/commit_specifier.rbi +71 -0
  143. data/rbi/metronome_sdk/models/commit_specifier_input.rbi +74 -0
  144. data/rbi/metronome_sdk/models/contract.rbi +768 -0
  145. data/rbi/metronome_sdk/models/contract_v2.rbi +5822 -0
  146. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +184 -2507
  147. data/rbi/metronome_sdk/models/credit.rbi +10 -348
  148. data/rbi/metronome_sdk/models/discount.rbi +2 -0
  149. data/rbi/metronome_sdk/models/hierarchy_configuration.rbi +180 -0
  150. data/rbi/metronome_sdk/models/override.rbi +8 -193
  151. data/rbi/metronome_sdk/models/override_tier.rbi +29 -0
  152. data/rbi/metronome_sdk/models/overwrite_rate.rbi +137 -0
  153. data/rbi/metronome_sdk/models/payment_gate_config.rbi +312 -0
  154. data/rbi/metronome_sdk/models/payment_gate_config_v2.rbi +321 -0
  155. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration.rbi +183 -0
  156. data/rbi/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbi +188 -0
  157. data/rbi/metronome_sdk/models/pro_service.rbi +2 -0
  158. data/rbi/metronome_sdk/models/recurring_commit_subscription_config.rbi +125 -0
  159. data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +17 -1
  160. data/rbi/metronome_sdk/models/scheduled_charge.rbi +2 -0
  161. data/rbi/metronome_sdk/models/spend_threshold_configuration.rbi +76 -0
  162. data/rbi/metronome_sdk/models/spend_threshold_configuration_v2.rbi +78 -0
  163. data/rbi/metronome_sdk/models/subscription.rbi +460 -0
  164. data/rbi/metronome_sdk/models/update_base_threshold_commit.rbi +61 -0
  165. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +6 -3
  166. data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +2 -0
  167. data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +2 -0
  168. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +120 -771
  169. data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_params.rbi +2 -0
  170. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1613 -4069
  171. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +8 -59
  172. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +5 -2420
  173. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +6 -129
  174. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +4 -2419
  175. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +11 -0
  176. data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +2 -0
  177. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +2 -0
  178. data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_params.rbi +2 -0
  179. data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +2 -0
  180. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +6 -129
  181. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +2 -0
  182. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +4 -129
  183. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +4 -129
  184. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +4 -129
  185. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +6 -129
  186. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +147 -198
  187. data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +2 -0
  188. data/rbi/metronome_sdk/models/v1/custom_field_list_keys_response.rbi +117 -165
  189. data/rbi/metronome_sdk/models/v1/custom_field_set_values_params.rbi +8 -1
  190. data/rbi/metronome_sdk/models/v1/customer.rbi +2 -0
  191. data/rbi/metronome_sdk/models/v1/customer_create_params.rbi +88 -3
  192. data/rbi/metronome_sdk/models/v1/customer_detail.rbi +2 -0
  193. data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +2 -0
  194. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rbi +51 -0
  195. data/rbi/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbi +265 -0
  196. data/rbi/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbi +348 -0
  197. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_params.rbi +60 -0
  198. data/rbi/metronome_sdk/models/v1/customers/billing_config_create_params.rbi +10 -0
  199. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +10 -0
  200. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +19 -90
  201. data/rbi/metronome_sdk/models/v1/customers/credit_create_params.rbi +6 -90
  202. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +6 -3
  203. data/rbi/metronome_sdk/models/v1/customers/invoice.rbi +76 -0
  204. data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +2 -0
  205. data/rbi/metronome_sdk/models/v1/plan_detail.rbi +2 -0
  206. data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +2 -0
  207. data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +2 -0
  208. data/rbi/metronome_sdk/models/v1/plan_list_response.rbi +8 -1
  209. data/rbi/metronome_sdk/models/v1/usage_list_response.rbi +45 -86
  210. data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +2 -0
  211. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +66 -76
  212. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +66 -76
  213. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +3563 -7329
  214. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1181 -6070
  215. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +5 -9867
  216. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +6 -9866
  217. data/rbi/metronome_sdk/models.rbi +44 -0
  218. data/rbi/metronome_sdk/resources/v1/alerts.rbi +72 -2
  219. data/rbi/metronome_sdk/resources/v1/audit_logs.rbi +39 -4
  220. data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +54 -4
  221. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +27 -5
  222. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/product_orders.rbi +7 -2
  223. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +10 -3
  224. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards.rbi +109 -9
  225. data/rbi/metronome_sdk/resources/v1/contracts.rbi +257 -16
  226. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +5 -1
  227. data/rbi/metronome_sdk/resources/v1/custom_fields.rbi +57 -14
  228. data/rbi/metronome_sdk/resources/v1/customers/alerts.rbi +108 -5
  229. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +119 -10
  230. data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +104 -9
  231. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +123 -7
  232. data/rbi/metronome_sdk/resources/v1/customers.rbi +156 -11
  233. data/rbi/metronome_sdk/resources/v1/dashboards.rbi +29 -3
  234. data/rbi/metronome_sdk/resources/v1/invoices.rbi +23 -2
  235. data/rbi/metronome_sdk/resources/v1/pricing_units.rbi +6 -1
  236. data/rbi/metronome_sdk/resources/v1/services.rbi +6 -4
  237. data/rbi/metronome_sdk/resources/v1/usage.rbi +188 -12
  238. data/rbi/metronome_sdk/resources/v2/contracts.rbi +128 -23
  239. data/sig/metronome_sdk/internal/body_cursor_page.rbs +13 -0
  240. data/sig/metronome_sdk/internal/cursor_page_without_limit.rbs +13 -0
  241. data/sig/metronome_sdk/internal/type/converter.rbs +17 -0
  242. data/sig/metronome_sdk/internal/type/union.rbs +2 -2
  243. data/sig/metronome_sdk/models/base_threshold_commit.rbs +26 -0
  244. data/sig/metronome_sdk/models/commit.rbs +17 -170
  245. data/sig/metronome_sdk/models/commit_hierarchy_configuration.rbs +117 -0
  246. data/sig/metronome_sdk/models/commit_rate.rbs +48 -0
  247. data/sig/metronome_sdk/models/commit_specifier.rbs +47 -0
  248. data/sig/metronome_sdk/models/commit_specifier_input.rbs +47 -0
  249. data/sig/metronome_sdk/models/contract.rbs +398 -0
  250. data/sig/metronome_sdk/models/contract_v2.rbs +2881 -0
  251. data/sig/metronome_sdk/models/contract_without_amendments.rbs +54 -976
  252. data/sig/metronome_sdk/models/credit.rbs +12 -170
  253. data/sig/metronome_sdk/models/hierarchy_configuration.rbs +71 -0
  254. data/sig/metronome_sdk/models/override.rbs +12 -101
  255. data/sig/metronome_sdk/models/override_tier.rbs +17 -0
  256. data/sig/metronome_sdk/models/overwrite_rate.rbs +78 -0
  257. data/sig/metronome_sdk/models/payment_gate_config.rbs +123 -0
  258. data/sig/metronome_sdk/models/payment_gate_config_v2.rbs +123 -0
  259. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration.rbs +82 -0
  260. data/sig/metronome_sdk/models/prepaid_balance_threshold_configuration_v2.rbs +82 -0
  261. data/sig/metronome_sdk/models/recurring_commit_subscription_config.rbs +51 -0
  262. data/sig/metronome_sdk/models/schedule_point_in_time.rbs +7 -0
  263. data/sig/metronome_sdk/models/spend_threshold_configuration.rbs +35 -0
  264. data/sig/metronome_sdk/models/spend_threshold_configuration_v2.rbs +35 -0
  265. data/sig/metronome_sdk/models/subscription.rbs +215 -0
  266. data/sig/metronome_sdk/models/update_base_threshold_commit.rbs +28 -0
  267. data/sig/metronome_sdk/models/v1/alert_create_params.rbs +4 -2
  268. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +62 -343
  269. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +218 -1234
  270. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +4 -25
  271. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +4 -1041
  272. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +6 -54
  273. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +4 -1041
  274. data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +7 -0
  275. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +6 -54
  276. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +6 -54
  277. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +6 -54
  278. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +6 -54
  279. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +6 -54
  280. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +72 -94
  281. data/sig/metronome_sdk/models/v1/custom_field_list_keys_response.rbs +53 -75
  282. data/sig/metronome_sdk/models/v1/customer_create_params.rbs +31 -4
  283. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_params.rbs +32 -0
  284. data/sig/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rbs +113 -0
  285. data/sig/metronome_sdk/models/v1/customer_set_billing_configurations_params.rbs +133 -0
  286. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_params.rbs +21 -0
  287. data/sig/metronome_sdk/models/v1/customers/billing_config_create_params.rbs +7 -1
  288. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +6 -1
  289. data/sig/metronome_sdk/models/v1/customers/commit_create_params.rbs +13 -50
  290. data/sig/metronome_sdk/models/v1/customers/credit_create_params.rbs +6 -50
  291. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +4 -2
  292. data/sig/metronome_sdk/models/v1/customers/invoice.rbs +5 -0
  293. data/sig/metronome_sdk/models/v1/usage_list_response.rbs +33 -55
  294. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +24 -43
  295. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +24 -43
  296. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +400 -1911
  297. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +256 -2249
  298. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +4 -4426
  299. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +4 -4426
  300. data/sig/metronome_sdk/models.rbs +38 -0
  301. data/sig/metronome_sdk/resources/v1/contracts/products.rbs +1 -0
  302. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -1
  303. data/sig/metronome_sdk/resources/v1/contracts.rbs +3 -3
  304. data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -1
  305. data/sig/metronome_sdk/resources/v1/custom_fields.rbs +1 -1
  306. data/sig/metronome_sdk/resources/v1/customers/alerts.rbs +2 -1
  307. data/sig/metronome_sdk/resources/v1/customers/commits.rbs +2 -2
  308. data/sig/metronome_sdk/resources/v1/customers/credits.rbs +2 -2
  309. data/sig/metronome_sdk/resources/v1/customers.rbs +11 -0
  310. data/sig/metronome_sdk/resources/v1/usage.rbs +1 -1
  311. data/sig/metronome_sdk/resources/v2/contracts.rbs +9 -4
  312. metadata +74 -11
  313. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +0 -29
  314. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +0 -26
  315. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +0 -26
  316. data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +0 -46
  317. data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +0 -45
  318. data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +0 -45
  319. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +0 -29
  320. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +0 -26
  321. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +0 -26
@@ -11,6 +11,14 @@ module MetronomeSDK
11
11
  sig { returns(String) }
12
12
  attr_accessor :id
13
13
 
14
+ # Timestamp of when the commit was created.
15
+ #
16
+ # - Recurring commits: latter of commit service period date and parent commit
17
+ # start date
18
+ # - Rollover commits: when the new contract started
19
+ sig { returns(Time) }
20
+ attr_accessor :created_at
21
+
14
22
  sig { returns(MetronomeSDK::Commit::Product) }
15
23
  attr_reader :product
16
24
 
@@ -83,6 +91,7 @@ module MetronomeSDK
83
91
  sig { params(contract: MetronomeSDK::Commit::Contract::OrHash).void }
84
92
  attr_writer :contract
85
93
 
94
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
86
95
  sig { returns(T.nilable(T::Hash[Symbol, String])) }
87
96
  attr_reader :custom_fields
88
97
 
@@ -96,13 +105,13 @@ module MetronomeSDK
96
105
  attr_writer :description
97
106
 
98
107
  # Optional configuration for commit hierarchy access control
99
- sig { returns(T.nilable(MetronomeSDK::Commit::HierarchyConfiguration)) }
108
+ sig { returns(T.nilable(MetronomeSDK::CommitHierarchyConfiguration)) }
100
109
  attr_reader :hierarchy_configuration
101
110
 
102
111
  sig do
103
112
  params(
104
113
  hierarchy_configuration:
105
- MetronomeSDK::Commit::HierarchyConfiguration::OrHash
114
+ MetronomeSDK::CommitHierarchyConfiguration::OrHash
106
115
  ).void
107
116
  end
108
117
  attr_writer :hierarchy_configuration
@@ -212,13 +221,11 @@ module MetronomeSDK
212
221
  # List of filters that determine what kind of customer usage draws down a commit
213
222
  # or credit. A customer's usage needs to meet the condition of at least one of the
214
223
  # specifiers to contribute to a commit's or credit's drawdown.
215
- sig { returns(T.nilable(T::Array[MetronomeSDK::Commit::Specifier])) }
224
+ sig { returns(T.nilable(T::Array[MetronomeSDK::CommitSpecifier])) }
216
225
  attr_reader :specifiers
217
226
 
218
227
  sig do
219
- params(
220
- specifiers: T::Array[MetronomeSDK::Commit::Specifier::OrHash]
221
- ).void
228
+ params(specifiers: T::Array[MetronomeSDK::CommitSpecifier::OrHash]).void
222
229
  end
223
230
  attr_writer :specifiers
224
231
 
@@ -235,6 +242,7 @@ module MetronomeSDK
235
242
  sig do
236
243
  params(
237
244
  id: String,
245
+ created_at: Time,
238
246
  product: MetronomeSDK::Commit::Product::OrHash,
239
247
  type: MetronomeSDK::Commit::Type::OrSymbol,
240
248
  access_schedule: MetronomeSDK::ScheduleDuration::OrHash,
@@ -248,7 +256,7 @@ module MetronomeSDK
248
256
  custom_fields: T::Hash[Symbol, String],
249
257
  description: String,
250
258
  hierarchy_configuration:
251
- MetronomeSDK::Commit::HierarchyConfiguration::OrHash,
259
+ MetronomeSDK::CommitHierarchyConfiguration::OrHash,
252
260
  invoice_contract: MetronomeSDK::Commit::InvoiceContract::OrHash,
253
261
  invoice_schedule: MetronomeSDK::SchedulePointInTime::OrHash,
254
262
  ledger:
@@ -277,12 +285,18 @@ module MetronomeSDK
277
285
  rolled_over_from: MetronomeSDK::Commit::RolledOverFrom::OrHash,
278
286
  rollover_fraction: Float,
279
287
  salesforce_opportunity_id: String,
280
- specifiers: T::Array[MetronomeSDK::Commit::Specifier::OrHash],
288
+ specifiers: T::Array[MetronomeSDK::CommitSpecifier::OrHash],
281
289
  uniqueness_key: String
282
290
  ).returns(T.attached_class)
283
291
  end
284
292
  def self.new(
285
293
  id:,
294
+ # Timestamp of when the commit was created.
295
+ #
296
+ # - Recurring commits: latter of commit service period date and parent commit
297
+ # start date
298
+ # - Rollover commits: when the new contract started
299
+ created_at:,
286
300
  product:,
287
301
  type:,
288
302
  # The schedule that the customer will gain access to the credits purposed with
@@ -306,6 +320,7 @@ module MetronomeSDK
306
320
  # included in the balance, including future-dated manual ledger entries.
307
321
  balance: nil,
308
322
  contract: nil,
323
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
309
324
  custom_fields: nil,
310
325
  description: nil,
311
326
  # Optional configuration for commit hierarchy access control
@@ -344,6 +359,7 @@ module MetronomeSDK
344
359
  override.returns(
345
360
  {
346
361
  id: String,
362
+ created_at: Time,
347
363
  product: MetronomeSDK::Commit::Product,
348
364
  type: MetronomeSDK::Commit::Type::TaggedSymbol,
349
365
  access_schedule: MetronomeSDK::ScheduleDuration,
@@ -356,8 +372,7 @@ module MetronomeSDK
356
372
  contract: MetronomeSDK::Commit::Contract,
357
373
  custom_fields: T::Hash[Symbol, String],
358
374
  description: String,
359
- hierarchy_configuration:
360
- MetronomeSDK::Commit::HierarchyConfiguration,
375
+ hierarchy_configuration: MetronomeSDK::CommitHierarchyConfiguration,
361
376
  invoice_contract: MetronomeSDK::Commit::InvoiceContract,
362
377
  invoice_schedule: MetronomeSDK::SchedulePointInTime,
363
378
  ledger: T::Array[MetronomeSDK::Commit::Ledger::Variants],
@@ -368,7 +383,7 @@ module MetronomeSDK
368
383
  rolled_over_from: MetronomeSDK::Commit::RolledOverFrom,
369
384
  rollover_fraction: Float,
370
385
  salesforce_opportunity_id: String,
371
- specifiers: T::Array[MetronomeSDK::Commit::Specifier],
386
+ specifiers: T::Array[MetronomeSDK::CommitSpecifier],
372
387
  uniqueness_key: String
373
388
  }
374
389
  )
@@ -438,274 +453,6 @@ module MetronomeSDK
438
453
  end
439
454
  end
440
455
 
441
- class HierarchyConfiguration < MetronomeSDK::Internal::Type::BaseModel
442
- OrHash =
443
- T.type_alias do
444
- T.any(
445
- MetronomeSDK::Commit::HierarchyConfiguration,
446
- MetronomeSDK::Internal::AnyHash
447
- )
448
- end
449
-
450
- sig do
451
- returns(
452
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::Variants
453
- )
454
- end
455
- attr_accessor :child_access
456
-
457
- # Optional configuration for commit hierarchy access control
458
- sig do
459
- params(
460
- child_access:
461
- T.any(
462
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::OrHash,
463
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::OrHash,
464
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::OrHash
465
- )
466
- ).returns(T.attached_class)
467
- end
468
- def self.new(child_access:)
469
- end
470
-
471
- sig do
472
- override.returns(
473
- {
474
- child_access:
475
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::Variants
476
- }
477
- )
478
- end
479
- def to_hash
480
- end
481
-
482
- module ChildAccess
483
- extend MetronomeSDK::Internal::Type::Union
484
-
485
- Variants =
486
- T.type_alias do
487
- T.any(
488
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll,
489
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone,
490
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs
491
- )
492
- end
493
-
494
- class CommitHierarchyChildAccessAll < MetronomeSDK::Internal::Type::BaseModel
495
- OrHash =
496
- T.type_alias do
497
- T.any(
498
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll,
499
- MetronomeSDK::Internal::AnyHash
500
- )
501
- end
502
-
503
- sig do
504
- returns(
505
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::TaggedSymbol
506
- )
507
- end
508
- attr_accessor :type
509
-
510
- sig do
511
- params(
512
- type:
513
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::OrSymbol
514
- ).returns(T.attached_class)
515
- end
516
- def self.new(type:)
517
- end
518
-
519
- sig do
520
- override.returns(
521
- {
522
- type:
523
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::TaggedSymbol
524
- }
525
- )
526
- end
527
- def to_hash
528
- end
529
-
530
- module Type
531
- extend MetronomeSDK::Internal::Type::Enum
532
-
533
- TaggedSymbol =
534
- T.type_alias do
535
- T.all(
536
- Symbol,
537
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type
538
- )
539
- end
540
- OrSymbol = T.type_alias { T.any(Symbol, String) }
541
-
542
- ALL =
543
- T.let(
544
- :ALL,
545
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::TaggedSymbol
546
- )
547
-
548
- sig do
549
- override.returns(
550
- T::Array[
551
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessAll::Type::TaggedSymbol
552
- ]
553
- )
554
- end
555
- def self.values
556
- end
557
- end
558
- end
559
-
560
- class CommitHierarchyChildAccessNone < MetronomeSDK::Internal::Type::BaseModel
561
- OrHash =
562
- T.type_alias do
563
- T.any(
564
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone,
565
- MetronomeSDK::Internal::AnyHash
566
- )
567
- end
568
-
569
- sig do
570
- returns(
571
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::TaggedSymbol
572
- )
573
- end
574
- attr_accessor :type
575
-
576
- sig do
577
- params(
578
- type:
579
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::OrSymbol
580
- ).returns(T.attached_class)
581
- end
582
- def self.new(type:)
583
- end
584
-
585
- sig do
586
- override.returns(
587
- {
588
- type:
589
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::TaggedSymbol
590
- }
591
- )
592
- end
593
- def to_hash
594
- end
595
-
596
- module Type
597
- extend MetronomeSDK::Internal::Type::Enum
598
-
599
- TaggedSymbol =
600
- T.type_alias do
601
- T.all(
602
- Symbol,
603
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type
604
- )
605
- end
606
- OrSymbol = T.type_alias { T.any(Symbol, String) }
607
-
608
- NONE =
609
- T.let(
610
- :NONE,
611
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::TaggedSymbol
612
- )
613
-
614
- sig do
615
- override.returns(
616
- T::Array[
617
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessNone::Type::TaggedSymbol
618
- ]
619
- )
620
- end
621
- def self.values
622
- end
623
- end
624
- end
625
-
626
- class CommitHierarchyChildAccessContractIDs < MetronomeSDK::Internal::Type::BaseModel
627
- OrHash =
628
- T.type_alias do
629
- T.any(
630
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs,
631
- MetronomeSDK::Internal::AnyHash
632
- )
633
- end
634
-
635
- sig { returns(T::Array[String]) }
636
- attr_accessor :contract_ids
637
-
638
- sig do
639
- returns(
640
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::TaggedSymbol
641
- )
642
- end
643
- attr_accessor :type
644
-
645
- sig do
646
- params(
647
- contract_ids: T::Array[String],
648
- type:
649
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::OrSymbol
650
- ).returns(T.attached_class)
651
- end
652
- def self.new(contract_ids:, type:)
653
- end
654
-
655
- sig do
656
- override.returns(
657
- {
658
- contract_ids: T::Array[String],
659
- type:
660
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::TaggedSymbol
661
- }
662
- )
663
- end
664
- def to_hash
665
- end
666
-
667
- module Type
668
- extend MetronomeSDK::Internal::Type::Enum
669
-
670
- TaggedSymbol =
671
- T.type_alias do
672
- T.all(
673
- Symbol,
674
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type
675
- )
676
- end
677
- OrSymbol = T.type_alias { T.any(Symbol, String) }
678
-
679
- CONTRACT_IDS =
680
- T.let(
681
- :CONTRACT_IDS,
682
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::TaggedSymbol
683
- )
684
-
685
- sig do
686
- override.returns(
687
- T::Array[
688
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::CommitHierarchyChildAccessContractIDs::Type::TaggedSymbol
689
- ]
690
- )
691
- end
692
- def self.values
693
- end
694
- end
695
- end
696
-
697
- sig do
698
- override.returns(
699
- T::Array[
700
- MetronomeSDK::Commit::HierarchyConfiguration::ChildAccess::Variants
701
- ]
702
- )
703
- end
704
- def self.variants
705
- end
706
- end
707
- end
708
-
709
456
  class InvoiceContract < MetronomeSDK::Internal::Type::BaseModel
710
457
  OrHash =
711
458
  T.type_alias do
@@ -2046,75 +1793,6 @@ module MetronomeSDK
2046
1793
  def to_hash
2047
1794
  end
2048
1795
  end
2049
-
2050
- class Specifier < MetronomeSDK::Internal::Type::BaseModel
2051
- OrHash =
2052
- T.type_alias do
2053
- T.any(
2054
- MetronomeSDK::Commit::Specifier,
2055
- MetronomeSDK::Internal::AnyHash
2056
- )
2057
- end
2058
-
2059
- sig { returns(T.nilable(T::Hash[Symbol, String])) }
2060
- attr_reader :presentation_group_values
2061
-
2062
- sig { params(presentation_group_values: T::Hash[Symbol, String]).void }
2063
- attr_writer :presentation_group_values
2064
-
2065
- sig { returns(T.nilable(T::Hash[Symbol, String])) }
2066
- attr_reader :pricing_group_values
2067
-
2068
- sig { params(pricing_group_values: T::Hash[Symbol, String]).void }
2069
- attr_writer :pricing_group_values
2070
-
2071
- # If provided, the specifier will only apply to the product with the specified ID.
2072
- sig { returns(T.nilable(String)) }
2073
- attr_reader :product_id
2074
-
2075
- sig { params(product_id: String).void }
2076
- attr_writer :product_id
2077
-
2078
- # If provided, the specifier will only apply to products with all the specified
2079
- # tags.
2080
- sig { returns(T.nilable(T::Array[String])) }
2081
- attr_reader :product_tags
2082
-
2083
- sig { params(product_tags: T::Array[String]).void }
2084
- attr_writer :product_tags
2085
-
2086
- sig do
2087
- params(
2088
- presentation_group_values: T::Hash[Symbol, String],
2089
- pricing_group_values: T::Hash[Symbol, String],
2090
- product_id: String,
2091
- product_tags: T::Array[String]
2092
- ).returns(T.attached_class)
2093
- end
2094
- def self.new(
2095
- presentation_group_values: nil,
2096
- pricing_group_values: nil,
2097
- # If provided, the specifier will only apply to the product with the specified ID.
2098
- product_id: nil,
2099
- # If provided, the specifier will only apply to products with all the specified
2100
- # tags.
2101
- product_tags: nil
2102
- )
2103
- end
2104
-
2105
- sig do
2106
- override.returns(
2107
- {
2108
- presentation_group_values: T::Hash[Symbol, String],
2109
- pricing_group_values: T::Hash[Symbol, String],
2110
- product_id: String,
2111
- product_tags: T::Array[String]
2112
- }
2113
- )
2114
- end
2115
- def to_hash
2116
- end
2117
- end
2118
1796
  end
2119
1797
  end
2120
1798
  end