metronome-sdk 0.1.0.pre.alpha.3 → 0.1.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 (417) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +56 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/errors.rb +22 -0
  5. data/lib/metronome_sdk/internal/cursor_page.rb +1 -1
  6. data/lib/metronome_sdk/internal/transport/base_client.rb +10 -2
  7. data/lib/metronome_sdk/internal/type/array_of.rb +6 -1
  8. data/lib/metronome_sdk/internal/type/base_model.rb +82 -26
  9. data/lib/metronome_sdk/internal/type/boolean.rb +7 -1
  10. data/lib/metronome_sdk/internal/type/converter.rb +42 -34
  11. data/lib/metronome_sdk/internal/type/enum.rb +16 -5
  12. data/lib/metronome_sdk/internal/type/file_input.rb +6 -1
  13. data/lib/metronome_sdk/internal/type/hash_of.rb +6 -1
  14. data/lib/metronome_sdk/internal/type/union.rb +17 -9
  15. data/lib/metronome_sdk/internal/type/unknown.rb +7 -1
  16. data/lib/metronome_sdk/internal/util.rb +8 -9
  17. data/lib/metronome_sdk/models/base_usage_filter.rb +27 -0
  18. data/lib/metronome_sdk/models/commit.rb +1053 -0
  19. data/lib/metronome_sdk/models/contract_without_amendments.rb +2043 -0
  20. data/lib/metronome_sdk/models/credit.rb +677 -0
  21. data/lib/metronome_sdk/models/credit_type_data.rb +21 -0
  22. data/lib/metronome_sdk/models/discount.rb +68 -0
  23. data/lib/metronome_sdk/models/event_type_filter.rb +33 -0
  24. data/lib/metronome_sdk/models/id.rb +15 -0
  25. data/lib/metronome_sdk/models/override.rb +381 -0
  26. data/lib/metronome_sdk/models/pro_service.rb +73 -0
  27. data/lib/metronome_sdk/models/property_filter.rb +52 -0
  28. data/lib/metronome_sdk/models/rate.rb +101 -0
  29. data/lib/metronome_sdk/models/schedule_duration.rb +50 -0
  30. data/lib/metronome_sdk/models/schedule_point_in_time.rb +62 -0
  31. data/lib/metronome_sdk/models/scheduled_charge.rb +76 -0
  32. data/lib/metronome_sdk/models/tier.rb +21 -0
  33. data/lib/metronome_sdk/models/v1/alert_archive_response.rb +3 -14
  34. data/lib/metronome_sdk/models/v1/alert_create_params.rb +4 -1
  35. data/lib/metronome_sdk/models/v1/alert_create_response.rb +3 -14
  36. data/lib/metronome_sdk/models/v1/billable_metric_archive_params.rb +2 -8
  37. data/lib/metronome_sdk/models/v1/billable_metric_archive_response.rb +3 -14
  38. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +6 -86
  39. data/lib/metronome_sdk/models/v1/billable_metric_create_response.rb +3 -14
  40. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +6 -85
  41. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +8 -85
  42. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +312 -35
  43. data/lib/metronome_sdk/models/v1/contract_amend_response.rb +3 -14
  44. data/lib/metronome_sdk/models/v1/contract_archive_response.rb +3 -14
  45. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_response.rb +3 -1276
  46. data/lib/metronome_sdk/models/v1/contract_create_params.rb +792 -104
  47. data/lib/metronome_sdk/models/v1/contract_create_response.rb +3 -14
  48. data/lib/metronome_sdk/models/v1/contract_list_balances_params.rb +9 -1
  49. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +5 -1645
  50. data/lib/metronome_sdk/models/v1/contract_list_response.rb +253 -10692
  51. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +9 -295
  52. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +254 -10721
  53. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rb +3 -1276
  54. data/lib/metronome_sdk/models/v1/contract_update_end_date_response.rb +3 -14
  55. data/lib/metronome_sdk/models/v1/contracts/product_archive_response.rb +3 -14
  56. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +6 -97
  57. data/lib/metronome_sdk/models/v1/contracts/product_create_response.rb +3 -14
  58. data/lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb +148 -0
  59. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +12 -561
  60. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_params.rb +2 -8
  61. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +14 -559
  62. data/lib/metronome_sdk/models/v1/contracts/product_update_params.rb +6 -97
  63. data/lib/metronome_sdk/models/v1/contracts/product_update_response.rb +3 -14
  64. data/lib/metronome_sdk/models/v1/contracts/quantity_conversion.rb +57 -0
  65. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +45 -0
  66. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_params.rb +2 -8
  67. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_response.rb +3 -14
  68. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_response.rb +3 -14
  69. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +6 -42
  70. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rb +2 -8
  71. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +6 -159
  72. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +6 -42
  73. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_response.rb +3 -14
  74. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rb +3 -14
  75. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rb +3 -14
  76. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +6 -44
  77. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rb +3 -16
  78. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +6 -44
  79. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +9 -61
  80. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +6 -158
  81. data/lib/metronome_sdk/models/v1/credit_grant_create_params.rb +5 -77
  82. data/lib/metronome_sdk/models/v1/credit_grant_create_response.rb +3 -14
  83. data/lib/metronome_sdk/models/v1/credit_grant_edit_response.rb +3 -14
  84. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_params.rb +20 -1
  85. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +11 -153
  86. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +14 -175
  87. data/lib/metronome_sdk/models/v1/credit_grant_void_response.rb +3 -14
  88. data/lib/metronome_sdk/models/v1/credit_ledger_entry.rb +69 -0
  89. data/lib/metronome_sdk/models/v1/customer.rb +53 -0
  90. data/lib/metronome_sdk/models/v1/customer_archive_params.rb +2 -8
  91. data/lib/metronome_sdk/models/v1/customer_archive_response.rb +3 -14
  92. data/lib/metronome_sdk/models/v1/customer_create_response.rb +3 -50
  93. data/lib/metronome_sdk/models/v1/{customer_list_response.rb → customer_detail.rb} +14 -15
  94. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +6 -86
  95. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +115 -0
  96. data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +18 -0
  97. data/lib/metronome_sdk/models/v1/customer_retrieve_response.rb +3 -126
  98. data/lib/metronome_sdk/models/v1/customer_set_name_response.rb +3 -50
  99. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +5 -276
  100. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_response.rb +3 -279
  101. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +9 -1
  102. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +8 -6
  103. data/lib/metronome_sdk/models/v1/customers/commit_create_response.rb +3 -14
  104. data/lib/metronome_sdk/models/v1/customers/commit_list_params.rb +9 -1
  105. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +3 -1047
  106. data/lib/metronome_sdk/models/v1/customers/commit_update_end_date_response.rb +3 -14
  107. data/lib/metronome_sdk/models/v1/customers/credit_create_response.rb +3 -14
  108. data/lib/metronome_sdk/models/v1/customers/credit_list_params.rb +9 -1
  109. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +3 -593
  110. data/lib/metronome_sdk/models/v1/customers/credit_update_end_date_response.rb +3 -14
  111. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +270 -0
  112. data/lib/metronome_sdk/models/v1/customers/{invoice_list_response.rb → invoice.rb} +119 -303
  113. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rb +2 -1271
  114. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_response.rb +3 -1276
  115. data/lib/metronome_sdk/models/v1/customers/plan_add_response.rb +3 -14
  116. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +3 -21
  117. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +1 -0
  118. data/lib/metronome_sdk/models/v1/plan_detail.rb +200 -0
  119. data/lib/metronome_sdk/models/v1/plan_get_details_response.rb +3 -286
  120. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +3 -20
  121. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +3 -128
  122. data/lib/metronome_sdk/models/v1/rollover_amount_max_amount.rb +38 -0
  123. data/lib/metronome_sdk/models/v1/rollover_amount_max_percentage.rb +38 -0
  124. data/lib/metronome_sdk/models/v1/usage_search_params.rb +24 -0
  125. data/lib/metronome_sdk/models/v1/usage_search_response.rb +249 -0
  126. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +11 -8
  127. data/lib/metronome_sdk/models/v2/contract_edit_commit_response.rb +3 -14
  128. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +3 -2
  129. data/lib/metronome_sdk/models/v2/contract_edit_credit_response.rb +3 -14
  130. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +1127 -105
  131. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +3 -14
  132. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +577 -643
  133. data/lib/metronome_sdk/models/v2/contract_list_response.rb +917 -746
  134. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +917 -748
  135. data/lib/metronome_sdk/models.rb +36 -4
  136. data/lib/metronome_sdk/resources/v1/alerts.rb +1 -1
  137. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +2 -2
  138. data/lib/metronome_sdk/resources/v1/contracts/products.rb +4 -4
  139. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +1 -1
  140. data/lib/metronome_sdk/resources/v1/contracts.rb +11 -5
  141. data/lib/metronome_sdk/resources/v1/credit_grants.rb +4 -2
  142. data/lib/metronome_sdk/resources/v1/customers/commits.rb +5 -3
  143. data/lib/metronome_sdk/resources/v1/customers/credits.rb +3 -1
  144. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +2 -2
  145. data/lib/metronome_sdk/resources/v1/customers.rb +40 -2
  146. data/lib/metronome_sdk/resources/v1/usage.rb +25 -0
  147. data/lib/metronome_sdk/resources/v2/contracts.rb +11 -9
  148. data/lib/metronome_sdk/version.rb +1 -1
  149. data/lib/metronome_sdk.rb +31 -2
  150. data/rbi/metronome_sdk/errors.rbi +16 -0
  151. data/rbi/metronome_sdk/internal/type/boolean.rbi +2 -0
  152. data/rbi/metronome_sdk/internal/type/converter.rbi +15 -15
  153. data/rbi/metronome_sdk/internal/type/union.rbi +5 -0
  154. data/rbi/metronome_sdk/internal/type/unknown.rbi +2 -0
  155. data/rbi/metronome_sdk/internal/util.rbi +2 -0
  156. data/rbi/metronome_sdk/models/base_usage_filter.rbi +46 -0
  157. data/rbi/metronome_sdk/models/commit.rbi +2046 -0
  158. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +4260 -0
  159. data/rbi/metronome_sdk/models/credit.rbi +1314 -0
  160. data/rbi/metronome_sdk/models/credit_type_data.rbi +26 -0
  161. data/rbi/metronome_sdk/models/discount.rbi +106 -0
  162. data/rbi/metronome_sdk/models/event_type_filter.rbi +57 -0
  163. data/rbi/metronome_sdk/models/id.rbi +23 -0
  164. data/rbi/metronome_sdk/models/override.rbi +675 -0
  165. data/rbi/metronome_sdk/models/pro_service.rbi +98 -0
  166. data/rbi/metronome_sdk/models/property_filter.rbi +88 -0
  167. data/rbi/metronome_sdk/models/rate.rbi +155 -0
  168. data/rbi/metronome_sdk/models/schedule_duration.rbi +89 -0
  169. data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +121 -0
  170. data/rbi/metronome_sdk/models/scheduled_charge.rbi +119 -0
  171. data/rbi/metronome_sdk/models/tier.rbi +29 -0
  172. data/rbi/metronome_sdk/models/v1/alert_archive_response.rbi +4 -37
  173. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +6 -0
  174. data/rbi/metronome_sdk/models/v1/alert_create_response.rbi +4 -37
  175. data/rbi/metronome_sdk/models/v1/billable_metric_archive_params.rbi +6 -12
  176. data/rbi/metronome_sdk/models/v1/billable_metric_archive_response.rbi +4 -44
  177. data/rbi/metronome_sdk/models/v1/billable_metric_create_params.rbi +8 -177
  178. data/rbi/metronome_sdk/models/v1/billable_metric_create_response.rbi +4 -43
  179. data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +8 -177
  180. data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +8 -175
  181. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +712 -68
  182. data/rbi/metronome_sdk/models/v1/contract_amend_response.rbi +4 -37
  183. data/rbi/metronome_sdk/models/v1/contract_archive_response.rbi +4 -39
  184. data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbi +3 -2595
  185. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1738 -210
  186. data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +4 -37
  187. data/rbi/metronome_sdk/models/v1/contract_list_balances_params.rbi +11 -0
  188. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +3 -3366
  189. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +375 -22523
  190. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +12 -632
  191. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +375 -22523
  192. data/rbi/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbi +3 -2595
  193. data/rbi/metronome_sdk/models/v1/contract_update_end_date_response.rbi +4 -44
  194. data/rbi/metronome_sdk/models/v1/contracts/product_archive_response.rbi +4 -44
  195. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +8 -209
  196. data/rbi/metronome_sdk/models/v1/contracts/product_create_response.rbi +4 -44
  197. data/rbi/metronome_sdk/models/v1/contracts/product_list_item_state.rbi +237 -0
  198. data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +76 -1143
  199. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_params.rbi +3 -9
  200. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +76 -1137
  201. data/rbi/metronome_sdk/models/v1/contracts/product_update_params.rbi +8 -209
  202. data/rbi/metronome_sdk/models/v1/contracts/product_update_response.rbi +4 -44
  203. data/rbi/metronome_sdk/models/v1/contracts/quantity_conversion.rbi +111 -0
  204. data/rbi/metronome_sdk/models/v1/contracts/quantity_rounding.rbi +94 -0
  205. data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbi +3 -9
  206. data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbi +4 -44
  207. data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_response.rbi +4 -44
  208. data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +8 -74
  209. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbi +3 -9
  210. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +8 -344
  211. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +8 -74
  212. data/rbi/metronome_sdk/models/v1/contracts/rate_card_update_response.rbi +4 -44
  213. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbi +4 -44
  214. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbi +4 -44
  215. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +8 -108
  216. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbi +4 -45
  217. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +8 -108
  218. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +12 -149
  219. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +8 -344
  220. data/rbi/metronome_sdk/models/v1/credit_grant_create_params.rbi +8 -166
  221. data/rbi/metronome_sdk/models/v1/credit_grant_create_response.rbi +4 -41
  222. data/rbi/metronome_sdk/models/v1/credit_grant_edit_response.rbi +4 -39
  223. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_params.rbi +58 -0
  224. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +10 -231
  225. data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +14 -281
  226. data/rbi/metronome_sdk/models/v1/credit_grant_void_response.rbi +4 -39
  227. data/rbi/metronome_sdk/models/v1/credit_ledger_entry.rbi +90 -0
  228. data/rbi/metronome_sdk/models/v1/customer.rbi +74 -0
  229. data/rbi/metronome_sdk/models/v1/customer_archive_params.rbi +6 -12
  230. data/rbi/metronome_sdk/models/v1/customer_archive_response.rbi +4 -39
  231. data/rbi/metronome_sdk/models/v1/customer_create_response.rbi +6 -84
  232. data/rbi/metronome_sdk/models/v1/{customer_list_response.rbi → customer_detail.rbi} +19 -26
  233. data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +8 -177
  234. data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +214 -0
  235. data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +35 -0
  236. data/rbi/metronome_sdk/models/v1/customer_retrieve_response.rbi +6 -255
  237. data/rbi/metronome_sdk/models/v1/customer_set_name_response.rbi +6 -86
  238. data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +3 -623
  239. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_response.rbi +4 -622
  240. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +11 -0
  241. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +12 -8
  242. data/rbi/metronome_sdk/models/v1/customers/commit_create_response.rbi +4 -44
  243. data/rbi/metronome_sdk/models/v1/customers/commit_list_params.rbi +11 -0
  244. data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +3 -2164
  245. data/rbi/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbi +4 -44
  246. data/rbi/metronome_sdk/models/v1/customers/credit_create_response.rbi +4 -44
  247. data/rbi/metronome_sdk/models/v1/customers/credit_list_params.rbi +11 -0
  248. data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +3 -1224
  249. data/rbi/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbi +4 -44
  250. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +572 -0
  251. data/rbi/metronome_sdk/models/v1/customers/{invoice_list_response.rbi → invoice.rbi} +182 -589
  252. data/rbi/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbi +4 -2561
  253. data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbi +6 -2612
  254. data/rbi/metronome_sdk/models/v1/customers/plan_add_response.rbi +4 -41
  255. data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +4 -39
  256. data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +5 -0
  257. data/rbi/metronome_sdk/models/v1/plan_detail.rbi +349 -0
  258. data/rbi/metronome_sdk/models/v1/plan_get_details_response.rbi +6 -560
  259. data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +4 -37
  260. data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +4 -248
  261. data/rbi/metronome_sdk/models/v1/rollover_amount_max_amount.rbi +79 -0
  262. data/rbi/metronome_sdk/models/v1/rollover_amount_max_percentage.rbi +80 -0
  263. data/rbi/metronome_sdk/models/v1/usage_search_params.rbi +48 -0
  264. data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +438 -0
  265. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +23 -23
  266. data/rbi/metronome_sdk/models/v2/contract_edit_commit_response.rbi +4 -41
  267. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +11 -15
  268. data/rbi/metronome_sdk/models/v2/contract_edit_credit_response.rbi +4 -41
  269. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +2463 -206
  270. data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +4 -37
  271. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +1381 -1550
  272. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +2017 -1466
  273. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +2017 -1466
  274. data/rbi/metronome_sdk/models.rbi +32 -0
  275. data/rbi/metronome_sdk/resources/v1/alerts.rbi +3 -0
  276. data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +2 -6
  277. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +4 -4
  278. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +1 -4
  279. data/rbi/metronome_sdk/resources/v1/contracts.rbi +13 -4
  280. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +4 -0
  281. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +9 -4
  282. data/rbi/metronome_sdk/resources/v1/customers/credits.rbi +3 -0
  283. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +1 -1
  284. data/rbi/metronome_sdk/resources/v1/customers.rbi +34 -3
  285. data/rbi/metronome_sdk/resources/v1/usage.rbi +17 -0
  286. data/rbi/metronome_sdk/resources/v2/contracts.rbi +24 -14
  287. data/sig/metronome_sdk/errors.rbs +9 -0
  288. data/sig/metronome_sdk/internal/type/converter.rbs +7 -1
  289. data/sig/metronome_sdk/models/base_usage_filter.rbs +28 -0
  290. data/sig/metronome_sdk/models/commit.rbs +1063 -0
  291. data/sig/metronome_sdk/models/contract_without_amendments.rbs +1828 -0
  292. data/sig/metronome_sdk/models/credit.rbs +686 -0
  293. data/sig/metronome_sdk/models/credit_type_data.rbs +15 -0
  294. data/sig/metronome_sdk/models/discount.rbs +63 -0
  295. data/sig/metronome_sdk/models/event_type_filter.rbs +26 -0
  296. data/sig/metronome_sdk/models/id.rbs +13 -0
  297. data/sig/metronome_sdk/models/override.rbs +399 -0
  298. data/sig/metronome_sdk/models/pro_service.rbs +61 -0
  299. data/sig/metronome_sdk/models/property_filter.rbs +41 -0
  300. data/sig/metronome_sdk/models/rate.rbs +94 -0
  301. data/sig/metronome_sdk/models/schedule_duration.rbs +56 -0
  302. data/sig/metronome_sdk/models/schedule_point_in_time.rbs +75 -0
  303. data/sig/metronome_sdk/models/scheduled_charge.rbs +70 -0
  304. data/sig/metronome_sdk/models/tier.rbs +17 -0
  305. data/sig/metronome_sdk/models/v1/alert_archive_response.rbs +4 -19
  306. data/sig/metronome_sdk/models/v1/alert_create_response.rbs +4 -19
  307. data/sig/metronome_sdk/models/v1/billable_metric_archive_params.rbs +4 -12
  308. data/sig/metronome_sdk/models/v1/billable_metric_archive_response.rbs +4 -19
  309. data/sig/metronome_sdk/models/v1/billable_metric_create_params.rbs +12 -73
  310. data/sig/metronome_sdk/models/v1/billable_metric_create_response.rbs +4 -19
  311. data/sig/metronome_sdk/models/v1/billable_metric_list_response.rbs +12 -73
  312. data/sig/metronome_sdk/models/v1/billable_metric_retrieve_response.rbs +12 -73
  313. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +291 -24
  314. data/sig/metronome_sdk/models/v1/contract_amend_response.rbs +4 -19
  315. data/sig/metronome_sdk/models/v1/contract_archive_response.rbs +4 -19
  316. data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbs +4 -1291
  317. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +694 -84
  318. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +4 -19
  319. data/sig/metronome_sdk/models/v1/contract_list_balances_params.rbs +7 -0
  320. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +1 -1642
  321. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +188 -10437
  322. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +15 -271
  323. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +188 -10437
  324. data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbs +4 -1291
  325. data/sig/metronome_sdk/models/v1/contract_update_end_date_response.rbs +4 -19
  326. data/sig/metronome_sdk/models/v1/contracts/product_archive_response.rbs +4 -21
  327. data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +8 -82
  328. data/sig/metronome_sdk/models/v1/contracts/product_create_response.rbs +4 -21
  329. data/sig/metronome_sdk/models/v1/contracts/product_list_item_state.rbs +121 -0
  330. data/sig/metronome_sdk/models/v1/contracts/product_list_response.rbs +16 -466
  331. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_params.rbs +4 -12
  332. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_response.rbs +16 -466
  333. data/sig/metronome_sdk/models/v1/contracts/product_update_params.rbs +8 -82
  334. data/sig/metronome_sdk/models/v1/contracts/product_update_response.rbs +4 -21
  335. data/sig/metronome_sdk/models/v1/contracts/quantity_conversion.rbs +47 -0
  336. data/sig/metronome_sdk/models/v1/contracts/quantity_rounding.rbs +41 -0
  337. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbs +4 -12
  338. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbs +4 -21
  339. data/sig/metronome_sdk/models/v1/contracts/rate_card_create_response.rbs +4 -21
  340. data/sig/metronome_sdk/models/v1/contracts/rate_card_list_response.rbs +10 -34
  341. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbs +4 -12
  342. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +10 -144
  343. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbs +10 -34
  344. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_response.rbs +4 -21
  345. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbs +4 -21
  346. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbs +4 -21
  347. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +12 -40
  348. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbs +4 -21
  349. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +12 -40
  350. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +18 -58
  351. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +10 -144
  352. data/sig/metronome_sdk/models/v1/credit_grant_create_params.rbs +2 -66
  353. data/sig/metronome_sdk/models/v1/credit_grant_create_response.rbs +4 -19
  354. data/sig/metronome_sdk/models/v1/credit_grant_edit_response.rbs +4 -19
  355. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_params.rbs +20 -0
  356. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +12 -118
  357. data/sig/metronome_sdk/models/v1/credit_grant_list_response.rbs +16 -140
  358. data/sig/metronome_sdk/models/v1/credit_grant_void_response.rbs +4 -19
  359. data/sig/metronome_sdk/models/v1/credit_ledger_entry.rbs +52 -0
  360. data/sig/metronome_sdk/models/v1/customer.rbs +44 -0
  361. data/sig/metronome_sdk/models/v1/customer_archive_params.rbs +4 -12
  362. data/sig/metronome_sdk/models/v1/customer_archive_response.rbs +4 -19
  363. data/sig/metronome_sdk/models/v1/customer_create_response.rbs +4 -48
  364. data/sig/metronome_sdk/models/v1/{customer_list_response.rbs → customer_detail.rbs} +17 -17
  365. data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbs +12 -73
  366. data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +105 -0
  367. data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +16 -0
  368. data/sig/metronome_sdk/models/v1/customer_retrieve_response.rbs +4 -112
  369. data/sig/metronome_sdk/models/v1/customer_set_name_response.rbs +4 -48
  370. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +4 -243
  371. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_response.rbs +4 -247
  372. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +7 -0
  373. data/sig/metronome_sdk/models/v1/customers/commit_create_response.rbs +4 -21
  374. data/sig/metronome_sdk/models/v1/customers/commit_list_params.rbs +7 -0
  375. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +4 -1057
  376. data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbs +4 -21
  377. data/sig/metronome_sdk/models/v1/customers/credit_create_response.rbs +4 -21
  378. data/sig/metronome_sdk/models/v1/customers/credit_list_params.rbs +7 -0
  379. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +4 -596
  380. data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbs +4 -21
  381. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +234 -0
  382. data/sig/metronome_sdk/models/v1/customers/{invoice_list_response.rbs → invoice.rbs} +147 -305
  383. data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbs +8 -1278
  384. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbs +4 -1294
  385. data/sig/metronome_sdk/models/v1/customers/plan_add_response.rbs +4 -19
  386. data/sig/metronome_sdk/models/v1/customers/plan_list_response.rbs +4 -16
  387. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +2 -1
  388. data/sig/metronome_sdk/models/v1/plan_detail.rbs +203 -0
  389. data/sig/metronome_sdk/models/v1/plan_get_details_response.rbs +4 -267
  390. data/sig/metronome_sdk/models/v1/plan_list_charges_response.rbs +4 -16
  391. data/sig/metronome_sdk/models/v1/plan_list_customers_response.rbs +4 -108
  392. data/sig/metronome_sdk/models/v1/rollover_amount_max_amount.rbs +37 -0
  393. data/sig/metronome_sdk/models/v1/rollover_amount_max_percentage.rbs +37 -0
  394. data/sig/metronome_sdk/models/v1/usage_search_params.rbs +26 -0
  395. data/sig/metronome_sdk/models/v1/usage_search_response.rbs +230 -0
  396. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +4 -8
  397. data/sig/metronome_sdk/models/v2/contract_edit_commit_response.rbs +4 -19
  398. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +4 -8
  399. data/sig/metronome_sdk/models/v2/contract_edit_credit_response.rbs +4 -19
  400. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +989 -77
  401. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +4 -19
  402. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +510 -655
  403. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +970 -809
  404. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +970 -809
  405. data/sig/metronome_sdk/models.rbs +32 -0
  406. data/sig/metronome_sdk/resources/v1/billable_metrics.rbs +2 -2
  407. data/sig/metronome_sdk/resources/v1/contracts/products.rbs +4 -4
  408. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -1
  409. data/sig/metronome_sdk/resources/v1/contracts.rbs +4 -1
  410. data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -0
  411. data/sig/metronome_sdk/resources/v1/customers/commits.rbs +1 -0
  412. data/sig/metronome_sdk/resources/v1/customers/credits.rbs +1 -0
  413. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -1
  414. data/sig/metronome_sdk/resources/v1/customers.rbs +9 -1
  415. data/sig/metronome_sdk/resources/v1/usage.rbs +5 -0
  416. data/sig/metronome_sdk/resources/v2/contracts.rbs +3 -2
  417. metadata +97 -10
@@ -1,6 +1,38 @@
1
1
  # typed: strong
2
2
 
3
3
  module MetronomeSDK
4
+ BaseUsageFilter = MetronomeSDK::Models::BaseUsageFilter
5
+
6
+ Commit = MetronomeSDK::Models::Commit
7
+
8
+ ContractWithoutAmendments = MetronomeSDK::Models::ContractWithoutAmendments
9
+
10
+ Credit = MetronomeSDK::Models::Credit
11
+
12
+ CreditTypeData = MetronomeSDK::Models::CreditTypeData
13
+
14
+ Discount = MetronomeSDK::Models::Discount
15
+
16
+ EventTypeFilter = MetronomeSDK::Models::EventTypeFilter
17
+
18
+ ID = MetronomeSDK::Models::ID
19
+
20
+ Override = MetronomeSDK::Models::Override
21
+
22
+ PropertyFilter = MetronomeSDK::Models::PropertyFilter
23
+
24
+ ProService = MetronomeSDK::Models::ProService
25
+
26
+ Rate = MetronomeSDK::Models::Rate
27
+
28
+ ScheduledCharge = MetronomeSDK::Models::ScheduledCharge
29
+
30
+ ScheduleDuration = MetronomeSDK::Models::ScheduleDuration
31
+
32
+ SchedulePointInTime = MetronomeSDK::Models::SchedulePointInTime
33
+
34
+ Tier = MetronomeSDK::Models::Tier
35
+
4
36
  V1 = MetronomeSDK::Models::V1
5
37
 
6
38
  V2 = MetronomeSDK::Models::V2
@@ -43,6 +43,9 @@ module MetronomeSDK
43
43
  # applies to, by looking at the credit_grant_type field on the credit grant. This
44
44
  # field is only defined for CreditPercentage and CreditBalance alerts
45
45
  credit_grant_type_filters: nil,
46
+ # ID of the credit's currency, defaults to USD. If the specific alert type
47
+ # requires a pricing unit/currency, find the ID in the
48
+ # [Metronome app](https://app.metronome.com/offering/pricing-units).
46
49
  credit_type_id: nil,
47
50
  # A list of custom field filters for alert types that support advanced filtering.
48
51
  # Only present for contract invoices.
@@ -12,13 +12,9 @@ module MetronomeSDK
12
12
  aggregation_type:
13
13
  MetronomeSDK::V1::BillableMetricCreateParams::AggregationType::OrSymbol,
14
14
  custom_fields: T::Hash[Symbol, String],
15
- event_type_filter:
16
- MetronomeSDK::V1::BillableMetricCreateParams::EventTypeFilter::OrHash,
15
+ event_type_filter: MetronomeSDK::EventTypeFilter::OrHash,
17
16
  group_keys: T::Array[T::Array[String]],
18
- property_filters:
19
- T::Array[
20
- MetronomeSDK::V1::BillableMetricCreateParams::PropertyFilter::OrHash
21
- ],
17
+ property_filters: T::Array[MetronomeSDK::PropertyFilter::OrHash],
22
18
  sql: String,
23
19
  request_options: MetronomeSDK::RequestOptions::OrHash
24
20
  ).returns(MetronomeSDK::Models::V1::BillableMetricCreateResponse)
@@ -22,11 +22,11 @@ module MetronomeSDK
22
22
  pricing_group_key: T::Array[String],
23
23
  quantity_conversion:
24
24
  T.nilable(
25
- MetronomeSDK::V1::Contracts::ProductCreateParams::QuantityConversion::OrHash
25
+ MetronomeSDK::V1::Contracts::QuantityConversion::OrHash
26
26
  ),
27
27
  quantity_rounding:
28
28
  T.nilable(
29
- MetronomeSDK::V1::Contracts::ProductCreateParams::QuantityRounding::OrHash
29
+ MetronomeSDK::V1::Contracts::QuantityRounding::OrHash
30
30
  ),
31
31
  tags: T::Array[String],
32
32
  request_options: MetronomeSDK::RequestOptions::OrHash
@@ -110,11 +110,11 @@ module MetronomeSDK
110
110
  pricing_group_key: T::Array[String],
111
111
  quantity_conversion:
112
112
  T.nilable(
113
- MetronomeSDK::V1::Contracts::ProductUpdateParams::QuantityConversion::OrHash
113
+ MetronomeSDK::V1::Contracts::QuantityConversion::OrHash
114
114
  ),
115
115
  quantity_rounding:
116
116
  T.nilable(
117
- MetronomeSDK::V1::Contracts::ProductUpdateParams::QuantityRounding::OrHash
117
+ MetronomeSDK::V1::Contracts::QuantityRounding::OrHash
118
118
  ),
119
119
  tags: T::Array[String],
120
120
  request_options: MetronomeSDK::RequestOptions::OrHash
@@ -61,10 +61,7 @@ module MetronomeSDK
61
61
  price: Float,
62
62
  pricing_group_values: T::Hash[Symbol, String],
63
63
  quantity: Float,
64
- tiers:
65
- T::Array[
66
- MetronomeSDK::V1::Contracts::RateCards::RateAddParams::Tier::OrHash
67
- ],
64
+ tiers: T::Array[MetronomeSDK::Tier::OrHash],
68
65
  use_list_prices: T::Boolean,
69
66
  request_options: MetronomeSDK::RequestOptions::OrHash
70
67
  ).returns(
@@ -30,6 +30,8 @@ module MetronomeSDK
30
30
  MetronomeSDK::V1::ContractCreateParams::Discount::OrHash
31
31
  ],
32
32
  ending_before: Time,
33
+ hierarchy_configuration:
34
+ MetronomeSDK::V1::ContractCreateParams::HierarchyConfiguration::OrHash,
33
35
  multiplier_override_prioritization:
34
36
  MetronomeSDK::V1::ContractCreateParams::MultiplierOverridePrioritization::OrSymbol,
35
37
  name: String,
@@ -41,6 +43,7 @@ module MetronomeSDK
41
43
  ],
42
44
  prepaid_balance_threshold_configuration:
43
45
  MetronomeSDK::V1::ContractCreateParams::PrepaidBalanceThresholdConfiguration::OrHash,
46
+ priority: Float,
44
47
  professional_services:
45
48
  T::Array[
46
49
  MetronomeSDK::V1::ContractCreateParams::ProfessionalService::OrHash
@@ -76,8 +79,7 @@ module MetronomeSDK
76
79
  transition:
77
80
  MetronomeSDK::V1::ContractCreateParams::Transition::OrHash,
78
81
  uniqueness_key: String,
79
- usage_filter:
80
- MetronomeSDK::V1::ContractCreateParams::UsageFilter::OrHash,
82
+ usage_filter: MetronomeSDK::BaseUsageFilter::OrHash,
81
83
  usage_statement_schedule:
82
84
  MetronomeSDK::V1::ContractCreateParams::UsageStatementSchedule::OrHash,
83
85
  request_options: MetronomeSDK::RequestOptions::OrHash
@@ -87,7 +89,8 @@ module MetronomeSDK
87
89
  customer_id:,
88
90
  # inclusive contract start time
89
91
  starting_at:,
90
- # The billing provider configuration associated with a contract.
92
+ # The billing provider configuration associated with a contract. Provide either an
93
+ # ID or the provider and delivery method.
91
94
  billing_provider_configuration: nil,
92
95
  commits: nil,
93
96
  credits: nil,
@@ -96,6 +99,7 @@ module MetronomeSDK
96
99
  discounts: nil,
97
100
  # exclusive contract end time
98
101
  ending_before: nil,
102
+ hierarchy_configuration: nil,
99
103
  # Defaults to LOWEST_MULTIPLIER, which applies the greatest discount to list
100
104
  # prices automatically. EXPLICIT prioritization requires specifying priorities for
101
105
  # each multiplier; the one with the lowest priority value will be prioritized
@@ -107,6 +111,8 @@ module MetronomeSDK
107
111
  netsuite_sales_order_id: nil,
108
112
  overrides: nil,
109
113
  prepaid_balance_threshold_configuration: nil,
114
+ # Priority of the contract.
115
+ priority: nil,
110
116
  # This field's availability is dependent on your client's configuration.
111
117
  professional_services: nil,
112
118
  # Selects the rate card linked to the specified alias as of the contract's start
@@ -127,7 +133,7 @@ module MetronomeSDK
127
133
  # on a separate invoice from usage charges.
128
134
  scheduled_charges_on_usage_invoices: nil,
129
135
  spend_threshold_configuration: nil,
130
- # (beta) Optional list of
136
+ # Optional list of
131
137
  # [subscriptions](https://docs.metronome.com/manage-product-access/create-subscription/)
132
138
  # to add to the contract.
133
139
  subscriptions: nil,
@@ -349,6 +355,7 @@ module MetronomeSDK
349
355
  include_balance: T::Boolean,
350
356
  include_contract_balances: T::Boolean,
351
357
  include_ledgers: T::Boolean,
358
+ limit: Integer,
352
359
  next_page: String,
353
360
  starting_at: Time,
354
361
  request_options: MetronomeSDK::RequestOptions::OrHash
@@ -371,6 +378,8 @@ module MetronomeSDK
371
378
  # Include ledgers in the response. Setting this flag may cause the query to be
372
379
  # slower.
373
380
  include_ledgers: nil,
381
+ # The maximum number of commits to return. Defaults to 25.
382
+ limit: nil,
374
383
  # The next page token from a previous response.
375
384
  next_page: nil,
376
385
  # Include only balances that have any access on or after the provided date
@@ -134,6 +134,8 @@ module MetronomeSDK
134
134
  sig do
135
135
  params(
136
136
  next_page: String,
137
+ sort:
138
+ MetronomeSDK::V1::CreditGrantListEntriesParams::Sort::OrSymbol,
137
139
  credit_type_ids: T::Array[String],
138
140
  customer_ids: T::Array[String],
139
141
  ending_before: Time,
@@ -144,6 +146,8 @@ module MetronomeSDK
144
146
  def list_entries(
145
147
  # Query param: Cursor that indicates where the next page of results should start.
146
148
  next_page: nil,
149
+ # Query param: Ledgers sort order by date, asc or desc. Defaults to asc.
150
+ sort: nil,
147
151
  # Body param: A list of Metronome credit type IDs to fetch ledger entries for. If
148
152
  # absent, ledger entries for all credit types will be returned.
149
153
  credit_type_ids: nil,
@@ -51,11 +51,13 @@ module MetronomeSDK
51
51
  # Which contract the commit applies to. If not provided, the commit applies to all
52
52
  # contracts.
53
53
  applicable_contract_ids: nil,
54
- # Which products the commit applies to. If both applicable_product_ids and
55
- # applicable_product_tags are not provided, the commit applies to all products.
54
+ # Which products the commit applies to. If applicable_product_ids,
55
+ # applicable_product_tags or specifiers are not provided, the commit applies to
56
+ # all products.
56
57
  applicable_product_ids: nil,
57
- # Which tags the commit applies to. If both applicable_product_ids and
58
- # applicable_product_tags are not provided, the commit applies to all products.
58
+ # Which tags the commit applies to. If applicable_product_ids,
59
+ # applicable_product_tags or specifiers are not provided, the commit applies to
60
+ # all products.
59
61
  applicable_product_tags: nil,
60
62
  custom_fields: nil,
61
63
  # Used only in UI/API. It is not exposed to end customers.
@@ -101,6 +103,7 @@ module MetronomeSDK
101
103
  include_balance: T::Boolean,
102
104
  include_contract_commits: T::Boolean,
103
105
  include_ledgers: T::Boolean,
106
+ limit: Integer,
104
107
  next_page: String,
105
108
  starting_at: Time,
106
109
  request_options: MetronomeSDK::RequestOptions::OrHash
@@ -123,6 +126,8 @@ module MetronomeSDK
123
126
  # Include commit ledgers in the response. Setting this flag may cause the query to
124
127
  # be slower.
125
128
  include_ledgers: nil,
129
+ # The maximum number of commits to return. Defaults to 25.
130
+ limit: nil,
126
131
  # The next page token from a previous response.
127
132
  next_page: nil,
128
133
  # Include only commits that have any access on or after the provided date
@@ -83,6 +83,7 @@ module MetronomeSDK
83
83
  include_balance: T::Boolean,
84
84
  include_contract_credits: T::Boolean,
85
85
  include_ledgers: T::Boolean,
86
+ limit: Integer,
86
87
  next_page: String,
87
88
  starting_at: Time,
88
89
  request_options: MetronomeSDK::RequestOptions::OrHash
@@ -105,6 +106,8 @@ module MetronomeSDK
105
106
  # Include credit ledgers in the response. Setting this flag may cause the query to
106
107
  # be slower.
107
108
  include_ledgers: nil,
109
+ # The maximum number of commits to return. Defaults to 25.
110
+ limit: nil,
108
111
  # The next page token from a previous response.
109
112
  next_page: nil,
110
113
  # Include only credits that have any access on or after the provided date
@@ -45,7 +45,7 @@ module MetronomeSDK
45
45
  request_options: MetronomeSDK::RequestOptions::OrHash
46
46
  ).returns(
47
47
  MetronomeSDK::Internal::CursorPage[
48
- MetronomeSDK::Models::V1::Customers::InvoiceListResponse
48
+ MetronomeSDK::V1::Customers::Invoice
49
49
  ]
50
50
  )
51
51
  end
@@ -77,9 +77,7 @@ module MetronomeSDK
77
77
  salesforce_account_ids: T::Array[String],
78
78
  request_options: MetronomeSDK::RequestOptions::OrHash
79
79
  ).returns(
80
- MetronomeSDK::Internal::CursorPage[
81
- MetronomeSDK::Models::V1::CustomerListResponse
82
- ]
80
+ MetronomeSDK::Internal::CursorPage[MetronomeSDK::V1::CustomerDetail]
83
81
  )
84
82
  end
85
83
  def list(
@@ -175,6 +173,39 @@ module MetronomeSDK
175
173
  )
176
174
  end
177
175
 
176
+ # Preview how a set of events will affect a customer's invoice. Generates a draft
177
+ # invoice for a customer using their current contract configuration and the
178
+ # provided events. This is useful for testing how new events will affect the
179
+ # customer's invoice before they are actually processed.
180
+ sig do
181
+ params(
182
+ customer_id: String,
183
+ events:
184
+ T::Array[
185
+ MetronomeSDK::V1::CustomerPreviewEventsParams::Event::OrHash
186
+ ],
187
+ mode: MetronomeSDK::V1::CustomerPreviewEventsParams::Mode::OrSymbol,
188
+ skip_zero_qty_line_items: T::Boolean,
189
+ request_options: MetronomeSDK::RequestOptions::OrHash
190
+ ).returns(MetronomeSDK::Models::V1::CustomerPreviewEventsResponse)
191
+ end
192
+ def preview_events(
193
+ # Path param:
194
+ customer_id:,
195
+ # Body param:
196
+ events:,
197
+ # Body param: If set to "replace", the preview will be generated as if those were
198
+ # the only events for the specified customer. If set to "merge", the events will
199
+ # be merged with any existing events for the specified customer. Defaults to
200
+ # "replace".
201
+ mode: nil,
202
+ # Body param: If set, all zero quantity line items will be filtered out of the
203
+ # response.
204
+ skip_zero_qty_line_items: nil,
205
+ request_options: {}
206
+ )
207
+ end
208
+
178
209
  # Sets the ingest aliases for a customer. Ingest aliases can be used in the
179
210
  # `customer_id` field when sending usage events to Metronome. This call is
180
211
  # idempotent. It fully replaces the set of ingest aliases for the given customer.
@@ -107,6 +107,23 @@ module MetronomeSDK
107
107
  )
108
108
  end
109
109
 
110
+ # For a set of events, look up matched billable metrics and customers by
111
+ # transaction id. This endpoint looks at transactions that occurred in the last 34
112
+ # days, and is intended for sampling-based testing workflows. It is heavily rate
113
+ # limited.
114
+ sig do
115
+ params(
116
+ transaction_ids: T::Array[String],
117
+ request_options: MetronomeSDK::RequestOptions::OrHash
118
+ ).returns(T::Array[MetronomeSDK::Models::V1::UsageSearchResponseItem])
119
+ end
120
+ def search(
121
+ # The transaction IDs of the events to retrieve
122
+ transaction_ids:,
123
+ request_options: {}
124
+ )
125
+ end
126
+
110
127
  # @api private
111
128
  sig { params(client: MetronomeSDK::Client).returns(T.attached_class) }
112
129
  def self.new(client:)
@@ -32,8 +32,8 @@ module MetronomeSDK
32
32
  )
33
33
  end
34
34
 
35
- # List all contracts for a customer. New clients should use this endpoint rather
36
- # than the v1 endpoint.
35
+ # List all contracts for a customer in chronological order. New clients should use
36
+ # this endpoint rather than the v1 endpoint.
37
37
  sig do
38
38
  params(
39
39
  customer_id: String,
@@ -132,6 +132,7 @@ module MetronomeSDK
132
132
  MetronomeSDK::V2::ContractEditParams::UpdateCommit::OrHash
133
133
  ],
134
134
  update_contract_end_date: T.nilable(Time),
135
+ update_contract_name: T.nilable(String),
135
136
  update_credits:
136
137
  T::Array[
137
138
  MetronomeSDK::V2::ContractEditParams::UpdateCredit::OrHash
@@ -176,7 +177,7 @@ module MetronomeSDK
176
177
  add_reseller_royalties: nil,
177
178
  add_scheduled_charges: nil,
178
179
  add_spend_threshold_configuration: nil,
179
- # (beta) Optional list of
180
+ # Optional list of
180
181
  # [subscriptions](https://docs.metronome.com/manage-product-access/create-subscription/)
181
182
  # to add to the contract.
182
183
  add_subscriptions: nil,
@@ -196,6 +197,9 @@ module MetronomeSDK
196
197
  update_commits: nil,
197
198
  # RFC 3339 timestamp indicating when the contract will end (exclusive).
198
199
  update_contract_end_date: nil,
200
+ # Value to update the contract name to. If not provided, the contract name will
201
+ # remain unchanged.
202
+ update_contract_name: nil,
199
203
  update_credits: nil,
200
204
  update_prepaid_balance_threshold_configuration: nil,
201
205
  # Edits to these recurring commits will only affect commits whose access schedules
@@ -208,7 +212,7 @@ module MetronomeSDK
208
212
  update_recurring_credits: nil,
209
213
  update_scheduled_charges: nil,
210
214
  update_spend_threshold_configuration: nil,
211
- # (beta) Optional list of subscriptions to update.
215
+ # Optional list of subscriptions to update.
212
216
  update_subscriptions: nil,
213
217
  request_options: {}
214
218
  )
@@ -229,9 +233,11 @@ module MetronomeSDK
229
233
  MetronomeSDK::V2::ContractEditCommitParams::InvoiceSchedule::OrHash,
230
234
  product_id: String,
231
235
  specifiers:
232
- T::Array[
233
- MetronomeSDK::V2::ContractEditCommitParams::Specifier::OrHash
234
- ],
236
+ T.nilable(
237
+ T::Array[
238
+ MetronomeSDK::V2::ContractEditCommitParams::Specifier::OrHash
239
+ ]
240
+ ),
235
241
  request_options: MetronomeSDK::RequestOptions::OrHash
236
242
  ).returns(MetronomeSDK::Models::V2::ContractEditCommitResponse)
237
243
  end
@@ -241,11 +247,13 @@ module MetronomeSDK
241
247
  # ID of the customer whose commit is being edited
242
248
  customer_id:,
243
249
  access_schedule: nil,
244
- # Which products the commit applies to. If both applicable_product_ids and
245
- # applicable_product_tags are not provided, the commit applies to all products.
250
+ # Which products the commit applies to. If applicable_product_ids,
251
+ # applicable_product_tags or specifiers are not provided, the commit applies to
252
+ # all products.
246
253
  applicable_product_ids: nil,
247
- # Which tags the commit applies to. If both applicable_product_ids and
248
- # applicable_product_tags are not provided, the commit applies to all products.
254
+ # Which tags the commit applies to. If applicable_product_ids,
255
+ # applicable_product_tags or specifiers are not provided, the commit applies to
256
+ # all products.
249
257
  applicable_product_tags: nil,
250
258
  # ID of contract to use for invoicing
251
259
  invoice_contract_id: nil,
@@ -272,9 +280,11 @@ module MetronomeSDK
272
280
  applicable_product_tags: T.nilable(T::Array[String]),
273
281
  product_id: String,
274
282
  specifiers:
275
- T::Array[
276
- MetronomeSDK::V2::ContractEditCreditParams::Specifier::OrHash
277
- ],
283
+ T.nilable(
284
+ T::Array[
285
+ MetronomeSDK::V2::ContractEditCreditParams::Specifier::OrHash
286
+ ]
287
+ ),
278
288
  request_options: MetronomeSDK::RequestOptions::OrHash
279
289
  ).returns(MetronomeSDK::Models::V2::ContractEditCreditResponse)
280
290
  end
@@ -5,6 +5,15 @@ module MetronomeSDK
5
5
  end
6
6
 
7
7
  class ConversionError < MetronomeSDK::Errors::Error
8
+ def cause: -> StandardError?
9
+
10
+ def initialize: (
11
+ on: Class,
12
+ method: Symbol,
13
+ target: top,
14
+ value: top,
15
+ ?cause: StandardError?
16
+ ) -> void
8
17
  end
9
18
 
10
19
  class APIError < MetronomeSDK::Errors::Error
@@ -8,8 +8,10 @@ module MetronomeSDK
8
8
 
9
9
  type coerce_state =
10
10
  {
11
- strictness: bool | :strong,
11
+ translate_names: bool,
12
+ strictness: bool,
12
13
  exactness: { yes: Integer, no: Integer, maybe: Integer },
14
+ error: Class,
13
15
  branched: Integer
14
16
  }
15
17
 
@@ -37,6 +39,10 @@ module MetronomeSDK
37
39
  | MetronomeSDK::Internal::Type::Converter::input spec
38
40
  ) -> (^-> top)
39
41
 
42
+ def self.new_coerce_state: (
43
+ ?translate_names: bool
44
+ ) -> MetronomeSDK::Internal::Type::Converter::coerce_state
45
+
40
46
  def self.coerce: (
41
47
  MetronomeSDK::Internal::Type::Converter::input target,
42
48
  top value,
@@ -0,0 +1,28 @@
1
+ module MetronomeSDK
2
+ module Models
3
+ type base_usage_filter =
4
+ { group_key: String, group_values: ::Array[String], starting_at: Time }
5
+
6
+ class BaseUsageFilter < MetronomeSDK::Internal::Type::BaseModel
7
+ attr_accessor group_key: String
8
+
9
+ attr_accessor group_values: ::Array[String]
10
+
11
+ attr_reader starting_at: Time?
12
+
13
+ def starting_at=: (Time) -> Time
14
+
15
+ def initialize: (
16
+ group_key: String,
17
+ group_values: ::Array[String],
18
+ ?starting_at: Time
19
+ ) -> void
20
+
21
+ def to_hash: -> {
22
+ group_key: String,
23
+ group_values: ::Array[String],
24
+ starting_at: Time
25
+ }
26
+ end
27
+ end
28
+ end