metronome-sdk 0.1.0.pre.alpha.3 → 0.1.0.pre.alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (403) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +40 -0
  3. data/README.md +1 -1
  4. data/lib/metronome_sdk/errors.rb +22 -0
  5. data/lib/metronome_sdk/internal/transport/base_client.rb +10 -2
  6. data/lib/metronome_sdk/internal/type/array_of.rb +6 -1
  7. data/lib/metronome_sdk/internal/type/base_model.rb +82 -26
  8. data/lib/metronome_sdk/internal/type/boolean.rb +7 -1
  9. data/lib/metronome_sdk/internal/type/converter.rb +42 -34
  10. data/lib/metronome_sdk/internal/type/enum.rb +16 -5
  11. data/lib/metronome_sdk/internal/type/file_input.rb +6 -1
  12. data/lib/metronome_sdk/internal/type/hash_of.rb +6 -1
  13. data/lib/metronome_sdk/internal/type/union.rb +17 -9
  14. data/lib/metronome_sdk/internal/type/unknown.rb +7 -1
  15. data/lib/metronome_sdk/internal/util.rb +8 -9
  16. data/lib/metronome_sdk/models/base_usage_filter.rb +27 -0
  17. data/lib/metronome_sdk/models/commit.rb +1010 -0
  18. data/lib/metronome_sdk/models/contract_without_amendments.rb +1803 -0
  19. data/lib/metronome_sdk/models/credit.rb +634 -0
  20. data/lib/metronome_sdk/models/credit_type_data.rb +21 -0
  21. data/lib/metronome_sdk/models/discount.rb +68 -0
  22. data/lib/metronome_sdk/models/event_type_filter.rb +33 -0
  23. data/lib/metronome_sdk/models/id.rb +15 -0
  24. data/lib/metronome_sdk/models/override.rb +381 -0
  25. data/lib/metronome_sdk/models/pro_service.rb +73 -0
  26. data/lib/metronome_sdk/models/property_filter.rb +52 -0
  27. data/lib/metronome_sdk/models/rate.rb +101 -0
  28. data/lib/metronome_sdk/models/schedule_duration.rb +50 -0
  29. data/lib/metronome_sdk/models/schedule_point_in_time.rb +62 -0
  30. data/lib/metronome_sdk/models/scheduled_charge.rb +76 -0
  31. data/lib/metronome_sdk/models/tier.rb +21 -0
  32. data/lib/metronome_sdk/models/v1/alert_archive_response.rb +3 -14
  33. data/lib/metronome_sdk/models/v1/alert_create_params.rb +4 -1
  34. data/lib/metronome_sdk/models/v1/alert_create_response.rb +3 -14
  35. data/lib/metronome_sdk/models/v1/billable_metric_archive_params.rb +2 -8
  36. data/lib/metronome_sdk/models/v1/billable_metric_archive_response.rb +3 -14
  37. data/lib/metronome_sdk/models/v1/billable_metric_create_params.rb +6 -86
  38. data/lib/metronome_sdk/models/v1/billable_metric_create_response.rb +3 -14
  39. data/lib/metronome_sdk/models/v1/billable_metric_list_response.rb +6 -85
  40. data/lib/metronome_sdk/models/v1/billable_metric_retrieve_response.rb +8 -85
  41. data/lib/metronome_sdk/models/v1/contract_amend_params.rb +312 -35
  42. data/lib/metronome_sdk/models/v1/contract_amend_response.rb +3 -14
  43. data/lib/metronome_sdk/models/v1/contract_archive_response.rb +3 -14
  44. data/lib/metronome_sdk/models/v1/contract_create_historical_invoices_response.rb +3 -1276
  45. data/lib/metronome_sdk/models/v1/contract_create_params.rb +550 -102
  46. data/lib/metronome_sdk/models/v1/contract_create_response.rb +3 -14
  47. data/lib/metronome_sdk/models/v1/contract_list_balances_response.rb +5 -1645
  48. data/lib/metronome_sdk/models/v1/contract_list_response.rb +253 -10692
  49. data/lib/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rb +9 -295
  50. data/lib/metronome_sdk/models/v1/contract_retrieve_response.rb +254 -10721
  51. data/lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rb +3 -1276
  52. data/lib/metronome_sdk/models/v1/contract_update_end_date_response.rb +3 -14
  53. data/lib/metronome_sdk/models/v1/contracts/product_archive_response.rb +3 -14
  54. data/lib/metronome_sdk/models/v1/contracts/product_create_params.rb +6 -97
  55. data/lib/metronome_sdk/models/v1/contracts/product_create_response.rb +3 -14
  56. data/lib/metronome_sdk/models/v1/contracts/product_list_item_state.rb +148 -0
  57. data/lib/metronome_sdk/models/v1/contracts/product_list_response.rb +12 -561
  58. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_params.rb +2 -8
  59. data/lib/metronome_sdk/models/v1/contracts/product_retrieve_response.rb +14 -559
  60. data/lib/metronome_sdk/models/v1/contracts/product_update_params.rb +6 -97
  61. data/lib/metronome_sdk/models/v1/contracts/product_update_response.rb +3 -14
  62. data/lib/metronome_sdk/models/v1/contracts/quantity_conversion.rb +57 -0
  63. data/lib/metronome_sdk/models/v1/contracts/quantity_rounding.rb +45 -0
  64. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_params.rb +2 -8
  65. data/lib/metronome_sdk/models/v1/contracts/rate_card_archive_response.rb +3 -14
  66. data/lib/metronome_sdk/models/v1/contracts/rate_card_create_response.rb +3 -14
  67. data/lib/metronome_sdk/models/v1/contracts/rate_card_list_response.rb +6 -42
  68. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rb +2 -8
  69. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rb +6 -159
  70. data/lib/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rb +6 -42
  71. data/lib/metronome_sdk/models/v1/contracts/rate_card_update_response.rb +3 -14
  72. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rb +3 -14
  73. data/lib/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rb +3 -14
  74. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rb +6 -44
  75. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rb +3 -16
  76. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rb +6 -44
  77. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rb +9 -61
  78. data/lib/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rb +6 -158
  79. data/lib/metronome_sdk/models/v1/credit_grant_create_params.rb +5 -77
  80. data/lib/metronome_sdk/models/v1/credit_grant_create_response.rb +3 -14
  81. data/lib/metronome_sdk/models/v1/credit_grant_edit_response.rb +3 -14
  82. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_params.rb +20 -1
  83. data/lib/metronome_sdk/models/v1/credit_grant_list_entries_response.rb +11 -153
  84. data/lib/metronome_sdk/models/v1/credit_grant_list_response.rb +14 -175
  85. data/lib/metronome_sdk/models/v1/credit_grant_void_response.rb +3 -14
  86. data/lib/metronome_sdk/models/v1/credit_ledger_entry.rb +69 -0
  87. data/lib/metronome_sdk/models/v1/customer.rb +53 -0
  88. data/lib/metronome_sdk/models/v1/customer_archive_params.rb +2 -8
  89. data/lib/metronome_sdk/models/v1/customer_archive_response.rb +3 -14
  90. data/lib/metronome_sdk/models/v1/customer_create_response.rb +3 -50
  91. data/lib/metronome_sdk/models/v1/{customer_list_response.rb → customer_detail.rb} +14 -15
  92. data/lib/metronome_sdk/models/v1/customer_list_billable_metrics_response.rb +6 -86
  93. data/lib/metronome_sdk/models/v1/customer_preview_events_params.rb +115 -0
  94. data/lib/metronome_sdk/models/v1/customer_preview_events_response.rb +18 -0
  95. data/lib/metronome_sdk/models/v1/customer_retrieve_response.rb +3 -126
  96. data/lib/metronome_sdk/models/v1/customer_set_name_response.rb +3 -50
  97. data/lib/metronome_sdk/models/v1/customers/alert_list_response.rb +5 -276
  98. data/lib/metronome_sdk/models/v1/customers/alert_retrieve_response.rb +3 -279
  99. data/lib/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rb +9 -1
  100. data/lib/metronome_sdk/models/v1/customers/commit_create_params.rb +8 -6
  101. data/lib/metronome_sdk/models/v1/customers/commit_create_response.rb +3 -14
  102. data/lib/metronome_sdk/models/v1/customers/commit_list_response.rb +3 -1047
  103. data/lib/metronome_sdk/models/v1/customers/commit_update_end_date_response.rb +3 -14
  104. data/lib/metronome_sdk/models/v1/customers/credit_create_response.rb +3 -14
  105. data/lib/metronome_sdk/models/v1/customers/credit_list_response.rb +3 -593
  106. data/lib/metronome_sdk/models/v1/customers/credit_update_end_date_response.rb +3 -14
  107. data/lib/metronome_sdk/models/v1/customers/customer_alert.rb +270 -0
  108. data/lib/metronome_sdk/models/v1/customers/{invoice_list_response.rb → invoice.rb} +119 -303
  109. data/lib/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rb +2 -1271
  110. data/lib/metronome_sdk/models/v1/customers/invoice_retrieve_response.rb +3 -1276
  111. data/lib/metronome_sdk/models/v1/customers/plan_add_response.rb +3 -14
  112. data/lib/metronome_sdk/models/v1/customers/plan_list_response.rb +3 -21
  113. data/lib/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rb +1 -0
  114. data/lib/metronome_sdk/models/v1/plan_detail.rb +200 -0
  115. data/lib/metronome_sdk/models/v1/plan_get_details_response.rb +3 -286
  116. data/lib/metronome_sdk/models/v1/plan_list_charges_response.rb +3 -20
  117. data/lib/metronome_sdk/models/v1/plan_list_customers_response.rb +3 -128
  118. data/lib/metronome_sdk/models/v1/rollover_amount_max_amount.rb +38 -0
  119. data/lib/metronome_sdk/models/v1/rollover_amount_max_percentage.rb +38 -0
  120. data/lib/metronome_sdk/models/v1/usage_search_params.rb +24 -0
  121. data/lib/metronome_sdk/models/v1/usage_search_response.rb +249 -0
  122. data/lib/metronome_sdk/models/v2/contract_edit_commit_params.rb +11 -8
  123. data/lib/metronome_sdk/models/v2/contract_edit_commit_response.rb +3 -14
  124. data/lib/metronome_sdk/models/v2/contract_edit_credit_params.rb +3 -2
  125. data/lib/metronome_sdk/models/v2/contract_edit_credit_response.rb +3 -14
  126. data/lib/metronome_sdk/models/v2/contract_edit_params.rb +885 -103
  127. data/lib/metronome_sdk/models/v2/contract_edit_response.rb +3 -14
  128. data/lib/metronome_sdk/models/v2/contract_get_edit_history_response.rb +351 -625
  129. data/lib/metronome_sdk/models/v2/contract_list_response.rb +590 -749
  130. data/lib/metronome_sdk/models/v2/contract_retrieve_response.rb +590 -751
  131. data/lib/metronome_sdk/models.rb +36 -4
  132. data/lib/metronome_sdk/resources/v1/alerts.rb +1 -1
  133. data/lib/metronome_sdk/resources/v1/billable_metrics.rb +2 -2
  134. data/lib/metronome_sdk/resources/v1/contracts/products.rb +4 -4
  135. data/lib/metronome_sdk/resources/v1/contracts/rate_cards/rates.rb +1 -1
  136. data/lib/metronome_sdk/resources/v1/contracts.rb +8 -4
  137. data/lib/metronome_sdk/resources/v1/credit_grants.rb +4 -2
  138. data/lib/metronome_sdk/resources/v1/customers/commits.rb +2 -2
  139. data/lib/metronome_sdk/resources/v1/customers/invoices.rb +2 -2
  140. data/lib/metronome_sdk/resources/v1/customers.rb +40 -2
  141. data/lib/metronome_sdk/resources/v1/usage.rb +25 -0
  142. data/lib/metronome_sdk/resources/v2/contracts.rb +11 -9
  143. data/lib/metronome_sdk/version.rb +1 -1
  144. data/lib/metronome_sdk.rb +31 -2
  145. data/rbi/metronome_sdk/errors.rbi +16 -0
  146. data/rbi/metronome_sdk/internal/type/boolean.rbi +2 -0
  147. data/rbi/metronome_sdk/internal/type/converter.rbi +15 -15
  148. data/rbi/metronome_sdk/internal/type/union.rbi +5 -0
  149. data/rbi/metronome_sdk/internal/type/unknown.rbi +2 -0
  150. data/rbi/metronome_sdk/internal/util.rbi +2 -0
  151. data/rbi/metronome_sdk/models/base_usage_filter.rbi +46 -0
  152. data/rbi/metronome_sdk/models/commit.rbi +1962 -0
  153. data/rbi/metronome_sdk/models/contract_without_amendments.rbi +3676 -0
  154. data/rbi/metronome_sdk/models/credit.rbi +1230 -0
  155. data/rbi/metronome_sdk/models/credit_type_data.rbi +26 -0
  156. data/rbi/metronome_sdk/models/discount.rbi +106 -0
  157. data/rbi/metronome_sdk/models/event_type_filter.rbi +57 -0
  158. data/rbi/metronome_sdk/models/id.rbi +23 -0
  159. data/rbi/metronome_sdk/models/override.rbi +675 -0
  160. data/rbi/metronome_sdk/models/pro_service.rbi +98 -0
  161. data/rbi/metronome_sdk/models/property_filter.rbi +88 -0
  162. data/rbi/metronome_sdk/models/rate.rbi +155 -0
  163. data/rbi/metronome_sdk/models/schedule_duration.rbi +89 -0
  164. data/rbi/metronome_sdk/models/schedule_point_in_time.rbi +121 -0
  165. data/rbi/metronome_sdk/models/scheduled_charge.rbi +119 -0
  166. data/rbi/metronome_sdk/models/tier.rbi +29 -0
  167. data/rbi/metronome_sdk/models/v1/alert_archive_response.rbi +4 -37
  168. data/rbi/metronome_sdk/models/v1/alert_create_params.rbi +6 -0
  169. data/rbi/metronome_sdk/models/v1/alert_create_response.rbi +4 -37
  170. data/rbi/metronome_sdk/models/v1/billable_metric_archive_params.rbi +6 -12
  171. data/rbi/metronome_sdk/models/v1/billable_metric_archive_response.rbi +4 -44
  172. data/rbi/metronome_sdk/models/v1/billable_metric_create_params.rbi +8 -177
  173. data/rbi/metronome_sdk/models/v1/billable_metric_create_response.rbi +4 -43
  174. data/rbi/metronome_sdk/models/v1/billable_metric_list_response.rbi +8 -177
  175. data/rbi/metronome_sdk/models/v1/billable_metric_retrieve_response.rbi +8 -175
  176. data/rbi/metronome_sdk/models/v1/contract_amend_params.rbi +712 -68
  177. data/rbi/metronome_sdk/models/v1/contract_amend_response.rbi +4 -37
  178. data/rbi/metronome_sdk/models/v1/contract_archive_response.rbi +4 -39
  179. data/rbi/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbi +3 -2595
  180. data/rbi/metronome_sdk/models/v1/contract_create_params.rbi +1100 -172
  181. data/rbi/metronome_sdk/models/v1/contract_create_response.rbi +4 -37
  182. data/rbi/metronome_sdk/models/v1/contract_list_balances_response.rbi +3 -3366
  183. data/rbi/metronome_sdk/models/v1/contract_list_response.rbi +375 -22523
  184. data/rbi/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbi +12 -632
  185. data/rbi/metronome_sdk/models/v1/contract_retrieve_response.rbi +375 -22523
  186. data/rbi/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbi +3 -2595
  187. data/rbi/metronome_sdk/models/v1/contract_update_end_date_response.rbi +4 -44
  188. data/rbi/metronome_sdk/models/v1/contracts/product_archive_response.rbi +4 -44
  189. data/rbi/metronome_sdk/models/v1/contracts/product_create_params.rbi +8 -209
  190. data/rbi/metronome_sdk/models/v1/contracts/product_create_response.rbi +4 -44
  191. data/rbi/metronome_sdk/models/v1/contracts/product_list_item_state.rbi +237 -0
  192. data/rbi/metronome_sdk/models/v1/contracts/product_list_response.rbi +76 -1143
  193. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_params.rbi +3 -9
  194. data/rbi/metronome_sdk/models/v1/contracts/product_retrieve_response.rbi +76 -1137
  195. data/rbi/metronome_sdk/models/v1/contracts/product_update_params.rbi +8 -209
  196. data/rbi/metronome_sdk/models/v1/contracts/product_update_response.rbi +4 -44
  197. data/rbi/metronome_sdk/models/v1/contracts/quantity_conversion.rbi +111 -0
  198. data/rbi/metronome_sdk/models/v1/contracts/quantity_rounding.rbi +94 -0
  199. data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbi +3 -9
  200. data/rbi/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbi +4 -44
  201. data/rbi/metronome_sdk/models/v1/contracts/rate_card_create_response.rbi +4 -44
  202. data/rbi/metronome_sdk/models/v1/contracts/rate_card_list_response.rbi +8 -74
  203. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbi +3 -9
  204. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbi +8 -344
  205. data/rbi/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbi +8 -74
  206. data/rbi/metronome_sdk/models/v1/contracts/rate_card_update_response.rbi +4 -44
  207. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbi +4 -44
  208. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbi +4 -44
  209. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbi +8 -108
  210. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbi +4 -45
  211. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbi +8 -108
  212. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbi +12 -149
  213. data/rbi/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbi +8 -344
  214. data/rbi/metronome_sdk/models/v1/credit_grant_create_params.rbi +8 -166
  215. data/rbi/metronome_sdk/models/v1/credit_grant_create_response.rbi +4 -41
  216. data/rbi/metronome_sdk/models/v1/credit_grant_edit_response.rbi +4 -39
  217. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_params.rbi +58 -0
  218. data/rbi/metronome_sdk/models/v1/credit_grant_list_entries_response.rbi +10 -231
  219. data/rbi/metronome_sdk/models/v1/credit_grant_list_response.rbi +14 -281
  220. data/rbi/metronome_sdk/models/v1/credit_grant_void_response.rbi +4 -39
  221. data/rbi/metronome_sdk/models/v1/credit_ledger_entry.rbi +90 -0
  222. data/rbi/metronome_sdk/models/v1/customer.rbi +74 -0
  223. data/rbi/metronome_sdk/models/v1/customer_archive_params.rbi +6 -12
  224. data/rbi/metronome_sdk/models/v1/customer_archive_response.rbi +4 -39
  225. data/rbi/metronome_sdk/models/v1/customer_create_response.rbi +6 -84
  226. data/rbi/metronome_sdk/models/v1/{customer_list_response.rbi → customer_detail.rbi} +19 -26
  227. data/rbi/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbi +8 -177
  228. data/rbi/metronome_sdk/models/v1/customer_preview_events_params.rbi +214 -0
  229. data/rbi/metronome_sdk/models/v1/customer_preview_events_response.rbi +35 -0
  230. data/rbi/metronome_sdk/models/v1/customer_retrieve_response.rbi +6 -255
  231. data/rbi/metronome_sdk/models/v1/customer_set_name_response.rbi +6 -86
  232. data/rbi/metronome_sdk/models/v1/customers/alert_list_response.rbi +3 -623
  233. data/rbi/metronome_sdk/models/v1/customers/alert_retrieve_response.rbi +4 -622
  234. data/rbi/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbi +11 -0
  235. data/rbi/metronome_sdk/models/v1/customers/commit_create_params.rbi +12 -8
  236. data/rbi/metronome_sdk/models/v1/customers/commit_create_response.rbi +4 -44
  237. data/rbi/metronome_sdk/models/v1/customers/commit_list_response.rbi +3 -2164
  238. data/rbi/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbi +4 -44
  239. data/rbi/metronome_sdk/models/v1/customers/credit_create_response.rbi +4 -44
  240. data/rbi/metronome_sdk/models/v1/customers/credit_list_response.rbi +3 -1224
  241. data/rbi/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbi +4 -44
  242. data/rbi/metronome_sdk/models/v1/customers/customer_alert.rbi +572 -0
  243. data/rbi/metronome_sdk/models/v1/customers/{invoice_list_response.rbi → invoice.rbi} +182 -589
  244. data/rbi/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbi +4 -2561
  245. data/rbi/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbi +6 -2612
  246. data/rbi/metronome_sdk/models/v1/customers/plan_add_response.rbi +4 -41
  247. data/rbi/metronome_sdk/models/v1/customers/plan_list_response.rbi +4 -39
  248. data/rbi/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbi +5 -0
  249. data/rbi/metronome_sdk/models/v1/plan_detail.rbi +349 -0
  250. data/rbi/metronome_sdk/models/v1/plan_get_details_response.rbi +6 -560
  251. data/rbi/metronome_sdk/models/v1/plan_list_charges_response.rbi +4 -37
  252. data/rbi/metronome_sdk/models/v1/plan_list_customers_response.rbi +4 -248
  253. data/rbi/metronome_sdk/models/v1/rollover_amount_max_amount.rbi +79 -0
  254. data/rbi/metronome_sdk/models/v1/rollover_amount_max_percentage.rbi +80 -0
  255. data/rbi/metronome_sdk/models/v1/usage_search_params.rbi +48 -0
  256. data/rbi/metronome_sdk/models/v1/usage_search_response.rbi +438 -0
  257. data/rbi/metronome_sdk/models/v2/contract_edit_commit_params.rbi +23 -23
  258. data/rbi/metronome_sdk/models/v2/contract_edit_commit_response.rbi +4 -41
  259. data/rbi/metronome_sdk/models/v2/contract_edit_credit_params.rbi +11 -15
  260. data/rbi/metronome_sdk/models/v2/contract_edit_credit_response.rbi +4 -41
  261. data/rbi/metronome_sdk/models/v2/contract_edit_params.rbi +1859 -202
  262. data/rbi/metronome_sdk/models/v2/contract_edit_response.rbi +4 -37
  263. data/rbi/metronome_sdk/models/v2/contract_get_edit_history_response.rbi +700 -1447
  264. data/rbi/metronome_sdk/models/v2/contract_list_response.rbi +1204 -1472
  265. data/rbi/metronome_sdk/models/v2/contract_retrieve_response.rbi +1204 -1472
  266. data/rbi/metronome_sdk/models.rbi +32 -0
  267. data/rbi/metronome_sdk/resources/v1/alerts.rbi +3 -0
  268. data/rbi/metronome_sdk/resources/v1/billable_metrics.rbi +2 -6
  269. data/rbi/metronome_sdk/resources/v1/contracts/products.rbi +4 -4
  270. data/rbi/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbi +1 -4
  271. data/rbi/metronome_sdk/resources/v1/contracts.rbi +10 -4
  272. data/rbi/metronome_sdk/resources/v1/credit_grants.rbi +4 -0
  273. data/rbi/metronome_sdk/resources/v1/customers/commits.rbi +6 -4
  274. data/rbi/metronome_sdk/resources/v1/customers/invoices.rbi +1 -1
  275. data/rbi/metronome_sdk/resources/v1/customers.rbi +34 -3
  276. data/rbi/metronome_sdk/resources/v1/usage.rbi +17 -0
  277. data/rbi/metronome_sdk/resources/v2/contracts.rbi +24 -14
  278. data/sig/metronome_sdk/errors.rbs +9 -0
  279. data/sig/metronome_sdk/internal/type/converter.rbs +7 -1
  280. data/sig/metronome_sdk/models/base_usage_filter.rbs +28 -0
  281. data/sig/metronome_sdk/models/commit.rbs +1020 -0
  282. data/sig/metronome_sdk/models/contract_without_amendments.rbs +1582 -0
  283. data/sig/metronome_sdk/models/credit.rbs +643 -0
  284. data/sig/metronome_sdk/models/credit_type_data.rbs +15 -0
  285. data/sig/metronome_sdk/models/discount.rbs +63 -0
  286. data/sig/metronome_sdk/models/event_type_filter.rbs +26 -0
  287. data/sig/metronome_sdk/models/id.rbs +13 -0
  288. data/sig/metronome_sdk/models/override.rbs +399 -0
  289. data/sig/metronome_sdk/models/pro_service.rbs +61 -0
  290. data/sig/metronome_sdk/models/property_filter.rbs +41 -0
  291. data/sig/metronome_sdk/models/rate.rbs +94 -0
  292. data/sig/metronome_sdk/models/schedule_duration.rbs +56 -0
  293. data/sig/metronome_sdk/models/schedule_point_in_time.rbs +75 -0
  294. data/sig/metronome_sdk/models/scheduled_charge.rbs +70 -0
  295. data/sig/metronome_sdk/models/tier.rbs +17 -0
  296. data/sig/metronome_sdk/models/v1/alert_archive_response.rbs +4 -19
  297. data/sig/metronome_sdk/models/v1/alert_create_response.rbs +4 -19
  298. data/sig/metronome_sdk/models/v1/billable_metric_archive_params.rbs +4 -12
  299. data/sig/metronome_sdk/models/v1/billable_metric_archive_response.rbs +4 -19
  300. data/sig/metronome_sdk/models/v1/billable_metric_create_params.rbs +12 -73
  301. data/sig/metronome_sdk/models/v1/billable_metric_create_response.rbs +4 -19
  302. data/sig/metronome_sdk/models/v1/billable_metric_list_response.rbs +12 -73
  303. data/sig/metronome_sdk/models/v1/billable_metric_retrieve_response.rbs +12 -73
  304. data/sig/metronome_sdk/models/v1/contract_amend_params.rbs +291 -24
  305. data/sig/metronome_sdk/models/v1/contract_amend_response.rbs +4 -19
  306. data/sig/metronome_sdk/models/v1/contract_archive_response.rbs +4 -19
  307. data/sig/metronome_sdk/models/v1/contract_create_historical_invoices_response.rbs +4 -1291
  308. data/sig/metronome_sdk/models/v1/contract_create_params.rbs +448 -84
  309. data/sig/metronome_sdk/models/v1/contract_create_response.rbs +4 -19
  310. data/sig/metronome_sdk/models/v1/contract_list_balances_response.rbs +1 -1642
  311. data/sig/metronome_sdk/models/v1/contract_list_response.rbs +188 -10437
  312. data/sig/metronome_sdk/models/v1/contract_retrieve_rate_schedule_response.rbs +15 -271
  313. data/sig/metronome_sdk/models/v1/contract_retrieve_response.rbs +188 -10437
  314. data/sig/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_response.rbs +4 -1291
  315. data/sig/metronome_sdk/models/v1/contract_update_end_date_response.rbs +4 -19
  316. data/sig/metronome_sdk/models/v1/contracts/product_archive_response.rbs +4 -21
  317. data/sig/metronome_sdk/models/v1/contracts/product_create_params.rbs +8 -82
  318. data/sig/metronome_sdk/models/v1/contracts/product_create_response.rbs +4 -21
  319. data/sig/metronome_sdk/models/v1/contracts/product_list_item_state.rbs +121 -0
  320. data/sig/metronome_sdk/models/v1/contracts/product_list_response.rbs +16 -466
  321. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_params.rbs +4 -12
  322. data/sig/metronome_sdk/models/v1/contracts/product_retrieve_response.rbs +16 -466
  323. data/sig/metronome_sdk/models/v1/contracts/product_update_params.rbs +8 -82
  324. data/sig/metronome_sdk/models/v1/contracts/product_update_response.rbs +4 -21
  325. data/sig/metronome_sdk/models/v1/contracts/quantity_conversion.rbs +47 -0
  326. data/sig/metronome_sdk/models/v1/contracts/quantity_rounding.rbs +41 -0
  327. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_params.rbs +4 -12
  328. data/sig/metronome_sdk/models/v1/contracts/rate_card_archive_response.rbs +4 -21
  329. data/sig/metronome_sdk/models/v1/contracts/rate_card_create_response.rbs +4 -21
  330. data/sig/metronome_sdk/models/v1/contracts/rate_card_list_response.rbs +10 -34
  331. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_params.rbs +4 -12
  332. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_rate_schedule_response.rbs +10 -144
  333. data/sig/metronome_sdk/models/v1/contracts/rate_card_retrieve_response.rbs +10 -34
  334. data/sig/metronome_sdk/models/v1/contracts/rate_card_update_response.rbs +4 -21
  335. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_set_response.rbs +4 -21
  336. data/sig/metronome_sdk/models/v1/contracts/rate_cards/product_order_update_response.rbs +4 -21
  337. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_params.rbs +12 -40
  338. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_many_response.rbs +4 -21
  339. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_params.rbs +12 -40
  340. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_add_response.rbs +18 -58
  341. data/sig/metronome_sdk/models/v1/contracts/rate_cards/rate_list_response.rbs +10 -144
  342. data/sig/metronome_sdk/models/v1/credit_grant_create_params.rbs +2 -66
  343. data/sig/metronome_sdk/models/v1/credit_grant_create_response.rbs +4 -19
  344. data/sig/metronome_sdk/models/v1/credit_grant_edit_response.rbs +4 -19
  345. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_params.rbs +20 -0
  346. data/sig/metronome_sdk/models/v1/credit_grant_list_entries_response.rbs +12 -118
  347. data/sig/metronome_sdk/models/v1/credit_grant_list_response.rbs +16 -140
  348. data/sig/metronome_sdk/models/v1/credit_grant_void_response.rbs +4 -19
  349. data/sig/metronome_sdk/models/v1/credit_ledger_entry.rbs +52 -0
  350. data/sig/metronome_sdk/models/v1/customer.rbs +44 -0
  351. data/sig/metronome_sdk/models/v1/customer_archive_params.rbs +4 -12
  352. data/sig/metronome_sdk/models/v1/customer_archive_response.rbs +4 -19
  353. data/sig/metronome_sdk/models/v1/customer_create_response.rbs +4 -48
  354. data/sig/metronome_sdk/models/v1/{customer_list_response.rbs → customer_detail.rbs} +17 -17
  355. data/sig/metronome_sdk/models/v1/customer_list_billable_metrics_response.rbs +12 -73
  356. data/sig/metronome_sdk/models/v1/customer_preview_events_params.rbs +105 -0
  357. data/sig/metronome_sdk/models/v1/customer_preview_events_response.rbs +16 -0
  358. data/sig/metronome_sdk/models/v1/customer_retrieve_response.rbs +4 -112
  359. data/sig/metronome_sdk/models/v1/customer_set_name_response.rbs +4 -48
  360. data/sig/metronome_sdk/models/v1/customers/alert_list_response.rbs +4 -243
  361. data/sig/metronome_sdk/models/v1/customers/alert_retrieve_response.rbs +4 -247
  362. data/sig/metronome_sdk/models/v1/customers/billing_config_retrieve_response.rbs +7 -0
  363. data/sig/metronome_sdk/models/v1/customers/commit_create_response.rbs +4 -21
  364. data/sig/metronome_sdk/models/v1/customers/commit_list_response.rbs +4 -1057
  365. data/sig/metronome_sdk/models/v1/customers/commit_update_end_date_response.rbs +4 -21
  366. data/sig/metronome_sdk/models/v1/customers/credit_create_response.rbs +4 -21
  367. data/sig/metronome_sdk/models/v1/customers/credit_list_response.rbs +4 -596
  368. data/sig/metronome_sdk/models/v1/customers/credit_update_end_date_response.rbs +4 -21
  369. data/sig/metronome_sdk/models/v1/customers/customer_alert.rbs +234 -0
  370. data/sig/metronome_sdk/models/v1/customers/{invoice_list_response.rbs → invoice.rbs} +147 -305
  371. data/sig/metronome_sdk/models/v1/customers/invoice_list_breakdowns_response.rbs +8 -1278
  372. data/sig/metronome_sdk/models/v1/customers/invoice_retrieve_response.rbs +4 -1294
  373. data/sig/metronome_sdk/models/v1/customers/plan_add_response.rbs +4 -19
  374. data/sig/metronome_sdk/models/v1/customers/plan_list_response.rbs +4 -16
  375. data/sig/metronome_sdk/models/v1/dashboard_get_embeddable_url_params.rbs +2 -1
  376. data/sig/metronome_sdk/models/v1/plan_detail.rbs +203 -0
  377. data/sig/metronome_sdk/models/v1/plan_get_details_response.rbs +4 -267
  378. data/sig/metronome_sdk/models/v1/plan_list_charges_response.rbs +4 -16
  379. data/sig/metronome_sdk/models/v1/plan_list_customers_response.rbs +4 -108
  380. data/sig/metronome_sdk/models/v1/rollover_amount_max_amount.rbs +37 -0
  381. data/sig/metronome_sdk/models/v1/rollover_amount_max_percentage.rbs +37 -0
  382. data/sig/metronome_sdk/models/v1/usage_search_params.rbs +26 -0
  383. data/sig/metronome_sdk/models/v1/usage_search_response.rbs +230 -0
  384. data/sig/metronome_sdk/models/v2/contract_edit_commit_params.rbs +4 -8
  385. data/sig/metronome_sdk/models/v2/contract_edit_commit_response.rbs +4 -19
  386. data/sig/metronome_sdk/models/v2/contract_edit_credit_params.rbs +4 -8
  387. data/sig/metronome_sdk/models/v2/contract_edit_credit_response.rbs +4 -19
  388. data/sig/metronome_sdk/models/v2/contract_edit_params.rbs +743 -77
  389. data/sig/metronome_sdk/models/v2/contract_edit_response.rbs +4 -19
  390. data/sig/metronome_sdk/models/v2/contract_get_edit_history_response.rbs +274 -665
  391. data/sig/metronome_sdk/models/v2/contract_list_response.rbs +567 -759
  392. data/sig/metronome_sdk/models/v2/contract_retrieve_response.rbs +567 -759
  393. data/sig/metronome_sdk/models.rbs +32 -0
  394. data/sig/metronome_sdk/resources/v1/billable_metrics.rbs +2 -2
  395. data/sig/metronome_sdk/resources/v1/contracts/products.rbs +4 -4
  396. data/sig/metronome_sdk/resources/v1/contracts/rate_cards/rates.rbs +1 -1
  397. data/sig/metronome_sdk/resources/v1/contracts.rbs +3 -1
  398. data/sig/metronome_sdk/resources/v1/credit_grants.rbs +1 -0
  399. data/sig/metronome_sdk/resources/v1/customers/invoices.rbs +1 -1
  400. data/sig/metronome_sdk/resources/v1/customers.rbs +9 -1
  401. data/sig/metronome_sdk/resources/v1/usage.rbs +5 -0
  402. data/sig/metronome_sdk/resources/v2/contracts.rbs +3 -2
  403. metadata +95 -8
@@ -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,
@@ -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.
@@ -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