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
@@ -13,13 +13,7 @@ module MetronomeSDK
13
13
  )
14
14
  end
15
15
 
16
- sig do
17
- returns(
18
- T::Array[
19
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data
20
- ]
21
- )
22
- end
16
+ sig { returns(T::Array[MetronomeSDK::V1::Customers::CustomerAlert]) }
23
17
  attr_accessor :data
24
18
 
25
19
  sig { returns(T.nilable(String)) }
@@ -28,9 +22,7 @@ module MetronomeSDK
28
22
  sig do
29
23
  params(
30
24
  data:
31
- T::Array[
32
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::OrHash
33
- ],
25
+ T::Array[MetronomeSDK::V1::Customers::CustomerAlert::OrHash],
34
26
  next_page: T.nilable(String)
35
27
  ).returns(T.attached_class)
36
28
  end
@@ -40,625 +32,13 @@ module MetronomeSDK
40
32
  sig do
41
33
  override.returns(
42
34
  {
43
- data:
44
- T::Array[
45
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data
46
- ],
35
+ data: T::Array[MetronomeSDK::V1::Customers::CustomerAlert],
47
36
  next_page: T.nilable(String)
48
37
  }
49
38
  )
50
39
  end
51
40
  def to_hash
52
41
  end
53
-
54
- class Data < MetronomeSDK::Internal::Type::BaseModel
55
- OrHash =
56
- T.type_alias do
57
- T.any(
58
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data,
59
- MetronomeSDK::Internal::AnyHash
60
- )
61
- end
62
-
63
- sig do
64
- returns(
65
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert
66
- )
67
- end
68
- attr_reader :alert
69
-
70
- sig do
71
- params(
72
- alert:
73
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::OrHash
74
- ).void
75
- end
76
- attr_writer :alert
77
-
78
- # The status of the customer alert. If the alert is archived, null will be
79
- # returned.
80
- sig do
81
- returns(
82
- T.nilable(
83
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::CustomerStatus::TaggedSymbol
84
- )
85
- )
86
- end
87
- attr_accessor :customer_status
88
-
89
- # If present, indicates the reason the alert was triggered.
90
- sig { returns(T.nilable(String)) }
91
- attr_accessor :triggered_by
92
-
93
- sig do
94
- params(
95
- alert:
96
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::OrHash,
97
- customer_status:
98
- T.nilable(
99
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::CustomerStatus::OrSymbol
100
- ),
101
- triggered_by: T.nilable(String)
102
- ).returns(T.attached_class)
103
- end
104
- def self.new(
105
- alert:,
106
- # The status of the customer alert. If the alert is archived, null will be
107
- # returned.
108
- customer_status:,
109
- # If present, indicates the reason the alert was triggered.
110
- triggered_by: nil
111
- )
112
- end
113
-
114
- sig do
115
- override.returns(
116
- {
117
- alert:
118
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert,
119
- customer_status:
120
- T.nilable(
121
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::CustomerStatus::TaggedSymbol
122
- ),
123
- triggered_by: T.nilable(String)
124
- }
125
- )
126
- end
127
- def to_hash
128
- end
129
-
130
- class Alert < MetronomeSDK::Internal::Type::BaseModel
131
- OrHash =
132
- T.type_alias do
133
- T.any(
134
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert,
135
- MetronomeSDK::Internal::AnyHash
136
- )
137
- end
138
-
139
- # the Metronome ID of the alert
140
- sig { returns(String) }
141
- attr_accessor :id
142
-
143
- # Name of the alert
144
- sig { returns(String) }
145
- attr_accessor :name
146
-
147
- # Status of the alert
148
- sig do
149
- returns(
150
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Status::TaggedSymbol
151
- )
152
- end
153
- attr_accessor :status
154
-
155
- # Threshold value of the alert policy
156
- sig { returns(Float) }
157
- attr_accessor :threshold
158
-
159
- # Type of the alert
160
- sig do
161
- returns(
162
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol
163
- )
164
- end
165
- attr_accessor :type
166
-
167
- # Timestamp for when the alert was last updated
168
- sig { returns(Time) }
169
- attr_accessor :updated_at
170
-
171
- # An array of strings, representing a way to filter the credit grant this alert
172
- # applies to, by looking at the credit_grant_type field on the credit grant. This
173
- # field is only defined for CreditPercentage and CreditBalance alerts
174
- sig { returns(T.nilable(T::Array[String])) }
175
- attr_reader :credit_grant_type_filters
176
-
177
- sig { params(credit_grant_type_filters: T::Array[String]).void }
178
- attr_writer :credit_grant_type_filters
179
-
180
- sig do
181
- returns(
182
- T.nilable(
183
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CreditType
184
- )
185
- )
186
- end
187
- attr_reader :credit_type
188
-
189
- sig do
190
- params(
191
- credit_type:
192
- T.nilable(
193
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CreditType::OrHash
194
- )
195
- ).void
196
- end
197
- attr_writer :credit_type
198
-
199
- # A list of custom field filters for alert types that support advanced filtering
200
- sig do
201
- returns(
202
- T.nilable(
203
- T::Array[
204
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CustomFieldFilter
205
- ]
206
- )
207
- )
208
- end
209
- attr_reader :custom_field_filters
210
-
211
- sig do
212
- params(
213
- custom_field_filters:
214
- T::Array[
215
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CustomFieldFilter::OrHash
216
- ]
217
- ).void
218
- end
219
- attr_writer :custom_field_filters
220
-
221
- # Scopes alert evaluation to a specific presentation group key on individual line
222
- # items. Only present for spend alerts.
223
- sig do
224
- returns(
225
- T.nilable(
226
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::GroupKeyFilter
227
- )
228
- )
229
- end
230
- attr_reader :group_key_filter
231
-
232
- sig do
233
- params(
234
- group_key_filter:
235
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::GroupKeyFilter::OrHash
236
- ).void
237
- end
238
- attr_writer :group_key_filter
239
-
240
- # Only supported for invoice_total_reached alerts. A list of invoice types to
241
- # evaluate.
242
- sig { returns(T.nilable(T::Array[String])) }
243
- attr_reader :invoice_types_filter
244
-
245
- sig { params(invoice_types_filter: T::Array[String]).void }
246
- attr_writer :invoice_types_filter
247
-
248
- # Prevents the creation of duplicates. If a request to create a record is made
249
- # with a previously used uniqueness key, a new record will not be created and the
250
- # request will fail with a 409 error.
251
- sig { returns(T.nilable(String)) }
252
- attr_reader :uniqueness_key
253
-
254
- sig { params(uniqueness_key: String).void }
255
- attr_writer :uniqueness_key
256
-
257
- sig do
258
- params(
259
- id: String,
260
- name: String,
261
- status:
262
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Status::OrSymbol,
263
- threshold: Float,
264
- type:
265
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::OrSymbol,
266
- updated_at: Time,
267
- credit_grant_type_filters: T::Array[String],
268
- credit_type:
269
- T.nilable(
270
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CreditType::OrHash
271
- ),
272
- custom_field_filters:
273
- T::Array[
274
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CustomFieldFilter::OrHash
275
- ],
276
- group_key_filter:
277
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::GroupKeyFilter::OrHash,
278
- invoice_types_filter: T::Array[String],
279
- uniqueness_key: String
280
- ).returns(T.attached_class)
281
- end
282
- def self.new(
283
- # the Metronome ID of the alert
284
- id:,
285
- # Name of the alert
286
- name:,
287
- # Status of the alert
288
- status:,
289
- # Threshold value of the alert policy
290
- threshold:,
291
- # Type of the alert
292
- type:,
293
- # Timestamp for when the alert was last updated
294
- updated_at:,
295
- # An array of strings, representing a way to filter the credit grant this alert
296
- # applies to, by looking at the credit_grant_type field on the credit grant. This
297
- # field is only defined for CreditPercentage and CreditBalance alerts
298
- credit_grant_type_filters: nil,
299
- credit_type: nil,
300
- # A list of custom field filters for alert types that support advanced filtering
301
- custom_field_filters: nil,
302
- # Scopes alert evaluation to a specific presentation group key on individual line
303
- # items. Only present for spend alerts.
304
- group_key_filter: nil,
305
- # Only supported for invoice_total_reached alerts. A list of invoice types to
306
- # evaluate.
307
- invoice_types_filter: nil,
308
- # Prevents the creation of duplicates. If a request to create a record is made
309
- # with a previously used uniqueness key, a new record will not be created and the
310
- # request will fail with a 409 error.
311
- uniqueness_key: nil
312
- )
313
- end
314
-
315
- sig do
316
- override.returns(
317
- {
318
- id: String,
319
- name: String,
320
- status:
321
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Status::TaggedSymbol,
322
- threshold: Float,
323
- type:
324
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol,
325
- updated_at: Time,
326
- credit_grant_type_filters: T::Array[String],
327
- credit_type:
328
- T.nilable(
329
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CreditType
330
- ),
331
- custom_field_filters:
332
- T::Array[
333
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CustomFieldFilter
334
- ],
335
- group_key_filter:
336
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::GroupKeyFilter,
337
- invoice_types_filter: T::Array[String],
338
- uniqueness_key: String
339
- }
340
- )
341
- end
342
- def to_hash
343
- end
344
-
345
- # Status of the alert
346
- module Status
347
- extend MetronomeSDK::Internal::Type::Enum
348
-
349
- TaggedSymbol =
350
- T.type_alias do
351
- T.all(
352
- Symbol,
353
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Status
354
- )
355
- end
356
- OrSymbol = T.type_alias { T.any(Symbol, String) }
357
-
358
- ENABLED =
359
- T.let(
360
- :enabled,
361
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Status::TaggedSymbol
362
- )
363
- ARCHIVED =
364
- T.let(
365
- :archived,
366
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Status::TaggedSymbol
367
- )
368
- DISABLED =
369
- T.let(
370
- :disabled,
371
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Status::TaggedSymbol
372
- )
373
-
374
- sig do
375
- override.returns(
376
- T::Array[
377
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Status::TaggedSymbol
378
- ]
379
- )
380
- end
381
- def self.values
382
- end
383
- end
384
-
385
- # Type of the alert
386
- module Type
387
- extend MetronomeSDK::Internal::Type::Enum
388
-
389
- TaggedSymbol =
390
- T.type_alias do
391
- T.all(
392
- Symbol,
393
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type
394
- )
395
- end
396
- OrSymbol = T.type_alias { T.any(Symbol, String) }
397
-
398
- LOW_CREDIT_BALANCE_REACHED =
399
- T.let(
400
- :low_credit_balance_reached,
401
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol
402
- )
403
- SPEND_THRESHOLD_REACHED =
404
- T.let(
405
- :spend_threshold_reached,
406
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol
407
- )
408
- MONTHLY_INVOICE_TOTAL_SPEND_THRESHOLD_REACHED =
409
- T.let(
410
- :monthly_invoice_total_spend_threshold_reached,
411
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol
412
- )
413
- LOW_REMAINING_DAYS_IN_PLAN_REACHED =
414
- T.let(
415
- :low_remaining_days_in_plan_reached,
416
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol
417
- )
418
- LOW_REMAINING_CREDIT_PERCENTAGE_REACHED =
419
- T.let(
420
- :low_remaining_credit_percentage_reached,
421
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol
422
- )
423
- USAGE_THRESHOLD_REACHED =
424
- T.let(
425
- :usage_threshold_reached,
426
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol
427
- )
428
- LOW_REMAINING_DAYS_FOR_COMMIT_SEGMENT_REACHED =
429
- T.let(
430
- :low_remaining_days_for_commit_segment_reached,
431
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol
432
- )
433
- LOW_REMAINING_COMMIT_BALANCE_REACHED =
434
- T.let(
435
- :low_remaining_commit_balance_reached,
436
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol
437
- )
438
- LOW_REMAINING_COMMIT_PERCENTAGE_REACHED =
439
- T.let(
440
- :low_remaining_commit_percentage_reached,
441
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol
442
- )
443
- LOW_REMAINING_DAYS_FOR_CONTRACT_CREDIT_SEGMENT_REACHED =
444
- T.let(
445
- :low_remaining_days_for_contract_credit_segment_reached,
446
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol
447
- )
448
- LOW_REMAINING_CONTRACT_CREDIT_BALANCE_REACHED =
449
- T.let(
450
- :low_remaining_contract_credit_balance_reached,
451
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol
452
- )
453
- LOW_REMAINING_CONTRACT_CREDIT_PERCENTAGE_REACHED =
454
- T.let(
455
- :low_remaining_contract_credit_percentage_reached,
456
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol
457
- )
458
- LOW_REMAINING_CONTRACT_CREDIT_AND_COMMIT_BALANCE_REACHED =
459
- T.let(
460
- :low_remaining_contract_credit_and_commit_balance_reached,
461
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol
462
- )
463
- INVOICE_TOTAL_REACHED =
464
- T.let(
465
- :invoice_total_reached,
466
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol
467
- )
468
-
469
- sig do
470
- override.returns(
471
- T::Array[
472
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::Type::TaggedSymbol
473
- ]
474
- )
475
- end
476
- def self.values
477
- end
478
- end
479
-
480
- class CreditType < MetronomeSDK::Internal::Type::BaseModel
481
- OrHash =
482
- T.type_alias do
483
- T.any(
484
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CreditType,
485
- MetronomeSDK::Internal::AnyHash
486
- )
487
- end
488
-
489
- sig { returns(String) }
490
- attr_accessor :id
491
-
492
- sig { returns(String) }
493
- attr_accessor :name
494
-
495
- sig do
496
- params(id: String, name: String).returns(T.attached_class)
497
- end
498
- def self.new(id:, name:)
499
- end
500
-
501
- sig { override.returns({ id: String, name: String }) }
502
- def to_hash
503
- end
504
- end
505
-
506
- class CustomFieldFilter < MetronomeSDK::Internal::Type::BaseModel
507
- OrHash =
508
- T.type_alias do
509
- T.any(
510
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CustomFieldFilter,
511
- MetronomeSDK::Internal::AnyHash
512
- )
513
- end
514
-
515
- sig do
516
- returns(
517
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CustomFieldFilter::Entity::TaggedSymbol
518
- )
519
- end
520
- attr_accessor :entity
521
-
522
- sig { returns(String) }
523
- attr_accessor :key
524
-
525
- sig { returns(String) }
526
- attr_accessor :value
527
-
528
- sig do
529
- params(
530
- entity:
531
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CustomFieldFilter::Entity::OrSymbol,
532
- key: String,
533
- value: String
534
- ).returns(T.attached_class)
535
- end
536
- def self.new(entity:, key:, value:)
537
- end
538
-
539
- sig do
540
- override.returns(
541
- {
542
- entity:
543
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CustomFieldFilter::Entity::TaggedSymbol,
544
- key: String,
545
- value: String
546
- }
547
- )
548
- end
549
- def to_hash
550
- end
551
-
552
- module Entity
553
- extend MetronomeSDK::Internal::Type::Enum
554
-
555
- TaggedSymbol =
556
- T.type_alias do
557
- T.all(
558
- Symbol,
559
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CustomFieldFilter::Entity
560
- )
561
- end
562
- OrSymbol = T.type_alias { T.any(Symbol, String) }
563
-
564
- CONTRACT =
565
- T.let(
566
- :Contract,
567
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CustomFieldFilter::Entity::TaggedSymbol
568
- )
569
- COMMIT =
570
- T.let(
571
- :Commit,
572
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CustomFieldFilter::Entity::TaggedSymbol
573
- )
574
- CONTRACT_CREDIT =
575
- T.let(
576
- :ContractCredit,
577
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CustomFieldFilter::Entity::TaggedSymbol
578
- )
579
-
580
- sig do
581
- override.returns(
582
- T::Array[
583
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::CustomFieldFilter::Entity::TaggedSymbol
584
- ]
585
- )
586
- end
587
- def self.values
588
- end
589
- end
590
- end
591
-
592
- class GroupKeyFilter < MetronomeSDK::Internal::Type::BaseModel
593
- OrHash =
594
- T.type_alias do
595
- T.any(
596
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::Alert::GroupKeyFilter,
597
- MetronomeSDK::Internal::AnyHash
598
- )
599
- end
600
-
601
- sig { returns(String) }
602
- attr_accessor :key
603
-
604
- sig { returns(String) }
605
- attr_accessor :value
606
-
607
- # Scopes alert evaluation to a specific presentation group key on individual line
608
- # items. Only present for spend alerts.
609
- sig do
610
- params(key: String, value: String).returns(T.attached_class)
611
- end
612
- def self.new(key:, value:)
613
- end
614
-
615
- sig { override.returns({ key: String, value: String }) }
616
- def to_hash
617
- end
618
- end
619
- end
620
-
621
- # The status of the customer alert. If the alert is archived, null will be
622
- # returned.
623
- module CustomerStatus
624
- extend MetronomeSDK::Internal::Type::Enum
625
-
626
- TaggedSymbol =
627
- T.type_alias do
628
- T.all(
629
- Symbol,
630
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::CustomerStatus
631
- )
632
- end
633
- OrSymbol = T.type_alias { T.any(Symbol, String) }
634
-
635
- OK =
636
- T.let(
637
- :ok,
638
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::CustomerStatus::TaggedSymbol
639
- )
640
- IN_ALARM =
641
- T.let(
642
- :in_alarm,
643
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::CustomerStatus::TaggedSymbol
644
- )
645
- EVALUATING =
646
- T.let(
647
- :evaluating,
648
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::CustomerStatus::TaggedSymbol
649
- )
650
-
651
- sig do
652
- override.returns(
653
- T::Array[
654
- MetronomeSDK::Models::V1::Customers::AlertListResponse::Data::CustomerStatus::TaggedSymbol
655
- ]
656
- )
657
- end
658
- def self.values
659
- end
660
- end
661
- end
662
42
  end
663
43
  end
664
44
  end