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
@@ -12,299 +12,248 @@ module MetronomeSDK
12
12
  )
13
13
  end
14
14
 
15
+ sig { returns(String) }
16
+ attr_accessor :customer_id
17
+
15
18
  sig do
16
19
  returns(
17
20
  T::Array[
18
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data
21
+ MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger
19
22
  ]
20
23
  )
21
24
  end
22
- attr_accessor :data
23
-
24
- sig { returns(T.nilable(String)) }
25
- attr_accessor :next_page
25
+ attr_accessor :ledgers
26
26
 
27
27
  sig do
28
28
  params(
29
- data:
29
+ customer_id: String,
30
+ ledgers:
30
31
  T::Array[
31
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::OrHash
32
- ],
33
- next_page: T.nilable(String)
32
+ MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::OrHash
33
+ ]
34
34
  ).returns(T.attached_class)
35
35
  end
36
- def self.new(data:, next_page:)
36
+ def self.new(customer_id:, ledgers:)
37
37
  end
38
38
 
39
39
  sig do
40
40
  override.returns(
41
41
  {
42
- data:
42
+ customer_id: String,
43
+ ledgers:
43
44
  T::Array[
44
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data
45
- ],
46
- next_page: T.nilable(String)
45
+ MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger
46
+ ]
47
47
  }
48
48
  )
49
49
  end
50
50
  def to_hash
51
51
  end
52
52
 
53
- class Data < MetronomeSDK::Internal::Type::BaseModel
53
+ class Ledger < MetronomeSDK::Internal::Type::BaseModel
54
54
  OrHash =
55
55
  T.type_alias do
56
56
  T.any(
57
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data,
57
+ MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger,
58
58
  MetronomeSDK::Internal::AnyHash
59
59
  )
60
60
  end
61
61
 
62
- sig { returns(String) }
63
- attr_accessor :customer_id
62
+ sig { returns(MetronomeSDK::CreditTypeData) }
63
+ attr_reader :credit_type
64
64
 
65
+ sig { params(credit_type: MetronomeSDK::CreditTypeData::OrHash).void }
66
+ attr_writer :credit_type
67
+
68
+ # the effective balances at the end of the specified time window
65
69
  sig do
66
70
  returns(
67
- T::Array[
68
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger
69
- ]
71
+ MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::EndingBalance
70
72
  )
71
73
  end
72
- attr_accessor :ledgers
74
+ attr_reader :ending_balance
73
75
 
74
76
  sig do
75
77
  params(
76
- customer_id: String,
77
- ledgers:
78
- T::Array[
79
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::OrHash
80
- ]
78
+ ending_balance:
79
+ MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::EndingBalance::OrHash
80
+ ).void
81
+ end
82
+ attr_writer :ending_balance
83
+
84
+ sig { returns(T::Array[MetronomeSDK::V1::CreditLedgerEntry]) }
85
+ attr_accessor :entries
86
+
87
+ sig { returns(T::Array[MetronomeSDK::V1::CreditLedgerEntry]) }
88
+ attr_accessor :pending_entries
89
+
90
+ sig do
91
+ returns(
92
+ MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::StartingBalance
93
+ )
94
+ end
95
+ attr_reader :starting_balance
96
+
97
+ sig do
98
+ params(
99
+ starting_balance:
100
+ MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::StartingBalance::OrHash
101
+ ).void
102
+ end
103
+ attr_writer :starting_balance
104
+
105
+ sig do
106
+ params(
107
+ credit_type: MetronomeSDK::CreditTypeData::OrHash,
108
+ ending_balance:
109
+ MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::EndingBalance::OrHash,
110
+ entries: T::Array[MetronomeSDK::V1::CreditLedgerEntry::OrHash],
111
+ pending_entries:
112
+ T::Array[MetronomeSDK::V1::CreditLedgerEntry::OrHash],
113
+ starting_balance:
114
+ MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::StartingBalance::OrHash
81
115
  ).returns(T.attached_class)
82
116
  end
83
- def self.new(customer_id:, ledgers:)
117
+ def self.new(
118
+ credit_type:,
119
+ # the effective balances at the end of the specified time window
120
+ ending_balance:,
121
+ entries:,
122
+ pending_entries:,
123
+ starting_balance:
124
+ )
84
125
  end
85
126
 
86
127
  sig do
87
128
  override.returns(
88
129
  {
89
- customer_id: String,
90
- ledgers:
91
- T::Array[
92
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger
93
- ]
130
+ credit_type: MetronomeSDK::CreditTypeData,
131
+ ending_balance:
132
+ MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::EndingBalance,
133
+ entries: T::Array[MetronomeSDK::V1::CreditLedgerEntry],
134
+ pending_entries: T::Array[MetronomeSDK::V1::CreditLedgerEntry],
135
+ starting_balance:
136
+ MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::StartingBalance
94
137
  }
95
138
  )
96
139
  end
97
140
  def to_hash
98
141
  end
99
142
 
100
- class Ledger < MetronomeSDK::Internal::Type::BaseModel
143
+ class EndingBalance < MetronomeSDK::Internal::Type::BaseModel
101
144
  OrHash =
102
145
  T.type_alias do
103
146
  T.any(
104
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger,
147
+ MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::EndingBalance,
105
148
  MetronomeSDK::Internal::AnyHash
106
149
  )
107
150
  end
108
151
 
109
- sig { returns(MetronomeSDK::CreditTypeData) }
110
- attr_reader :credit_type
152
+ # the ending_before request parameter (if supplied) or the current billing
153
+ # period's end date
154
+ sig { returns(Time) }
155
+ attr_accessor :effective_at
111
156
 
112
- sig do
113
- params(credit_type: MetronomeSDK::CreditTypeData::OrHash).void
114
- end
115
- attr_writer :credit_type
157
+ # the ending balance, including the balance of all grants that have not expired
158
+ # before the effective_at date and deductions that happened before the
159
+ # effective_at date
160
+ sig { returns(Float) }
161
+ attr_accessor :excluding_pending
116
162
 
117
- # the effective balances at the end of the specified time window
118
- sig do
119
- returns(
120
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::EndingBalance
121
- )
122
- end
123
- attr_reader :ending_balance
124
-
125
- sig do
126
- params(
127
- ending_balance:
128
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::EndingBalance::OrHash
129
- ).void
130
- end
131
- attr_writer :ending_balance
132
-
133
- sig { returns(T::Array[MetronomeSDK::V1::CreditLedgerEntry]) }
134
- attr_accessor :entries
135
-
136
- sig { returns(T::Array[MetronomeSDK::V1::CreditLedgerEntry]) }
137
- attr_accessor :pending_entries
138
-
139
- sig do
140
- returns(
141
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::StartingBalance
142
- )
143
- end
144
- attr_reader :starting_balance
145
-
146
- sig do
147
- params(
148
- starting_balance:
149
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::StartingBalance::OrHash
150
- ).void
151
- end
152
- attr_writer :starting_balance
163
+ # the excluding_pending balance plus any pending invoice deductions and
164
+ # expirations that will happen by the effective_at date
165
+ sig { returns(Float) }
166
+ attr_accessor :including_pending
153
167
 
168
+ # the effective balances at the end of the specified time window
154
169
  sig do
155
170
  params(
156
- credit_type: MetronomeSDK::CreditTypeData::OrHash,
157
- ending_balance:
158
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::EndingBalance::OrHash,
159
- entries: T::Array[MetronomeSDK::V1::CreditLedgerEntry::OrHash],
160
- pending_entries:
161
- T::Array[MetronomeSDK::V1::CreditLedgerEntry::OrHash],
162
- starting_balance:
163
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::StartingBalance::OrHash
171
+ effective_at: Time,
172
+ excluding_pending: Float,
173
+ including_pending: Float
164
174
  ).returns(T.attached_class)
165
175
  end
166
176
  def self.new(
167
- credit_type:,
168
- # the effective balances at the end of the specified time window
169
- ending_balance:,
170
- entries:,
171
- pending_entries:,
172
- starting_balance:
173
- )
174
- end
175
-
176
- sig do
177
- override.returns(
178
- {
179
- credit_type: MetronomeSDK::CreditTypeData,
180
- ending_balance:
181
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::EndingBalance,
182
- entries: T::Array[MetronomeSDK::V1::CreditLedgerEntry],
183
- pending_entries:
184
- T::Array[MetronomeSDK::V1::CreditLedgerEntry],
185
- starting_balance:
186
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::StartingBalance
187
- }
188
- )
189
- end
190
- def to_hash
191
- end
192
-
193
- class EndingBalance < MetronomeSDK::Internal::Type::BaseModel
194
- OrHash =
195
- T.type_alias do
196
- T.any(
197
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::EndingBalance,
198
- MetronomeSDK::Internal::AnyHash
199
- )
200
- end
201
-
202
177
  # the ending_before request parameter (if supplied) or the current billing
203
178
  # period's end date
204
- sig { returns(Time) }
205
- attr_accessor :effective_at
206
-
179
+ effective_at:,
207
180
  # the ending balance, including the balance of all grants that have not expired
208
181
  # before the effective_at date and deductions that happened before the
209
182
  # effective_at date
210
- sig { returns(Float) }
211
- attr_accessor :excluding_pending
212
-
183
+ excluding_pending:,
213
184
  # the excluding_pending balance plus any pending invoice deductions and
214
185
  # expirations that will happen by the effective_at date
215
- sig { returns(Float) }
216
- attr_accessor :including_pending
186
+ including_pending:
187
+ )
188
+ end
217
189
 
218
- # the effective balances at the end of the specified time window
219
- sig do
220
- params(
190
+ sig do
191
+ override.returns(
192
+ {
221
193
  effective_at: Time,
222
194
  excluding_pending: Float,
223
195
  including_pending: Float
224
- ).returns(T.attached_class)
225
- end
226
- def self.new(
227
- # the ending_before request parameter (if supplied) or the current billing
228
- # period's end date
229
- effective_at:,
230
- # the ending balance, including the balance of all grants that have not expired
231
- # before the effective_at date and deductions that happened before the
232
- # effective_at date
233
- excluding_pending:,
234
- # the excluding_pending balance plus any pending invoice deductions and
235
- # expirations that will happen by the effective_at date
236
- including_pending:
196
+ }
237
197
  )
238
- end
198
+ end
199
+ def to_hash
200
+ end
201
+ end
239
202
 
240
- sig do
241
- override.returns(
242
- {
243
- effective_at: Time,
244
- excluding_pending: Float,
245
- including_pending: Float
246
- }
203
+ class StartingBalance < MetronomeSDK::Internal::Type::BaseModel
204
+ OrHash =
205
+ T.type_alias do
206
+ T.any(
207
+ MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Ledger::StartingBalance,
208
+ MetronomeSDK::Internal::AnyHash
247
209
  )
248
210
  end
249
- def to_hash
250
- end
251
- end
252
211
 
253
- class StartingBalance < MetronomeSDK::Internal::Type::BaseModel
254
- OrHash =
255
- T.type_alias do
256
- T.any(
257
- MetronomeSDK::Models::V1::CreditGrantListEntriesResponse::Data::Ledger::StartingBalance,
258
- MetronomeSDK::Internal::AnyHash
259
- )
260
- end
212
+ # the starting_on request parameter (if supplied) or the first credit grant's
213
+ # effective_at date
214
+ sig { returns(Time) }
215
+ attr_accessor :effective_at
216
+
217
+ # the starting balance, including all posted grants, deductions, and expirations
218
+ # that happened at or before the effective_at timestamp
219
+ sig { returns(Float) }
220
+ attr_accessor :excluding_pending
221
+
222
+ # the excluding_pending balance plus any pending activity that has not been posted
223
+ # at the time of the query
224
+ sig { returns(Float) }
225
+ attr_accessor :including_pending
261
226
 
227
+ sig do
228
+ params(
229
+ effective_at: Time,
230
+ excluding_pending: Float,
231
+ including_pending: Float
232
+ ).returns(T.attached_class)
233
+ end
234
+ def self.new(
262
235
  # the starting_on request parameter (if supplied) or the first credit grant's
263
236
  # effective_at date
264
- sig { returns(Time) }
265
- attr_accessor :effective_at
266
-
237
+ effective_at:,
267
238
  # the starting balance, including all posted grants, deductions, and expirations
268
239
  # that happened at or before the effective_at timestamp
269
- sig { returns(Float) }
270
- attr_accessor :excluding_pending
271
-
240
+ excluding_pending:,
272
241
  # the excluding_pending balance plus any pending activity that has not been posted
273
242
  # at the time of the query
274
- sig { returns(Float) }
275
- attr_accessor :including_pending
243
+ including_pending:
244
+ )
245
+ end
276
246
 
277
- sig do
278
- params(
247
+ sig do
248
+ override.returns(
249
+ {
279
250
  effective_at: Time,
280
251
  excluding_pending: Float,
281
252
  including_pending: Float
282
- ).returns(T.attached_class)
283
- end
284
- def self.new(
285
- # the starting_on request parameter (if supplied) or the first credit grant's
286
- # effective_at date
287
- effective_at:,
288
- # the starting balance, including all posted grants, deductions, and expirations
289
- # that happened at or before the effective_at timestamp
290
- excluding_pending:,
291
- # the excluding_pending balance plus any pending activity that has not been posted
292
- # at the time of the query
293
- including_pending:
253
+ }
294
254
  )
295
- end
296
-
297
- sig do
298
- override.returns(
299
- {
300
- effective_at: Time,
301
- excluding_pending: Float,
302
- including_pending: Float
303
- }
304
- )
305
- end
306
- def to_hash
307
- end
255
+ end
256
+ def to_hash
308
257
  end
309
258
  end
310
259
  end
@@ -32,6 +32,7 @@ module MetronomeSDK
32
32
  end
33
33
  attr_writer :balance
34
34
 
35
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
35
36
  sig { returns(T::Hash[Symbol, String]) }
36
37
  attr_accessor :custom_fields
37
38
 
@@ -162,6 +163,7 @@ module MetronomeSDK
162
163
  # billing period. Expiration deductions will be included only if the grant expires
163
164
  # before the end of the current billing period.
164
165
  balance:,
166
+ # Custom fields to be added eg. { "key1": "value1", "key2": "value2" }
165
167
  custom_fields:,
166
168
  # the Metronome ID of the customer
167
169
  customer_id:,