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